🕌

dotnet formatでc#のフォーマットかける

2021/12/18に公開

個人メモ

Setup

dotnet core

環境

  • macOS Monterey
  • M1Max Macbook Pro 14inch late 2021

本家サイトからDLした

installerに沿ってインストールする

dotnet format

githubに沿って、developmentバージョン入れてみた

$ dotnet tool install -g dotnet-format --version "7.*" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json
ツール ディレクトリ '$HOME/.dotnet/tools' は現在、PATH 環境変数にありません。
zsh を使用している場合、次のコマンドを実行してプロファイルに追加できます:

cat << \EOF >> ~/.zprofile
# .NET Core SDK tools
export PATH="$PATH:$HOME/.dotnet/tools"
EOF

`zsh -l` を実行して現在のセッションで利用できるようにします。

これは、次のコマンドを実行することによってのみ、現行のセッションに追加できます:

export PATH="$PATH:$HOME/.dotnet/tools"

次のコマンドを使用してツールを呼び出せます。dotnet-format
ツール 'dotnet-format' (バージョン '7.0.261710') が正常にインストールされました。

shellにPATH設定を追加しておいた

export PATH="$PATH:$HOME/.dotnet/tools"

Usage

$ dotnet-format --version
7.0.261710+c6c096cfdc5df9f0fe815e7f5ebd2a53d84f3da6

sln/projectに含まれるものをターゲットにformatする

$ dotnet-format SampleGameCI.sln
$ dotnet-format Assembly-CSharp.csproj

ファイルを絞ってformatする

$ dotnet-format Assembly-CSharp.csproj --include Assets/Scripts/

試しに{ の位置がおかしいものをつくってみると、下記のような感じでformatしてくれた!

$ git diff
diff --git a/Assets/Scripts/SampleButton.cs b/Assets/Scripts/SampleButton.cs
index 5267e8d..1c12de0 100644
--- a/Assets/Scripts/SampleButton.cs
+++ b/Assets/Scripts/SampleButton.cs
@@ -6,7 +6,8 @@ namespace Sample
     [RequireComponent(typeof(Button))]
     public class SampleButton : MonoBehaviour
     {
-        private void Start() {
+        private void Start()
+        {
             this.GetComponent<Button>().onClick.AddListener(() =>
             {
                 UnityEngine.Debug.Log("Hoge");

便利!
CIとかに設定しておくのがよさそう

Discussion