はじめに プログラマの仕事道具といえばソースコードエディタ(以下,エディタ)です.エディタ開発はプログラマの能力を最大化するための有効な手段と言えます.本記事はエディタ開発の第一歩して拡張機能,またはプラグインの開発を行います.特にEclipse登場以降のプログラミングエディタの多くは拡張機能の集合体として設計されているため,拡張機能開発の経験はエディタ本体の開発にも応用可能です. 本記事ではLanguage Server Protocol (以下,LSP)を用いたエディタの拡張機能開発を行います.LSPとは,コード補完や,変数参照,スタイル修正といった機能実装をあらゆるエディタ/IDE へ提供するプロトコルです.本記事ではVisual Studio Codeを用いて拡張機能開発を行いますが,作成した機能はVimやEmacsでも使えます. 一応公式チュートリアルもありますが,拡張機能の開発