Sublime Text (日本語)

特に言及のない限り、以下の手順は Sublime Text 2 および 3 のどちらでも動作します。

Lua Love

Lua Love パッケージは構文強調表示、スニペット、自動補完、ビルドルールを提供します。

  1. Package Control (パッケージ管理) をインストールしてから、 Sublime を再起動します。
  2. Ctrl+Shift+P を押して command palette (コマンドパレット) を開いてから Package Control: Install Package (パッケージの管理: パッケージのインストール)を使用します。
  3. 別の入力フィールドが表示されるまで待機してから Lua Love パッケージをインストールします。
  4. command palette から Set Syntax: Lua (Love) (構文設定: Lua (Love) で構文強調表示を有効にします。
  5. Sublime 3では、 LuaLove - Love2D' を選択して Ctrl+B を使用することでビルドシステムを起動できます。
  6. Sublime 2 では、手作業でビルドスクリプトを編集する必要があります (Windows では C:\Users\....\AppData\Roaming\Sublime Text 2\Packages\Lua Love\LuaLove.sublime-build):
{
	"file_regex": "^(?:(?:\t)|(?:.+: ))(.+):([0-9]+): (.*)$",
	"selector": "source.lua",
	"shell": true,
	"cmd": ["love", "${project_path:${file_path:.}}"],

	"variants": [
		{
			"name": "Love2D",
			"shell": true,
			"cmd": ["love", "${project_path:.}"],
			"osx":
			{
				"cmd": ["love $project_path"]
			}
		},
		{   "name": "ldoc: File",
			"shell": true,
			"cmd": ["ldoc -d $project_path/doc/$file_base_name -f markdown -t $file_base_name $file"]
		},
		{   "name": "ldoc: Project",
			"shell": true,
			"cmd": ["ldoc -d $project_path/doc -f markdown -t $project_base_name $project_path/src/"]
		}
	]
}

Sublime 2 および 3 は共に環境変数 PATH へ LÖVE バイナリのパスを追加する必要があります。この作業はビルドスクリプトで "love" のパスを変更することにより回避できます。これは Sublime 3 ではかなり面倒な作業です。

簡易ビルドシステム

ビルドシステムを新規作成します: ツール -> ビルドシステム -> 新規ビルドシステム および下記のコードを使用します。

{
    "selector": "source.lua",
    "file_regex": "^Error: (?:[^:]+: )?([^: ]+?):(\\d+):() ([^:]*)$",
    "windows": {
        "cmd": ["C:/Program Files/LOVE/love.exe", "${folder:${file_path}}"],
        "shell": true
    },
    "osx": {
        "cmd": ["/Applications/love.app/Contents/MacOS/love", "${folder:${file_path}}"]
    },
    "linux": {
        "cmd": ["love", "${folder:${file_path}}"]
    }
}

既に言及した格納先へ love-run.sublime-build として保存してください。

これで Ctrl+B または Cmd+B を押すことで LÖVE プロジェクトを実行できます。

判明している問題

  • このビルドシステムは LÖVE の格納先に依存します。 "cmd": 行のパスを確認してください。
  • このビルドシステムは $file_path に半角空白が記述されていると動作しません。

コンソール出力

標準では LOVE アプリケーションが閉じられるまで Sublime Text にて print() 呼び出しといった出力を一切表示しません。

コンソール出力をライブ表示するためには下記のコードを main.lua ファイルの上部、または conf.lua へ内容を追加します:

io.stdout:setvbuf("no")

エラーへのジャンプ

実行中にエラーが発生した場合は、 Lua が遭遇したエラーを通り抜けるために F4 (次のエラー) および SHIFT-F4 (前のエラー) を使用できます。

関連