我已经安装了YASnippet并对其进行了如下配置:
(add-to-list 'load-path "~/.emacs.d/plugins/yasnippet-0.6.1c")
(require 'yasnippet) ;; not yasnippet-bundle
(yas--initialize)
(yas/load-directory "~/.emacs.d/packages/yasnippet-0.6.1c/snippets")但是,当我启动Emacs时,它会给我一个错误:
Warning (initialization): An error occurred while loading `/home/alexander/.emacs':
Symbol's function definition is void: yas--initialize
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.
(add-to-list 'load-path "~/.emacs.d/plugins/yasnippet-0.6.1c")
(require 'yasnippet) ;; not yasnippet-bundle
(yas--initialize)
(yas/load-directory "~/.emacs.d/packages/yasnippet-0.6.1c/snippets")我做错了什么?我试着找出答案,但没有成功。(我也尝试过另一个版本的yasnippet yasnippet-0.6.1b,但它是一样的。)
发布于 2012-11-01 03:53:32
只需看一眼,
(yas--initialise)应该是
(yas/initialize)我运行的是0.6.1,包中没有像yas--initialize这样的函数。
我的初始化代码如下所示
(require 'yasnippet)
(yas/initialize)
(yas/load-directory
(dot-emacs "elpa/yasnippet-0.6.1/snippets"))我想你只是在某个地方弄错了一些初始化代码。
编辑
我应该在我的示例中省略load-directory调用,因为它不是重点。但无论如何,dot-emacs只是一个与配置无关的函数,我使用它来引用与我的初始化相关的文件:
(defun dot-emacs (relative-path)
"Return the full path of a file in the user's emacs directory."
(expand-file-name (concat user-emacs-directory relative-path)))发布于 2012-11-01 04:28:51
仅供参考,以防您升级:您获得的信息对于0.8版本是正确的,但对于0.7和yas/initialize以下版本是正确的。请参阅this commit
https://stackoverflow.com/questions/13165967
复制相似问题