パスワードを忘れた? アカウント作成
15656941 journal
日記

yuuka_maniaの日記: そろそろ eglot とか導入してみようか否か

日記 by yuuka_mania

周回遅れなのは、百も承知だが、とりあえず、メモ。

https://granddaifuku.hatenablog.com/entry/emacs-eglot

こっちの方が参考になった
https://solist.work/blog/posts/language-server-protocol/

Eglot 本家
https://github.com/joaotavora/eglot

とりあえず、 go の language server は、 gopls というものらしく、それは、 brew install した。

Emacs 側は、↓な感じ。

(leaf eglot
  :ensure t
  :config
  (add-hook 'go-mode-hook 'eglot-ensure)
;;  (define-key eglot-mode-map (kbd "C-c e f") 'eglot-format)
;;  (define-key eglot-mode-map (kbd "C-c e n") 'eglot-rename)
  )

M-C-i で、補完が効く模様。ドキュメントを見るときは、 M-x eldoc とか。
eldoc-mode にすると、リアルタイムにミニバッファにドキュメントが表示される模様。だけど、個人的に、この振る舞いはあまり好みではない。

Typescript も追加した。 language server は、↓な感じ。

% npm install -g typescript-language-server

今は、もう設定も何も要らないっぽいな。面倒そうと思ってたが、全然だった。

(leaf eglot
  :ensure t
  :config
  (add-hook 'go-mode-hook 'eglot-ensure)
  (add-hook 'typescript-mode-hook 'eglot-ensure)
  )

さらに、 c/c++ も追加。language serverは、 ccls

% brew install ccls

(leaf eglot
  :ensure t
  :config
  (add-hook 'go-mode-hook 'eglot-ensure)
  (add-hook 'typescript-mode-hook 'eglot-ensure)
  (add-hook 'cc-mode-hook 'eglot-ensure)
  )

typodupeerror

ソースを見ろ -- ある4桁UID

読み込み中...