vim

插入模式

  • a -- 在光标后插入
  • o -- 在当前行后插入新的一行
  • O -- 在当前行前插入新的一行
  • cw -- 删除光标所在位置单词的从光标到单词结尾部分

移动光标

  • 0 -- 数字0,当行头
  • ^ -- 到本行第一个不是blank字符的位置(blank字符就是空格,tab, 换行,回车等)
  • $ -- 到本行行尾
  • /test -- 搜索test的字符串(搜索出多个结果,可按n键到下一个)
  • NG/:N -- 到第N行(G是大写的)
  • gg -- 到第一行(相当于1G,或:1)
  • G -- 到最后一行
  • w -- 到下一个单词的开头
  • e -- 到下一个单词的结尾
  • % -- 匹配对应点括号,如(,{, [。(需要把光标先移到括号上)
  • 和# -- 匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(是下一个,#是上一个)
  • 很多命令可以和移动光标的命令联动

如0y$
    * 0 -- 先到行头
    * y -- 从这里开始拷贝
    * $ -- 拷贝到本行最后一个字符 
可以输入ye,从当前的位置拷贝懂啊本单词的最后一个字符。
也可以输入y2/test来拷贝2个“foo”之间的字符串
还有很多时间并不一定要按y才能拷贝,下面的命令也会拷贝:
    * d(删除)
    * v(可视化选择)
    * gU(变大写)
    * gu (变小写)
(可视化选择可以先按v,然后移动光标,文本就会被选择,
然后可以d,可以y,可以改变大小写)

拷贝/粘贴

  • p/P -- 粘贴(p是在当前位置之后,P是在当前位置之前)
  • yy -- 拷贝当前行(想当于ddp -- dd删除当前行后保存至粘贴板)

撤销/重做

  • u -- 撤销上一个编辑操作
  • Ctrl-r -- 如果撤销太多,回退前一个命令(撤销一个撤销)

打开/保存/退出/改变文件

  • :e -- 打开一个文件
  • :w -- 存盘
  • :saveas -- 另存为
  • :x, ZZ , :wq 保存并退出(:x表示紧在需要时保存,ZZ不需要输入冒号并回车)
  • :q! -- 退出不保存,:qa!强行退出正在编辑的文件,就算别的文件有更改。
  • :bn, :bq -- 可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件(可以使用:n到下一个文件)

重复执行命令

  • . -- (小数点)可以重复上一次的命令
  • N -- 重复某个命令N次
 2dd -- 删除2行
3p -- 粘贴文本3次
100itest [ESC] -- 会写下"
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test 
test test test test test test test test test test"
 . -- 重复上一个命令 -- 100"test"
 3. -- 重复3次"test"

你可能感兴趣的:(vim)