5

スクリプトには、次の機能しないコードがあります。

set eval(rules[formatoption])=value

ここでrulesは辞書で、formatoptionvalueは変数です。rules[formatoption]Vim に変数名を読み込ませて、 に設定したいと考えていvalueます。このようにVimに変数を設定させるにはどうすればよいですか? (string) を にsetvar(name, value)設定するような、または同様の関数が必要だと思います。このコード行があれば、70 行のスクリプトに約 30 行のコードを書く必要がなくなります。namevalue

4

1 に答える 1

8

使用:execute:

execute 'set' rules[formatoption] . '=value'

経由で Vim オプションを変更することもできます:let &optionname = ...が、ここでは役に立ちません。obscure もありますが:help curly-braces-names、ここでは機能しません。

于 2012-07-07T18:28:05.153 に答える