gpt4 book ai didi

vim - 如何检查 &somesettingname 在 vi​​m 脚本中返回真值或 bool 值?

转载 作者:行者123 更新时间:2023-12-02 04:51:34 24 4
gpt4 key购买 nike

我在这里了解如何检查 vimrc 中是否存在设置 Vimscript: use vim settings as variables / How to check if specific guioption is set or not

但我也有一个问题:如果我在 vimrc 中设置类似 tabstop=1 的东西,那么 &tabstop 将返回 1。如果我有 set number 在 vi​​mrc 中,&number 也返回 1。那么,我怎么知道它在 vim 脚本中返回一个数字值或只是一个 bool 值?

这就是我问这个问题的原因:我正在编写一个 vimscript 以将模式行添加到基于 vimrc 的文件中。我让 modeline="modeoption=&modeoptions",当我将 expandtab 放入modeoptions 我得到了像 /*vim:expandtab=1:shiftwidth=4:tabstop=4:smarttab=1:*/ 这样的东西。

最佳答案

您的观察是正确的: bool 值 (number/nonumber) 和整数选项(例如 tabstop)都会产生一个带有 &optionname 语法。 Vimscript 没有专门的 bool 类型; true/false用not 0/0表示。

因此,您必须在插件中对选项类型进行硬编码,以便将正确的格式插入到模式行中。您可以从 :help options.txt 中检索所有选项。

关于vim - 如何检查 &somesettingname 在 vi​​m 脚本中返回真值或 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18756582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com