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

Unix/Linux
Linux下XFConfig的有效使用
在Linux下如何驱动D-linkDFE-530TX网卡
Linux上的sysctl
GRUB引导管理器下,如何恢复redhatlinux的root密码?
为最佳性能而调优RedHat(5)
为最佳性能而调优RedHat(2)
Linux问与答(2):KDE问题
IBM有哪些开放集群系统,它们的区别是什么?
zSeriesLinux可以运行在哪个版本的VM下?
zSeries的Linux有什么主要元素构成?
i系列上运行的Linux分区数量和Linux版本
简易的proxy程序的开发过程(2)
Linux-PAM系统管理指南(1)
网管要用Linux
LILO可以装在软盘上
如何在两台linux服务器之间用RSA键对的方法SSH/SCP不需密码
linux路由器下如何限制某几个IP连接互联网,而同时防止IP盗用
如何使用UUCP
Linux下的NFS
IntelI810主板的X的安装

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 202 ::
收藏到网摘: 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)。