sil*_*gon 9 emacs autocomplete yasnippet emacs24
我已经有一段时间遇到了问题,这让我很头疼.我正在使用emacs 24.2.1
下一个代码是我自动完成的配置,当我在没有yasnippet的情况下运行它时,一切都运行顺畅.
(add-to-list 'load-path "~/.emacs.d/autocomplete/")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/autocomplete/ac-dict")
(ac-config-default)
Run Code Online (Sandbox Code Playgroud)
这是yasnippets的配置
(add-to-list 'load-path "~/.emacs.d/yasnippet")
(require 'yasnippet)
(yas/global-mode t)
Run Code Online (Sandbox Code Playgroud)
在这段代码之后,yasnippet运行正常但是自动完成停止了c-mode,c ++模式,java-mode和php-mode的工作,但是它与lisp和python一起使用(我只测试了这些语言).
我已经尝试过我发现像自动完成代码这样的代码
(set-default 'ac-sources
'(ac-source-abbrev
ac-source-dictionary
ac-source-yasnippet
ac-source-words-in-buffer
ac-source-words-in-same-mode-buffers
ac-source-semantic))
(ac-config-default)
(dolist (m '(c-mode c++-mode java-mode))
(add-to-list 'ac-modes m))
(global-auto-complete-mode t)
Run Code Online (Sandbox Code Playgroud)
一段时间后,我意识到当我没有yasnippet时,自动完成工作正常,所以这不是解决方案.我也试过(yas/initialize)和(yas - initialize),但它没有任何区别.我还在自动完成之前和之后启动了yasnippets,结果是一样的.我也尝试修改yas/trigger-key变量,并且总是得到相同的结果.希望你能帮助我.
正如jpkotta所说,我只是将我的ac-source-yasnippet设置为nil,就是这样.
(setq ac-source-yasnippet nil)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5324 次 |
| 最近记录: |