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 が 1 行にあるタブ文字を削除していることがわかります。

// 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 プラグインは、開いたファイルのディレクトリとすべての親ディレクトリで指定されたファイルを探します。

したがって、1 つのリポジトリに対してこれを別の方法で構成する必要がある場合は、そのようなファイルをリポジトリのルート ディレクトリに配置し、trim_trailing_whitespaceそこでオプションを再構成します。

于 2015-05-08T07:12:22.950 に答える