Heim > Fragen und Antworten > Hauptteil
In vim (ich verwende gVim unter Windows) wissen wir, dass u der Befehl zum Rückgängigmachen des letzten Bearbeitungsvorgangs ist. Gibt es einen Befehl zum Rückgängigmachen des letzten Befehlszeilenvorgangs? Nachdem ich beispielsweise „set list“ eingegeben habe, möchte ich den Vorgang direkt abbrechen. Gibt es weitere direkte Tastenkombinationen und Befehle, ohne „set nolist“ einzugeben?
天蓬老师2017-05-16 16:38:35
如果你要问按键映射的话还真没有,不过具体到你举的例子可以换用 :set list!
来切换开关状态,其实绝大部分的 vim options 都可以用这样的方法来切换,所以你也可以把常用的映射到按键上,这样会方便很多。Tim Pope 写过一个插件好像叫 unimpaired,这个插件就是把很多这种切换式的命令帮你做了预先的映射,对提高效率帮助很大。
阿神2017-05-16 16:38:35
更准备的说, u
是撤销上次的修改操作. 所谓修改操作, 是指改变了文本, 包括文本内容和文本位置.
在此基础上, 如:s
替换操作, 命令行操作, 改变文本了, 所以u
可以还原.
但:set
是设置编辑器特性, 并不属于修改操作, 不改变文本, 所以u
并不起作用.
对于:set
没有别的快捷方式, 取消上次的认定.