代码改变世界

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代码了,希望你能顺利用上。