emacs -batch

最近公司cvs server搬家,不过手上有些活还没有check in,这样,除了改变CVSROOT环境变量外,还要做些额外的活改变本地的work space。

其实也不难,就是把所有CVS目录下的Root文件里的字符串替换成新的cvs root。为了方便操作,一个同事写了一段Perl脚本,大家只要在work space的根目录运行一下就可以了。但我始终觉得,无论是Perl或者sed,用来修改文件内容总是有点别扭,要做很多额外的工作,比如打开文件,创建输出文件,然后覆盖原文件,为了以防万一,还要留个备份。

用emacs就方便多了,这些问题全都由emacs自动解决了,因为emacs先把文件读到buffer里,修改之前还会自动生成备份文件,修改完成后执行一下(save-buffer)就可以了,唯一要做的工作就是写一个字符串替换操作,而这又可以通过–eval选项直接写在命令行上,所以又省去了写脚本的过程,非常完美。

当然,这需要学习一点Emacs Lisp。

用“手”按Ctrl键

一直不喜欢用大键盘,就是一般的PC键盘,因为Ctrl键太远了,按一下很费事,但这个键偏偏是用emacs最常按的几个键之一,所以比较喜欢笔记本上的键盘,一个字,小。

可是自从T30换成了T42,只能用大键盘了,一是因为本本放在铁架子上,总不能举着手按键盘吧,另外感觉T42的击键感觉没有T30爽(这大概是T30唯一的优点了)。但是这样用emacs就太累了。刚刚学了一招,就是不用小指按Ctrl键,而是用“手”。准确地说,手上哪里离Ctrl键最近就用哪里。:-)

说的也是,谁规定按键必须用手指的?!