首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装YASnippet

安装YASnippet
EN

Stack Overflow用户
提问于 2012-11-01 03:13:18
回答 2查看 4.3K关注 0票数 5

我已经安装了YASnippet并对其进行了如下配置:

代码语言:javascript
复制
(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时,它会给我一个错误:

代码语言:javascript
复制
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,但它是一样的。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-01 03:53:32

只需看一眼,

代码语言:javascript
复制
(yas--initialise)

应该是

代码语言:javascript
复制
(yas/initialize)

我运行的是0.6.1,包中没有像yas--initialize这样的函数。

我的初始化代码如下所示

代码语言:javascript
复制
(require 'yasnippet)
(yas/initialize)
(yas/load-directory
 (dot-emacs "elpa/yasnippet-0.6.1/snippets"))

我想你只是在某个地方弄错了一些初始化代码。

编辑

我应该在我的示例中省略load-directory调用,因为它不是重点。但无论如何,dot-emacs只是一个与配置无关的函数,我使用它来引用与我的初始化相关的文件:

代码语言:javascript
复制
(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)))
票数 5
EN

Stack Overflow用户

发布于 2012-11-01 04:28:51

仅供参考,以防您升级:您获得的信息对于0.8版本是正确的,但对于0.7yas/initialize以下版本是正确的。请参阅this commit

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13165967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档