簡體   English   中英

emacs配置:python-mode-hook

[英]emacs configuration: python-mode-hook

我正在為我的emacs配置苦苦掙扎。 .emacs中的相關行是:

(require 'python-mode)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))

(add-hook
 'python-mode-hook
 '(lambda ()
    (message "python-mode-hook called")
    (require 'jedi)
    (when (require 'elpy nil t)
      (elpy-enable)
      (setq elpy-rpc-backend "jedi")
      (add-hook
       'jedi-mode-hook
       '(lambda ()
          (setq-local ac-max-width 0.5))))))

加載python文件時,將調用該鈎子,並且收到“ python-mode-hook named”消息。 但是,elpy功能不存在。 如果我然后Mx python-mode ,一切都是應該的。

我不明白為什么我需要兩次調用“ python-mode”。 我以某種方式認為這可能與以錯誤的順序調用/定義鈎子有關,但是我不明白這里有什么問題。

我希望能得到一些提示。

要啟用elpy功能,您在.emacs所需要做的就是

(package-initialize)
(elpy-enable)

但是,您還必須正確安裝elpy軟件包本身。

嘗試執行“快速安裝”部分中的所有步驟: https : //github.com/jorgenschaefer/elpy#quick-installation

同時想出了...問題是elpy-enable確實安裝了一個鈎子。 它不像我想的那樣直接調用elpy模式。 因此,只有第二次調用python-mode實際上才導致調用此函數。 當然這更好...所以現在我有了:

(elpy-enable)
(setq elpy-rpc-backend "jedi")
(add-hook
 'elpy-mode-hook
 '(lambda () (setq-local ac-max-width 0.5)))  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM