Emacs

Setting Up Emacs for PHP Development: LSP, Tree-sitter, and Xdebug

Emacs is a serious PHP development environment once you wire the right packages together. This guide covers a complete, production-grade Emacs setup for PHP in 2026: language server integration with Eglot, Tree-sitter syntax highlighting, code formatting, and step-through debugging via DAP Mode and Xdebug 3. All configuration targets Emacs 29+ with use-package.

How to Effectively Handle Large Projects with Many Files in Emacs

Modern software projects are getting bigger. Monorepos, microservice architectures, vendor dependencies, and generated code can easily push projects into tens of thousands of files. Without the right workflow, even powerful editors like Emacs can become slow or overwhelming.

Fortunately, Gnu Emacs provides excellent tools for managing large projects efficiently—if you configure and use them correctly. This article shows practical techniques to keep Emacs fast, responsive, and scalable for large codebases.

Keeping Emacs Fresh with auto-package-update

Keeping your Emacs packages up to date is essential if you want the latest features, performance improvements, and security fixes. But manual updates can quickly become a chore — especially if you use Emacs as your main development environment and rely on dozens of packages.

The Role of Tree-sitter in Emacs for Modern Programming Languages

For years, Emacs has relied on traditional techniques like regular expressions to provide syntax highlighting, indentation, and code navigation. While powerful and flexible, these approaches struggle to keep up with the complexity of modern programming languages. Enter Tree-sitter, a fast and incremental parsing library that is transforming how editors like Emacs understand code.

How Emacs is Adapting to Wayland

For decades, Emacs has relied on the X11 windowing system on Linux. As the Linux desktop ecosystem transitions towards Wayland, Emacs—like many long-lived applications—faces the challenge of adapting to a new display protocol while preserving its flexibility and deep configurability.

In this article, we’ll look at the current state of Emacs on Wayland, what works well today, and which areas are still under active development.

Using GPTel and LMStudio in Emacs

Large language models are increasingly useful for developers and writers who spend much of their time inside Emacs. Instead of switching between a browser or external app, you can bring AI assistance directly into your workflow. One of the most elegant tools for this is gptel, an Emacs package that provides a simple interface to local or remote LLMs.

Testing out a new Emacs Configuation

When I want to test and learn a single package in Emacs it suits my best to create a simple empty emacs configuration directory in my src folder.

mkdir test-emacs-config

Then put in a very minimal .emacs file testing the package in question. The following sample tests the Vertico package.

Smooth and Stylish Buffer Navigation with Centaur Tabs in Emacs

If you've ever wished buffer-switching in Emacs felt a bit more like what you find in modern editors like VS Code or Sublime Text, the centaur-tabs package might just be the upgrade you're looking for. While Emacs excels at managing multiple open buffers, the experience can sometimes feel abstract—especially for users coming from tab-oriented editors. centaur-tabs brings a visual and intuitive tabbed interface to Emacs, improving buffer organization without compromising its flexible nature.

Emacs vs. The Unix Way: Philosophies in Collision and Harmony

The Emacs editor is often a point of contention in discussions among software developers—especially those raised on the traditional Unix philosophy of building software: “do one thing and do it well.” For many, Emacs is either a miraculous, all-in-one productivity environment or a monolithic anomaly that breaks all the rules Unix tried to teach us.

Subscribe to Emacs