2

简而言之,我想在 Vim 插件中提供一个帮助窗口,它可以检测用户在其 .vimrc 中映射到插件命令的快捷方式。

有没有办法查看用户可能映射或未映射到插件命令的快捷方式?

(注意,我不是在寻找一种方法来查看特定快捷方式将执行什么命令,这是一个很容易找到的常见问题解答)。

例如,在用户的 .vimrc 中,他们可以添加如下一行:

map <leader>1 :MyCoolPluginCommand<cr>

在我的插件界面中,我想显示一个快速帮助窗口,该窗口显示一个小抄,例如

"Cool Command 1: <leader>1"

我唯一的想法是尝试解析他们的 vimrc 并使用一组复杂的正则表达式来获取字符串值。有更好的办法吗?谢谢!

[编辑]该插件调用了一个 python 脚本,所以我也用 python 标记了这个问题,以防万一解决方案成为可能。(使用import vim所以我可以 eval() 东西)。

4

1 回答 1

3

:map为您提供所有映射的列表;它应该比 .vimrc 更容易解析。

它还将显示来自其他地方的映射(例如系统范围或命令行)。

于 2012-12-26T17:10:28.133 回答