vim

常用命令
- 打开文件:
vim filename- 打开名为filename的文件。 - 保存文件:
:w- 将当前文件保存到硬盘上。 - 退出Vim:
:q- 关闭当前文件,如果没有修改则直接退出。 - 强制退出Vim:
:q!- 关闭当前文件并放弃对文件的任何修改,强制退出。 - 保存并退出Vim:
:wq或:x- 保存当前文件并退出。 - 在文本中移动: 使用方向键或
h,j,k,l分别表示左、下、上、右移动。 - 删除字符:
x- 删除光标所在位置的字符。 - 复制/粘贴:
yy- 复制一行;p- 粘贴已复制的内容。 - 撤销:
u- 撤销上一步操作。 - 重做:
Ctrl-r- 重做上一步撤销的操作。 - 跳转到行首/行尾:
0- 跳转到行首;$- 跳转到行尾。 - 搜索:
/pattern- 在文本中搜索pattern,按n找到下一个匹配项。 - 替换:
:%s/pattern/replacement/g- 将所有匹配pattern的内容替换为replacement。 - 设置行号:
:set number- 在左侧显示行号。 - 保存并退出Vim:
ZZ- 保存当前文件并退出。
进阶
基本命令
:help:打开 Vim 帮助文档:q:退出 Vim 编辑器:q!:强制退出 Vim 编辑器,丢弃所有修改:w:保存文件:wq:保存文件并退出 Vim 编辑器:x或ZZ:如果文件已修改,则保存并退出;否则只退出:e <file>:打开指定文件进行编辑
光标移动
h:向左移动一个字符j:向下移动一行k:向上移动一行l:向右移动一个字符0:将光标移动到当前行的行首$:将光标移动到当前行的行尾gg:将光标移动到文件的第一行开头G:将光标移动到文件的最后一行开头<line number>G:将光标移动到指定行(例如,12G将光标移动到第 12 行)
插入和编辑
i:在当前光标位置之前插入文本a:在当前光标位置之后插入文本o:在当前行之下插入一个新行,并进入插入模式O:在当前行之上插入一个新行,并进入插入模式x:删除光标处的字符dd:删除当前行yy或Y:复制当前行p:粘贴已复制或删除的内容u:撤销上一次操作<Ctrl-r>:重做上一次被撤销的操作
搜索和替换
/<pattern>:向下搜索匹配<pattern>的文本?/<pattern>:向上搜索匹配<pattern>的文本n:跳到下一个匹配项N:跳到上一个匹配项:%s/old/new/g:在整个文件中替换所有出现的 "old" 为 "new":s/old/new/g:在当前行替换所有出现的 "old" 为 "new"
窗口和分屏
:split:水平拆分当前窗口,打开一个新窗口:vsplit:垂直拆分当前窗口,打开一个新窗口<Ctrl-w> <arrow key>:在不同窗口间切换焦点<Ctrl-w> +:增加窗口的高度<Ctrl-w> -:减小窗口的高度<Ctrl-w> >:增加窗口的宽度<Ctrl-w> <:减小窗口的宽度
其他常用命令
:set number:显示行号:set nonumber:隐藏行号:set syntax=<filetype>:将当前文件语法设置为<filetype>,以便语法高亮显示:set tabstop=<num>:设置 Tab 键的宽度为<num>:set expandtab:将 Tab 键转换为空格:set noexpandtab:禁止将 Tab 键转换为空格