当前位置: 首页 > 科技观察

Windows原版Emacs与Wsl2GUI版分析对比

时间:2023-03-12 06:28:46 科技观察

使用Windows原版Emacs三个多月,看11步在Windows上畅玩Emacs27.1新增wsl2-gui-emacs。1.唯一无奈放弃的原因,最重要的原因是Windows版本不支持Symboliclink。日常重度使用dired不支持建立软连接,最后还是痛苦的放弃,其他方面好像还可以忍受。比如上面创建书签的超链接时,会报错Symlink:'c:/Users/gaowei/.doom.d/bookmarks'to'c:/Users/gaowei/bookmarks'failed:(file-errorMakingsymboliclinkOperationnotpermittedc:/Users/gaowei/.doom.d/bookmark)同时,linux目录下所有的symbolic-links都失效了,导致我的导航图(里面各种链接)书签坏掉不完整。如果你继续使用这个版本,你几乎肯定会放弃linux在wsl2-terminal中提供的所有便利,不再使用wsl2。唯一的原因就是这个,不知道能不能解决。下面的其余比较都是胡思乱想。二是没有真正的Terminal可用,eshell可用,而且往往不是很亮。有时候在录制Linux课程的时候,经常会出现一些小毛病,给后续的编辑增加不必要的工作量。所以,要录制linux视频,还得回到wsl2的终端。而只要你回到Linux,你就会面临symbolic-link的问题。由于这个问题,windows和linux在电脑中一直是独立的系统,不能协同工作。也是因为没有真正的终端,无法安装vterm。例如,不能使用ntop。比如你想录个htop的视频来蹭流量,那是根本做不到的。其他的杂念,比如只能用bash,不能用zsh。然而,这不是核心矛盾。虽然没有终端,但是日常应用还是可以忍受的。3、org-babel、org-agenda等正常功能都在正常水平,这里不再赘述。4、最喜欢的部分(wsl2-gui版本无法实现)最喜欢的部分是从dired按M-&执行async-shell-comand,直接调用windows的程序打开文件,比如打开pdf。这个真的是async,开启后无论你怎么折腾emacs,已经开启的程序都会继续运行,不会受到干扰。这个在wsl2-gui版本是做不到的,因为会调用linux的图形程序。作为妥协,我只能打开wsl2-terminal版本,它处理用windows程序打开某些文件。5.最后一点,底层思维题用的是windows版,心里总藏着一个“忧”鬼。不管出现什么样的问题,我都会战战兢兢地想,难道是Windows版本不支持?几乎是在压抑的气氛下偷偷使用Linux,身心都难以舒展。琐碎的问题是你需要经常在linux和windows之间切换思路。但是在wsl2-gui-emacs中,在wsl2虚拟机的表皮下,linux伸出了万只手,完全控制了windows。鉴于此,最终还是使用了wsl2-gui-emacs。不知道大家遇到了哪些无法解决的问题,或者有什么好的方案可以解决。