vim常用操作命令和配置
快速定位技巧
刚开始接触vim的时候难免为数量众多的快捷键搞得眼花缭乱,有时候虽然记下了快捷键但不知道怎么用,以光标移动的命令为例子,如此多的快捷键甚至让你不知道如何选择,所以还经常习惯性地去使用鼠标或上下左右键去定位。但是,一旦掌握了定位的技巧,熟练使用过这些快捷键后,就再也回不到鼠标了。下面说一下自己总结的vim快速定位技巧。 无论写文本还是代码,快速到达你想要去的位置都是“刚需”。在vim里快速到指定位置按照移动距离的远近可以分以下几步:
- 文件范围内移动:
- gg :到文件开头
- G :到文件结尾
- ngg :到文件的第n行
- *s/xxxx * :搜索xxxx字符,并到达该位置
- *n * : 搜索之后按n到达下一个位置
- 其他跟搜索相关的命令
- 屏幕范围内移动:
- H :把光标移至编辑窗口顶部第一行的行首位置
- M :把光标移至编辑窗口中间一行的行首位置
- L :把光标移至编辑窗口底部最后一行的行首位置
- Ctrl+F :往下(文件结尾方向)滚动一屏。
- Ctrl+B :往上(文件开始方向)滚动一屏。
- Ctrl+D :往下滚动半屏。
- Ctrl+U :往上滚动半屏。
- Ctrl+E :编辑窗口中的文件内容整体上移一行。
- Ctrl+Y :编辑窗口中的文件内容整体下移一行。
- 行内移动:
- 0 :移动到行首
- ^ :移动到行首
- $ :移动到行尾
- j :移动到下一行
- k :移动到上一行
- fa :寻找行内地一个a
- 单词之间移动:
- w
- W
- b
- B
- e
- E
- 字符之间移动:
- h :移动到下一个字符
- l :移动到上一个字符
注意:一定要按照以上的顺序使用你的快捷键。就是说如果你想要到行内的某个地方,一定先用行内的快捷键,再用单词之间移动的快捷键,再用字符之间移动的快捷键。前面的快捷键能搞定就不要用后面的~ 这样才能让你的光标移动出神入化!
自动补全
自动补全 Ctrl+X Ctrl+L整行补全 Ctrl+X Ctrl+N 根据当前文件里关键字补全 Ctrl+X Ctrl+K 根据字典补全 Ctrl+X Ctrl+T 根据同义词字典补全 Ctrl+X Ctrl+I 根据头文件内关键字补全 Ctrl+X Ctrl+] 根据标签补全 Ctrl+X Ctrl+F 补全文件名 Ctrl+X Ctrl+D 补全宏定义 Ctrl+X Ctrl+V 补全vim命令 Ctrl+X Ctrl+U 用户自定义补全方式 Ctrl+X Ctrl+S 拼写建议
折叠命令
下面给出一些常用命令,掌握这几个就可以让你更自在地操纵代码了! 更详细的说明文档请点击下面的链接: 详细命令说明点击此处 zfap
|zf| 是个操作 符,而 |ap| 是一个文本对象。你可以将 |zf| 操作符跟任何一个移动命令联用,为所经 之处的文本创建一个折叠。 |zf| 也能在可视模式下使用。例如: zf20g 从当前行折叠到第20行。若要再阅读那些文本,可以键入以下命令以打开该折叠: zo
你还可以用以下命令再关闭该折叠: zc
有时候,查看或记住一个折叠在哪儿,挺不容易的。更别说用 |zo| 命令来打开了。要查 看那些已定义的折叠: :set foldcolumn=4
这个命令将在窗口左边显示一小栏来标识各个折叠。一个 “+” 表示某个关闭的折叠。一 个 “-“ 表示每个打开的折叠的开头,而 “|” 则表示该折叠内其余的行。 你可以在移开折叠时自动关闭折叠,让代码看起来更简洁: :set foldclose=all
根据缩进自动折叠,这个对大多数语言都很实用! :set foldmethod=indent 根据标记自动折叠,比如大括号标记{…},括号内的内容将被折叠。 :set foldmethod=marker 折叠层次可以用foldlevel来控制 :set foldlevel=3 或者 zr (reduce),zm (more)
安装主题
每一个配色方案都是一个.vim结尾的配置文件,安装配置方案就是安装文件,该文件一般存放在名称为 colors 的目录下。 用# locate colors | grep vim命令可以看到这些文件存放的位置。 ubuntu15.10 里这些文件都在两个文件夹里面: /usr/share/vim/vim74/colors/ /usr/share/vim-scripts/colors/ 其中vim-scripts下的文件不能被自动加载,可以把这些配色文件复制到 ~/.vim/colors 下,这样就可以被使用了。如果自己的home目录下没有.vim文件夹,可以自己创建,vim会自动识别。同样,自己想要安装的其他主题,只需要把文件放在这个目录下就可以了,比如freya 主题。 然后可以用: colorscheme freya 使主题生效。
常用插件
- vundle 用来安装并管理插件,需要首先安装。
- 安装方法详见 Github链接 。简单来说分以下两步:
- git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 把代码克隆到本地文件夹。
- 在 ~/.vimrc 中添加配置内容和想要安装的插件,这一步到链接内复制粘贴即可。
- 原文中给的配置信息有些不需要的插件或者无法安装的插件,可以用“ 注释掉。
- 在vim中输入 :PluginInstall 即可安装插件
- 安装方法详见 Github链接 。简单来说分以下两步:
- NERDTree 文件浏览树,在上面Vundle配置中添加以下信息
- Plugin ‘scrooloose/nerdtree‘
- 然后运行 :PluginInstall
- 用vundle安装也有一个缺点,就是无法查看下载进度! 需要耐心等待!
- YouCompleteMe 命令自动补全,很强大!
- 最新发现这个插件没有neocomplete好用,建议安装后一个。
- Plugin ‘Valloric/YouCompleteMe’
- 安装的时候需要时间较长,安装完之后还要切换到youcompleteme目录下编译。
- ./install.py –clang-completer 编译时候需要下载,时间较长。
其他很有用的插件:
- Plugin ‘nathanaelkane/vim-indent-guides’
- Plugin ‘Shougo/neocomplete’ //推荐
- Plugin ‘Shougo/neosnippet’
- Plugin ‘Shougo/neosnippet-snippets’
- Plugin ‘honza/vim-snippets’
- Plugin ‘terryma/vim-multiple-cursors’