参考答案:
vim 是一种功能强大的文本编辑器,广泛用于代码编写和文件编辑。它是 vi 编辑器的增强版,支持更多的功能和插件。vim 提供了多种模式、命令和操作方式,下面是一些常见的 vim 命令和用法。
vim 工作模式:vim 有三种基本的工作模式:
可以通过按下不同的键在这三种模式之间切换:
i 进入 插入模式。Esc 进入 普通模式。: 进入 命令模式。vim filename:打开文件 filename,如果文件不存在会创建一个新文件。:w:保存文件(不退出)。:wq 或 ZZ:保存文件并退出。:q:退出 vim(如果文件没有修改)。:q!:强制退出,不保存文件。:x:与 :wq 等效,保存并退出。h:向左移动一个字符。j:向下移动一行。k:向上移动一行。l:向右移动一个字符。0:移动到当前行的开头。$:移动到当前行的末尾。gg:移动到文件的开头。G:移动到文件的末尾。nG:移动到第 n 行。Ctrl + f:向前翻页。Ctrl + b:向后翻页。i:进入 插入模式,在当前光标位置前插入。I:进入 插入模式,在当前行的开头插入。a:进入 插入模式,在当前光标位置后插入。A:进入 插入模式,在当前行的末尾插入。o:在当前行下方打开一个新行并进入 插入模式。O:在当前行上方打开一个新行并进入 插入模式。x:删除当前光标所在位置的字符。dd:删除当前行。D:删除从当前光标位置到行末的内容。dw:删除当前光标所在位置到下一个单词的内容。cw:修改当前光标所在位置到下一个单词的内容。yy:复制当前行。p:粘贴复制或剪切的内容到当前光标后。P:粘贴复制或剪切的内容到当前光标前。/pattern:查找文本 pattern,光标会跳转到第一个匹配的位置。?pattern:向上查找文本 pattern。n:查找下一个匹配项。N:查找上一个匹配项。:%s/old/new/g:将文件中的所有 old 替换为 new。:s/old/new/g:将当前行中的所有 old 替换为 new。:s/old/new/:将当前行中第一个 old 替换为 new。u:撤销上一次操作。Ctrl + r:重做上一次撤销的操作。y:复制(yank)选中的文本。d:剪切(delete)选中的文本。p:粘贴(paste)文本到光标后。P:粘贴(paste)文本到光标前。v:进入 可视模式,用来选择字符。V:进入 可视行模式,用来选择整行。Ctrl + v:进入 可视块模式,用于选择矩形区域。:w:保存文件。:w filename:将文件保存为指定的 filename。:q:退出 vim(如果文件没有修改)。:q!:强制退出 vim,不保存文件。:x 或 :wq:保存并退出。:set number:显示行号。:set nonumber:隐藏行号。:set autoindent:启用自动缩进。:set tabstop=4:设置制表符宽度为 4。:set expandtab:启用将 Tab 替换为空格。:set list:显示空格、Tab 等不可见字符。:set nowrap:禁用行自动换行。:e filename:编辑指定的文件。:w filename:保存文件为指定的 filename。:r filename:读取并插入文件 filename 内容到当前文件中。:t filename:复制当前行到文件 filename。:!command:在 vim 内执行外部命令(如 :!ls)。:split 或 :sp:水平分割窗口。:vsplit 或 :vsp:垂直分割窗口。Ctrl + w + w:切换窗口。Ctrl + w + q:关闭当前窗口。:tabnew:打开一个新的标签页。:tabnext 或 gt:切换到下一个标签页。:tabprev 或 gT:切换到上一个标签页。:undolist:查看撤销历史。:u:撤销操作。:redo:重做操作。最近更新时间:2024-12-24