简而言之,我想在Vim插件中提供一个帮助窗口,可以检测用户在.vimrc中映射到插件命令的快捷方式。
有没有办法查看用户可能或可能没有映射到插件命令的快捷方式?
(注意,我不正在寻找一种方法来查看特定快捷方式将执行的命令,这很容易找到FAQ。)
例如,在用户的.vimrc中,他们可以添加一行,例如:
map <leader>1 :MyCoolPluginCommand<cr>
在我的插件界面中,我想展示一个快速帮助窗口,显示一个cheetsheet,如
"Cool Command 1: <leader>1"
我唯一的想法是尝试解析他们的vimrc并使用一组复杂的正则表达式来获取字符串值。有更好的方法吗?谢谢!
[edit] 这个插件调用了一个python脚本,所以我也用python标记了这个问题,以便解决方案成为可能。 (使用import vim
所以我可以eval()东西。
答案 0 :(得分:3)
:map
为您提供所有映射的列表;它应该比.vimrc更容易解析。
此外,它还会显示来自其他地方的映射(例如系统范围或命令行)。