Pycharm学习教程(6) Pycharm作为Vim编辑器使用


Posted in Python onMay 03, 2017

Pycharm作为Vim编辑器使用,具体内容如下

1、主题

如果你是Vim的粉丝,并且不打算使用其他类型的编辑器,那么这篇教程将会比较适合你。这里将会详细介绍如何在Pycharm IdeaVim插件的帮助下下载、安装、使用Vim。至于有关Python编程以及Vim的用法,详见official website, Vim documentation。

2、准备工作

安装2.7或者更高版本的Pycharm

3、下载安装IdeaVim插件

在Pycharm的主工具栏中单击设置按钮,在IDE Settings界面下选择 Plugins页面。此时将会显示当前平台下安装的所有插件。然而IdeaVim并不在其中,此时需要单击Browse JetBrains plugins按钮,在搜索栏中键入vim来找到对应的插件:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

安装插件:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

重启Pycharm后即可使用:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

4、重启后的变化

Vim和Pycharm都是基于键盘输入的文本编辑软件,响应的IdeaVim插件的快捷键设置很可能与Pycharm的快捷键设置相冲突,这也是为什么Pycharm需要根据已有的快捷键配置来重新创建一套Vim版的快捷键方案。

当Pycharm重启之后,你将会看到Vim Keymap settings对话框,在这里选择一个快捷键配置方案来作为当前Vim环境下的快捷键方案:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

我们这里选择默认的配置,单击OK,可以看到Pycharm创建了一份新的快捷键配置:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

接下来再次查看快捷键设置界面。单击设置按钮进入Settings对话框,在IDE Settings下单击Keymap页面。在对应的快捷键配置下拉列表中会出现一个名为Vim的方案名称,其中定义了一些默认的快捷键组合,例如Ctrl+V代表粘贴等等:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

然而这里还有一个更重要的Pycharm界面设置,在主工具栏中单击Tools,选择Vim Emulator命令:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

当你安装了IdeaVim插件之后,这条命令是默认选中的(前面有对号),也就是意味着当前的Vim仿真器可用。取消勾选,Pycharm就会回到正常的快捷键状体;再次勾选,Pycharm就会重新加载Vim版的快捷键配置方案:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

5、编辑模式

现在,我们就可以在Vim模式下进行编辑了,此时我们的输入光标为一个黑色小块,意味着我们当前处于 Normal模式:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

如果你想变为Insert模式,按下i键,光标将会变为一条竖线:

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

在这个模式下米可以输入新的代码或者对当前代码进行修改。当然你还可以选择其他模式,例如按r键进入Replace输入模式。

顺便说一句,为了快速进入Vim仿真,可以查看状态栏的相关提示信息:Status bar

Pycharm学习教程(6) Pycharm作为Vim编辑器使用

按下Esc键,回到正常编辑模式。

IdeaVim拥有很多VIm编辑器的特征,例如缩写形式、快捷键组合、各种各样的命令等等,详见:a lot more。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 实现红包随机生成算法的简单实例
Jan 04 Python
python opencv 直方图反向投影的方法
Feb 24 Python
Python Unittest自动化单元测试框架详解
Apr 04 Python
django中静态文件配置static的方法
May 20 Python
python 移除字符串尾部的数字方法
Jul 17 Python
python实现统计文本中单词出现的频率详解
May 20 Python
详解10个可以快速用Python进行数据分析的小技巧
Jun 24 Python
python 机器学习之支持向量机非线性回归SVR模型
Jun 26 Python
使用 Python 处理 JSON 格式的数据
Jul 22 Python
Python 装饰器原理、定义与用法详解
Dec 07 Python
pycharm第三方库安装失败的问题及解决经验分享
May 09 Python
Python实现视频自动打码的示例代码
Apr 08 Python
利用numpy+matplotlib绘图的基本操作教程
May 03 #Python
利用matplotlib+numpy绘制多种绘图的方法实例
May 03 #Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 #Python
python中解析json格式文件的方法示例
May 03 #Python
Pycharm学习教程(4) Python解释器的相关配置
May 03 #Python
Pycharm学习教程(3) 代码运行调试
May 03 #Python
在centos7中分布式部署pyspider
May 03 #Python
You might like
PHP生成带有雪花背景的验证码
2006/10/09 PHP
PHP GD 图像处理组件的常用函数总结
2010/04/28 PHP
php使用标签替换的方式生成静态页面
2015/05/21 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
thinkphp集成前端脚手架Vue-cli的教程图解
2018/08/30 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
javascript取消文本选定的实现代码
2010/11/14 Javascript
jquery和javascript中如何将一元素的内容赋给另一元素
2014/01/09 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
微信小程序 条件渲染详解
2016/10/09 Javascript
nodejs中Express与Koa2对比分析
2018/02/06 NodeJs
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
微信小程序实现滴滴导航tab切换效果
2018/07/24 Javascript
element ui table 增加筛选的方法示例
2018/11/02 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
细说webpack6 Babel的使用详解
2019/09/26 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
2020/12/04 Javascript
使用Typescript开发微信小程序的步骤详解
2021/01/12 Javascript
python基于右递归解决八皇后问题的方法
2015/05/25 Python
windows环境下tensorflow安装过程详解
2018/03/30 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
Python pandas实现excel工作表合并功能详解
2019/08/29 Python
在Mac中配置Python虚拟环境过程解析
2020/06/22 Python
python实现扫雷游戏的示例
2020/10/20 Python
大学教师年终总结的自我评价
2013/10/29 职场文书
畜牧兽医本科生的自我评价
2014/03/03 职场文书
2014年节能减排工作总结
2014/12/06 职场文书
暂住证证明
2015/06/19 职场文书
学校少先队工作总结
2015/08/12 职场文书
2019消防宣传标语!
2019/07/10 职场文书
Ajax 的初步实现(使用vscode+node.js+express框架)
2021/06/18 Javascript
纯 CSS 自定义多行省略的问题(从原理到实现)
2021/11/11 HTML / CSS
SQL Server使用导出向导功能
2022/04/08 SQL Server
Mongodb 迁移数据块的流程介绍分析
2022/04/18 MongoDB