37
36

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

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

Last updated at Posted at 2014-06-15

##Build System作成

  • Tools>Build System>New Build System...を選択
  • .sublime-buildファイルが開くので以下のコードを記述
  • Swift.sublime-buildの名前で保存。保存先はPackages>User配下になってます。
{
// "cmd": ["swiftc $file_name && swift $file_name"],
    "cmd": ["swift $file_name"],
	"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
	"path": "/Applications/Xcode.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のパスを設定しているので、今後正式版発表の際には変えないといけないかもです。
(9/19)修正済みです。

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

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

37
36
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
36

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?