EmacsNews

Emacs Community News Aggregator

EmacsNews Weekly — 28 Aug 2026

Covering 21 Aug 2026 – 28 Aug 2026 · 55 articles this week

This Week in Emacs

Community & News: Emacs 31.1 Lands

The headline this week is clear: Emacs 31.1 has been officially released. Windows binaries and Android builds followed the source release within days — a sign that cross-platform packaging has matured. Irreal covered the release briefly, and Mickey Petersen at Mastering Emacs has published the definitive feature walkthrough — if you read one article this week, make it that one. There's active community discussion about whether to upgrade immediately or wait — a reasonable instinct if your setup is stable. One practical wrinkle for Windows users: Defender has been flagging Emacs .eln files as Wacatac, which appears to be a false positive with native-compiled Lisp files rather than a real threat.

A useful companion to the release is Sacha Chua's exploration of what's in the new newcomers-presets configuration bundled with 31.1 — a deliberate effort to reduce the initial setup burden for new users, and worth understanding even as a veteran.

Packages & Tools: New, Updated, and Reconsidered

The journalctl package received a minor update and a visibility push from its maintainer this week. If you do systemd-based Linux administration and haven't tried an Emacs interface to journalctl, it's worth a look — browsing logs inside Emacs is more practical than repeatedly switching to a terminal.

A fun arrival on MELPA: card-games, a package offering thirty-five single and multi-player card games inside Emacs. It's at release candidate (1.0.92:rc2) status, so clearly a sustained effort. Whether this belongs in a "serious" editor is the wrong question — Emacs has always had room for Tetris.

There's a timely discussion about whether wgrep is now superseded by the built-in grep-edit-mode in Emacs 31. This matters for keeping your configuration lean — if core Emacs is absorbing third-party functionality, it's worth checking what you're still pulling in from MELPA unnecessarily. Worth following if you rely on editable grep buffers.

The define-word package got attention from Irreal, who noted it needed a fix — useful if you use it for quick in-editor dictionary lookups.

New MELPA arrivals this week include dired-view-data for viewing data files via ESS and R directly from Dired, xcscope (the classic cscope interface) with a MELPA timestamp update, and elisp-demos for inline usage examples in help buffers.

Packages & Tools: Markdown Gets Tree-Sitter Support

One notable 31.1 addition is markdown-ts-mode, and an unofficial setup guide has already appeared covering configuration and grammar installation. If you write Markdown regularly and haven't set up a tree-sitter grammar for it, this guide covers what you need.

Org Mode: Previews, Boards, and Clipboard Friction

The org-other-agenda package surfaced this week, offering a board-style view of your existing Org agenda data. If you find the standard list view limiting for visual project overviews, this renders the same underlying data in a different layout without requiring you to restructure anything.

Irreal covered an approach to HTML preview for Org mode — useful for anyone writing Org content destined for the web. Previewing rendered output without leaving Emacs removes a real friction point in web-writing workflows.

A recurring pain point got community attention: Org formatting bleeding into clipboard content when pasting into other applications. The thread discusses practical approaches to stripping markup on copy — if you've ever pasted *bold* as literal asterisks into Slack or a browser, you know the problem.

There's also a thread on previewing LaTeX inside Org special blocks — useful for technical or academic writing where you want inline rendering without running a full LaTeX export.

Configuration & Workflows: Performance and Startup

A popular thread this week examined why setq outperforms setopt, customize-set-variable, and use-package :custom at startup, with Irreal adding further context. The short version: setopt and related functions do additional work — running :set functions, triggering hooks — that's often unnecessary during init. If startup speed matters to you, auditing how you set variables is a practical win.

Scrolling behaviour came up in two places: a community configuration thread and an Irreal post — a reminder that scrolling is one of those aspects of Emacs that rewards deliberate tuning.

A detailed Python development setup guide using Eglot, pylsp, and dynamic Ruff integration appeared this week. Ruff has become the dominant Python linter and formatter, so a guide addressing its integration alongside the LSP layer is immediately useful. A complementary Eglot performance optimisation guide also appeared.

A GitHub Actions status badge in the Magit buffer was shared — a small but useful integration showing CI status without leaving your version control interface.

Development: Canvas and LLMs

Two experimental but interesting developments: an introduction to the Canvas feature explains the graphical drawing primitive being developed for Emacs 32, and someone has already updated ob-glsl to use Canvas for GLSL shader animation. Canvas is Emacs 32 territory, but seeing it put to use already is a good sign. There's also a piece on using LLMs to improve the Emacs web browser — an interesting integration experiment, if an ambitious one.

Deep Dive

Emacs 31.1 and the Ecosystem Around It

Emacs 31.1 releasing this week is more than a version bump, and it's worth looking at what's happening in the ecosystem around it. The release arrived with unusually fast platform packaging — Windows binaries and Android builds followed within days. That's a quiet signal of matured infrastructure, and it matters for users who aren't building from source.

The upgrade-or-wait question comes up every release cycle, and the honest answer is always context-dependent. That said, 31.1 has a few features worth upgrading for specifically. The inclusion of markdown-ts-mode as a built-in mode backed by tree-sitter is meaningful — Markdown has long been the "everyone uses it, nobody has a great mode for it" problem in Emacs. An unofficial setup guide appeared within days of release, and Mickey Petersen's Mastering Emacs walkthrough remains the authoritative reference.

The grep-edit-mode vs. wgrep discussion is a good example of a broader pattern worth tracking: core Emacs absorbing once-essential third-party packages. The same thing happened with icomplete and completion frameworks, with project.el and Projectile, and now potentially with editable grep buffers. This is healthy — it reduces the essential-packages burden for new users and raises the baseline for everyone — but it does mean long-time users should periodically audit their configs for redundancy.

The performance-focused content this week clusters around two themes: startup time and LSP responsiveness. The setq vs setopt discussion is a good example of low-effort, high-return config hygiene that's easy to overlook. Most users reach for setopt because it seems like the right tool for customisation options, but at init time the overhead compounds across a full config. The Eglot performance guide complements this well — Eglot has become the default LSP client for many users since it shipped in core Emacs, and there's a growing body of practical tuning knowledge building around it.

What stands out most this week is the Canvas story. The Canvas introduction covers a feature slated for Emacs 32, but someone has already wired up ob-glsl to animate GLSL shaders using it — the Emacs community at its most characteristic: the moment a new primitive becomes available, someone finds a use for it the core developers probably didn't anticipate. Canvas represents a meaningful expansion of what's possible for graphical output in Emacs, and I'd expect significant package activity once Emacs 32 ships.

Finally, the newcomers-presets configuration in 31.1 is a quiet but meaningful shift in how the Emacs project is thinking about new users. Bundling a sensible default configuration layer signals awareness that the blank-slate experience has real costs. It won't change much for existing users, but it changes the onboarding story — and a healthier new-user experience benefits the whole community over time.

Timothy Johnson

Until next week,
Timothy Johnson
Digital & Research Compute Platforms, Johnson Matthey
About the curator

Articles referenced in this issue (27)

This issue went to subscribers by email. Get the next one in your inbox, every Friday.