4

我打算在 vimscript 中创建一组选项作为标志,然后我可以在运行时设置它们以更改脚本的行为。

如何创建自定义选项变量,例如 NERDTree 等其他插件似乎能够做到...

4

1 回答 1

4

Vim 选项集(即您使用的东西:set)是固定的。但是插件使用通常命名的变量g:PluginName_OptionName来获得非常接近选项的东西。使用不同的变量范围(g:, b:, w:),您甚至可以在 Vim 中实现类似缓冲区或窗口局部选项的功能:这意味着插件首先检查局部变量的存在,然后回退到使用全局变量如果没有本地人存在。

插件应该为其配置变量提供默认值,可以在用户的.vimrc​​ . 这是通过这样的测试来实现的:

if ! exists('g:PluginName_ConfigItem')
    let g:PluginName_ConfigItem = 'default value'
endif

如果您计划发布您的插件,请务必记录变量以及它们可以保存的值。

于 2012-12-05T17:21:56.857 回答