UnityのエディタはWSLのVimが最強だということ

Unityのコード編集

Unityのコード編集ツール候補には次のような選択肢がある.

IDE

単にコードを書く支援だけじゃなく,デバッグ機能や便利ツール全盛り!というIDE統合開発環境)がある.
これは,すごく便利で何も設定しなくてもすぐ使えるし,最近はUnityとの連携も強固になってきた.

Unityで有名なIDEは,Visual StudioとRider.

Visual StudioはUnityのデフォルト設定になっている.
無料ですぐ使えるから,デフォルトになってるのも頷ける.

Riderは,Visual Studioとほぼ同等の機能が使える上,コード補完がより賢くなっていて,もっと色んなおせっかいをやいてくれる.
例えば,Unityのnull比較はやめた方が良いと教えてくれたり,命名規則にやたら厳しかったりする.
有料(学生無料)だけどね.

そんな便利なIDEだが,性能が良い分,動作がやや重い.
それから,Vimプラグインを入れても,もとからあるキーバインドと衝突したり,コード編集画面外に移動すると戻れないみたいな地味に嫌な問題がある.

エディタ

IDEではない,いわゆるエディタは,コードを書くための必要最小限を提供してくれる.
最近はプラグインを入れまくるとIDEみたいになるけど,それはおいておこう.

エディタは星の数ほどあるけれど,Unityで有名なのは,Visual Studio CodeVisual Studioとは違うよ).
エディタの場合は,最初にちょっとした環境構築が必要なので,やや中級者向け.

コード補完や機能は,IDEには及ばない.
ただしその分動作が軽い.
無駄な機能がないとも言えるわけだ.

ある程度慣れてくると,こっちの方が好きな人も結構いる.

Vim

古より伝わりしCUIで動くエディタ. 快速,無限のカスタマイズ. 狂信者多数.

Visual Studio Codeと同じくエディタなのだが,動作する環境がCUI
初めてVimを触ったら意味不明で使いにくいと思うが,カスタマイズしまくってキーバインドになれると,マウスを一切使わずに爆速コーディングが可能になる.

最近は,NeoVimやLSPといったVimIDEさながらの便利さにしようという試みもある.

Emacs

Vimを書いてしまったのでEmacsも載せなくてはならない.
が,筆者は使ったことが無いので詳しい事が書けない.申し訳.

Vimよりももっと自由度が高く,コード編集に限らずあらゆることがEmacs上でできるらしい.
利用者数はVimの方が多いものの,こだわる人はEmacsを使っているイメージ.

VimEmacsはよく戦争になるので,気軽に口に出さないのが吉.

Unityのエディタに最適なのは?

初心者は間違いなくVisual Studio
慣れてきたら好みによって,RiderやVisual Studio Code
めちゃくちゃ慣れて,Vimに興味ある・Vimmerの方は,Vimを使おうぜっていうのがこの記事.

IDEより早く,VSCodeよりマウスを使わないVimが最強です.(あ,Emacsでもいいと思います.)

問題が・・・

よっしゃVim使うぜってなっても,2つ問題がある.

1つは環境構築の難易度の高さ.
Vimを初めて使うならそもそもVimの環境作らなきゃだし,そうでなくともUnity連携は割と面倒.
まあでもこれは頑張ればなんとかなる.

2つ目は,UnityはWindows環境で使いたいということ.
多くのアプリ開発Macが使われるが,ゲームはやや特殊.
クオリティの高いゲームを作るほど,より高性能なGPUが欲しくなる.
するとどうしてもMacではなくWindowsになってしまう.

WindowsVim...?
VimCUIで動くツールだ(GVimは一旦忘れよう).
WindowsCUIは,コマンドプロンプト.これでVimはちょっときつい.
色々工夫すれば,Windows上でもVimが使えるが,結局環境がWindowsなので思うように使えないことが多い.

WSL

Windows Subsystem for Linux(WSL)は,Windows上でLinuxを使う機能.
この機能は公式サポートされている.

これでVimを使うことで,Windowsで組んだ最強PCでUnityを動かしつつ,Linux環境のVimで爆速コーディングが可能になる.
WSLを使ったVimの環境構築については,別の記事で書いたから興味ある人はそっちをみてくれよな.

tmls.hatenablog.com

結論

つまるところで,UnityのエディタはWSLのVimが最強だということです.