Emacs配置:Python模式钩



我在努力努力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))))))

whan i加载一个python文件,挂钩被调用,我得到了" python mode-hook称为"消息。但是,Elpy功能不存在。如果我然后M-x python-mode,一切都应该。

我不明白为什么我需要两次调用" python模式"。我以某种方式认为这可能与以错误的顺序称为/定义的挂钩有关,但我不明白这里是什么问题。

我会喜欢一些提示。

与此同时……问题是Elpy-Enable确实安装了钩子。它不会直接调用我想的Elpy模式。因此,只有第二个python模式的调用实际上确实导致了此功能的调用。当然这更好...所以现在我有:

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

启用Elpy功能,您在.emacs中需要的是

(package-initialize)
(elpy-enable)

但是,您还必须正确安装Elpy软件包本身。

尝试从"快速安装"部分执行所有步骤:https://github.com/jorgenschaefer/elpy#quick-installation

最新更新