• 请不要在回答技术问题时复制粘贴 AI 生成的内容
evilexec
V2EX  ›  程序员

NEO Emacs: 用 Rust 重写 GNU/Emacs。目标: GPU 渲染,多线程 Elisp, 10x 性能,前后端分离

  •  2
     
  •   evilexec ·
    eval-exec · Mar 4 · 3657 views
    This topic created in 249 days ago, the information mentioned may be changed or developed.

    NEO Emacs

    大家好,最近我正在推进一个极具野心的项目:Neomacs: https://github.com/eval-exec/neomacs/

    Neomacs 的目标是重新思考和现代化 Emacs 的核心架构,在保持 100% Elisp 兼容性的前提下,让 Emacs 拥有现代编辑器的性能和体验。该项目探索用 Rust + GPU 渲染 + 新 VM 架构来重构 Emacs 的关键部分。

    项目目标

    Neomacs 的主要目标包括:

    • 前后端架构分离
    • 重新设计并实现 Emacs 编辑器相关的 C Core
    • 使用 Rust 重新设计并实现 Elisp VM ( NeoVM )
    • 使用 GPU ( Winit + WGPU )实现前端渲染
    • 提供 真正的 Elisp 多线程支持
    • 目标实现 10x 的 Elisp 性能提升
    • 跨平台支持:Linux macOS Windows Mobile ( Android / iOS ) WebAssembly
    • 提供 极速、流畅的编辑体验,以及更加丰富的视觉效果
    • 100% Elisp 兼容性:目标是让 MELPA 上所有包都能正常运行

    当前进展

    目前已经完成:

    • 使用 Rust 完全重写 Emacs 的 display engine
    • 在 Linux 和 macOS 上已经可以编译运行 Rust 前端 + Emacs C 后端 的 Neomacs
    • Elisp VM ( NeoVM ) 正在重新设计与实现中

    未来将继续推进 VM 、架构解耦以及性能优化。


    Github 仓库 README 里有一些介绍可以看看。

    https://github.com/eval-exec/neomacs/

    (如果你对 Neomacs 感兴趣, 帮忙点个 Star🌟 , 支持一下 Neomacs )

    Make Emacs Great Again!

    17 replies  •  2026-09-30 21:44:55 +08:00
    lwwww
    lwwww
    Mar 5 via Android
    1
    目标很远大啊
    palfortime
    palfortime
    Mar 5 via Android
    2
    身为 vim 党,我点个赞
    riscv
    riscv
    Mar 5 via Android
    3
    用 ai 写的吗?还是古法编程?
    lesismal
    4
    多搞点这些项目,说不定十年后能申请个 “古法编程-非物质文化遗产传承人” 的头衔
    loading
    loading
    Mar 5 via Android
    5
    想问下,现在的 emacs 为什么慢,为什么 op 的能更快?
    yolee599
    yolee599
    Mar 5 via Android
    6
    和 zed 比怎么样?
    Lenic
    Lenic
    Mar 5
    7
    加油,希望真的能完成这个宏伟的目标
    wxxxcxx
    wxxxcxx
    Mar 5
    8
    我还以为这个项目复活了 https://github.com/remacs/remacs 。
    swananan
    9
    非常酷,点赞了
    Ei1l
    Ei1l
    Mar 5
    10
    果然,用 emacs 的都是大佬
    shizhenxiang
    11
    好
    xiaohanyu
    12
    wow 作为前 emacs 党,加油加油!
    netox
    netox
    Mar 6
    13
    作为多年 emacs 用户, 给楼主点赞, elisp 多线程是一个很有挑战的任务,如果搞定了真是会给 emacs 带来很大的提升

    看了下楼主 github 上的主页, 下面的 about 可以考虑补充下:)

    曾经是 Evil Emacs/Vim 用户,现在是 Jetbrains + IdeaVIM/NeoVim 用户。
    evilexec
    evilexec
    OP
    Mar 7
    14
    @fortitudeZDY 谢谢,等 Neomacs 做成之后,就可以写上 “是 Neomacs 用户” 了 :-D
    evilexec
    evilexec
    OP
    Mar 7
    15
    @wxxxcxx 哈哈,我有被 remacs 项目的精神影响到
    evilexec
    evilexec
    OP
    Mar 7
    16
    @yolee599 Neomacs 的 “可扩展性” 一定会比 zed 更强,性能估计能和 zed 持平。
    bzEq
    bzEq
    Sep 30
    17
    我也在 rust 实现一个类 emacs 的编辑器,保持 emacs 风格的键位绑定,命令系统和模式系统。我使用 rope 作为 buffer 实现,用 Lua 作为扩展语言。https://github.com/bzEq/emacs-rs. 全部是 dsv4 来完成。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   593 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 98ms · UTC 22:43 · PVG 06:43 · LAX 14:43 · JFK 17:43
    ♥ Do have faith in what you're doing.