帮助
|
查找帮助 例如 |
退出Vim
|
退出Vim 操作在当文件有更改时会失败. |
|
忽略更改并退出Vim |
|
退出所有打开的文件 |
|
忽略更改并退出所有打开的文件 |
|
保存并退出Vim |
|
保存并退出所有文件 |
|
强制保存并退出Vim |
|
保存当前文件到{file}, 文件如果在编辑的话会失败 |
|
强制保存当前文件到{file} |
|
只保存指定行范围内的内容并且退出 例如 |
|
保存并且强制退出Vim 等同于 |
|
强制退出不保存 相当于 |
编辑文件
|
编辑(重新载入)当前文件 当文件被另一个用户重新保存时,:e命令会重新从文件系统加载文件 |
|
强制编辑(重新载入)当前文件 忽略当前更改,强制从文件系统重新加载文件,当需要忽略当前更改时有用 |
|
编辑{file} |
|
编辑{file} 忽略当前文件的更改,强制编辑{file} |
|
编辑光标下文件名所代表的文件 助记: goto file |
插入文本
|
在光标后开始插入 |
|
在光标所在行尾开始插入 |
|
在光标前开始插入 |
|
在光标所在行头开始插入 |
|
在当前光标下新起一行开始编辑 |
|
在当前光标上新起一行开始编辑 |
插入文件
|
读取并插入[name]的文件内容到当前光标下 例如 |
|
执行命令并且将命令的标准输出插入到当前光标下 例如 |
删除文本
|
删除光标之后的字符 |
|
删除光标之前的字符 |
|
删除{motion}所代表范围内的文本 例如 |
|
删除光标及以下一共[count]行, 如不指定[count]则删除光标所在行 |
|
删除光标所在行后面的字符 相当于 |
|
在可视化模式下删除选中的字符 查看可视化模式下的文本选择类目 |
|
在选择模式下删除选中的文本, |
|
在可视化模式下删除选中的行 |
|
删除[range]范围内的行 默认情况下删除当前光标所在行, 例如 |
|
从指定范围开始删除{count}行 例如 |
变更/替换文本
|
用{char}替换光标下的字符 |
|
进入插入模式,但是对于输入是替换而不是插入 例如按 |
|
切换光标所在字符的大小写,并且光标向右移 可以在光标所在处连续将后面的字符的大小写更改 |
|
替换{motion}范围内的文本的大小写 |
|
切换选中文本的大小写 |
|
切换选中文本到大写 |
|
块插入 按 |
|
块删除 按 |
信息
|
跳转和光标上的字符对应的字符上去 例如文本[error], 在[上 |
|
搜索光标所在单词并高亮 |
范围
范围允许将命令应用于当前缓冲区中的一组行。对于大多数命令,默认范围是当前行。
|
替换(substitute)
对范围内的每一行替换{pattern}为{string} :[range]s[ubstitute]/{pattern}/{string}/[c][e][g][p][r][i][I] [count] |
|
重复上一步:使用相同的搜索模式和替换字符串进行替换,但不使用相同的标志 :[range]s[ubstitute] [c][e][g][r][i][I] [count] :[range]&[c][e][g][r][i][I] [count] 你可以添加其他的标志。 |
|
替换时你能使用的参数如下:
|
拷贝/移动文本
|
使用寄存器存储临时数据,用于下一次操作 |
|
展示所有寄存器的值 |
|
查看指定寄存器的值 |
|
复制{motion}所代表的内容[到寄存器x] |
|
复制[count]行(默认当前行)[到寄存器x] |
|
可视化模式下复制选中文本[到寄存器x] 见选择文本相关内容 |
|
可视化模式下复制选中行[到寄存器x] |
|
复制[range]行范围[到寄存器x] |
|
复制{count}行[到寄存器x], [range]取最后一个数字 默认取当前行 |
|
粘贴[寄存器x]内容[count]次到光标后 默认是匿名寄存器 |
|
粘贴[寄存器x]内容[count]次到光标前 |
|
同 |
|
同 |
|
粘贴[寄存器x]内容到[line]行后 默认当前行 |
|
粘贴[寄存器x]内容到[line]行前 |
撤消、重做和重复
|
撤销前[count]个修改 |
|
撤销上一次操作 |
|
重做[count]个撤销操作,即恢复 |
|
重做上个撤销操作 |
|
恢复当前行(即一次撤销对当前行的全部操作) |
|
重复上一命令对编辑缓冲区的修改 |
光标移动
基础命令 k <上> h l <左> <右> j <下> |
|
|
向左移动 |
|
向右移动 |
|
向上移动 |
|
向下移动 |
|
行首 |
|
到行首的第一个非空字符 |
|
行尾 |
|
对于超出屏幕的一行,移动到屏幕的最左边不是整行的最左边,而是屏幕的最左边 |
|
与 |
|
对于超出屏幕的一行,移动到屏幕的最右边不是整行的最右边,而是屏幕的最右边 |
|
在当前行往右边寻找下一个{char}出现的位置
|
|
在当前行往左边寻找上一个{char}出现的位置 与 |
|
正向移动到下一个{char}的前一个字符上 |
|
反向移动到上一个{char}的后一个字符上 |
|
重复上一个 |
|
反方向重复上一个 当跳转过头了之后可以使用 |
|
向上[count]行,光标回到行首第一个非空字符上 |
|
向下[count]行,光标回到行首第一个非空字符上 |
|
向下[count]-1行,光标回到行首第一个非空字符上 |
|
去第[count]行首第一个非空字符 默认:最后一行 |
|
去第[count]行首第一个非空字符 默认:第一行 |
|
按照标点或者空格向右移动[count]个词,光标在词的开头 例如ii d d d,e,d w,dd, 对于空格和标点w都作为分隔符 |
|
按照空格向右移动[count]个词,光标在词的开头 例如ii d d d,e,d w,dd, 对于空格W作为分隔符 |
|
按照标点或者空格向右移动[count]个词,光标在词的结尾 |
|
按照空格向右移动[count]个词,光标在词的结尾 |
|
按照标点或者空格向左移动[count]个词,光标在词的开头 |
|
按照空格向左移动[count]个词,光标在词的开头 |
|
按照标点或者空格向左移动[count]个词,光标在词的结尾 |
|
按照空格向左移动[count]个词,光标在词的结尾 |
|
移动光标到屏幕上方 |
|
移动光标到屏幕中间 |
|
移动光标到屏幕底部 |
|
当前行滚动到屏幕中间 |
|
当前行滚动到屏幕顶部 |
|
当前行滚动到屏幕底部 |
以下命令在 |
|
|
向后跳过[count]个sentences |
|
向前跳过[count]个sentences |
|
向后跳过[count]个段落 |
|
向前跳过[count]个段落 |
|
向前跳过[count]节或者跳到下个第一列的{ 通过 |
|
向前跳过[count]节或者跳到下个第一列的} 通过 |
|
向后跳过[count]节或者跳到下个第一列的{ 通过 |
|
向后跳过[count]节或者跳到下个第一列的} 通过 |
标记
|
在光标所在位置设置标记{a-zA-Z} 标记可以方便在文档的不同位置之间跳转 |
|
设置前面的上下文标记 通过 |
|
在[range]的最后一个数字所在行首设置标记{a-zA-Z} 默认为光标所在行 |
|
跳转到标记{a-z} 例如 |
|
跳转到标记{A-Z0-9} 大写标记可以跨越不同的缓冲区, 即可以在不同的文件之间跳转 |
|
跳转到标记{a-z} |
|
跳转到标记{A-Z0-9},这个命令跨越不同的缓冲区 |
|
列出所有标记 |
|
列出指定的标记 |
搜索
|
往前搜索匹配{pattern}的内容 例如 |
|
往上或往下{offset}行向前搜索匹配{pattern}的内容 |
|
重复上一次向前搜索 |
|
重复上一次向前搜索 |
|
向后搜索匹配{pattern}的内容 |
|
往上或往下{offset}行向后搜索匹配{pattern}的内容 |
|
重复上一次向后搜索 |
|
重复上一次向后搜索 |
|
跳到下一个搜索结果 |
|
跳到上一个搜索结果 |
|
使用内部的grep命令在文件中搜索,, 结果放在QuickFix列表中,列表可以使用
|
选择文本(可视化模式Visual Mode)
要选择文本,请使用下面的命令之一进入可视化模式,并使用运动命令高亮显示感兴趣的文本。然后,对文本使用一些命令。 可以使用的操作符是:
|
|
|
按字符启动可视化模式 |
|
按行启动可视化模式(水平方向) |
|
按行启动可视化模式(垂直方向) |
|
退出可视化模式 |
|
可视化模式下选择当前光标所在单词 |
暂停
|
暂停Vim 将vim放置在后台, 使用 |
|
暂停Vim! |
多窗口
|
编辑另一个文件 |
|
水平拆分窗口然后打开另一个文件 |
|
垂直拆分窗口 |
|
水平拆分当前窗口 |
|
移动光标到上一个窗口 |
|
循环切换窗口 |
|
最大化当前矿口 |
|
所有窗口一样大 |
|
将当前窗口增大10行高度 |
|
垂直拆分并打开另一个文件 |
|
|
|
关闭当前窗口 |
|
仅保持当前窗口打开 |
|
展示当前缓存区列表(文件列表) |
|
打开缓冲区中编号为2的文件 |
|
关闭当前缓冲区 |
标签式浏览
当编辑程序时,通常需要跳转到另一个位置。Vim使用一个标记文件来列出每个单词和 的位置。标记文件必须由能够处理文件语法的实用程序创建,并且必须在进行了重要的编辑之后进行更新。 |
|
|
跳转到标签 |
|
跳转后返回 |
|
显示标签堆栈 |
内部列表
|
|
|
打开全局的QuickFix列表 |
|
关闭QuickFix列表 |
|
打开位置列表 |
Notes
- 基于 fprintf.
- 由cstfb基于Arief Bayu Purwanto 制作的Vim速查表翻译而来.