Vim 使用总结

平时在 Linux 环境下待的久了,免不了和 Vim 打交道。

Vim 用法

打开多个文件

1
vim a.txt b.txt

如果已经启动,可以输入命令再打开一个文件

1
:e c.txt

列编辑

  1. ctrl+v进入列选择模式,然后使用方向键(hjkl)来选择覆盖范围;
  2. shift+i(大写的I)shift+a(大写的A)进入编辑模式;
  3. 编辑内容,此时内容只会出现在第一行(就像只在第一行编辑一样);
  4. 按 esc 退出,此时内容会插入到每一块选择处。

补全

补全

1
Ctrl n

撤回

1
Ctrl p

Vim 配置

  • 当前用户配置:~/.vimrc
  • 全局配置:/etc/vim/vimrc

编码格式

查看文件编码格式:

1
:set fileencoding

设置编码格式:

1
:set fileencoding=编码

接下来保存时将使用该新编码保存。

十六进制

进入十六进制模式:

1
:%!xxd

返回正常字符显示:

1
:%!xxd -r

分屏

水平切分窗口

1
:s[plit]

垂直切分窗口

1
:vs[plit]

文件间切换

对于用(v)split 在多个窗格中打开的文件,这种方法只会在当前窗格中切换不同的文件。

1
2
3
4
5
Ctrl+6  //两文件间的切换
:bn //下一个文件
:bp //上一个文件
:ls //列出打开的文件,带编号
:b1~n //切换至第n个文件

在窗格间切换的方法

1
2
3
Ctrl+w+方向键——切换到前/下/上/后一个窗格
Ctrl+w+h/j/k/l ——同上
Ctrl+ww——依次向后切换到下一个窗格中

设置 tab

在 Vim 中设置 Tab 为 4 个空格

折叠

VIM 设置代码折叠

管理插件

Vundle

TODO

NeoBundle

TODO

参考

  1. Vim 的哲学
    Vim 的哲学(一)
    Vim 的哲学(二)
    Vim 的哲学(三)
    Vim 的哲学(四)
  2. Vim 相关的一些小游戏
    https://vim-adventures.com/
    http://www.vimsnake.com/
    http://www.openvim.com/tutorial.html
    http://www.vimgenius.com/
  3. Learn Vimscript the Hard Way
  4. VIM 用户手册 - by Bram Moolenaar
  5. Seven habits of effective text editing 2.0
  6. 配置
    amix/vimrc