ハイパーニートプログラマーへの道

頑張ったり頑張らなかったり

Sublime Text2上でSwiftをコンパイル&実行

Qiitaにも投稿しました。

Build System作成

  • Tools>Build System>New Build System...を選択
  • .sublime-buildファイルが開くので以下のコードを記述
  • Swift.sublime-buildの名前で保存。保存先はPackages>User配下になってます。
{
    "cmd": ["swift $file_name && swift -i $file_name"],
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "path": "/Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/",
    "selector": "source.swift",
    "shell": true
}
  • Tools>Buildか、⌘ + Bでビルド、そして実行が行われます。 スクリーンショット 2014-06-15 16.27.04.png

fizzbuzzのコード例は@dankogaiさんのブログより拝借 http://blog.livedoor.jp/dankogai/archives/51922323.html

ちょっと説明

  • 最初は"cmd": ["swift", "-i", "$file_name"],と記述してしまってました。
  • 初回実行時、Developer Tools Accessのダイアログが立ち上がるのでパスワード記入。

  • けど1番初めはなんか怒られました(キャプチャ撮るの忘れたw)REPL, failed, status -1, lost connetionとかの単語が並んでたような気が。

  • しかし、そのまま2度目の実行で
Welcome to Swift!  Type :help for assistance.

[Finished in 2.5s]

とでました。でもそれじゃどうにもならんので、上記のように書き直し、再度実行しました。

参考にしたのはこちら
Sublime Text 2 で TypeScript をビルドする
http://y-anz-m.blogspot.jp/2012/11/sublime-text-2-typescript.html

file_regexはエラー出力をキャプチャするための正規表現とのことですが、よくわからんのでとりあえず自分が以前作ったJava用のbuildファイルからとってきました。

Windows】 SublimeText2でJavaコンパイル&実行させる http://hyperneetprogrammer.hatenablog.com/entry/2013/12/12/204452

あと、パスは見ての通りXcode6-Betaのパスを設定しているので、今後正式版発表の際には変えないといけないかもです。

よくわからんまま、チャチャっと書いてしまっているので、問題があるかもしれんです。

(追記) 実行ファイルはスクリプトファイルと同じ場所に作成されるようですが、 "cmd": ["swift -i $file_name"],とすれば、インタプリタモードと同じようにスクリプト実行だけ、という感じになるようです。