Ghostel is an Emacs terminal emulator powered by libghostty-vt, the same VT engine that drives the Ghostty terminal. It uses a two-layer architecture: a native dynamic module written in Zig handles terminal state, rendering, and PTY I/O, while Elisp manages keymaps, buffers, commands, and remote process integration. The native module is downloaded automatically on first use, requiring no build toolchain for typical usage—simply run M-x ghostel to open a terminal.
Ghostel improves upon emacs-libvterm by leveraging Ghostty's modern VT engine, which supports the Kitty keyboard and graphics protocols, rich underline styles, OSC 8 hyperlinks, OSC color queries, and synchronized output (DEC 2026)—features that libvterm does not provide. The package is available via MELPA and supports multiple installation methods including use-package with :vc for Emacs 30+.
The package provides six input modes (semi-char, char, Emacs, copy, line, and mouse selection), shell integration with password prompt detection and progress notifications, and support for remote terminals via TRAMP with automatic or manual shell integration injection. Additional features include inline image support via Kitty graphics protocol, OSC 8 hyperlink detection, clipboard integration, and the ability to call Elisp from the shell. Extensions support Evil-mode, compilation mode with live mode switching, Eshell and Comint integration, and custom Emacs Lisp input methods.
Comments
No comments yet — be the first.
Open the discussion
No account or password needed — just enter your e-mail and we’ll send you a one-time sign-in link. First time here? You’re set up automatically.
Your rating will be applied automatically after you sign in.
Check your inbox
We’ve sent a sign-in link to …. Open it on this device — this tab will sign you in automatically.
Waiting for your click …
·