是否可以在 vim 中定义自定义移动?

是否可以在 vim 中定义自定义移动?

这可能吗?

我的意思是,许多 vim 命令可以采取移动来操作,我可以定义自定义移动以便根据环境定制我的编辑吗?

我感兴趣的具体命令是gq重新格式化。我可以输入gqip重新格式化段落,ip即从当前段落的开头移动到结尾,不包括周围的空格。

是否可以定义一个自定义移动来替换,ip以便让我在不触及周围代码的情况下重新格式化注释?这将需要一个类似ip但开始或结束条件不同的移动。

答案1

看看这个Vim 使用技巧维基文章创建新的文本对象以及这两个 Vim 插件创建自定义文本对象的函数一个例子创建自定义文本对象。

相关内容