在脚本中,我有以下无效代码:
set eval(rules[formatoption])=value
其中rules
是字典,formatoption
和value
是变量。我想让Vim从rules[formatoption]
读取变量名称并将其设置为value
。如何让Vim以这种方式设置变量?我认为应该有setvar(name, value)
或类似的函数,将name
(字符串)设置为value
。这行代码将使我免于在70行脚本中编写大约30行代码。
答案 0 :(得分:6)
使用:execute
:
execute 'set' rules[formatoption] . '=value'
您还可以通过:let &optionname = ...
更改Vim选项,但这在此处没有帮助。还有晦涩的:help curly-braces-names
,但这在这里不起作用。