Pebble's Diary

プログラマーの作業メモ

pure vimでswift自動補完する

pure vimswift自動補完するvim pluginを作った方がいらっしゃるので紹介しておきます。 動作確認はOSX 10.10.5 (Yosemite) Xcode 7.2で行いました。

github.com

このプラグイン自体はbundleなどでインストールするだけですが、 以下のsourcekittendaemonというモジュールをインストールし、デーモンとして立ち上げる必要があります。 オリジナル版は普通にインストールするとなぜかリンクエラーで動作しなかった(Yosemiseのせいか?)ので、Makefileを修正した以下をお試しください。

https://github.com/pebble8888/SourceKittenDaemon

sourcekittendaemonのインストール方法は、 上のリポジトリをcloneしてから、

$ git submodule update --init --recursive
$ carthage bootstrap --no-use-binaries --platform Mac
$ make install
とします。

その後、補完したswiftソースコードが含まれたxcodeprojectを指定してデーモンを立ち上げる必要があります。 例として、

pebble8888/audiounitswift · GitHub

このプロジェクトを使う場合、そのxcodeprojを指定することになるので、

$ SourceKittenDaemon start --port 8081 --project /develop/audiounitswift.xcodeproj/

とします。以下のように表示されます。

[INFO] Monitoring /develop/audiounitswift/audiounitswift.xcodeproj for changes
[INFO] Listening on port: 8081
[INFO] Started

それから、MyAudioPlayer.swiftvim(7.4)で開き、audioformat.まで打ったところで、C-x C-oしたときの画面が以下です。(配色が汚くて申し訳ない。)

f:id:pebble8888:20151212201352p:plain

Xcodeが使っている補完エンジンと同じものが使われているので、使い勝手が良くなれば、 vimでのswift補完もそのうち実用的になるかもしれません。

以上です。