vim 常用指令小结

启动

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值