Launguage Server Protocol(LSP)は近頃注目を集めており、様々なプログラミング言語のLanguage Serverが開発されています。 Swiftも例外ではなく、2018年にはSourceKit-LSPが発表され、現在も開発が続いています。 このトークではLSPについての概要と、SourceKit-LSPを使った将来の開発環境についてお話したいと思います。
フォトブックアプリを作っています
ランゲージサーバープロトコルとは
補完などには各プログラミング言語のために実装が必要
それを解決するのがLSP
JSON RPCでエディタと言語がやり取り
SPMを使ったプロジェクトがサポートされている
特にLinux環境での開発効率向上
導入して、エディタごとに設定すれば使える
Vimで補完
型推論も働く
自分で定義したものも保管される
シンタックスハイライトは対応していないので自分で入れる
定義ジャンプできる
参照箇所の検索やジャンプも可能
エラーやワーニングの診断も提供されている
動いているところを見たければお見せするので声をかけてください
Vim以外もLSP対応進んでいる
LSPサイトで対応状況確認可能
SourceKit LSPも機能が増えていくのを確認できる
まとめ
様々な環境で使いやすくなっていきます