直接使用emacs
emacs有windows版本,可以直接使用。但存在以下问題
-
无相关工具集,如gcc等,配置困难
-
windows进程创建效率较低,而部分插件运行时需要创建若干进程,如magit执行git status等操作,运行很慢
通过mingw64安装使用emacs
msys2软件包提供mingw64/mingw32环境,其中mingw64下自带emacs。此版本就是上述emacs的windows版。
mingw64/msys2可提供较完善的工具集,但因windows进程创建效率导致的问题仍然存在
通过cygwin安装使用emacs
工具集较msys2更完善,更接近Linux,但存在下列问題
-
需要x11-server,而Cygwin下x11-server在win10下有性能问题,图形界面对操作响应较慢
-
git等工具由cygwin封装一次,再调用windows API处理,比直接在windows上执行git还慢
通过linux子系统安装使用emacs
windows10下linux子系统提供了较完善的Linux环境,但仍然有以下问题
-
需要x11转发,而常见windows版x11-server在windows10下有性能问题,导致图形界面对操作响应较慢
-
linux子系统磁盘IO性能很差,导致Linux下执行IO相关命令耗时很大,git status等命令对较大仓库耗时可接近半分钟
-
linux子系统对tmpfs等通常挂载于内存的文件系统均挂载在磁盘上,在tmpfs下快速创建临时文件等操作严重受制于IO性能
通过x11转发远程连接linux使用emacs
常见windows版x11服务器有xming,xvcsrv,cygwinX,但这些x11-server在windows10下均有性能问题,图形界面响应较慢
通过x410服务器及x2go工具远程连接linux使用emacs
x410是专门对windows10优化后windows版x11-server,在windows应用商店有售。x2go是一个采用NX3协议的远程桌面工具。
linux计算机上安装x2go服务端,windows机器安装x2go客户端及x410服务器。x2go客户端设置中将x11-server的路径配置为
x410服务器。存在以下问题
-
输入法无法使用。可以用pyim等emacs内部输入法代替
-
x2go对非ascii字符支持有问题,双向复制时无法复制中文