vim的基础用法熟悉之后(基础用法见linux下vim编辑器的使用方法),有一些容易忽视的快捷键值得熟记,以提高效率。
命令模式
-
字符操作
Ctrl+f(Ctrl+d) 向前滚动一屏(半屏) Ctrl+b (Ctrl+u)向后滚动 一屏(半屏) dtn 删除光标到字符n之间的字符 ddp 交换当前行和下一行 w 往前移动一个单词 b 往后移动一个单词 u 取消上一个操作 Ctrl+r 或 .(小数点) 重复上一个操作 dgg或d1G 删除到文件开始 dG 删除到文件尾 dw 删除光标到单词结尾 daw 删除光标所在的整个单词 r 替换单个字符 R 进入替换模式 ,按esc退出 J 将光标所在行与下一行的数据结合成同一行 cc 替换整行 cw 替换一个单词 C 替换至行尾 D 删除至行尾
-
排版功能
>> 向左缩进 << 向右缩进 n>> n<< 多n行同时缩进 :ce 居中 :le
-
注释功能
多行注释在命令行模式下,ctrl+v 进入visual block模式,用j或者k选择要注释的多个行, 按大写字母I,在插入注释符//,按esc键就可以添加多行注释
取消多行注释
在命令行模式下,ctrl+v 进入visual block模式,用l或h选择列,用j或者k选择行, 按字母d,就可以取消多行注释
或者采用替换命令进行注释
:3,5s/^/#/g 注释3-5行 :3,5s/^#//g取消3-5行的注释
插入模式
home 光标移动到行首
end 光标移动到行尾
底线命令模式
:1,10d 删除1-10行
:1,10 m 20 将1-10行移动到第20行之后
:s/word1/word2/g 在当前行中用word2替换所有的word1
:n1,n2s/word1/word2/g 在n1到n2行中用word2替换所有的word1
:1,$s/word1/word2/g 或 :%s/word1/word2/g 在整个文件中用word2替换所有的word1
:w [filename] 另外为
:w [filename] 将 n1 到 n2 的内容储存到filename
:r [filename] 在光标所在行的下一行读入另一个文件的内容
ZZ 若文件没有更动,则不储存离开,若文件已经被更动过,则储存后离开
:! command 暂时离开 vi 到shell下执行 command