测试(布尔)选项值的vim脚本语法是什么?

测试(布尔)选项值的vim脚本语法是什么?,vim,Vim,如果设置了number(行号)选项,我将尝试向我的vimrc文件测试添加一个条件。我有:仅使用HTML文件类型添加的编号 :autocmd FileType html source $HOME/.vim/html_vimrc.vim :if ('&number' == 0) "IF number is off : set spell "turn on spell checker :else "ELSE file type is HT

如果设置了number(行号)选项,我将尝试向我的vimrc文件测试添加一个条件。我有:仅使用HTML文件类型添加的编号

:autocmd FileType html source $HOME/.vim/html_vimrc.vim

:if ('&number' == 0)  "IF number is off
: set spell           "turn on spell checker
:else                 "ELSE file type is HTML
:  set nospell        "turn spell checker off 
:endif
我试过了

:if (&number == "number")

:if $number
我试过用括号,引号,没有引号。我所有的测试要么全部设置,要么不设置。我正在阅读关于条件句的文章,但是我没有得到正确的答案,我找不到类似的例子


更新:除了在下面测试Michael的代码外,我还在vimrc中简化了测试:

:if exists("g:prog")
:  set number          "trying a different setting
:endif
在我已经加载的html_vimrc文件中

"number                "turned this off 
:let g:prog=1

在这种情况下,设置了test.html的测试用例g:prog,但没有设置“number”。在test.vim情况下,g:prog未设置,且“编号”未设置。这似乎表明VIM如何处理我丢失的加载的vimrc文件有一些基本逻辑。

使用
&number
测试布尔值,不带引号

if (&number == 1)
或者更简单地说:

if (&number)
因此,您的整个操作如下所示:

if (&number == 0)  "IF number is off
 set spell           "turn on spell checker
else                 "ELSE file type is HTML
  set nospell        "turn spell checker off 
endif

我把情况简化为

:if exists("g:prog")
:  let g:ok_prog=1          "trying a different setting
:endif

然后我使用
:let
检查变量是否可用于不同的文件类型用例。这显示了在自动加载的g:var之前加载的.vimrc文件中的变量(如果其他人有一个VIMDOCS引用,那就太棒了)。所有条件都失败,因为在条件失败之前,既没有加载my:number选项,也没有加载g:var

我使用了相同的语法,但没有成功。事实上,在我的谵妄状态下,我输入==1打开html拼写检查,然后检查==0。在我的
$vim test.html
$vim test
测试用例中,结果是两个文件都有或没有(是或否)。(所需的情况当然是(是/否))。%-(还有,如果有关系的话,我还有另外一篇关于的帖子。它们可能有关联吗?