4

vim

我想知道状态栏中橙色部分的含义是什么?

☲ [573]尾随 [515]混合缩进 [515:514]混合缩进文件

我使用的是.vimrc从网上下载的,所以我不确定它有什么配置。谁能解释一下?

4

3 回答 3

2

前言:这类问题是为什么大多数 vimers 建议逐个制作自己的配置的原因。然后你就知道了所有的部分(调试起来容易 10 倍)。

现在,肉:看起来像航空公司(因为你不知道,我只能猜测)。如果是这样,运行:help airline或查看他们的 GitHub 页面应该解释它与尾随空格和混合制表符和空格缩进有关。

于 2020-01-21T23:15:26.143 回答
2

现有的答案已经解释了如何禁用它以及如何查找信息,但这里有一些更具体的信息。

假设它是vim-airline(因为它看起来与 my 相同vim-airline),这是它的空白扩展,用于检查空白不一致。可以通过运行找到详细信息:h airline-whitespace


现在,针对特定消息。

  • [573]trailing表示您在第 573 行有尾随空格,这意味着在该行的最后一个非空格字符之后有空格/制表符/其他空格。

  • [515]mixed-indent表示第 515 行带有制表符和空格的缩进。例如,将空格写为+,将制表符写为| >,第 515 行可能以| >| >++++++. 这看起来像一个 C 源文件,其中通常有缩进与制表符后跟空格对齐,如

    // how it looks           // with whitespace displayed
    while (1) {               // while (1) {
        some_func_call(arg1,  // |  >some_func_call(arg1,
                       arg2); // |  >+++++++++++++++arg2);
    }                         // }
    

    默认情况下vim-airline会检测到这个错误,但有一个允许这个 ( let g:airline#extensions#whitespace#mixed_indent_algo = 2) 的模式。更多详细信息,请参见:h airline-whitespace

  • [515:514]mix-indent-file表示不同的行(在本例中为 515 和 514)具有不同的缩进样式。例如,第 515 行可能用制表符缩进,而 514 用空格缩进。


每个项目/设置/语言对于什么样的空白使用是可接受的和什么样的不可接受都有不同的想法,并且空白扩展可以很好地定制以满足特定需求。这些选项再次出现在:h vim-airline.

于 2021-07-15T06:08:13.610 回答
2

只需放入let g:airline#extensions#whitespace#enabled = 0您的 .vimrc 即可禁用它。

有关详细信息,您可以查看帮助页面":h airline-whitespace"

于 2020-10-27T02:13:19.380 回答