Nekostack

Python, Swift, Vim, Cat, Curry, Whisky.

Vim で Swift 補完, プレースホルダ活用

Posted on 06 March 2016.

Vim に Swift の補完機能を提供するプラグイン、 neocomplete-kitten にプレースホルダを活用する機能を追加しました (前回の記事はこちら)。

kitten-placeholder

機能・仕組み

上の GIF のように、 メソッドの補完後に、neosnippet のキーマップで、 引数にジャンプ・編集できるようになっています。 SourceKit の補完候補のテキストには、 <#T## ... #> のような形式のプレースホルダが含まれていることがあるのですが、 これを neosnippet で利用可能な形式に変換しています。

現在サポートしている他の機能

  • 型名の補完 (: のあとの親クラス・プロトコルやパラメーターの型、-> につづく結果型)
  • static なメンバー・インスタンスのメンバー名の補完
  • 関数・メソッドのパラメーター名の補完
  • トップレベルの関数・定数・変数の補完

次の予定

SDK/Framework 周りのサポートをそろそろ入れたいところ。