Vim 实用技巧(持续更新中!)
发布日期:2021-05-07 17:48:52 浏览次数:19 分类:精选文章

本文共 1163 字,大约阅读时间需要 3 分钟。

Vim 实用技巧

1. 认识 . 命令

. 命令作用

  • 重复上次修改:可以重复上次执行的操作。例如:
    • 输入 x 会删除光标下的字符,使用 . 会重复删除光标下的字符。
    • 输入 dd 会删除当前行,使用 . 会重复删除当前行。

应用举例

  • 插入模式中的宏:插入模式中的每次操作都会被记录,使用 . 会重复执行这些操作。

2. 不要自我重复

行尾添加分号

  • 方法
    • 使用 j$ 移动到行尾并添加分号:
      j$.
    • 使用 . 命令会自动添加分号并返回插入模式。

改进方式

  • 使用 A 命令:将 a 命令替换为 A,然后输入分号并按回车键:
    A;

    之后可以使用 . 重复操作。

一箭双雕

  • 复合命令
    • C 删除到行尾并进入插入模式。
    • c$ 等效于 C
    • s 删除当前字符并进入插入模式。
    • cl 等效于 s

3. 以退为进

需求

  • 将 JavaScript 字符串拼接的加号前后都加上空格。

方法

  • 使用 f+ 查找加号:
    f+

    然后输入空格并按回车键:

    s  

    使用 ; 重复查找上次查找的位置,使用 . 重复修改。


4. 执行、重复、回退

操作控制

  • 撤销
    • 多按了 .,使用 u 撤销上次修改。
    • 多按了 ;,使用 , 跳转回去。

常用表格

目的 操作 重复方式 撤销方式
修改操作 {修改} . u
查找下一字符 f{字符}/t{字符} ; ,
查找上一字符 F{字符}/T{字符} ; ,
文档查找 /pattern n/N ?pattern
执行替换 :s/target/replacement & u
一系列操作 qx{修改}q @x u

5. 查找并手动替换

需求

  • 将文本中的 content 替换为 copy

方法

  • 使用 * 查找当前光标下的单词:
    content

    或者直接将光标移动到 content 上:

    *
  • 输入 cw 替换为 copy
    cwcopy
  • 使用 n. 重复修改。

6. 认识 . 模式

. 模式特点

  • 只需按一次键即可移动光标到下一个目标位置。
  • 使用 . 重复上次修改。

优势

  • 灵活性高:只需一次按键即可完成复杂操作。
  • 高效操作:适合处理大量重复性任务。

7. 停顿时请移开画笔

原则

  • 正常模式是 Vim 的默认状态,适合长时间编辑。
  • 长时间停顿会导致注意力分散,建议定期返回插入模式。

8. 切分撤销单元

控制粒度

  • 使用 u 命令触发撤销,粒度可根据需求调整。
  • 保持每次插入模式的内容作为一个独立的撤销单元。

适用场景

  • 适合处理单词、句子或段落的修改。

9. 构造可重复的修改

需求

  • 删除单词 nigh,光标位于 h

方法

  • 反向删除:
    db.
  • 正向删除:
    b dw.
  • 删除整个单词:
    aw.

决胜局

  • 使用 daw 可以发挥 . 命令的最大威力。

通过以上技巧,Vim 的编辑效率可以显著提升。

上一篇:我们在 Python 中使用 for 循环迭代时到底做了什么
下一篇:Python 中的 all() 和 any()

发表评论

最新留言

很好
[***.229.124.182]2025年03月28日 03时36分44秒