0x00 前言(废话)
Vim这个编辑器被称为编辑器之神,那么其中的强大那是一定有目共睹的.但是V编辑器的学习路径却是非常的陡峭.几乎是让人望而却步.
特别是其中的蛋疼的配置,让去年的我几乎没有耐心学下去.
后来,我终于看到了另一个关于SPF13的配置,这个时候,我突然间觉得自己终于不需要再去折腾这些乱七八糟的配置,转而可以使用一些已经配置的差不多的,我仅仅需要修改其中的一些就可以用来直接编程的方案了.
那么,我们今天的任务是什么?
1.满足Vim的日常编辑功能 —-常规的操作
2.完成将Vim转化成一个标准的PythonIDE.
我们今天不讲什么?
1.不讲最基本的Vim操作,如果你连HJKL这个按键都不知道有什么作用,那么,请在我写出基础教程之前,Google或者百度去.
0x01 日常编辑功能
0.文本导航
- hjkl 左下上右(吐槽一下这坑爹的IBUS输入法,居然在有候选框的情况下UI延迟一个按键)
- EasyMotion 使用这个就可以代替乱七八糟的快速移动了. 这是一个可以给当前的文字立即用打上tag,这样的话在normal情况下输入,,w 然后就可以看到很多tag,输入其中的tag就可以立即跳转到相应的tag.
- insert状态进行编辑 c-h c-w 删除一个字,删除一个词.
- normal 状态下进行删除 x dd ——— 删除一个字,剪切一行.
- . .. ——— 重复操作
< ——— 缩进 >G
g - c-b c-f back forth
- c-n c-p 代码补全,tips,建议标点符号全部半角花,这样就会吧每段连起来的汉字当成一个单词,这样就可以减少输入代码.
1.CodeFolding
需求:代码和Folding和UnFolding
设置:
用法:za
2.Windos Splits
Close current windows: Ctrl+w + q
切换窗口:Ctrl+w+hjkl
分割窗口:Ctrl+w+vs
关闭窗口:Ctrl+w+q
3.snippet
代码片段的插件是非常重要的.
由于本人使用的语言主要是Python,经过我的多时考虑,准备使用YouComplateMe加上UltiSnips.
在Spf-13里面使用YouCompleteMe+Ultisnip简单,只需要
在shell中执行1
echo “let g:spf13_bundle_groups=[‘general’, ‘writing’, ‘neocomplcache’, ‘programming’, ‘php’, ‘ruby’, ‘python’, ‘javascript’, ‘go’, ‘html’, ‘misc’,]” >> .vimrc.before.local
然后打开vim 输入 :PluginInstall 安装,会提示你需要编译东西,不急,
在终端中先安装编译环境,
1 | sudo apt-get install build-essential cmake |
接着编译打开
1 | cd ~/.vim/bundle/YouCompleteMe |
这就OK了.我现在在markdown文件中输入1
2
3img,然后按下Ctrl+j就可以看到下面的代码

是不是很方便?
0x02 语法高亮和代码检查
1.这个暂时不需要我们来做
[
0x03 代码补全
- Surround 管理引号括号等等
- NERDCommenter 快速注释
- Syntastic
- numbers.vim
- tabularize
0x04 代码导航
- Buffers
Fuzzy Text File Search
File Browser
THE NERD TREE
Refactoring and Go to definition
- Search
0x05 file explorer
- ctrlp 这个和sublime倒是有几分相似之处,不过我这里不支持中文显示.
0x06 git 集成
0x07 python ide
0x0A Vim的常规操作.
indent
< outdent
do it (>)
repeat (.)
reverse (u)
f{char}
repeat ;
reverse ,
0x0B Vim的最佳练习
undotree ——— u
nerdtree ——— e
可以定制,比如c-e toggletree
ctrlp c-p
tabularize
强迫症对齐利器
正文
简介
扩展链接
其他的工具。
博客文章原创声明:
本博文章如果没有声明为整理或者转载,均为本人原创。非商业可以任意转载分享。但是编写的代码如果没有特别声明,虽然我建议保留原作者出处,但是代码皆为mit协议,也就是修改了名字也算是你的版权,开源世界嘛,我就喜欢那些可以拿来直接使用的东西,贯彻最纯粹的免费自由,但是求求你,改掉名字等等信息再说是版权是你的啊。
关于本人,
点击链接就可以以web幻灯片的方式看到我的介绍。
我的Github地址: https://github.com/twocucao (尽管东西不多,但是欢迎来Star和Fork,就算你们来这里提前Star Folk了)
简书地址: http://www.jianshu.com/users/9a7e0b9da317/latest_articles (不常更新,而且几乎没有技术文章的讲解)
联系方式: twocucao@gmail.com
本人才疏学浅,是一个水平比较菜的程序员,如果行文之间发现任何错误,欢迎指正,特别欢迎技术上的指正。