What's new in Emacs 31.1
Emacs 31.1 is being welcomed as a major quality-of-life upgrade, with built-in Tree-sitter integration, the Eglot LSP client, lazy-loading “user-lisp” directories, a docked file tree, and a revived embedded web browser that narrow the gap with modern editors. Long-time users describe resetting decades-old configs to lean more on new core features, while others focus on Emacs’s strength as a “text orchestrator” that pairs exceptionally well with AI agents for coding and automation. Alongside praise, there is debate over package management changes, the fallout from glibc dropping unexec, and how newcomers should best learn Emacs and Emacs Lisp in an era of powerful LLM-based helpers.
Emacs 31.1 Features and Performance
- Users are pleased that startup overhead has dropped; this is seen as finally ending the old “Emacs is too heavy vs vi” complaint on multi-user systems.
- The new docked speedbar is highlighted as a major quality-of-life improvement, bringing a familiar left-side folder view.
- The return/improvement of the graphical web browser via xwidget-webkit is welcomed, especially for PDFs and Jupyter, though macOS support is reported as still rough.
Tree-sitter and Language Tooling
- Built-in Tree-sitter grammar installation is a big relief, especially on macOS where manual ABI/version hunting was painful. Early reports say on-demand install “just works.”
- Users report smooth treesitter + LSP (with eglot) workflows. Eglot, as built-in LSP, is seen as “good enough” and simpler than lsp-mode for many.
AI and Emacs Integration
- Emacs has no AI in core, which some people explicitly appreciate, but there are many third‑party AI tools and “agentic” coding setups.
- Several comments describe Emacs as uniquely suited to LLMs: everything is text, introspectable, and callable as functions, enabling closed-loop agents that can reconfigure Emacs, manipulate buffers, query external systems (Jira, Git, Slack, browser, etc.), and evaluate results.
- Some prefer tight in-editor AI (e.g., other editors) but others now favor using separate AI tools plus Emacs or another editor.
Packages, User Lisp, and Configuration
- The new
user-lispdirectory is exciting: people plan to treat it as a lightweight package area with autoloaded commands. - There’s a contentious subthread about deprecating
:vc + :load-pathin the package system. One side accuses the article of misunderstanding and explains it was a transitive deprecation tied to symlink portability; another side finds the change frustrating and thinks the rationale and communication were poor. package-autosuggestbeing disabled by default is defended as targeting newcomers; some think discoverability matters for all users.package-review-policyis praised as important in the “age of AI” by some and dismissed as “security theater” by others.
Learning Emacs and Emacs Lisp
- Multiple learning paths are suggested: the built-in tutorial, Info manuals (especially the Elisp manual and Intro), a popular paid book, curated configs, and YouTube content.
- Opinions on the built-in tutorial diverge: some think it’s essential; others find it demotivating and recommend just using Emacs and asking an LLM as needed.
- For Elisp design patterns, people recommend studying well-structured packages, using
describe-function/describe-variable, and favoring buffers over strings for text processing. - A newer approach is to let an LLM both modify a running Emacs via
emacsclientand act as an interactive Elisp tutor.
Comparisons with Other Editors and Terminals
- Several users report cycling through modern editors (VS Code, Neovim, Helix, Zed) and ending up back on Emacs, especially now that Tree-sitter and eglot are built in.
- Some still prefer Vim’s command structure or minimalist philosophy but generally concede Emacs is more powerful feature‑wise.
- Terminal integration is mixed: vterm is seen as problematic by some; others recommend newer terminal bridges (via libghostty and similar) that blur the line between native terminal and Emacs.
Configs, Distributions, and Keybindings
- Long-time users talk about “.emacs bankruptcy”: throwing away decades of cruft and rebuilding on modern built-ins (completion, eglot, Tree-sitter, etc.).
- Starter distributions like Doom Emacs are suggested for those who want a productive setup with minimal customization.
- There’s ongoing tension between sticking with Emacs keybindings vs using Evil (Vim emulation); some intentionally avoid Evil to fully internalize native bindings.
- Side discussions cover keyboard layouts (qwerty vs Colemak variants) and hardware (ortholinear/ergonomic boards), but these are framed as personal preference rather than Emacs-specific.
Governance, Architecture, and Historical Notes
- A question about a core maintainer resigning over the portable dumper is answered: they’re still active; prior resignation threats over technical disputes are mentioned, with some criticism but also calls to move on.
- The removal of
unexecfrom glibc is lamented by some as the loss of a powerful, “image-based” capability; others think portable serialization and pdumper-style approaches are a better long‑term solution. - Explanations are given about
temacsas an intermediate build artifact used in older Emacs versions, typically unseen unless you build from source.
Miscellaneous Experiences
- Users note new warnings about missing
lexical-bindingcookies, which can break older site-lisp code; some see this as stricter but justified hygiene. - There’s a call for official Windows ARM64 binaries, reflecting changing hardware trends.
- Several people express renewed motivation to return to Emacs or clean up their configs now that 31.1 is out.