VSCodeでUnity2022.3以降と連携する


概要

VSCodeのC#関連のプラグインだけで何個作る気なんだMS。彼らが言語関連のアップデートに絡むと本当にだんだんと地質が悪くなる。


現状でものすごい治安が悪いので、最低限これで動くよ、というバリエーションを調べていた。

で、その方法の話。


できるだけ早くVSCodeでUnityScriptを書くのをやめて、Zedとかに移行したい。

LSPさえ動けばそれでいいので、、


前提

UnityEditor上で、VSCodeを外部エディタとして設定してある前提。


内容

大筋、以下の手順でがんばる。


1. アンインストール

2. クリーンインストール

3. UnityEditorにVisualStudioEditorパッケージを入れる

4. VSCodeにUnity プラグインを入れる

5. VSCodeの設定を行う

6. Unityプロジェクトを開く



1. アンインストール

VSCodeのC#プラグイン関連は3つくらいに分裂していて、個別に消してもいいけど、

勝手に復活したりして治安が悪い。なんでプラグイン間で連携しようとか思うかなあ。


VSCodeもろともC#プラグインが吐き出すいろんなフォルダを消すとクリーンインストールができるようになる。

rm -fr ~/Library/Preferences/com.microsoft.VSCode.helper.plist 

rm -fr ~/Library/Preferences/com.microsoft.VSCode.plist 

rm -fr ~/Library/Caches/com.microsoft.VSCode

rm -fr ~/Library/Caches/com.microsoft.VSCode.ShipIt/

rm -fr ~/Library/Application\ Support/Code/

rm -fr ~/Library/Saved\ Application\ State/com.microsoft.VSCode.savedState/

rm -fr ~/.vscode/

rm -rf ~/.vscode*



2. クリーンインストール

VSCodeをいれる。それ以外、プラグインを入れるのとかはあとで。



3. UnityEditorにVisualStudioEditorパッケージを入れる

package managerの検索窓に visual studio editorとか入れて、インストールする。

visual studio codeプラグインが入っていたら消す。

スクリーンショット 2024-01-10 16.52.43.png


4. VSCodeにUnity プラグインを入れる

他のC#とかMS系のものは全て入れないでいい。邪魔なので。

スクリーンショット 2024-01-10 16.53.33.png



5. VSCodeの設定を行う

OmniSharpにチェックを入れます。

スクリーンショット 2024-01-10 16.35.31.png


ついでにformat on saveをオンにすると、保存するたびにフォーマットしてくれるので便利です。

スクリーンショット 2024-01-10 16.36.17.png



6. Unityプロジェクトを開く

と、いろいろ設定がなんか終わって補完が効くようになったりします。



仕上げ

この時点でC#系のプラグインが3つほど入っていて、そのバージョンがとても怪しい、この瞬間しか動かない組み合わせになっている。

ので、これらのプラグインのAutoUpdateは切りましょう。


だって勝手に動かなくなって3つもあるから全然噛み合わない状態に容易になるの。最悪。


特定のVSCodeのAutoUpdateを切るには、

スクリーンショット 2024-01-29 21.21.31.png


Extensionsのコーナーにある左上の歯車 → ここのこれをこう、、、で、個別にAuto Updateのチェックを外そう、、

スクリーンショット 2024-01-29 21.27.44.png



余談

VSCodeのC#Extension単体だった頃よりいろいろうるさくなっていて、

MSのデフォ規約のようにフィールドは~始まり~とか言ってくるようになった。いいと思う。


Riderみたいにデフォ幅80文字制限勝手に変な改行、みたいなこともしないし。

Riderみたいに三項演算子超おすすめです!みたいなこともしてこないし。