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编程实现语音控制电脑
Apr 01 Python
python threading模块操作多线程介绍
Apr 08 Python
PyQt 线程类 QThread使用详解
Jul 16 Python
python创建列表和向列表添加元素的实现方法
Dec 25 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
Python读写文件基础知识点
Jun 10 Python
树莓派实现移动拍照
Jun 22 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
Jun 26 Python
面向对象学习之pygame坦克大战
Sep 11 Python
Python尾递归优化实现代码及原理详解
Oct 09 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 Python
Python数据可视化之用Matplotlib绘制常用图形
Jun 03 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/11/19 PHP
Smarty Foreach 使用说明
2010/03/23 PHP
PHP中exec与system用法区别分析
2014/09/22 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
2018/04/21 PHP
php文件包含的几种方式总结
2019/09/19 PHP
javascript 字符串连接的性能问题(多浏览器)
2008/11/18 Javascript
Javascript 中的 && 和 || 使用小结
2010/04/25 Javascript
15 个 JavaScript Web UI 库
2010/05/19 Javascript
JavaScript中的类继承
2010/11/25 Javascript
Extjs4 类的定义和扩展实例
2013/06/28 Javascript
JavaScript生成GUID的多种算法小结
2013/08/18 Javascript
JavaScript 中的日期和时间及表示标准介绍
2013/08/21 Javascript
jquery(hide方法)隐藏指定元素实例
2013/11/11 Javascript
jquery手风琴特效插件
2015/02/04 Javascript
浅谈js中的延迟执行和定时执行
2016/05/31 Javascript
jquery-mobile表单的创建方法详解
2016/11/23 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
vue动画效果实现方法示例
2019/03/18 Javascript
d3.js实现图形拖拽
2019/12/19 Javascript
[03:01]DOTA2英雄基础教程 露娜
2014/01/07 DOTA
Python内建函数之raw_input()与input()代码解析
2017/10/26 Python
python实现弹窗祝福效果
2019/04/07 Python
使用python实现unix2dos和dos2unix命令的例子
2019/08/13 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
pandas分批读取大数据集教程
2020/06/06 Python
python SOCKET编程基础入门
2021/02/27 Python
Lentiamo比利时:便宜的隐形眼镜
2020/02/14 全球购物
亿企通软件测试面试题
2012/04/10 面试题
八年级音乐教学反思
2014/01/09 职场文书
我的五年职业生涯规划
2014/01/23 职场文书
文化与传播毕业生求职信
2014/03/09 职场文书
客房领班岗位职责
2015/02/11 职场文书
工程合作意向书范本
2015/05/09 职场文书
同意转租证明
2015/06/24 职场文书
微信小程序和php的登录实现
2021/04/01 PHP
Python 线程池模块之多线程操作代码
2021/05/20 Python