vim 常用指令小结

    • 移动光标
        • 字符: h,j,k,l
        • 单词 :
        • 行:
        • 句子:
        • 段落 :
        • 屏 :
        • 页 :
        • 文件:
      • 文本编辑
        • 字符:
        • 单词(目前的我看来智障般的设定2018.5.12)
        • 句子
        • 段落
        • 复制与粘贴
        • 撤消与重做和删除
        • 重复操作
        • 交换相邻字符或行
        • 大小写转换
        • 显示字符内码
      • 文本搜索和替换
        • 搜索
            • 搜索翻页
        • 快速搜索
        • 显示搜索命令历史
        • 替换

启动

vim \

移动光标

vim 键盘的很多快捷指令是对应不同的字符,要高效的使用vim 就需要理解操作所对应的原则

先定单位再定量

操作对象的范围计算公式为: 操作范围 = 操作次数 * 操作单位

如: 5h 命令左移5个字符,8w命令左右8个单位。

vim 中操作单位从小到大顺序 –相应的操作命令:

字符 – h, l

单词 – w, W, b, B, e

行 – j, k, o, ^, $, :n

句子 – (、)

段落 – {、}

屏 – H, M, L

页 – Ctrl-f, Ctrl-b, Ctrl-u, Ctrl-d

文件 – G, gg, :0, :$

字符: h,j,k,l

单词 :

  • W/w 移动到下个单词开头
  • B/b 移动到上个单词开头
  • E/e 移动到光标所在的单词末尾

W E B 命令操作的单词是以空白字符分割的

行:

  • o 移到当前行开头
  • ^ 移到当前行第一个空字符
  • $ 移动到当前行末尾
  • :n 移动到第 n 行

句子:

  • ) 移动到当前句子末尾
  • ( 移动到当前句子开头

段落 :

  • } 移动到当前段落末尾
  • { 移动到当前段落开头

屏 :

  • H 移动到屏幕第一行
  • M 移动到屏幕中间
  • L 移动到屏幕最后一行

页 :

  • Ctrl-f 向前滚动一页
  • Ctrl-b 向后滚动一页
  • Ctrl-u 向前滚动半页
  • Ctrl-d 向后滚动半页

文件:

  • G 移动到文件末尾
  • gg 移动到文件开头
  • :0 移动到文件第一行
  • :$ 移动到文件最后一行

文本编辑

字符:

  • x 删除光标位置的字符

  • c 更改当前字符并进入插入模式

  • s 替换光标位置的字符并进入插入模式
  • i 在当前位置的字符之前进入插入模式
  • a 在当前位置的字符之后进入插入模式

单词(目前的我看来智障般的设定2018.5.12)

  • cw/ cW 删除当前单词从光标开始的部分并进入插入模式
  • dw/dW 删除当前单词从光标开始部分但不进入插入模式
  • cb/cB 删除当前单词从光标所在位置至单词开始的部分并进入插入模式
  • db/dB 删除当前单词从光标所在位置至单词开始部分但不进入插入模式

  • dd 删除当前行

  • d0 删除从当前光标开始到行末的内容 删除至行头

  • I 在当前行的行首进入插入模式

  • A 在当前的行尾进入插入模式

  • o 在当前行下方另起一行进入插入模式

  • O 在当前行上方另起一行进入插入模式

    句子

    • d) 删除当前句子从光标位置开始到句末的内容
    • d( 删除当前句子从光标位置开始到句首的内容

段落

  • d} 删除当前段落从光标位置开始到段首的内容
  • d{ 删除当前段落从光标位置开始到段末的内容

复制与粘贴

  • yw 复制当前单词从光标开始的部分
  • yy 复制光标所在行的所有字符
  • p 将最后一个删除或复制文本放在当前字符
  • P 将最后一个删除或复制文本放在当前字符之前

撤消与重做和删除

  • u 撤消更改
  • Ctrl-R 重做更改
  • dd 删除整行
  • d + $ 从某处删到行尾

重复操作

  • . 重复上次操作

. 为小数点(dot)

交换相邻字符或行

  • xp 交换光标位置的字符和它右边的字符

大小写转换

  • ~ 将光标下的字母大小写反向转换 (需加shift 方可食用)
  • guw 将光标所在的单词变为小写
  • gUw 将光标所在的单词变为大写
  • guu 光标所在的行所有字符变为小写
  • gUU 光标所在的行所有字符变为大写
  • g~~ 光标所在的行所有字符大小写反向转换

显示字符内码

  • ga 显示光标所在字符的内码(包括十进制码,十六进制码以及八进制码)

文本搜索和替换

搜索

  • / 在文件中向前搜索
  • ? 在文件中向后搜索
搜索翻页
  • N往前翻
  • n 往后翻
  • 可使用正则表达式
  • 可配合操作数使用,比如 3/str 向前搜索字串 str 并将光标移到第三个找到的串

快速搜索

  • * 在文件中向前搜索当前光标所在的单词
  • # 在文件中向后搜索当前光标所在的单词

显示搜索命令历史

  • q/ 显示搜索命令历史的窗口
  • q? 显示搜索命令历史的窗口
  • q: 显示命令行命令历史的窗口

替换

$s/class/clazz/g 

量词要加反斜杠 如 /class\w+ 表示 class后面还能跟内容 如果单打 + 表示 + 号

%是范围

/class/clazz 把class 替换成 clazz

g 表示范围 gloabl

你可能感兴趣的:(vim 常用指令小结)