Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9749

Unity で Visual Studio を使った快適なコーディングをするための環境設定

$
0
0

そのままでは痒いところに手が届かないことが多いので、いろいろカスタマイズして快適にしていきます。

環境

  • Unity 2018.4.19f1
  • Visual Studio Community 2019

コード分析規則

Linter文化に慣れた結果ゲーム開発でも規則が欲しくなってしまいました。チーム開発では必須だと思っています。
デフォルトだとエディタからの提案がお節介だったり、警告してほしいところで消極的だったりするので、自分好みに設定していきましょう。

規則セットの追加

プロジェクト用の規則セットファイルを作成して、Assembly-CSharp と Assembly-CSharp-Editor 設定します。
規則セットをカスタマイズする

不要なusingを警告してくれるようになりました。
qi_uvconf_1.PNG

.csproj に設定を自動追記

このままではUnityは自動で.csprojファイルを書き換えてしまうので、規則セットファイルを読み込む設定が上書きされないように下記のようなエディタ拡張スクリプトを配置します。
規則セットファイル名は{プロジェクト名}.rulesetを前提にしています。

CsprojFixer.cs
usingSystem;usingSystem.IO;usingUnityEditor;publicclassCsprojFixer:AssetPostprocessor{publicstaticstringOnGeneratedCSProject(string_,stringcontent){// プロジェクト名の抽出stringcurrDirPath=Directory.GetCurrentDirectory();string[]pathArray=currDirPath.Split(Path.DirectorySeparatorChar);stringprojectName=pathArray[pathArray.Length-1];// .csprojの内容を置換stringold="</AllowUnsafeBlocks>";stringaddition=$"<CodeAnalysisRuleSet>{projectName}.ruleset</CodeAnalysisRuleSet>";returncontent.Replace(old,$"{old}{Environment.NewLine}{addition}");}}

StyleCop.Analyzers

もっと規則にこだわりたければNuGetパッケージの StyleCop.Analyzersを導入します。
NuGetパッケージを導入する場合も、エディタ拡張で.csprojにNuGetパッケージ設定を加える処理を追加する必要があります。

拡張機能

いくつか普段使っている拡張機能も紹介します。

CodeMaid

スペースを入れてくれたり空行を削除してくれたりする便利なフォーマッタです。
申し分ないくらいのオプション設定をすることができて、保存時の自動整形もできます。(うれしい)

普段 VSCode を使っているとこれがないとしんどいです。

Enhanced Syntax Highlighting

シンタックスハイライトでカスタマイズできる種類を少し増やしてくれます。
宣言時だけ色を変えるとかはできないのですが、もともとの設定項目が少ないので少しでもマシになればと思います。

qi_uvconf_2.png

参考


Viewing all articles
Browse latest Browse all 9749

Trending Articles