EditorConfig / vim:如果单独在线

时间:2015-05-07 13:59:07

标签: vim editorconfig

我正在使用vim pluginEditorConfig这些设置:

let g:EditorConfig_exclude_patterns = ['fugitive://.*']
let g:EditorConfig_core_mode = "external_command"
let g:EditorConfig_preserve_formatoptions = 1

我在Ubuntu上并安装了EditorConfig:

sudo apt-get install editorconfig

我在开源项目中编辑源代码文件,其中包含这样的行(“>”表示制表符):

// code
>
// code
>   
// code

我发现当我保存文件时,EditorConfig正在删除一行中单独的制表符。

// code

// code

// code

项目的.editorconfig如下所示:

root = true

[*]
indent_style = tab
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

# npm is using 2 spaces when modifying package.json
[package.json]
indent_style = space
indent_size = 2

[*.md]
trim_trailing_whitespace = false

我查看了EditorConfig文档,但是找不到保留stray tab字符的方法。

据我所知,这些流浪的标签字符是无意义的,如果没有它们,代码实际上更清晰,但我不想对我想要修补的文件进行额外的编辑。

还有其他人有这个问题吗?

1 个答案:

答案 0 :(得分:1)

放弃

trim_trailing_whitespace = true

来自您的配置。 "尾随"并不一定意味着在一行中的空白之前存在实际字符;它也会影响所有空白行。

仅申请某些项目/存储库

如果您需要针对不同目录的不同设置,您可以在Vim中使用:autocmd来改变选项值,或使用完整的本地vimrc 插件。

我对EditorConfig一无所知,但其主页上写着:

  

打开文件时,EditorConfig插件会在打开的文件目录和每个父目录中查找名为.editorconfig的文件。

因此,如果您需要针对一个存储库对此进行不同的配置,只需将此类文件放入存储库的根目录,然后在那里重新配置trim_trailing_whitespace选项。