尝试在emacs中安装自动完成时出错
我是emacs的新手…我有几天的时间,我觉得emacs很棒,但是当我尝试安装auto complete时,我遇到了一个错误…我从安装工作中安装它(我使用makefile)…但是当我把这行代码放在我的emacs.d中时尝试在emacs中安装自动完成时出错,emacs,autocomplete,lisp,Emacs,Autocomplete,Lisp,我是emacs的新手…我有几天的时间,我觉得emacs很棒,但是当我尝试安装auto complete时,我遇到了一个错误…我从安装工作中安装它(我使用makefile)…但是当我把这行代码放在我的emacs.d中时 (add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict") (require 'auto-complete-config) (ac-config-default) 我得到这个错误 Warning (initializ
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
我得到这个错误
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
<>我有我的文件夹。Emacs在/home /y//emacs,在这个文件夹里有AC DIC……里面有C++模式…LISP模式红宝石模式等等……等等……/P>
我的autocomplete.el也在我的.emacs中…我做错了什么??…谢谢
.emacs.
通常是一个elisp文件,.emacs.d
是目录。看起来你在用另一种方式对待他们。你把
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
在~/.emacs
中,而不是.emacs.d
或者,你的问题不清楚。你的~/.emacs
看起来像什么
编辑:
或者,你想做什么
(add-to-list 'load-path "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
而不是
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
<>我有我的文件夹。Emacs在/home /y//emacs,在这个文件夹里有AC DIC……里面有C++模式…LISP模式红宝石模式等等……等等……/P>
~/.emacs
应该是一个文件。不是目录
但是当我把这行代码放进我的emacs.d
~/.emacs.d/
应该是一个目录我怀疑问题在于添加到列表
想要在现有列表前添加,但在调用它时没有这样的变量
您可以使用(setq'ac dictionary directories“~/.emacs.d/ac dict”)
,或者按照“添加到列表的帮助”中的建议操作:
如果要对未定义的变量使用add to list'
在加载某个包之前,您应该将调用置于
add to list'
进入一个钩子函数,该函数将仅在加载包后运行。
`“加载后评估”提供了一种方法。在某些情况下
其他钩子,比如主模式钩子,可以完成这项工作
换句话说,类似于:
(eval-after-load 'auto-complete-config
'(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict"))
或者,最后,您可以在
require
之后设置变量,但我不确定这与auto-complete的初始化如何交互。ac字典目录在auto-complete.el中定义,因此显然emacs找不到它。因此,只需更改语句的顺序:
(require 'auto-complete-config)
(ac-config-default)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
现在,它应该可以工作了。我遇到了这个问题。这是因为我从另一台计算机复制了自动完成的文件。为了解决这个问题,我重新下载,然后重新编译并复制到.emacs.d中
cd自动完成
使字节编译
cp*.el*.elc~/.emacs.d
我只想补充一点,这对我不起作用。。。Emacs 24.2.2,自动完成v1.3.1。而且根本没有yasnippet的配置。+1。此外,我还需要在这三行之上添加(添加到列表“加载路径”~/.emacs.d”)。