windows环境下emacs各种插件的安装和使用

来源:互联网 发布:中国电信云计算 编辑:程序博客网 时间:2024/04/27 23:43

这里的插件主要是cedet, ecb, cscope, mew这几种,网上还有很多其它插件,大多是单个的el文件,把它放到site-lisp目录下再在.emacs中加载就可以了,刚才所说的几种,是文件很多,看起来比较复杂的。不过在linux下安装是非常容易的,都是./configure, make, make install这三步走。在winodws环境下安装需要多费点神。

我的环境:windows xp sp2, emacs 22.3, cedet 1.0pre4, ecb2.32, cscope 15.6, mew 6.15。各个插件的下载地址google一下就能看到。另外,我的系统上安装了cygwin和GetGnuWin32-0.6.19,这两个工具包是在emacs的帮助文档中看到的,安装其中的一个就可以了,如果在window下通过编译源代码的方式安装gnu工具,则有这些工具是非常方便的。google一下就可以找到它们的主页和下载地址。

这几种插件中前面几种安装非常简单,直接解压,然后在cygwin下面./configure, make, make install这样就可以,就自己的感觉和理解,这三步执行到某一步出错了也没关系,之所以执行这三步主要的作用感觉还是在make这一步的时候调用emacs来把el文件编译成elc文件,这样可以提高emacs的加载速度。直接解压后或者是三步执行完了或者某一步出错中止了,把解压出来的那个文件夹复制到emacs的安装目录中的site-listp目录下,每个插件解压后的目录中都有一个INSTALL文件或者README文件,都不是很长,安装方法和加载方法其中都有详细的描述。安装ecb之前必须先安装cedet。

另外,cedet=collection of emacs development enviroment tools,  其中包含了eieio, semantic, ede, speedbar, ecb=emacs code browser.cscope也是功能强大的辅助代码的。每个插件都带了详细的文档。

另外安装之前最好先执行emacs/bin下面的addpm.exe执行emacs安装,它会设置好注册表信息,如果在./configure阶段发现checking for emacs ...no这样的信息,则设置一个环境变量EMACS,它的值设为emacs.exe文件的完整路径就可以。

对于mew的安装,网上几乎所有文档都是通过编译源代码安装的,我纳闷的是他们在windows下编译源代码安装都能够成功,但我从来没有成功过,修改Makefile文件什么的都试过,没有成功。其实从mew的主面上下载到mew for windows的安装包后,解压出来,里面除了有完整的mew源代码外还有一个mew.exe文件和mew.ini文件,那个mew.exe文件就是安装文件,直接执行它然后按照它的指示一路下一步自动完成安装了。如果安装的是mew4.1的,连.emacs文件都会自动修改好。如果安装的是mew6.1,需要自己手动修改.emacs文件来加载mew,对于mew6.1版本mew的配置可以放在.emacs文件中也可以放在~/.mew.el文件中。

安装完mew后对mew的设置还需要看它的文档,对于pop3设置非常简单,自己设置时遇到的主要问题就是smtp发送邮件的设置,这个需要设置smtp-auth-list变量。关于mew的设置和使用,下面两篇文章都很好:

http://learn.tsinghua.edu.cn:8080/2004211031/publish/GNU/mew.html

http://zhdotemacs.sourceforge.net/emacs/x382.html

下面是我的.mew.el文件中关于邮箱账号的设置部分,可以正常接收和发送邮件的:

  1. (setq mew-config-alist
  2.       '(("default"
  3.      ("name"         .  "WangHaibin")
  4.      ("user"         .  "sea_1985098")
  5.      ("mail-domain"  .  "126.com") 
  6.      ("pop-server"   .  "pop3.126.com")
  7.      ("pop-port"     .  "110")
  8.      ("pop-user"     .  "sea_1985098") 
  9.      ("pop-auth"     .  pass)
  10.      ("smtp-server"  .  "smtp.126.com")
  11.      ("smtp-port"    .  "25")
  12.      ("smtp-user"    .  "sea_1985098")
  13.      ("smtp-auth-list"  .  ("PLAIN" "LOGIN" "CRAM-MD5")))
  14.     ("163"
  15.      ("name"         .  "WangHaibin")
  16.      ("user"         .  "sea_1985098")
  17.      ("mail-domain"  .  "163.com")
  18.      ("pop-server"   .  "pop.163.com")
  19.      ("pop-port"     .  "110")
  20.      ("pop-user"     .  "sea_1985098")
  21.      ("pop-auth"     .  pass)
  22.      ("smtp-server"  .  "smtp.163.com")
  23.      ("smtp-port"    .  "25")
  24.      ("smtp-user"    .  "sea_1985098")
  25.      ("smtp-auth-list" . ("PLAIN" "LOGIN" "CRAM-MD5")))))