本节书摘来自异步社区《Vim实用技巧(第2版)》一书中的第1章,第1.4节,作者:【英】Drew Neil(尼尔)著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.4 执行、重复、回退

在面对重复性工作时,我们需要让移动动作和修改都能够重复,这样就可以达到最佳编辑模式。Vim对此的支持是:它会记住我们的操作,并使最常用的操作触手可及,所以可以很方便地重复执行它们。本节将介绍 Vim 可以重复执行的每个操作,并学习如何回退这些命令。
我们已经看到 . 命令会重复上次修改。由于很多操作都被当成一次修改,因此 . 命令已经证明了它的神通广大。但有些命令能以其他的方式重复。例如,@: 可以用来重复任意Ex命令(在技巧31中讨论),或者也可以输入 & (参见技巧93)来重复上次的 :substitute命令(它本身也是一条Ex命令)。

如果我们知道如何重复之前的操作,而无需每次都输入整条命令,那么就会获得更高的效率。可以先执行一次,随后只需重复即可。

然而,这么少的按键就可以完成这么多的事情,这也可能会带来麻烦。我们需要很小心地操作才行,不然就很容易出错。当一遍又一遍地连续按 j.j.j. 时,那种感觉就像是在敲鼓。可是,如果不小心在一行上敲了两次 j 键,会发生什么?或是更糟,敲了两次 . 键?

当Vim让一个操作或移动可以很方便地重复时,它总是会提供某种方式,让我们在不小心做过头时能回退回来。对 . 命令而言,我们永远可以按 u 键撤销上次的修改。如果在使用 f{char} 命令后,不小心按了太多次 ; 键,就会偏离我们的目标。不过可以再按 , 键跳回去,这个命令会反方向查找上次f{char}所查找的字符(参见技巧50)。

当不小心做过头时,知道怎么回退会很有帮助。表1-1总结了Vim中可重复执行的命令,以及相应的回退方式。在多数场景中,撤销(undo)都是我们想要使用的命令,难怪我键盘上的 u 键磨损得这么厉害!

表1-1 可重复的操作及如何回退

《Vim实用技巧(第2版)》——1.4 执行、重复、回退相关推荐

  1. vim实用技巧(第二版)........持续更新ing

    全书共123个技巧,每天更新两个,计划两个月更新完. (目前更新完技巧39) vim实用技巧第二版全部教学内容 前言 第1章 Vim解决问题的方式  技巧1 认识 . 命令  技巧2 不要自我重复   ...

  2. 《Vim实用技巧(第2版)》学习笔记:技巧12-双剑合璧,天下无敌

    <Vim实用技巧(第2版)>学习笔记:技巧12-双剑合璧,天下无敌 1. 操作符 + 动作命令 = 操作 d{motion}命令可以对一个字符.一个完整单词或一整个段落进行操作,它作用的范 ...

  3. 《Vim实用技巧(第2版)》——2.6 双剑合璧,天下无敌

    本节书摘来自异步社区<Vim实用技巧(第2版)>一书中的第2章,第2.6节,作者:[英]Drew Neil(尼尔)著,更多章节内容可以访问云栖社区"异步社区"公众号查看 ...

  4. Vim实用技巧:global命令

    :global命令结合了Ex命令与Vim的模式匹配这两方面能力.凭借该命令,可以在某个指定模式的所有匹配行上运行Ex命令.就处理重复工作的效率而言,global 命令是除点范式以及宏之外,最为强大的V ...

  5. vim实用技巧-笔记(第九章)

    vim实用技巧-笔记(第九章) 前言 我记得很早以前我就说过了,我是一个菜鸟,我写博客的主要目的不是为了别人,更多的是为了记录自己的成长过程.如果阁下认为我的行为是在划水的话,那我也不妨大方地承认. ...

  6. Vim实用技巧高清完整版PDF中文

    Vim实用技巧高清完整版PDF是一本中文版的参考教材,该书适合想要学习和掌握 Vim 工具的读者阅读,有一定 Vim 使用经验的程序员,也可以参考查阅以解决特定的问题. 欢迎大家下载阅读学习:http ...

  7. Vim实用技巧_2.普通模式和插入模式

    下面介绍vim的几种常用模式的技巧 vim有4种模式:普通模式,插入模式,可视模式,命令模式 为什么要分这么多模式? 想一想我们平时常用的编辑工具word,应该是将上面4种模式融合在一起的:这种做法的 ...

  8. Vim实用技巧pdf

    下载地址:网盘下载 内容简介  · · · · · · vim是一款功能丰富而强大的文本编辑器,其代码补全.编译及错误跳转等方便编程的功能特别丰富,在程序员中得到非常广泛的使用.vim能够大大提高程序 ...

  9. Vim实用技巧(第2版)

    ISBN:978-7-115-42786-1 作者:[英]Drew Neil 译者:杨源 车文隆 页数:289页 阅读时间:2020-04-05 推荐指数:★★★★★ Linux系统默认的经典强大的文 ...

最新文章

  1. python二维元组_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
  2. CSS超出部分隐藏,显示滚动条
  3. 【leetcode】589. N-ary Tree Preorder Traversal
  4. 卡尔曼滤波:从入门到精通
  5. 最简单EXT调用WCF
  6. 方立勋_30天掌握JavaWeb_Session
  7. 自驾游,遇陌生夫妻搭车坐了一千多公里,执意要给钱,我能收吗?
  8. 《从Excel到R 数据分析进阶指南》一第1章 生成数据表1.1 导入数据表
  9. SQL Server 2005 中的客户端 XML 处理
  10. Illustrator 教程,如何在 Illustrator 中重新塑造文本?
  11. LINUX创建桌面运行快捷方式
  12. 经典字符串匹配算法——KMP算法
  13. astah java版本_astah professional
  14. 如何使用cpolar内网穿透群晖NAS套件
  15. 【经济模型】CAPM模型实例验证
  16. [游戏技术] Hunter Mode 猎人模式v1.8(重制版)
  17. FxFactory 7 Mac版(Mac视觉特效插件包)
  18. 第一章-走近群智感知,辨识庐山真面目
  19. node-opcua的使用 --- [2] 添加对象和变量
  20. makefile初识

热门文章

  1. JavaScript进阶高级
  2. Mac笔记本查看端口
  3. python实践项目(十)
  4. 剑指offer面试题[36]-数组中的逆序对
  5. 21天Jenkins打卡Day10-自动触发项目构建
  6. windows oracle增量备份脚本,oracle 增量备份脚本
  7. tomcat中间件的默认端口号_死磕Tomcat系列(1)——整体架构
  8. ant里面table嵌套子表格_ElementUI el-table行内编辑验证,动态增减行
  9. 7年,我从功能测试到测试开发,写给即将进入或者正在做测试的你...
  10. PAT甲级 1003 Dijkstra的口诀干货