Download NEO Emacs

NEO Emacs — Free Download. GPU-Powered Editor

NEO Emacs is an editor that runs its display layer on graphics hardware and its core logic in Rust. It keeps existing Emacs configurations working while replacing the rendering machinery with a GPU pipeline built on wgpu, supporting Vulkan, Metal, DX12, and GL. Video, images, a WebKit browser, and a terminal all render inside buffers through the same engine.

★★★★★
5.0(1 ratings)
Version: 0.0.19
Size: 55.6 MB
Systems: Windows, MacOS, Linux

The editor targets users who depend on Emacs packages and keybindings but need faster rendering and lower latency during scrolling, animation, and media display. Compatibility is verified against GNU Emacs as a test oracle, so rewritten subsystems are checked for identical behavior rather than approximate similarity. Doom Emacs configs are used as a regular test environment.

NEO Emacs runs as one binary in both graphical and terminal modes. The frontend, including shaders, is reachable from Elisp, which shifts the boundary of customization from editing behavior to rendering behavior. Multi-threaded Elisp and a concurrent garbage collector are in development to reduce pauses during heavy Lisp workloads.

Use Cases for NEO Emacs

wgpu pipeline targets Vulkan, Metal, DX12, GL backends GPU text shaping, rasterization, compositing eliminates CPU redraw stalls
Existing init files, packages, keybindings remain functional GNU Emacs used as test oracle for behavioral parity
Inline 4K video via typed GStreamer with VA-API decoding DMA-BUF keeps frame data GPU-resident without memory copies
WPE WebKit component renders web content inside buffer Documentation and web workflows remain within editor session
Terminal emulator rendered through same GPU display path Terminal sessions inherit frame pacing and visual effects
Eight Elisp-configurable cursor modes control point appearance Per-buffer or global cursor rendering adjustments available
Twenty-one scroll effects run at display refresh rate Scroll system independent of layout layer, no recompilation needed
Ten buffer transition animations driven by display engine Visual continuity during buffer switching and split adjustments
Full frontend including WGSL shaders exposed to Elisp Custom rendering behavior defined in configuration language
Elisp evaluator, bytecode VM, garbage collector in Rust No C components remain, language enforces memory safety
Single binary provides graphical and terminal operation Shared configuration across GUI and TTY invocation modes
Multi-threaded Elisp with concurrent zero-pause garbage collection Targets elimination of stop-the-world pauses during evaluation