LSP 【Language Server Protocol】 言語サーバプロトコル

概要

LSP(Language Server Protocol)とは、プログラミング言語の仕様に基づくコード記述の支援機能を統合開発環境(IDE)などに与えるためのデータ形式や通信手順を定めたプロトコル。コードエディタに新しい言語のコード補完や強調表示などの機能を容易に追加することができる。

プログラマソースコードを記述するためのコードエディタには、対応している言語の仕様に基づいて、コードの色分けや強調表示(シンタックスハイライト)、コード補完、シンボル定義への移動、エラーチェック、データ型チェックなどコード記述を支援する機能が提供されている。

従来、こうした支援機能は各コードエディタがあらかじめ対応している特定の言語にのみ提供され、新しい言語などで支援機能を利用するには、コードエディタの開発側が言語対応を追加するのを待たなければならなかった。

LSPは、支援機能を提供する「言語サーバ」(language server)とコードエディタなどの通信方法を定めた標準で、エディタサーバプログラムコードを送信して支援を依頼し、サーバが支援機能(言語サービス)を提供するという仕組みを構築することができる。

これにより、エディタ自体を改変・更新しなくても、ある言語についてのサービス実装した言語サーバを追加することで、新しい言語の支援機能を追加することができるようになる。LSPの手順およびデータ形式はJSON-RPCに従って定義されており、仕様も公開されている。

LSPおよび言語サーバは、もともと米マイクロソフトMicrosoft)社がコードエディタ製品の「Visual Studio Code」(VSCode)で利用するために考案した仕組みだが、他社の協力を得て仕様の標準化が進められ、VimやEclipseなど他のエディタIDEでも利用できるようになっている。

(2023.9.22更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる