我打算在vimscript中创建一组选项作为标志,然后我可以在运行时设置它来改变我的脚本的行为。
如何创建自定义选项变量,例如NERDTree等其他插件似乎能够实现...
答案 0 :(得分:4)
Vim选项集(即您使用:set
操作的内容)是固定的。但是插件使用通常命名为g:PluginName_OptionName
左右的变量来获得非常接近选项的变量。使用不同的变量范围(g:
,b:
,w:
),您甚至可以在Vim中实现类似缓冲区或窗口本地选项:这意味着插件会检查首先存在局部变量,如果不存在局部变量,则回退到使用全局变量。
插件应该为其配置变量提供默认值,可以在用户的.vimrc
中覆盖。这可以通过以下测试来实现:
if ! exists('g:PluginName_ConfigItem')
let g:PluginName_ConfigItem = 'default value'
endif
如果您计划发布插件,请务必记录变量以及它们可以保存的值。