The Lost Feed

📜History Tales

The Strange Story of Eglot: Emacs' Quiet Code Revolution

Discover how Eglot brought modern code intelligence to Emacs, changing how developers work. This quiet revolution made Emacs smarter than ever before.

14 views·8 min read·Jul 3, 2026
Eglot has landed on master: Emacs now has a built-in LSP client

Imagine a tool that has been around for decades, a true survivor in the fast-paced world of technology. Emacs is one such tool, beloved by many programmers for its power and flexibility. For years, it was a trusted friend, known for its deep customization and ability to handle almost any text-based task. However, even the best tools need to keep up with the times, especially when it comes to understanding complex computer code.

Then came a quiet change, a moment that might have seemed small to outsiders but was huge for those who knew. This change gave Emacs a new kind of intelligence, making it smarter and more helpful than ever before. It's the strange story of Eglot, and how it brought modern brains to an old friend, quietly revolutionizing how developers interact with their code within this classic editor.

What is Emacs, Anyway?

Emacs is more than just a text editor; it's an entire computing environment. People have used it for writing code, emails, and even managing their daily tasks for a very long time, stretching back to the 1970s. It's known for being highly customizable, allowing users to make it work exactly how they want, often through its own programming language, Emacs Lisp. This flexibility is a huge part of its appeal.

For decades, Emacs has been a powerhouse for coders. Its ability to run commands, automate tasks, and integrate with various programming tools made it indispensable for many. However, as programming languages became more complex, with larger codebases and more sophisticated features, a new challenge appeared. The way Emacs traditionally understood code was becoming somewhat outdated, especially compared to newer development tools.

The Old

Way of Coding: A Growing Problem

In the past, code editors mostly helped with basic tasks. They could show different parts of your code in different colors (syntax highlighting) and maybe help you find matching parentheses or indent lines properly. But truly understanding what your code meant, like knowing the type of a variable or finding all places a function was used, was largely up to the programmer's brain. The editor was a sophisticated notepad, not a true intelligent assistant.

As programming languages grew more advanced, with features like object-oriented programming, complex type systems, and vast libraries, this became a significant problem. Developers needed their tools to do more than just display text beautifully. They wanted immediate help understanding errors, suggesting code completions based on the actual context, and quickly jumping to definitions of functions or classes across multiple files. The old ways of static analysis and simple text matching were just not keeping up with the demands of modern software development. This led to a search for a better solution, one that could bring deep language understanding to any editor.

Enter LSP: The Language Server Protocol

A brilliant new idea started to gain traction in the programming world: the Language Server Protocol, or LSP. Think of LSP as a universal translator for code. Before LSP, if an editor wanted to understand a programming language (like Python or Java), it had to have a built-in "brain" for that specific language. If you used five languages, your editor needed five brains. This was inefficient and made it hard for new languages or features to be supported quickly across different tools.

LSP changed this by separating the "brain" (the language server) from the "interface" (the editor). Instead of each editor needing to know how to understand every programming language, a separate "language server" could do that job. This server would speak LSP, a standardized communication method, and any editor that also spoke LSP could then understand what the server said. This meant one language server could work with many different editors, from lightweight text editors to full-blown integrated development environments (IDEs). It was a game-changer, promising *smarter coding assistance

  • across all tools with much less effort for tool developers.

A Common Language for Code

LSP allowed editors to ask intelligent questions to the language server, such as, "What are the possible ways to finish this line of code right here?" or "Where exactly is this function defined within my entire project?" The language server, which truly understood the language, would then provide precise answers. This standardization made it much easier for developers to get the intelligent help they needed, no matter their preferred editor. It also meant that improvements to a language server benefited all compatible editors at once, creating a more unified and efficient development ecosystem. This protocol became the backbone for modern code intelligence.

Eglot's Quiet

Arrival in Emacs

While other editors quickly adopted LSP, Emacs, with its long history and unique architecture, took a bit longer to integrate it smoothly. Many community-driven solutions emerged, allowing Emacs users to connect to LSP servers. These were often powerful but sometimes complex to set up, and there wasn't an official, built-in way for Emacs to speak LSP directly out of the box. This left some users feeling like their beloved editor, while still powerful, was falling behind in terms of modern, native code intelligence features compared to newer tools.

Then, a project named Eglot began to take shape. Its goal was ambitious yet simple: to be a lightweight, built-in LSP client for Emacs. It wasn't about replacing existing, often very capable, community solutions. Instead, it aimed to provide a core, officially supported option that would be easy to use and maintain, ensuring that every Emacs user could access LSP features without needing extensive configuration. The development was careful and deliberate, focusing on stability and integration.

"Eglot has landed on master."

This simple phrase, shared in an online announcement on October 27, 2022, signaled a major turning point for the Emacs project. It meant that Eglot, after much work and community feedback, was now officially part of the main Emacs development branch. It was a quiet victory, perhaps not widely known outside the Emacs community, but a profoundly significant one. This integration meant that future versions of Emacs would ship with Eglot included, making modern code intelligence a standard feature for everyone.

What Eglot Does for Emacs Users Today

With Eglot built right into Emacs, users now get a host of modern coding features that dramatically improve their programming experience. It makes Emacs feel much more like a contemporary integrated development environment (IDE), without losing its unique Emacs character. This means less time struggling with boilerplate or searching for information, and more time actually writing useful, functional code. The friction often associated with powerful but older tools was significantly reduced.

Here are some of the key things Eglot brings to the Emacs user's fingertips:

  • Smart code completion: As you type, Eglot connects to the language server to suggest relevant ways to finish your code, based on the specific programming language, libraries, and context you are using.

  • Instant error and warning checking: It highlights mistakes, typos, and potential issues in your code as you write, often with helpful explanations, so you can fix them right away without running your program first.

  • Go to definition and references: You can quickly jump from a function call to where that function was first defined, or find all places where a variable is used, saving a lot of manual searching through files.

  • Refactoring assistance: Eglot can assist with more complex operations like renaming variables or functions throughout your entire project consistently, making large-scale code changes much safer and faster.

  • Contextual documentation: Hovering over a function or variable can often bring up its documentation directly within your editor, providing immediate information without needing to switch windows or consult external resources.

These features make Emacs a much more powerful and user-friendly tool for developers, whether they are working on small scripts or large-scale applications. It effectively closes the gap between Emacs and other modern coding environments that have had these features for years. *Eglot transformed Emacs' capabilities

  • for everyday programming tasks, making it a truly competitive and intelligent editor in the modern era.

Why This Change Still Matters Years Later

The inclusion of Eglot was more than just adding a new feature; it was a profound statement about the enduring relevance and adaptability of Emacs. It showed that this classic, decades-old editor, often seen as a niche tool, is still actively evolving and adapting to modern software development needs. It proved that a classic tool could embrace new, cutting-edge technologies like LSP without losing its core identity of power, flexibility, and deep customization. This move reassured many long-time users and attracted new ones who previously might have found Emacs too daunting or lacking in modern conveniences.

For many developers, it meant they no longer had to choose between their preferred, deeply customized editor and the latest coding conveniences offered by newer IDEs. They could truly have both, enjoying the familiar Emacs environment with the added intelligence of LSP. This strategic move helped secure Emacs' place as a relevant and powerful tool for the next generation of programmers, ensuring its continued use in a rapidly changing technological landscape. It demonstrated a commitment to keeping Emacs a living, breathing project.

Keeping a Classic Alive Through Collaboration

The story of Eglot reminds us how incredibly important open-source contributions and community collaboration are. Dedicated individuals, often working in their spare time, poured effort into developing Eglot and integrating it into the Emacs core. Their work ensured that a powerful, modern feature became accessible to a global community of users. It shows how a community, through shared vision and effort, can come together to *improve a shared resource

  • and keep a beloved piece of software not just alive, but thriving and evolving. This ongoing development is what makes Emacs unique and resilient.

The quiet landing of Eglot on Emacs master might not have made headlines for the general public, nor did it cause a sudden explosion of viral fame. But for those who spend their days crafting complex code, for the dedicated users of Emacs, it was a moment of true, quiet progress. It brought modern intelligence and smooth functionality to a classic, proving that even the most established tools can learn new tricks and remain at the forefront of innovation. This transformation ensures Emacs remains a vital, intelligent, and deeply capable part of the coding world, smarter and more powerful than ever before, ready for whatever the future of programming brings.

How does this make you feel?

Comments

0/2000

Loading comments...