ubuntu 11.10 使用 emacs-23.4 开发 erlang 整理 之 auto-complete 插件的安装
2012-04-25 16:30 rhinovirus 阅读(2578) 评论(0) 编辑 收藏 举报大家好,欢迎大家继续关注 使用 emacs 开发 erlang的系列文章,今天给大家带来 auto-complete 插件的安装教程。
关于这个插件究竟能给 emacs 带来,或者增强什么样的功能,大家可以看下官方给的介绍
具体地址是: http://cx4a.org/software/auto-complete/
http://cx4a.org/software/auto-complete/manual.html
我大概的介绍一些,比较重要的应该是代码补全,因为我本身接触这个才几天。并不是很了解,欢迎大牛留言介绍,呵呵。
安装我也是参看了别的朋友的文章,应该是不少,我既不太清了,这个给我留下比较深的映像
地址是:http://blog.csdn.net/bigmarco/article/details/6731864 非常感谢。
还要感谢 网友 广州-ll 和 深圳-燕尘 的帮助,再次感谢,好了,
首先,下载最新的 auto-complete 版本。这里我之前遇到个问题就是下的老的版本,它应该是不支持erlang-mode的,至少我在 dict 文件夹下,没有发现erlang-mode文件。
下载地址是:
https://github.com/m2ym/auto-complete 主文件包
https://github.com/m2ym/fuzzy-el
https://github.com/m2ym/popup-el
分别解压这三个包,把下面2个包里解压获得的文件放入第一个解压后目录的根目录
fuzzy.el 和 popup.el 还有 popup-test.el
如下图:
接下来需要修改auto-complete.el,增加红色这行,最后再安装。
(defcustom ac-modes '(emacs-lisp-mode lisp-mode lisp-interaction-mode slime-repl-mode c-mode cc-mode c++-mode java-mode malabar-mode clojure-mode clojurescript-mode scala-mode scheme-mode erlang-mode ocaml-mode tuareg-mode coq-mode haskell-mode agda-mode agda2-mode perl-mode cperl-mode python-mode ruby-mode lua-mode ecmascript-mode javascript-mode js-mode js2-mode php-mode css-mode makefile-mode sh-mode fortran-mode f90-mode ada-mode xml-mode sgml-mode ts-mode) "Major modes `auto-complete-mode' can run on." :type '(repeat symbol) :group 'auto-complete)
接下来插个别的话题。就是,下载的这些插件,解压放在哪?这里我习惯放到 ~/.emacs.d/plugins/ 目录下,方便管理,plugins是我新建的文件夹,专门放置我扩展 emacs
的插件。我希望大家都能养成习惯,整理好文件夹。呵呵。
给个我插件目录的截图吧
看到了吧,我把解压的文件夹。命名为 auto-complete-1.4,
A. 安装:
cd ~/.emacs.d/plugins/auto-complete-1.4
make
make install
这里会让你选择安装目录,这里输入 ~/.emacs.d/ 回车即可
B. 配置:
输入一下内容到 .emacs 文件中,保存,重启 emacs,就可以完成安装了.
;;auto-complete (add-to-list 'load-path "~/.emacs.d/") (require 'auto-complete-config) (add-to-list 'ac-dictionary-directories "~/.emacs.d//ac-dict") (ac-config-default)
好了,接下来,你可以尝试 利用 auto-complete 来补全 erlang代码了,希望你能顺利用上。
本文基于署名-非商业性使用 3.0许可协议发布,欢迎转载,演绎,但是必须保留本文的署名rhinovirus(包含链接http://www.cnblogs.com/rhinovirus/),且不得用于商业目的。如您有任何疑问或者授权方面的协商,请与我联系。