Vim - 键入键和映射键之间的区别?

时间:2017-03-31 05:52:50

标签: vim

在Vim的feedkeys()文档中,模式t的说明如下:

    't' Handle keys as if typed; otherwise they are handled as
        if coming from a mapping.  This matters for undo,
        opening folds, etc.

这有什么区别?来自映射的键在哪些方面表现不同,为什么这种差异对于撤消,打开折叠等都很重要?

1 个答案:

答案 0 :(得分:1)

映射序列被雾化以进行撤销。

如果使用many命令更改文本,则undo将通过更改撤消更改。

如果将相同的命令序列映射到映射,并尝试撤消它,它将在运行映射之前恢复状态更改。

例如:你有文字'12345',光标在2.你3次点击'x'。你需要3次点击'u'来恢复文本。

如果您进行映射:

:map q xxx

按q后,只需按一下“u”即可恢复更改。

同样来自:h map-undo

  

如果在映射序列中包含undo命令,则会在执行宏之前将文本恢复到该状态。这与之兼容   原来的Vi