[英]Map several commands to the same key in Vim
我想将一些不同的功能映射到Vim中的一个键,并使它们一个接一个地发生。
例如,我想将两个不同的函数映射到enter
键-一个在前一行的最后一个字符是大括号的情况下执行某些操作,另一个在前一行的最后一个字符是~
执行某些操作。 但是我希望它们具有两个独立的功能。
这可能吗?
PS我也将愿意寻求一种解决方案,使我可以在映射回车key
一个函数内调用任何其他映射(如果未成功)。
(这应该是评论,但恐怕太长了)
因此,通常,您希望将该键映射到对函数的调用。 您无法将其映射到两件事,因此只需将其映射到一个函数,然后在其中一个函数中执行其他两个函数-如果上一行的最后一个字符是空格,则一个函数将执行某些操作,如果执行则将另一个函数执行前一行的最后一个字符是波浪号。
或者,您可以使用映射函数检查上一行中的最后一个字符是什么,然后根据特定字符是什么,执行-做某事的函数。
我真的没有什么可继续的了,所以我就把它留在这里:-/
注释后编辑:嗯,这里不做详细说明,但是插件通常只是函数。 Vim没有子例程,只有几个“类型”的函数。 插件仅仅是映射到某些键的功能。
现在,我不使用SuperTab插件(听说过,但仅此而已),但是如果您随意使用它,则应该能够先找出映射到的键是什么(函数名是什么)从那里开始,特定功能的作用是什么。 它需要什么参数,等等...
从那里开始,只有一个问题,那就是找出如何创建一个包装器功能来测试先前的字符,然后基于该包装器功能执行该插件功能,或者您打算执行的其他操作。
不确定您通过“通用方式”提出了什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.