你校曾经全是 Emacs 党,直到近两年出现了我这个用 Vim 的沙雕,和某个进队的 Gedit 神必壬。
至于为什么使用 Vim,一方面是想改善你校只有 Emacs 人的环境,一方面是想找点乐子。
于是开始看简明 Vim 练级攻略,顺便把基本操作扔到自己博客里。
简易使用
安装 Vim 并启动后在 Normal 模式下,这个模式下所有的键就是功能键。
注意<Ctrl>-λ
我会写成C-λ
,以:
开始的命令需要回车执行,<n>
表示该处应输入一个数。
- 从 Normal 模式转至 Insert 模式
i
:在光标前插入。a
:在光标后插入。o
/O
:在当前行后/前插入一个新行并将光标跳到行头处。
- 删除字符
<delete>
:真忘了怎么删就 delete 键。x
:删除当前光标所在位置的一个字符。
- 复制粘贴
dd
:删除当前行,并存入剪贴板里。p
/P
:在当前位置之后/前粘贴。yy
:拷贝当前行。
怎么从外部剪贴板粘贴或复制到外部剪贴板呢?目前记住"+p
和"+y
就够了。
其实选中一部分内容后,y
就是复制,d
就是删除。
- 撤销恢复
u
:Undo.<C-r>
:Redo.
- 打开/保存/退出/改变文件
:e <path/to/file>
:打开一个文件。:w
:存盘。:saveas <path/to/file>
:将当前文件另存为<path/to/file>
。ZZ
/:wq
:保存并退出。:x
:保存(仅在需要时)并退出。:q
:退出,若选择不保存则需后附!
强制执行(即命令为:q!
),强制退出所有的文件可以使用:qa!
。:bn
/:bp
:若打开了多个文件,使用其来切换到上/下一个文件。
- 移动光标
所谓 blank 字符,就是空格、tab、换行等。
hjkl
:向左下上右移动光标。0
:到行头。^
:到本行第一个不是 blank 字符的位置。$
:到本行行尾。g_
:到本行最后一个不是 blank 字符的位置。:<n>
:到第<n>
行。
- 自动补全
<C-n>
:体验不算太好,也许我没找到真正的使用方法(
- 选择
v
:选择一段。<Shift-v>
:按行选择。
一些基本配置
Vim 安装目录和用户主目录下有.vimrc
,那是配置文件。
设置编码
1 | set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 |
显示行号
1 | set number |
nu
是缩写。
突出显示当前行
1 | set cursorline |
cul
是缩写。
突出显示当前列
1 | set cursorcolumn |
cuc
是缩写。
启用鼠标
1 | set mouse=a |
不过其实没啥人愿意用鼠标,毕竟大部分人都是为了解放鼠标才来玩 Vim 的(
缩进与 tab
以下分别为设置将输入的 tab 转为空格、设置 tab 长度为 4 空格、设置自动缩进长度为 4 空格、继承前一行的缩进方式、
1 | set expandtab |
对于我来说,暂时已经能够在 Vim 下存活了。
顺带一提 OI-wiki 的 Vim 介绍好像更不错(