Emacs Python 自動補全之 eglot

2022-08-26 14:00:31 字數 531 閱讀 2753

首先eglot 是乙個lsp-mode的整合環境。作者說這不僅僅是乙個lsp工具。但是我從其說明文件中沒有得到更多的東西。eglot 相當於只是乙個框架。需要什麼功能,還需要另外單獨安裝,其對應關係如下:

比如,這個測試中需要支援python 的lsp . 就需要去安裝pyls.  各個lsp 的入口,可以在eglot 的readme中查詢。下面是安裝eglot (pyls).

eglot 依賴於pyls. 因此安裝的時候需要將兩者同時安裝。

m-x package-install ret eglot ret

pip3 install 'python-language-server[all]'

安裝完成後進行配置:

(add-hook 'python-mode-hook 'eglot-ensure)
在開啟 ".py" 檔案時自動識別為python-mode,並啟動eglot.

但是自動補全功能並不好用, 不會自動提示可補全項。需要按tab, 才會出現 。而且不支援使用m-n (n 屬於0-9) 來選擇補全項。

Emacs Python 自動補全 Elpy

安裝方法 首先,安裝一些依賴包 either of these pip install rope pip install jedi flake8 用來檢查語法錯誤 pip install flake8 importmagic 用來自動引入需要的包 pip install importmagic au...

Emacs Python 自動補全 Elpy

安裝方法 首先,安裝一些依賴包 either of these pip install rope pip install jedi flake8 用來檢查語法錯誤 pip install flake8 importmagic 用來自動引入需要的包 pip install importmagic au...

Emacs Python 自動補全之 jedi

jedi 的安裝配置並不是很友好。github 安裝jedi m x package install jedi jedi core這裡需要注意,jedi core是須要安裝的。因為後面會用到。配置python mode自動啟用jedi 在相應的配置檔案中加入以下內容 setq jedi server...