JetBrains Rider 2024.1 ヘルプ

フォーマットルールを構成する

フォーマットルールは非常に高いレベルの詳細に設定できます。例: 特定の演算子の周囲に空白を配置するか、入れ子になった using 文をインデントするかを定義できます。

設定でコードフォーマットルールを構成する

  1. Ctrl+Alt+S を押すか、メニューからファイル | 設定(Windows および Linux)または JetBrains Rider | 環境設定 (macOS) を選択します。

  2. エディター | コードスタイル | [ 言語 ] ページを使用して、言語固有のフォーマットを構成します。これらのページでは、下部にあるプレビュー領域を使用して、JetBrains Rider が特定の環境設定をコードに適用する方法を表示できます。

  3. 設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider が変更を保存する場所を選択できるようにするか、保存セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「レイヤーベースの設定」を参照してください。

再フォーマットからファイルを除外する

ファイルとディレクトリのグループを再フォーマットから除外できます。

  1. 設定 / 環境設定ダイアログ(Ctrl+Alt+S)で、エディター | コードスタイルに移動します。

  2. フォーマッタータブに切り替え、フォーマットしないフィールドに、グロブパターン(英語)を使用して除外するファイルとディレクトリを入力します。

    セミコロン ; で区切られた複数のグロブパターンを指定できます。the Expand icon をクリックすると、フィールドが展開され、各パターンが別々の行に表示されます。

  3. 変更を適用し、ダイアログを閉じます。

    Specifying a glob pattern for excluding files from reformatting

選択したコードのフォーマットルールを構成する

設定ページを掘り下げる代わりに、コードのブロックを選択し、そのブロックに適用できるフォーマット規則のみを構成できます。変更された設定が、エディターで選択したブロックのコードにどのように影響するかを確認できます。

  1. エディターで、フォーマットするコードのブロックを選択します。

  2. Alt+Enter を押して、再フォーマットとクリーンアップ | コードスタイルを設定するを選択します。

  3. 開いたダイアログに、選択したコードブロックに影響を与えるすべての構文スタイルとフォーマット規則が表示されます。コードブロック自体は点線のフレームで囲まれます。

    Configuring formatting rules for selected code
  4. フォーマットルールを変更すると、選択したブロックのコードにどのように影響するかがわかります。

  5. ダイアログで保存をクリックして変更を適用し、JetBrains Rider が変更を保存する場所を選択するか、保存セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「レイヤーベースの設定」を参照してください。

  6. 保存先セレクターで .editorconfig を選択して、構成済みのフォーマットルールを EditorConfig にエクスポートすることも選択できることに注意してください。

  7. 必要に応じて、「コメントとして保存」をクリックします。こうすることで、変更内容は選択したブロックの前後にコメントとして保存されます。これにより、設定を変更せずに、必要なフォーマットルールをローカルでオーバーライドできます。

  8. JetBrains Rider はダイアログを閉じ、変更されたフォーマットルールをコードブロックに適用します。

既存のコードから書式ルールを学ぶ

個々のフォーマット設定を微調整する別の方法は、既存のコードサンプルからフォーマットルールを学習することです。これは、選択したブロックまたはソリューション全体にすることができます。JetBrains Rider は、選択したサンプルを分析し、現在の設定とは異なるフォーマットルールを一覧表示します。その後、検出されたルールを確認し、必要に応じて変更し、目的の設定レイヤーまたは .editorconfig または .clang-format 形式の構成ファイルに保存できます。

選択からフォーマットルールを学ぶ

  1. エディターで、フォーマットを分析するコードのブロックを選択します。

  2. Alt+Enter を押して、再フォーマットとクリーンアップ | コードスタイル設定を検出するを選択します。

  3. 現在の設定と異なる規則を確認してください。

    JetBrains Rider: Using formatting rules from existing code
  4. ダイアログで保存をクリックして変更を適用し、JetBrains Rider が変更を保存する場所を選択するか、保存セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「レイヤーベースの設定」を参照してください。

  5. 必要に応じて、「コメントとして保存」をクリックすることもできます。こうすることで、変更内容は選択したブロックの前後にコメントとして保存されます。これにより、設定を変更せずに、必要なフォーマットルールをローカルでオーバーライドできます。

ソリューションコードからフォーマットルールを学ぶ

  1. Ctrl+Alt+S を押すか、メニューからファイル | 設定(Windows および Linux)または JetBrains Rider | 環境設定 (macOS) を選択し、左側のエディター | コードスタイル | [C# または C++] を選択します。

  2. 設定ページの上部にあるコードスタイルルールの自動検出をクリックします。

  3. 現在の設定とは異なるルールを確認し、必要に応じて編集します。

  4. ダイアログで保存をクリックして変更を適用し、JetBrains Rider が変更を保存する場所を選択するか、保存セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「レイヤーベースの設定」を参照してください。

コメントを使用してフォーマッターを構成する

JetBrains Rider では、実際にルールを変更することなく、設定済みのフォーマットルールから逸脱することができます。コードの特定の部分でフォーマッタを完全に無効にすることもできます。

C#、JavaScript、TypeScript、HTML、Protobuf のコメントを使用してフォーマッターを構成できます。

フォーマッタを無効にするには、次のコメントを使用します。

  • // @formatter:off — この行の後のフォーマッタを無効にする

  • // @formatter:on — この行の後にフォーマッタを有効にする

フォーマッタを無効にしすぎると、個々のフォーマットルールをコメントで変更できます。

コメントを使用して個々の書式ルールを変更する

  1. 調整するフォーマットルールの名前を見つけます。JetBrains Rider 設定 Ctrl+Alt+Sエディター | コードスタイル | [ 言語 ] ページで確認できます。

  2. ルールの名前がわかっている場合は、EditorConfig プロパティのインデックスでその ID を検索できます。ブラウザーで検索を使用します。例: セミコロンの前のスペースをトリガーするルールを検索する場合は、セミコロンのを検索すると、ID: space_before_semicolon が見つかります。

  3. インデックスの Web ページでルールの ID を見つけたら、説明リンクをクリックして、このルールに許可されている値を確認します。space_before_semicolon の例に従って、true または false受け入れることができます。

  4. ルールを変更するコードの前に、次のコメントを追加します。

    // @formatter:<rule_ID> <value>

    例: セミコロンの前のスペースを有効にするには、次を追加します。

    // @formatter:space_before_semicolon true

    .

  5. ルールの新しい値は、ファイルの終わりまで適用されます。設定で構成された値に戻りたい場合は、次のコメントを追加してください。

    // @formatter:<rule_ID> restore

    例:

    // @formatter:space_before_semicolon restore

    .

フォーマットルールを保存および共有する

Rider は、ディレクトリベースの設定(Web 言語の場合)とレイヤーベースの設定(.NET 言語の場合)の両方を使用して、コードフォーマット設定を格納します。両方の設定管理メカニズムは、設定の共有をサポートします。レイヤーベースの設定も ReSharper と互換性があります。

Rider 設定ダイアログで、アイコンを見て、特定の言語に使用されている設定管理メカニズムを確認できます。

Rider: Code formatting settings

EditorConfig を使用してフォーマット設定を構成することもできます。これらの設定は、ソリューション階層のさまざまなレベルの .editorconfig ファイルに保存できます。ファイルは通常 VCS に置かれるため、そこで定義された設定はプロジェクトチーム間で共有されます。

JetBrains Rider を使用すると、EditorConfig を使用して、JetBrains Rider の設定ダイアログで使用できるフォーマット設定を定義できます。サポートされている EditorConfig プロパティの名前と説明は、EditorConfig リファレンスにあります。

.editorconfig ファイルで定義されているフォーマットプロパティは、この .editorconfig ファイルが適用されるスコープ内の JetBrains Rider 設定で定義されているものと同じプロパティを上書きすることに注意してください。

フォーマットのトラブルシューティング

フォーマット設定を構成するには、独自の設定、自動検出設定、EditorConfig、Clang-Format など、さまざまな方法があります。これにより構成が非常に柔軟になりますが、コードの再フォーマット後に予期しない結果が得られた場合、フォーマット設定が実際にどこから来ているのかを理解するのが難しい場合があります。

現在のファイルのフォーマットに影響する設定と構成ファイルを調べるには、Ctrl+Shift+A を押すか、メインメニューからヘルプ | アクションの検索を選択します。開いたポップアップで、Show Code Style Configuration と入力し始め、対応する項目を選択して Enter を押します。

JetBrains Rider. Code Style Configuration dialog

ここでは、現在開いているファイルのコードスタイル設定の起源を調べることができます。

関連ページ:

EditorConfig を使用する

JetBrains Rider は、EditorConfig 形式で定義されたコード形式スタイル、コード構文スタイル、C# の命名スタイル、コードインスペクション重大度レベルをサポートします。EditorConfig とは何ですか? JetBrains Rider はどのようにそれを拡張しますか? :EditorConfig は、同じコードで作業しているチームメンバー間、およびメンバーが使用する可能性のあるさまざまな IDE 間で一貫したコードスタイルを定義および維持するために使用される構成ファイ...

レイヤーベースの設定

Rider 設定ダイアログでは、ページアイコンを見て、特定のページに使用されている設定管理メカニズムを確認できます。任意のアイコンでマークされていないページは、ユーザープロファイルに保存されている IDE 設定をホストします。レイヤーベースの設定は ReSharper と互換性があるため、ReSharper を使用している場合、チームメンバーのいずれかがそれを使用している場合、Rider は ReSharper で構成した設定を読み取って適用できます。「ソリューションパーソナル」および「ソリュ...

Clang 形式の使用

C++ ファイルでは、JetBrains Rider は Clang 形式で定義されたフォーマットスタイルをサポートします。デフォルトでは、Clang-Format 構成ファイルは、フォーマットスタイル設定のソースとして自動的に使用されます。Clang フォーマットとは何ですか ? JetBrains Rider はどのようにサポートしていますか ?:Clang-Format は、広く使用されている C++ コードフォーマッタです。YAML 形式のファイル (.clang-format または _cl...

フォーマットルールを適用する

編集および貼り付けられたコードの自動フォーマット:エディターでコードを入力すると、JetBrains Rider はセミコロンを入力するとすぐに式を再フォーマットし、閉じ括弧を入力するとすぐにコードのブロックを再フォーマットします。必要に応じて、JetBrains Rider 設定のページでこれらの種類の自動フォーマットを無効にすることができます。JetBrains Rider では、コードを貼り付けるときにフォーマット規則を自動的に適用することもできます。デフォルトでは、貼り付けられたコー...

EditorConfig プロパティのインデックス

このページには、コード形式ルール、コードインスペクション重大度レベル、およびコード構文スタイルルールの構成に使用できるカスタム JetBrains RiderEditorConfig プロパティがリストされています。一部のプロパティは 1 つの言語に適用され、他のプロパティは一度に複数の言語に適用されることに注意してください。ただし、各多言語プロパティには、特定の言語に対してそれをオーバーライドできるプロパティがあります (例: および)。波括弧レイアウト - アクセサー宣言 (C#) コード本体...