Vimscript:使用vim设置作为变量/如何检查是否设置了特定的GUI选项

Vimscript:使用vim设置作为变量/如何检查是否设置了特定的GUI选项,vim,Vim,我想在gvim中创建一个切换函数,可以打开/关闭滚动条和换行选项 切换换行选项没有问题。我只需使用set wrap。 要更改水平滚动条设置,我需要检查wrap选项或guioptions的值 问题是如何读取wrap或guioptions的值?您还有其他点击吗?您可以使用&setting访问vim设置的值。请参阅:help expr选项 在这里,您可以这样做: if &guioptions =~# 'a' .... endif vimscript中的=~#进行区分大小写的正则表达式匹

我想在gvim中创建一个切换函数,可以打开/关闭滚动条和换行选项

切换换行选项没有问题。我只需使用
set wrap。
要更改水平滚动条设置,我需要检查
wrap
选项或
guioptions
的值


问题是如何读取
wrap
guioptions
的值?您还有其他点击吗?

您可以使用
&setting
访问vim设置的值。请参阅
:help expr选项

在这里,您可以这样做:

if &guioptions =~# 'a'
   ....
endif
vimscript中的
=~#
进行区分大小写的正则表达式匹配

类似地,如果要检查是否未设置选项

如果要临时保存设置,请执行以下操作:

let oldwrap=&wrap
set nowrap
... (your script assuming nowrap)
let &wrap=oldwrap
unlet oldwrap

我冒昧地更改了您问题的标题,因为您想要的似乎是像访问变量一样访问设置。我认为您不需要上面的
*
。只要
&guioptions=~#“a”
本身就可以匹配任何带有“a”的guioptions。
let oldwrap=&wrap
set nowrap
... (your script assuming nowrap)
let &wrap=oldwrap
unlet oldwrap