最近公司上了安全软件,manjaro linux不给用了,公司也不发Mac,只能换到windows了。 目前的开发环境是这样的。
- windows11
- 使用scoop作为包管理器 (自动注册环境变量,这点真是好评)
- 使用powershell+on-my-posh在windows上替代 zsh+oh-my-zsh。
- emacs 是官方提供的已经编译好的emacs29.0.92_1
- 补全在用eglot + corfu(不像lsp-bridge那样跟手,但是也不算卡手目前,主要eglot和emacs已有的插件结合的比较好比如xref)
- 在windows上使用vertico替代了ivy(我发现ivy在windows上似乎有性能问题, vertico的性能就要好上很多)
- Roswell 本来就是跨平台的,如果是自己写的纯cl 的工具倒是跑着没什么问题,但是遇到需要依赖*nix环境的依赖的时候,我就无能为力了
综合用起来,只谈emacs的话,其实并没有什么痛点。我甚至感觉window上的emacs也是非常好用的。但是如果别的工具涉及到*nix依赖的时候就很难受
-
比如之前用的软件编译需要用到*nix的环境的话,就巨难受。因为编译不过,就用不了。我遇到的是cl-protobufs需要先编译一个c++的protoc-gen-lisp的二进制插件,然后才能正常去导出protobuf的lisp代码,编译这个插件废了我好久的时间也没搞定。反而把我搞的很烦躁,还耽误了我正常的开发, 项目紧,做组长还要组员帮我分担压力。。。。。
-
vterm用不了了原因也是编译不了。只能用eshell, 定义在powershell 配置文件里面的函数,alias, 环境变量都不能在eshell里面加载到。这个应该是好解决的,不过我暂时还没心情去搞这个,忍一忍。
再谈谈对windows不爽的地方
- 我尝试过用vcpack去管理库依赖,不过这个玩意不知道怎么回事,明明装了库了已经,但是按照官方教程还是没法被cmake识别到。。。。 真蛋疼,官方教程不管用,查了一圈谷歌也没解决 ,官方文档不管用,真够讽刺的(没发现是自己的问题前,先吐槽一遍出出气)
- 还有那个官方自带的防病毒程序,巨讨厌,gopls一开,这玩意就疯狂检测,然后gopls加载工程就巨慢。而且这东西偶尔还莫名抽风,cpu飙得天高。也没见他防住什么病毒,反而天天想方设法的删除我下载的但是它觉得的偏门软件。只要这软件偏门,相方设法的不让你打开/直接删了。谁能告诉我怎么让这个东西从进程列表彻底消失:soccer:
- 微软自家的那个visual studio 装完以后,不会自己注册环境变量和像linux一样去注册已经安装的库。这个巨搞笑。。。。 我还得专门开个为visual studio定制的shell。集成度太差了,脱裤子放屁的事不要老是干啊。
- 还有多根树形的文件系统,算了这个就不吐槽了
总结
- emacs很好,但是windows和我都有自己的脾气
- 目前的情况的话,我是需要长时间和windows共存的了。后面的话可能会用clojure重写那个需要用到cl-protobufs的工具。
- windows11的界面确实华丽了不少,但是因为需要兼容,做的妥协也非常的多。
- windows对我来说不适合作为玩具去折腾,也不像*nix那么专业(对我来说)
最后大家有没有调教windows的tips传授小弟,小弟感激不尽:soccer: