想从 neovim 转 emacs,有什么建议?

  1. 可以花点时间学 cmd 和 batch,我要用 PC98 MS DOS 和 OpenVMS,就顺手学会了。个人觉得远比 PowerShell 好用

  2. 光有 Unix shell 没 coreutils 还是不行,这么要求最后无非还是会回到 Cygwin MinGW 或者 WSL

狗哥还在用Emacs 么?经常这么长的时间学习后。

用的,不然用什么?没有其它选择。

1 个赞

看使用习惯,我就觉得vim更难,当初也用过vim, 但终始无法适应vi的模式编辑,只好放弃又回来又放弃又回…, 直到看到某vim高手转emacs的文章,决定尝试emacs, 当时的想法是: “你emacs在难用, 在对新手各种不友好, 难道还能超越vim不成”, 当然是没有.

主要是emacs形成了一个良性循环, 难用归难用, 但知道问题在那, 可以从那里改进调整,就可以用下去了. 而vim不能适应就是适应,对于新手感觉没多少调整的余地

1 个赞

你可以用msys2,不只是zsh,连tmux都有。而且msys2不需要管理员权限就能装。

除了没有bash或者zsh,windows还没有真正的terminal emulator(除了mintty),这个才是最要命的,如果需要terminal emulator,只有两个选择,wsl或者msys2

不是早就有 Windows Terminal 了么,WSL 用的就是它

Windows Terminal - Free download and install on Windows | Microsoft Store

Windows 11 上 WSL,PowerShell,CMD 全都集成在这一个上了

不好用,,兼容性远不如mintty,而且在我用过的几台Windows机器上面几乎都有闪退的问题,重装都没用 :melting_face:。当然还有coreutils的问题了,msys2远比rust实现的那个要完备,还不如直接用msys2

我天天用它 OpenSSH 上 FreeBSD,Linux,NetBSD,当然还有 CMD,不知你说的是什么兼容性问题。

闪退的话,估计你的显卡不是很新,这个是用到 GPU 加速的

有时候用vim会出现一些字符不刷新,当时google了半天好像是说pty啥的没实现完全导致的,可能现在解决了吧,显卡这个我还真没想到,但按理说最近几年的intel cpu 核显应该不至于不兼容吧 :melting_face:,有空可以再试试

我觉得顺其自然就行.期望不用太高,功能少就写点简单的Elisp凑活,就当顺便学lisp编程,反而能轻松速通

你怎么用上的 OpenVMS?

继续用nvim得了,lua很快,找个nvim的配置基本上能做到开箱即用,如NvChad。别转emacs,可能折腾很久都不会用。

现在用ivy、counsel、swiper,上个星期想试试vertico、consult、orderless的补全框架,搞了好久,光一个M-x,为了继续用amx能保存历史记录,consult--read就搞了好几天。

现在有了能在 VirtualBox 上运行的 x86_64 版,能申请 非商用的 Community Lisence

1 个赞

emacs单纯用起来挺简单的, 跟成熟的配置文件复制关掉emacs一些奇怪的默认行为。 用内置的包+复制几行配置代码icomplete+auto-save-visited-mode+eglot+etags-regen+completion-preview+project+vc.el; 就有了兼容性不错的补全+lsp+tag补全+项目内findgrep+vc管理。甚至不需要引入第三方的包。

等你熟悉后也能方便的hack你不喜欢的插件行为,advice改插件很方便。

确实,我当时想在 mintty 之外运行 tmux, 找了一圈新的老的终端模拟器全都不行

可以参考 v2 这篇帖子 的7楼

我也不太懂这个具体原理,但确实是 tmux new 不出终端(只是无法创建,可以在 mintty 下 new,然后在其他终端模拟器 attach)

如果只是写代码干活, 建议 NeoVim 吧, 速度优势太明显了。

如果你学习了十几门编程语言以上, 同时希望下班找点研究的乐趣, 而且这个乐趣不要折腾几个月就没有的话, Emacs是一个可以持续十几年以上的智力玩具。

双系统或者 WSL,通过 linux 访问 windows,或者 windows 访问 linux?我以前这么干过,然后数据丢失了……这么做是很危险的。

那是 MSYS2 的问题,或者说 Windows 缺少 pty/tty 的原因,通过 OpenSSH 跑 server 上的 tmux 是没问题的,就能说明 terminal emulator 本身是正常的。

有个工具 ConEmu | cygwin/msys terminal connector 能解决在 Cygwin/MSYS2 terminal 以外运行这些需要 pty 的程序的问题

1 个赞