n3wFake3

Vim notes

记录没使用过或使用次数少的操作

文件操作

  • Ctrl+w+w编辑多个文件时切换窗口
  • Ctrl+G显示文件信息

删除类

  • x删除光标所在的字符
  • d{n}向下删除n行
  • d{n}e向后删除n个单词到该单词末尾

插入类

  • i在字符后插入字符,A在一行后插入字符
  • r替换光标所在字符
  • ce/cw 删除光标到单词末尾的字符并进入插入模式
  • c$删除光标到末尾字符并进入插入模式
  • c{n}b/c{n}w向前向后删除n个单词

移动类

  • w移动到下个单词的首字符,可和具体step配合,2w
  • e移动到下个单词的尾字符,可和具体step配合,2e
  • {n}g跳转到指定行,而不需要输入:{n}即可
  • e 跳转到单词的末尾(配合a使用)

撤销类

  • u撤销一步,U恢复当前行的初始状态
  • Ctrl+R撤销所做的撤销动作

查找类

  • n往下查找,N往上查找
  • ?逆向查找字符串,/顺向查找字符串
  • Ctrl+O回退到上一个查找到的字符串
  • Ctrl+I跳转到较新的位置
  • %查找配对的括号)]}
  • 使用查找命令后,默认是开启大小写敏感,需要忽略大小写,需要设置ic选项,set ic则可以查找到所有匹配的字符串(大小写)
    • set hls is : 高亮搜索到的字符串
    • set nohls is/nohlsearch : 取消高亮
    • set ic : 忽略大小写
    • set noic : 禁用忽略大小写
    • /ignore\c : 仅在一次查找时忽略大小写

替换类

  • :s/old/new 替换当前行的第一个oldnew
  • :s/old/new/g 替换当前行的所有oldnew
  • n,ms/old/new/g 替换n行到m行的所有oldnew,不加g则是替换每行匹配到的第一个
  • :%s/old/new/g[c] 替换整个文件的oldnew,c则是再次确认
  • R 连续替换多个字符,直到按下ESC(类似于INSERT)

命令执行类

  • :! ls执行外部shell命令
  • 使用v选择部分文本后,输入:后再输入w newfile会将选中文本保存到newfile
  • :r newfilenewfile读取文本内容并替换光标处开始的字符
  • Ctrl+D 可以补全vim命令
comments powered by Disqus