第一个“回撤”简单,就是简单的往前回退,没有方向。但接着就有了方向,是继续 “往前” 还是 回撤“回撤” 的往后呢?
在emacs的viper模式中是这么解释的:
Viper supports multiple undo: ‘u’ will undo. Typing ‘.’ will repeat undo.
Another ‘u’ changes direction.
第1次回撤按 “u” ,然后接着按 “." 是继续往前。如果这时按 ”u“则往后。
举例:
依次打印字符:tools
删掉oo:tls
插入ee:teels
按u:tools
这时出现分支:
若按u:则代表撤销”撤销“,即撤销刚才的回复操作,刚才是把tools变成teels,按u后又变成tools,这时如果继续按u,则代表再次撤销”撤销“操作,即有变为 teels。
若按点操作 ”.“ :则变为继续往前操作,即删除整个单词tools,为什么?
整个书写过程分为3步,第0步:无,第1步:写入tools,第2步:改为teels,当按”u“时,回退到第1步,即变为tools,当按 ”." 时,代表继续往前回退,即回退到第0步的状态,即无。什么也没有的状态。如果按的不是 "." 而是“u”时,则撤销“回退”即回到第2步的状态,则变为teels了。
标签:teels,tools,撤销,往前,emacs,viper,回退,回撤 From: https://www.cnblogs.com/litifeng/p/18101880