はじめに
以前はXamarinでC#を書いてましたが、他の言語やプラットフォームで使用するエディタを変えたくなかったのと、UnityにPlug-inを追加することによってブレークポイントを利用可能ということでVSCodeに乗り換えました。
あと、MacでVisual Studioを使いたかったというミーハーな気持ちもあります。
環境
- OSX 10.9.5
- Unity 5.3.6
- Visual Studio Code 1.4.0
VS Code Plug-inをUnityプロジェクトに追加
Assets/Plugins/Editor/VSCode.csへ追加する。
Unity側でVSCodeを設定する
- Unity > Preferences > VSCode > Enable Integration をチェックする
- Unity > Preferences > VSCode > Use Unity Debugger をチェックする
- Install Unity Debuggerを押下してVSCodeにインストール
VSCodeでUnityプロジェクトを開く
Assets > Open C# Project in Codeを実行してVSCodeを使用する。
この手順を踏まないと、VSCodeからの静的コード解析やDebuggerが利用できません。
Unityの設定
Unity PreferencesからVSCodeを選択してEnable Integrationをチェックして選択する。
DEBUGの環境設定
画面左端に表示されているボタンの中で一番下(Debug)をクリックしてDebugモードにする。
歯車マークをクリックするとlaunch.jsonが開く。
launch.jsonを生成後にDebugモードで再生マークのStartをクリックするとDebug開始となります。
この状態でUnityを再生するとブレークポイントで処理を停止してくれます。
変数の監視も可能です。
メンバ変数の監視は、変数にthis.
を含めないといけないので注意してください。
WATCHリスト含めてからでも、this.
を含めることが出来るのでソースを書き換えなくても大丈夫です。
Debugger for Unity
-
⌘ + pの後に、
ext install unity-debug
と入力 - 虫マークをクリックしてデバッグウィンドウを表示
-
.vscode/Launch.json
があれば、あらかじめ削除しておく - 歯車マークをクリックして、
Unity Debugger
を選択 - Launch.json が生成される
Unity固有のコールバックも補完
snippets.jsをダウンロード して、Visual Studio Code.app/Contents/Resources/app/plugins/vs.language.csharp.o/features/snippets.js
とする。
インテリセンスの遅延
Unity側で再生をしていると、VSCode側でコード解析が重くなりコードアシストが実用に耐えません。
停止してからコードを書きましょう。
setting.json
Code>Preferences>User Settingsからsetting.jsonを開く。
フォントの変更
コーディングに適したオープンソースフォントMonoidを選択。
setting.jsonに追記。
{
"editor.fontFamily": "Monoid"
}
ハードタブを使わない
タブの代わりにスペースを用います。
setting.jsonに追記。
{
"editor.insertSpaces": true
}
タブ・スペースを可視化
setting.jsonに追記。
{
"editor.renderWhitespace": true
}
keybindings.json
Code>Preferences>Keyboard Shortcutsからkeybindings.jsonを開く。
コードリフォーマットのショートカット指定
keybindings.jsonに記述。直前までXamarinを使っていたので、そっちにあわせた。
{
"key": "cmd+alt+l",
"command": "editor.action.format"
}
宣言箇所へ移動のショートカット指定
keybindings.jsonに記述。
直前までXamarinを使っていたので、そっちにあわせた。
{
"key": "cmd+d",
"command": "editor.action.goToDeclaration",
"when": "editorTextFocus"
}
Markdownのプレビュー切り替えショートカット指定
keybindings.jsonに記述。
{
"key": "ctrl+v",
"command": "workbench.action.markdown.togglePreview"
}
.gitignoreに追加
チーム開発を行なっていて、VSCodeを使っているのは僕ひとりなので、コミットしないようにする。
{プロジェクト名}/Assets/Plugins/Editor/VSCode.cs
{プロジェクト名}/Assets/Plugins/Editor/VSCode.meta
{プロジェクト名}/.vscode
拡張ツール(Extension)
ClassyNaming
コード補完を更に柔軟に行う。
入力した文字列のパターンから予測できるコードを補完するようになる。
- ⌘+p
-
ext install Classy Naming
を実行
wakatime
プロジェクトのファイル単位で作業した時間を自動計測してくれる。
ただし、wakatimeでアカウント登録が必要になる。
VSCodeに対応したプラグインがあり、GitHub上で公開されている。
- ⌘+p
-
ext install WakaTime
を実行
markdownlint
Markdownの構文チェックツール。
linterで構文チェックを随時行なっていれば、逐一プレビューを見なくてもキレイなMarkdownが書けると考えました。
- ⌘+p
-
ext install markdownlint
を実行
MDTools
テキスト操作ツール
コードブロック内でアスキーアートを作ったり、キャメル記法やパスカル記法に文字列操作が出来る。
- ⌘+p
-
ext install mdtools
を実行 - 操作対象の文字列を選択
-
Alt + t
実行
テーマカラー
基本的にMonokaiを好むので、その派生テーマカラーをインストールした。
- ⌘+p
-
ext install Flatland Monokai Theme
を実行
GitHistory
- ⌘+p
-
ext install githistory
を実行
Preview
- ⌘+p
ext install preview-vscode
Markdownのプレビューを表示
Bookmarks
エディタ上にマークしたラインへジャンプする
- ⌘+p
ext install Bookmarks
関連リンク
Googleで、"visual studio code" VSCode "VS Code" 便利
で検索するといろいろ使い方がわかる。
- visualstudio.comからVSCodeのインストーラーをダウンロード
- "Unity"でVSCode公式サイトを検索
- MS公式ドキュメント:Unity Development with VS Code
- VS Code Plug-in
- Visual Studio Codeを使ってデバッグする
- Introducing Visual Studio Code
- Visual Studio Code 0.5.0の新機能まとめ
- VSCode関連リポジトリ
- Qiita--Visual Studio Codeグループ
- Qiita--UnityでVisual Studio Codeを使う
- VSCodeアップデート情報
- VS Code Extension Gallery
- VS Code MarketPlace
- VS Code Unity Debugger Extension Preview
- Unity-Technologies/vscode-unity-debug
- Debugger for Unity
- Python on Visual Studio Code
- キーバインド