常用命令


动作

h # 左 j # 下 k # 上 l # 右 w # 向前移动到下一个单词的开头 } # 跳转到下一个段落 $ # 跳转到当前行的末尾

搜索

:vim /pattern/ path
  • /pattern/ 是您要搜索的内容的正则表达式。
  • file 是文件参数。您可以传入多个参数。Vim将在文件中搜索所有匹配正则表达式的内容。类似于:find,您可以传入*和**通配符。

输入模式

i # 从光标之前的位置开始输入文本 I # 从当前行第一个非空字符之前的位置之前开始输入文本 a # 在光标之后的位置追加文本 A # 在当前行的末尾追加文本 o # 在光标位置下方新起一行并开始输入文本 O # 在光标位置的上方新起一行并开始输入文本 s # 删除当前光标位置的字符并开始输入文本 S # 删除当前行并开始输入文本 gi # 从当前缓冲区上次结束输入模式的地方开始输入文本 gI # 在当前行的第一列的位置开始输入文本 Ctrl-h # 删除一个字符 Ctrl-w # 删除一个单词 Ctrl-u # 删除一整行

修改配置文件后激活

vim ~/.vimrc :source %

显示行号

# 显示行号 :set number # 或 :set nu # 隐藏行号 :set nonumber # 或 :set nonu

挂起和状态返回

# 挂起 Ctrl + z # 恢复 fg

buffer

buffer就是内存中的一块空间,您可以在这里写入或编辑文本。当您在Vim中打开一个文件时,文件的数据就与一个buffer绑定。当您在Vim中打开3个文件,您就有3个buffers。
vim 1.txt 2.txt # 查看所有buffer :ls :files # 切换 :buffer 2.txt :buffer 2 # 切换下一个 :bnext # 切换上一个 :bprevious # 删除 :bdelete 2.txt :bdelete 2 # 关闭所有buffer :qall # 关闭所有但不保存 :qall! # 保存并退出 :wqall

windows

vim 1.txt # 垂直切分 :split 2.txt # 左右切分 :vsplit 3.txt # 创建一个新窗口并打开名为filename的文件。 :new filename Ctrl-W H # 移动光标到左边的窗口 Ctrl-W J # 移动光标到下面的窗口 Ctrl-W K # 移动光标到上面的窗口 Ctrl-W L # 移动光标到右边的窗口 Ctrl-W V # 打开一个新的垂直分割的窗口 Ctrl-W S # 打开一个新的水平分割的窗口 Ctrl-W C # 关闭一个窗口 Ctrl-W O # 除了当前窗口,关闭所有其他的窗口

Tabs

vim file1.js # 在新tab中打开file2.js: :tabnew file2.js :tabnew file.txt # 在tab中打开一个文件 :tabclose # 关闭当前tab :tabnext # 切换至下一个tab :tabprevious # 切换至前一个tab :tablast # 切换至最后一个tab :tabfirst # 切换至第一个tab
badge