RC RANDOM CHAOS

Ghostel.el brings Ghostty's VT engine to Emacs as a terminal emulator

· via Hacker News

Original source

Ghostel.el: Terminal emulator powered by libghostty

Hacker News →

Ghostel is a new Emacs terminal emulator built on libghostty-vt, the same VT engine behind the Ghostty terminal. It borrows the two-layer architecture of emacs-libvterm: a native module written in Zig handles terminal state, rendering, and local PTY I/O, while Elisp manages keymaps, buffers, commands, and remote process integration. The key differentiator is that it swaps libvterm for Ghostty’s more modern engine, which unlocks features libvterm can’t do — the Kitty keyboard and graphics protocols (including inline images), rich underline styles, OSC 8 hyperlinks, OSC 4/10/11 color queries, and synchronized output via DEC 2026.

Adoption friction is low: the native module auto-downloads a pre-built binary on first use, so no Zig toolchain is needed for the common case, with binaries available for macOS (Apple Silicon and Intel), Linux, FreeBSD, and native Windows on both x86_64 and aarch64. It requires Emacs 28.1+ with dynamic module support. Beyond emulation, Ghostel ships shell integration for bash, zsh, and fish (automatic directory tracking and prompt navigation), TRAMP support for remote terminals, five eat.el-style input modes, bookmarks, password-prompt detection, and the ability to call Elisp functions from the shell through a whitelist.

For Emacs users, the project is essentially a next-generation alternative to the established vterm and eat terminals, trading libvterm for a maintained engine that tracks modern terminal protocol extensions. The reliance on a downloaded native binary and Ghostty’s evolving VT library is both its strength and its main practical dependency.

Read the full article

Continue reading at Hacker News →

This is an AI-generated summary. Read the original for the full story.