Emacs:自动完成模式开启但没有显示自动建议(Emacs lisp模式)

时间:2014-10-26 05:34:16

标签: emacs autocomplete

当我开始输入一个函数名时,我很困惑为什么没有弹出(在Emacs lisp模式下)。例如,在新行上输入(def之后,我会假设自动完成应该向我显示包含defun的选项列表。我不确定默认延迟有多长,但我等了几秒钟,什么也没发生。有什么建议吗?

有关我的安装过程的详细信息:

  • 使用package-install通过Melpa

  • 安装
  • 在我的init.el文件中添加了以下两行:

    (require 'auto-complete-config) (ac-config-default)

  • 确认load-path包含包含与.el相关联的auto-complete文件的文件夹。 (我已设置为递归添加path/to/my/.emacs.d/下的所有文件夹。)

  • 确认(通过describe-variable)ac-dictionary-directories包含Emacs启动时的正确目录。作为参考,它包括以下两个目录:

    ac-dictionary-directories is a variable defined in 'auto-complete.el'. Its value is ("/home/dchaudh/Dropbox/dchaudhUbuntu/emacs/.emacs.d/elpa/auto-complete-20140824.1658/dict")

  • 确认我打开init.el文件时自动完成模式已启用,这显然会触发emacs-lisp-mode(我可以在模式行中看到Emacs Lisp)。以下内容包含在活动模式摘要中(即通过describe-mode):

    Global-Auto-Complete minor mode (no indicator) Toggle Auto-Complete mode in all buffers. With prefix ARG, enable Global-Auto-Complete mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil.

2 个答案:

答案 0 :(得分:1)

不是直接答案,但company在emacs-lisp-mode中开箱即用,所以您可能想尝试一下。

答案 1 :(得分:0)

根据我的经验,其他模式(例如flyspell)可能会干扰自动完成操作。 (对于自动完成内置的slyspell,有一种解决方法,但您必须在.emacs文件中激活它。)

我建议尝试空。 emacs,然后逐渐添加部分配置。你应该能够找到问题。