2014-09-05 194 views
2

我在我的.emacs文件中使用了以下顺序和配置的autocomplete-1.4.0和yasnippet-0.8.1。如何使用自动完成功能获得yasnpepets的完成

; === auto-complete === 
    (require 'auto-complete) 
    (add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict") 
    (require 'auto-complete-config) 
    (ac-config-default) 

    ;; === yasnippet === 
    (require 'yasnippet) 
    (yas-global-mode t) 
    (setq yas-snippet-dirs 
    '("~/.emacs.d/snippets/my-snippets" 
     "~/.emacs.d/snippets/yasnippet-snippets" 
    )) 

但是,我从没有自动完成提示为现有的任何片段或任何我创建新片段。如果我在这里做错了什么,有人可以帮忙吗?

回答

5

您应该添加yasnippet ac-source。 我有这个在我的初始化文件:

(defun add-yasnippet-ac-sources() 
    (add-to-list 'ac-sources 'ac-source-yasnippet)) 

那么对于我想要启用yasnippet源每个模式,我想补充add-yasnippet-ac-sources该模式钩:

(add-hook 'ruby-mode-hook 'add-yasnippet-ac-sources)