当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 新手学堂:Emacs只启动一个进程的方法

Unix/Linux
mysql+httpd+gd+php+zend
automake 小回顾
unix黑客精神的最好诠释
www
sun t3存储的设置
RPM简明中文手册
Linux爱好者入门教程 序章 (持续更新)
第一章 Linux基础知识 (飘心)
linux下进程与线程
浅谈如何学习linux
第二章 Linux安装
硬件安装指南
Windows 2000 的桌面不見了的解決方法
部分的ADSL路由器默认帐号密码
如何设定安全log服务器呢?
iptables 规则速查
网友学习 Linux 的七点忠告
sniffer的含义及原理
Linux编程白皮书 第二章 内存管理
Linux编程白皮书 第二章 内存管理 2.1.1 请求调页 --2.1.5 访问控制

Unix/Linux 中的 新手学堂:Emacs只启动一个进程的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 194 ::
收藏到网摘: n/a

GNU Emacs支持server/client这种运行方式。就类似的,UltraEditor,双击打开多个文件时,可以共用一个程序进程,每次打开文件只是在已有进程下创建一个文档标签。这个功能对于Emacs来说十分有用,因为作为开发环境,许多人的Emacs并不单纯是Emacs,也许还有ECB,也许还有CEDET,也许还有cscope等等。这些东东,每次启动Emacs都会加载半天的。但我们如果使用Server/Client方式,将只需要启动一次Emacs,以后每次打开文件,只是在已经启动好的Emacs进程下创建一个Buffer。

首先,我们必须设置一个环境变量:

EMACS_SERVER_FILE=C:\.emacs.d\server\server

这个变量指定了emacsclient默认去寻找的server文件。而我们指定的这个文件,是emacs server创建的默认server文件。

接下来,修改C:\.emacs文件。这个文件是Emacs的默认配置文件。在里面加入一行:

(server-start)

这样,每次启动Emacs的时候,就自动启动server了。如果你想手动启动server,也可以启动emacs后手动执行:

M-x server-start

好了,现在让我们启动Emacs,执行runemacs命令。

然后在资源管理器中找到你要打开的文件,用“Open with...”->“Change program”打开,然后选择emacsclientw.exe程序,勾上“Always use selected program to open this kind of file”(不好意思,现在公司用的是E文版的XP……)。

以后你就可以每次双击文件,都用同一个Emacs打开了。注意,要先启动runemacs哦。当然,你也可以写个bat脚本来自动判别(流程是判断C:\.emacs.d\server\server,若无,启动runemacs,若有,启动emacsclientw)。