我在emacs中尝试安装自动完成时收到错误

ang*_*gel 19 lisp emacs autocomplete

我是emacs的新手......我已经有几天了,我认为emacs很棒但是当我尝试安装自动完成时出现错误...我从http://cx4a.org/software/安装它自动完成/ 安装工作(我使用makefile)...但是当我把这些行放在我的emacs.d中

(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)

我收到这个错误

Warning (initialization): An error occurred while loading `/home/yo/.emacs':

Symbol's value as variable is void: ac-dictionary-directories

To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file.  Start Emacs with
the `--debug-init' option to view a complete error backtrace
Run Code Online (Sandbox Code Playgroud)

我在/home/yo/.emacs中有我的文件夹.emacs,在这里我有文件夹ac-dic..inside这里有c ++ mode..lisp模式ruby模式... etc..etc ...等等.....

我的autocomplete.el也在我的.emacs里面...我做错了什么?...谢谢!

Vit*_*hKa 27

ac-dictionary-directories在auto-complete.el中定义,所以显然emacs不会找到它.所以只需更改语句的顺序:

(require 'auto-complete-config)
(ac-config-default)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")   
Run Code Online (Sandbox Code Playgroud)

现在,它应该工作.


vpi*_*833 2

.emacs.通常是一个 elisp 文件并且.emacs.d是目录。看起来你正在以相反的方式对待他们。你把

(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)

~/.emacs, 不.emacs.d.

或者说你的问题没说清楚。你看起来像什么~/.emacs

编辑:

或者,你想做

(add-to-list 'load-path "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)

代替

(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)

我的文件夹 .emacs 在 /home/yo/.emacs 中,里面有文件夹 ac-dic..里面有 c++ 模式..lisp 模式 ruby​​ 模式...等等...等等... ETC.....

~/.emacs应该是一个文件。不是目录。

但是当我将这些行放入我的 emacs.d 中时

~/.emacs.d/应该是一个目录