微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VIM:文件类型中set和setl之间的区别

据我所知,VIM在set和setl之间有所不同,因为第一个为所有缓冲区设置了一个选项,而后者只设置了当前缓冲区的选项.如果我做了a:set tw = 80而不是a:setl tw = 80,这是显而易见的.

现在,当我执行a:set ft = plsql时,它只会在当前缓冲区上操作,尽管我没有执行setl.当然,这是有道理的.然而,我没有看到这是否记录在某处.因此,问题可能归结为:是否存在认情况下在当前缓冲区上运行而其他选项在“无处不在”运行的选项以及记录在哪里的选项?

确实有选项在当前缓冲区上运行(在某些情况下确实是当前窗口).该文档包含该选项的文档.如果您转到:help option-list中的任何选项,它将具有以下三个字符串之一作为第三行:
global
local to window
local to buffer

(或它们的某种组合).例如,:help’ft’给出:

*'filetype'* *'ft'*
'filetype' 'ft'     string (default: "")
            local to buffer
            {not in Vi}
            {not available when compiled without the |+autocmd|
            feature}
    When this option is set,the FileType autocommand event is triggered.
    All autocommands that match with the value of this option will be
    executed.  Thus the value of 'filetype' is used in place of the file
    name.

所以这个选项是缓冲区的本地选项.有关更多讨论,请参阅:

:help option-summary

原文地址:https://www.jb51.cc/vim/384419.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐