Vim实用技巧(1)——Vim解决问题的方式

Vim解决问题的方式

技巧1 认识 "." 命令

. 命令可以重复上次的修改

  • x:删除光标下的字符
  • dd:删除整行
  • >G:增加从当前行到文档末尾处的缩进层级

. 命令是一个微型的宏(macro)

技巧2 不要自我重复

在行尾添加内容

  • 在行尾添加字符:$a, 输入,Esc
  • 使用 . 命令在下一行重复:j$.,省略了a 输入 Esc

一箭双雕

使用复合命令进一步优化

  • A = $a
  • j.

其他复合命令

  • x = dl:删除当前光标下的字符
  • X = dh:删除当前光标左边的字符
  • D = d$:删除到行尾的内容
  • C = c$:修改到行尾的内容
  • s = cl:修改一个字符
  • S = ^C:修改一整行
  • I = ^i:在行首插入
  • A = $a:在行尾插入
  • o = A<CR>:在下一行插入
  • O = ko:在上一行插入

技巧3 以退为进

在一个字符前后各添加一个空格

  1. 通过f+查找下一处"+"出现的位置,如果出现了,将光标移动到"+"处
  2. 利用s命令把两个操作合为一个,用"_+_"代替"+"
  3. 利用;找到下一个"+",跳过头的话用,命令跳回去
  4. .重复

技巧4 执行、重复、回退

面对重复性工作时,需要让移动动作和修改动作都能够重复

  • @.:重复任意Ex命令,见技巧31
  • &:重复上次的:substitute命令,见技巧93
目的 操作 重复 回退
做出一个修改 {edit} . u
行内查找下一指定字符 f{char}/t{char} ; ,
行内查找上一指定字符 F{char}/T{char} ; ,
在文档中查找下一处匹配项 /pattern<CR> n N
在文档中查找上一处匹配项 ?pattern<CR> n N
执行替换 :s/target/replacement & u
执行一系列修改 qx{changes}q @x u

技巧5 查找并手动替换

  • 方法一::%s/target/replacement/gc
  • 方法二:
    • /target
    • cwreplacement<Esc>
    • n
    • .
  • 方法三:
    • *
    • cw
    • n.

技巧6 认识.范式

理想模式:一键移动,一键执行

  • A;<Esc>: j + .
  • f+s : ; + .
  • *cw : n + .
posted @   S!no  阅读(62)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示