Vim常用快捷键

断断续续接触Vim也有几年了,从刚开始的用的很不习惯,到现在用不惯其它编辑器,真心觉得Vim你用的时间越久越能感觉到它的好,快捷,方便,简洁,功能强大
Vim由于功能太多,太强,已经脱离单纯的文本编辑器的范畴了,比如可以把Vim打造成一个IDE环境,但是对于大多数的人,Vim恐怕还仅仅是个普通的文本编辑器,甚至连趁手都说不上,所以这篇博客就说下最常用的Vim的快捷键,不常用的就不说了


打开与关闭

  1. vim /path/to/file
  2. vim +12 /path/to/file(打开文件后处于第12行上)
  3. vim $ /path/to/file(打开文件后处于最后一行上)
  4. q(直接退出不保存)
  5. wq(保存并退出)
  6. q!(强制退出,不保存)
  7. shift+z+z(保存退出)
  8. shift+z+q(不保存退出)

移动光标

字符移动

1.h: 左
2. j: 下
3. k: 上
4. l: 右
5. 3h: 左移3个
6. 4k: 下移4行(其它类推)

行内移动

  1. 0: 绝对行首
  2. ^: 行首的第一个非空字符处
  3. $: 绝对行尾
  4. w: 下个单词词首
  5. e: 下个单词词尾
  6. b: 上个单词词首
  7. 3w: 下3个单词词首
  8. 5b: 上5个单词词首(其它类推)

行间移动

  1. H: 文件头
  2. M: 文件中间
  3. L: 文件末尾
  4. 10G: 第10行
  5. 4+: 下4行=4j
  6. 5-: 上5行=5k
  7. {: 上一段
  8. }: 下一段

翻屏

  1. ctrl+d(向下翻半屏)
  2. ctrl+u(向上翻半屏)
  3. ctrl+f(向下翻一屏)
  4. ctrl+b(向上翻一屏)

删除

单字符删除

  1. x: 向后删除一个字符
  2. X: 向前删除一个字符

多个字符删除

  1. d0: 删除从当前字符到行首的所有
  2. d$: 删除从当前字符到行尾的所有
  3. d^: 删除从当前字符到行首第一个非空字符的所有
  4. 3dh: 删除从当前字符向左的3个字符
  5. 5dk: 删除当前行以上的5行(其余类推)
  6. dd: 删除当前行
  7. dw: 删除从当前向后的一个单词的词首
  8. de: 删除从当前向后的一个单词词尾
  9. db: 删除从当前向前的一个单词词首

复制

  1. y0: 复制从当前字符到行首的所有
  2. y$: 复制从当前字符到行尾的所有
  3. y^: 复制从当前字符到行首第一个非空字符的所有
  4. ydh: 复制从当前字符向左的3个字符
  5. ydk: 复制当前行以上的5行(其余类推)
  6. yy: 复制当前行
  7. yw: 复制从当前向后的一个单词的词首
  8. ye: 复制从当前向后的一个单词词尾
  9. yb: 复制从当前向前的一个单词词首

替换

  1. r: 替换当前的单个字符
  2. R: 从当前开始一直替换,直到ESC按下

粘贴

  1. p: 粘贴最近一次复制/删除的内容(非整行粘贴至光标所在字符之后, 整行粘贴至光标所在字符下一行)
  2. P: 粘贴最近一次复制/删除的内容(非整行粘贴至光标所在字符之前, 整行粘贴至光标所在字符上一行)

撤销

  1. u: 撤销所做的更改(比如删除等)
  2. ctrl+r: 撤销上一次撤销的(比如你撤销错了)

重复

  1. .: 重复上一次编辑(比如重复删除,粘贴之类的)

模式

模式切换

  1. 编辑模式 —-> 命令模式 (ESC)
  2. 命令模式 —-> 末行模式 (:)
  3. 末行模式 —-> 命令模式(ESC)

末行模式

  1. 10,20d:删除10-20行
  2. ., +5y: 复制当前行和向下5行的内容
  3. .,$-1d: 删除当前行和直到倒数第二行的内容

查找

  1. /patten: 按照匹配的模式,从当前行向后查找
  2. ?pattern: 按照匹配的模式,从当前行向前查找
  3. 查找到之后,n: 下个匹配内容,N: 上个匹配内容

替换

sed一样
1. 10, $-1s/he/HE/g(从当前行到倒数第二行,把所有的he替换为HE)

我常用的基本就这些,其它的大家自己去网上照资料吧,个人感觉应该够用!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值