2015-04-22 29 views
4

我正在使用emacs和elpy作爲使用python代碼的模式。我還安裝了Jedi,主要有兩件事:去定義它提供的功能和自動完成功能。如何在emacs中使用elpy正確設置Jedi?

不過,我遇到了在此設置了以下問題:

  1. 絕地完成不受鍵命令觸發。它會自動顯示,但有時候我的口味已經太晚了,我寧願儘早嘗試並調用它。但是,儘管定製頁面中存在Jedi:Key complete選項,但它似乎沒有任何作用。另一方面,elpy的公司模式的快捷方式在C-M-i上。
  2. 當Jedi和公司模式都打開時,有時會出現兩個完成列表(內容相同;我也安裝了公司jedi後端) - 但只有其中一個允許更改選擇(完成列表來自Jedi),但在Enter上從公司選擇使用。這是不可用的。

是否有任何方法來設置的東西,以便我有一個單一來源與jedi後端自動完成和jedi的定義?

這是怎麼在我的​​我目前設置的絕地:

(add-hook 'python-mode-hook 'jedi:setup) 
(setq jedi:complete-on-dot t) 

回答

6

根據elpy的文件,你只需要安裝elpy包。然後使用下面

(elpy-enable) 
(setq elpy-rpc-backend "jedi") 

這是所有的配置。 您可以訪問https://github.com/jorgenschaefer/elpy瞭解更多信息。