7.18.2011

Unityでのスクリプト環境整備その1

Unityをなんともなしに始めてみたのですがどうにもビルトインエディタであるUniSciTEが使いにくかったのでいろいろ探してみました。
そこで見つけたのがNotePad++を使用したUnityScriptの編集です。以下に補足しておきます。
尚、UnityとNotePad++がインストールされているものとして書いていきます。(私の環境ですとUnity v3.3.0f4、NotePad++ v5.9.2のunicode版です。)
まずはNotePad++をインストールします。(私がインストールした時点でv5.9.2でした。)

ドキュメントの関連付け

  1. NotePad++のプラグイン、「LanguageHelp」をここのNotePad++plugin > LanguageHelpからダウンロードします。(私がダウンロードした時点ではv1.40)
  2. NotePad++ディレクトリ\pluginsにLanguageHelpU.dllのみ配置します。
  3. 配置したらNotePad++を起動し、メニューからプラグイン>LanguageHelp>Optionsを選択し、Addでメニューが出るので各項目を埋めて行きます。Name:にUnity、Extension listに使用するスクリプトの拡張子を記述します。複数ある場合はスペースを空けて記述します。例)js cs。Extended help file pathにhttp://unity3d.com/support/documentation/ScriptReference/30_search.html?q=$word$を入れます。
  4. ワードを選択した状態でCtrl+F1で選択ワードを検索できるようになりました。
キーワードのハイライト
  1. Unityディレクトリ\Editor\Data\Tools\UniSciTE\unitykeywords.propertiesの中の2行目にUnityで使用するキーワードがあるのでそれをコピーします。
  2. NotePad++のメニューから設定>スタイル設定を選択し、JavaScriptのKEYWORDを選択、ユーザ定義のキーワード項に先ほどコピーしたキーワードを貼り付けます。ちなみにこのやり方ですとC#は対応できないようです。恐らくStyleIDを定義しないといけないのだと思いますがないようなので今回はスルーします。
  3. 保存して閉じるを行い、キーワードのハイライトが変わるのが確認できるかと思います。尚、テーマを変更する際には同じようにキーワードを追加しなければなりません。
オートコンプリートの呼び出し
  1. NotePad++のメニューから設定>環境設定>自動保存/入力補完の入力候補の「入力の毎に補完を行う」と「関数名補完」と「入力の直後関数のパラメータヒントを表示」のうち、必要なものにチェックを入れる。「入力の直後関数のパラメータヒントを表示」のみチェックを入れるとうるさくなくてよいかもしれません。その場合はデフォルトですとCtrl+Spaceでヒントを表示します。
  2. Notepad++ディレクトリ\plugins\APIs\内の使用するスクリプトに対応するファイルを開く。例)javascriptであれば、javascript.xml、C#であればcs.xmlを開く。
  3. javascriptであればhttp://unity.igorrafael.com/home/UnityAPI_JS.xmlをダウンロードし、C#であればhttp://unity.igorrafael.com/home/UnityAPI_CS.xmlをダウンロードし中身を<AutoComplete>以下に追記する。
  4. これで関数の入力補完ができるようになりました。
UnityのエラーコンソールからNotePad++にジャンプする
    UniSciTEじゃないとエラーコンソールに跳べないので細工を行います。
  1. Unityディレクトリ\Editor\Data\Tools\UniSciTEを開き、UniSciTE.exeのバックアップを取る。
  2. Project Kyrill:Redirect to Notepad++で言及されてい通り、UniSciTEにしかエラー行を渡してくれないので踏み台にすることでNotePad++にエラー行が渡されるようにします。詳しくは先ほどのエントリーを参考にしてもらえればシンタックスエラーがエラーコンソールに表示されているときに直接エラー行へジャンプできるようになるかと思います。

これでかなり使いやすくなったと思います。他にもNotePad++の便利なプラグインがいろいろとあるようなので探してみてよさそうなのがあったらまとめたいと思います。またUnity関連のTips的なものがあればその都度まとめます。