使用Emacs 24自动完成不适用于Java,C或C模式

前端之家收集整理的这篇文章主要介绍了使用Emacs 24自动完成不适用于Java,C或C模式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用橘子酱回购安装了自动完成.一切安装正确,并在移动的东西后我设法启动并运行自动更正没有任何错误与我的init.el中的以下代码
;; auto-complete
(add-to-list 'load-path "~/.emacs.d/elpa/auto-complete")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/elpa/auto-complete/dict")
(ac-config-default)

现在我可以使用自动完成而不使用Emacs Lisp,但每当我使用任何其他模式时,如Java,C或C它根本不起作用.

我也安装了yasnippet(它工作得很好),不确定是否与它有任何关系.这是我的init.el中的相关代码

;;yasnippet
(add-to-list 'load-path
              "~/.emacs.d/plugins/yasnippet")
(require 'yasnippet)
(yas-global-mode 1)

我正在学习Emacs,目前我还是一个菜鸟.我一直在查看文档和SO,但没有找到任何东西.我真的很感激任何帮助.

解决方法

您可能需要添加完成源.这是我的配置中的内容
(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应该包含此内容,但如果自动完成没有激活这些模式,请尝试在init.el中添加以下内容

(dolist (m '(c-mode c++-mode java-mode))
  (add-to-list 'ac-modes m))

(global-auto-complete-mode t)

Update2:我发布了一个gist,它使你的init.el能够使用package-install来提取自动完成功能.

我不知道你引用了什么版本的自动完成,但最新版本对我来说很好.

猜你在找的Java相关文章