windows双击文件-无法在当前emacs程序显示-而是启动了新的emacs程序

如题 为啥windows双击文件,无法在当前emacs程序显示,而是启动了新的emacs程序啊 折腾N久了无法解决。 在新的窗口提示下面的警告 windows10,emacs25.1

还是Server的问题,我有一个类似的方案可以解决。

必须要用TC吗?

建议用tc(可以不用vimd),tc里面可以直接设置server的位置之类的,非常方便。

为了防止server文件冲突,我在配置加了下面的代码使Emacs每次都删除原来的server-file

  ;; delete server file
  (if (file-exists-p "~/.emacs.d/server/server")
	  (delete-file "~/.emacs.d/server/server"))

Emacs启动时生成server-file,网上有很多教程。

我不知道为啥加上你的这两句会出现下面的错误。

我不知道现在是否算是成功了。 我打开emacs后,会有一个窗口是没有任何字的。 再次点击文件,正常显示内容。 但是我如果想还要用emacs打开文件,必须要关闭第二个窗口才行,否则还出现上面的错误。 但是启动了sever,打开文件也没有感觉到速度有提升啊

这两句代码是加在Emacs的配置里的。

在TC里,可以用Vimd,@mayingjun 的方法没有问题,我开始的时候就是按照他说的方法来的,就是要必须借助Vimd来实现,他的代码里已经有删除旧的server文件的功能了,不需要再加上我的代码。

我现在是直接在TC里实现,设置好user-command就可以了,我认为直接在Emacs里执行对server的一些操作要更合理、简单些。

使用sever只是想使用一个进程,速度会稍微快一些。我之所以用vimd,也是需要对进程进行一些判断,如果仅仅用tc,无法实现这样的功能。

主楼的报错是不是因为把文本文件关联到了emacs.exe/runemacs.exe?我的做法很原始,不用tc,手动runemacs.exe,配置文件里(start-server),然后把文本文件关联到emacsclientw.exe,双击打开,就好了。另外我也没碰到过server文件的问题。。

server文件是遇到强行关机等情况出现的,你的这种做法,可以做一个bat,主要删除sever文件后,再启动runemacs.exe。