Visual StudioによるEditorConfigの統合と.ネット
4492 ワード
あなたがよく知らないならばEditorConfig ファイルは、あなたが行方不明です
今日は、基本的な機能のいくつかを通して、Visual Studioと. NET Frameworkによってサポートされている形式に対する拡張機能をいくつか紹介します.NETツール.
基礎
EditorConfigはいくつかのコーディングスタイルを定義する方法です
階層
EditorConfig USコードスタイルの階層構成で、コードファイルが開いているときに、すべての設定を適用することを意味します
設定ファイルのコードファイルに近いほど、優先度が高くなります.
を指定することで、親ディレクトリのスキャンを防ぐことができます
構文
EditorConfigファイルはセクションに分割されます.各セクションはファイルセレクタで始まる
このセレクターはあらゆるファイルに適用できます
それから、我々は
そして最後に
: gitを使うならば、あなたはそれを確認したいですgitattribute あなたと対立するな
. NET固有の拡張モジュール
Roslynコンパイラでは、コード解析を構成できるEditorConfig形式の拡張機能があります.
たとえば、EditorConfigを使用して、use句をソートするかどうかを指定できます
コード解析の設定
Visual StudioとCode Analysisに精通しているなら、.ruleset ファイル.
EditorConfigを介して行うことができますので、それはもはや必要です!
あなたが必要とするすべては、読まれる線です
結論
あなたのプロジェクトに共通のコードスタイルを持つ小さなチームや大チームがいつでも、チームメイトのコードを読むときにヘッドスクラッチを最小限に抑えることができます.EditorConfigでは、これらのスタイリング標準を生成するのに役立つ特定のテクノロジに結び付けられていない標準的な方法があります.
どのようなコーディングスタイルをあなたのプロジェクトに適用するのですか?
今日は、基本的な機能のいくつかを通して、Visual Studioと. NET Frameworkによってサポートされている形式に対する拡張機能をいくつか紹介します.NETツール.
基礎
EditorConfigはいくつかのコーディングスタイルを定義する方法です
.editorconfig
コードリポジトリに.そこのエディタからかなり広い支持がありますVisual Studio , またはアドオンを通してVisual Studio Code .階層
EditorConfig USコードスタイルの階層構成で、コードファイルが開いているときに、すべての設定を適用することを意味します
.editorconfig
ファイルのフォルダからファイルシステムのルートまで検索します.設定ファイルのコードファイルに近いほど、優先度が高くなります.
を指定することで、親ディレクトリのスキャンを防ぐことができます
root = true
あなたの.editorconfig file
.構文
EditorConfigファイルはセクションに分割されます.各セクションはファイルセレクタで始まる
[]
.このセレクターはあらゆるファイルに適用できます
[*]
, 単純なワイルドカードのような[*.json]
, のような拡張子のリスト[*.{cs, vb}]
次の例を考えます.root = true
[*]
indent_style = space
[*.{cs,vb}]
indent_size = 4
insert_final_newline = true
charset = utf-8-bom
まず、我々はroot = true
, 意味は、我々はより多くの親フォルダをスキャンされません.editorconfig
ファイル.それから、我々は
[*]
すべてのファイルに適用されるブロック.そして最後に
[*.{cs,vb}]
すべてのファイルに適用されるブロック.cs
or .vb
拡張.これらのファイルには4のインデントがあります[*]
ブロックはまだ適用されていますが、各ファイルの末尾に空の行が存在していることを確認したいと思います.: gitを使うならば、あなたはそれを確認したいですgitattribute あなたと対立するな
.editorconfig
設定されていない場合、エディタがチェックアウトで何をしているかを取り消すことができます.. NET固有の拡張モジュール
Roslynコンパイラでは、コード解析を構成できるEditorConfig形式の拡張機能があります.
たとえば、EditorConfigを使用して、use句をソートするかどうかを指定できます
System
名前空間最初[*.{cs,vb}]
dotnet_sort_system_directives_first = true
あなたは誘因を使用したいvar
Cのための組み込みのタイプ?完了!csharp_style_var_for_built_in_types = true
エラーにすることもできます.csharp_style_var_for_built_in_types = true:error
また、接頭辞と接尾辞と同様にケーシングを構成することができます.これはキャメルケースではなくアンダースコアでプレフィックスされていないフィールドに対して警告を与える_
.dotnet_naming_rule.instance_fields_should_be_camel_case.severity = warning
dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields
dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style
dotnet_naming_symbols.instance_fields.applicable_kinds = field
dotnet_naming_style.instance_field_style.capitalization = camel_case
dotnet_naming_style.instance_field_style.required_prefix = _
参照official documentation より多くのオプション.また、[ Roslyn . EditorConfig ]には良い例がたくさんあります.コード解析の設定
Visual StudioとCode Analysisに精通しているなら、.ruleset ファイル.
EditorConfigを介して行うことができますので、それはもはや必要です!
あなたが必要とするすべては、読まれる線です
dotnet_diagnostic.<Code>.severity = <Severity>
, 例えば[*.{cs,vb}]
dotnet_diagnostic.RCS1007.severity = error
結論
あなたのプロジェクトに共通のコードスタイルを持つ小さなチームや大チームがいつでも、チームメイトのコードを読むときにヘッドスクラッチを最小限に抑えることができます.EditorConfigでは、これらのスタイリング標準を生成するのに役立つ特定のテクノロジに結び付けられていない標準的な方法があります.
どのようなコーディングスタイルをあなたのプロジェクトに適用するのですか?
Reference
この問題について(Visual StudioによるEditorConfigの統合と.ネット), 我々は、より多くの情報をここで見つけました https://dev.to/ericstg/editorconfig-integration-with-visual-studio-and-net-4ng2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol