0

我使用vim 插件EditorConfig与这些设置:

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 文档,但找不到保留杂散制表符的方法。

我知道这些杂散的制表符毫无意义,没有它们代码实际上更干净,但我不想对我要修补的文件进行额外的编辑。

其他人遇到过这个问题吗?

4

1 回答 1

1

放下

trim_trailing_whitespace = true

从你的配置。“尾随”并不一定意味着一行中的空格之前有实际字符;它也会影响全空白行。

仅申请某些项目/存储库

如果您需要为不同的目录设置不同的设置,您可以:autocmd在 Vim 内部使用来改变选项值,或者使用成熟的本地 vimrc插件。

我对EditorConfig了解不多,但它的主页上写着:

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

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

于 2015-05-08T07:12:22.950 回答