Repolode
joaotavora

joaotavora/eglot

EglotはEmacsに組み込まれたLSPクライアントで、最小限の設定で編集バッファを言語サーバーに接続します。

スター
2,570
フォーク
210
未解決の Issue
55
最終コミット
7 日前

これは何?

Eglot(Emacs Polyglot)はEmacs向けのLanguage Server Protocolクライアントです。ソースファイルでM-x eglotを実行すると、そのファイルのメジャーモードに適した言語サーバーを起動します。可能な場合はプログラムを自動判別し、判別できない場合は入力を求めます。その後、プロジェクト内で開いているファイルを同期し、サーバーの機能をEmacsの標準ツールに連携します。

Eglotは別のフレームワークではなく、Emacs組み込みの機能を利用します。Flymakeで診断を表示し、ElDocでホバー情報やシグネチャを表示、Xrefで定義ジャンプや参照検索を行います。補完はcompletion-at-point経由で利用でき、接続前に有効化すればyasnippetベースのスニペット補完にも対応します。コードアクション、リネーム、サーバー起点の編集(デフォルトではユーザーに確認)も利用できます。

EglotはEmacs 29以降、Emacs本体に含まれています。このリポジトリは、GNU ELPAを通じて古いEmacsでも使えるよう、上流のコードをミラーしています。開発はEmacsプロジェクト内で行われ、パッチはメールで提出します。

主な機能

  • 01M-x eglotで言語サーバーを起動し、可能な場合はサーバープログラムを自動判別します。
  • 02Flymakeで診断を、ElDocでホバー情報を表示します。
  • 03completion-at-point経由の補完を提供し、オプションでyasnippetのスニペットにも対応します。
  • 04リネーム、コードアクション、Xrefによる定義・参照の検索に対応します。
  • 05clangd、gopls、rust-analyzer、pyrightなど、多数のサーバーがあらかじめ設定されています。

ユースケース

  • EmacsでC、C++、Go、Rustのコードを書き、言語サーバーの機能を活用する。
  • Emacs内で診断や補完を利用しながら、PythonやTypeScriptのプロジェクトに取り組む。
  • より大規模なフレームワークをインストールせずに、EmacsのLSPサポートを試す。

クイックスタート

  1. 1

    Emacs 内で GNU ELPA から安定版をインストールします

    M-x package-install RET eglot RET
  2. 2

    任意のソースファイルを開き、Eglot を起動します

    M-x eglot

使う前に知っておきたいこと

  • Emacs 内でのみ動作するため、他のエディターでは使用できません。
  • このリポジトリは現在、開発元ではないため、プルリクエストはマージされません。
  • コピーレフトライセンスである GPL-3.0 の下でライセンスされています。

トピック

よくある質問

eglot とは?
EglotはEmacsに組み込まれたLSPクライアントで、最小限の設定で編集バッファを言語サーバーに接続します。 Eglot(Emacs Polyglot)はEmacs向けのLanguage Server Protocolクライアントです。ソースファイルでM-x eglotを実行すると、そのファイルのメジャーモードに適した言語サーバーを起動します。可能な場合はプログラムを自動判別し、判別できない場合は入力を求めます。その後、プロジェクト内で開いているファイルを同期し、サーバーの機能をEmacsの標準ツールに連携します。
eglot は無料で使えますか?ライセンスは?
eglot は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
eglot は今もメンテナンスされていますか?
活発にメンテナンス中。eglot の最終コミットは 2026年10月30日 です。
eglot は何に使えますか?
EmacsでC、C++、Go、Rustのコードを書き、言語サーバーの機能を活用する。 Emacs内で診断や補完を利用しながら、PythonやTypeScriptのプロジェクトに取り組む。 より大規模なフレームワークをインストールせずに、EmacsのLSPサポートを試す。
eglot のインストール方法は?
Emacs 内で GNU ELPA から安定版をインストールします: M-x package-install RET eglot RET 任意のソースファイルを開き、Eglot を起動します: M-x eglot
eglot はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/joaotavora/eglot

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト