2007年2月16日星期五

emacs & svn

Emacs是我最喜欢的编辑器,我非常喜欢在emacs下做所有的工作。由于Emacs强大的可扩展性,有很多插件可以帮助实现各种各样的功能,比方说在emacs中操作svn。

过去我一直使用emacs的shell mode作为我的terminal,如果提交代码的话,一般是执行

emacs -ci xxx.py -m "comment…"

不过这样有个缺陷,就是我的comment必须是一行,有时候要想写的详细一些,加分段、结构什么的,就没有办法了。这样对别人review我的代码很不利,而我又不想再开一个终端去提交,终于让我找到psvn这个插件,可以很方便地执行svn命令,而不用离开emacs了。

最新的psvn.el可以从这里下载(用svn:))

http://svn.collab.net/repos/svn/trunk/contrib/client-side/psvn/psvn.el

我放到了~/.emacs.d/site-lisp/psvn目录下,既方便管理,又利于更新。然后配置你的.emacs文件,添加下面两句:

(add-to-list 'load-path "~/.emacs.d/site-lisp/psvn/psvn.el")
(require 'psvn)

这样每次启动emacs的时候都会自动载入psvn插件。

psvn使用也很简单,M+x svn-status,会提示你选择svn-status的目录,然后emacs会打开一个buffer,显示目录下所有的目录和文件。

这时候可以用光标选择要编辑的文件,按回车进入编辑状态,编辑完之后,M+x svn-status-commit,会有buffer提示你写comment,你可以详细地写你的修改,就像编辑普通文件一样,编辑完后,按C-c C-c,进行提交。

有时候提交会报错,

error in process sentinel: Unknown action 'unknown for emacs

但是并不影响提交,我发现如果一开始设置svn-status的目录是你svn的根目录的话,就不会出现这个错误;如果在子目录下,就会出现这个错误,可惜我lisp一窍不通,没法调试,不过似乎影响不大。

以上是我做得一点最最基本的测试,以后在工作中边用边学吧,有好的技巧我会写下来。



--
一步一步教你从互联网赚钱
http://www.zqzn.com/index.asp?rid=key480769

没有评论: