重命名内置 vim 命令/从完成列表中删除

重命名内置 vim 命令/从完成列表中删除

如果 vim 插件和 vim 内置命令共享非常相似的名称,是否可以将内置命令重命名为明确不同的名称,或者从 vim 的完成列表中删除内置命令?(违规命令:startinsert:)

要明确的是:

  1. 我不只是想要一个新的名字;我需要消除完成列表中的旧命令名称(如果命令仍然存在,则可以使用新名称)
  2. 我意识到我可以将插件别名为新东西,但我不希望内置命令优先,我希望插件的命令在完成时明确优先。内置命令名称不应出现在相同前缀的完成列表中。

答案1

为了防止插件期望使用内置命令却获取用户定义命令时出现问题,用户定义命令必须始终以大写字母开头。同样,出于同样的原因,内置命令不能重命名。

由于上述原因,据我所知,没有人认真考虑过允许在完成时删除或“降低”内置命令的优先级,因此,如果不编写一个复杂的插件来“捕获”:-命令行上的完成字符并模拟完成,这也是不可能的。

相关内容