JavaやScalaなどの他のプログラミング言語を使用している場合は、C#のコードがデフォルトでどのようにフォーマットされているかについて何度も腹を立てているでしょう。 メソッド/関数、if-elseブロック、またはその他の構文により、複数の行が作成され、追加の行に中括弧が表示されました。 以下の例を参照してください。
private void OnTriggerExit(Collider other) { if (other.gameObject.tag == "Enemy") { hitByEnemy = true; } }
個人的には、コードがだんだん読みにくくなってきたので、これは私を苛立たせました。 数行のコードが宇宙に飛び出しました。 個人的には、Prettier-Codeフォーマッターを使用していますが、デフォルトではC#に設定されていないため、最初の中括弧は同じ行にあります。 また、この拡張機能の構成に変更するオプションが見つかりませんでした。
したがって、c#コンパイラレベルに移動する必要があります。 構成は、メインプロジェクトディレクトリにomnisharp.jsonファイルを作成することでローカルに適用することも、グローバルに適用することもできます。 この記事では、最初のオプションを構成します。
VSCode: omnisharp.json
プロジェクトのルートディレクトリに、新しいomnisharp.jsonファイルを作成し、次の構成を入力します。
{ "FormattingOptions": { "NewLinesForBracesInLambdaExpressionBody": false, "NewLinesForBracesInAnonymousMethods": false, "NewLinesForBracesInAnonymousTypes": false, "NewLinesForBracesInControlBlocks": false, "NewLinesForBracesInTypes": false, "NewLinesForBracesInMethods": false, "NewLinesForBracesInProperties": false, "NewLinesForBracesInObjectCollectionArrayInitializers": false, "NewLinesForBracesInAccessors": false, "NewLineForElse": false, "NewLineForCatch": false, "NewLineForFinally": false } }
フォーマットの違いがすぐにわからない場合は、VSCodeを閉じて再起動してください。 次に、新しいフォーマットを適用した後、以前に提示したメソッドがどのように見えるかを示します。
このような小さなメソッドでのみ、コードを2行に制限しました。 クラスがより複雑な場合、1行にかかるコードがどれだけ少なくなるか考えてみてください。 🙂
private void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "Enemy") { hitByEnemy = true; } }
この投稿を楽しんだ場合は、以下にコメントを追加するか、Facebook、Twitter、LinkedIn、または別のソーシャルメディアのWebページでこの投稿を共有してください。
よろしくお願いします!