Skip to content
Dev Tools Article

Unlocking Stock Emacs: Powerful Built-In Features You Aren't Using

Skip the heavy external package configurations and leverage Emacs' robust, lesser-known native capabilities.

Rachel Goldstein
Rachel Goldstein
Dev Tools Editor · Jun 15, 2026 · 3 min read
Unlocking Stock Emacs: Powerful Built-In Features You Aren't Using

The Emacs ecosystem suffers from a classic paradox: developers spend hours configuring complex third-party packages to perform tasks the editor has been capable of doing natively for years. While the package ecosystem is vast, modern GNU Emacs (version 28.1 and later) ships with a remarkably deep set of built-in tools that require zero external dependencies.

By skipping heavy configurations and looking closer at stock Emacs, you can streamline your workflow and keep your configuration lean. Here is a look at three powerful, built-in features that solve common developer workflows without a single third-party package.

Multi-Level Wildcards in Dired and Find-File

Most developers use Dired for basic file navigation, but its interactive wildcard support is frequently overlooked. Instead of reaching for external search tools or complex find-and-replace packages, you can leverage native wildcard expansion directly inside find-file and Dired.

For example, you can run Dired with a multi-level wildcard pattern like */*_region_*. This instructs Emacs to scan all immediate subdirectories and construct a Dired buffer containing only the files that match that specific pattern (such as temporary files generated by build tools). Once the buffer is populated, you can quickly mark and act on them—for instance, using dired-toggle-marks (bound to t) to select and delete them in bulk.

Similarly, find-file natively supports wildcards. Running find-file with a wildcard pattern like */*.tex will instantly open all matching files across subdirectories into separate buffers. This capability is fully supported out of the box, yet it remains hidden in plain sight within the command docstrings.

Extracting Buffer URIs with ffap-menu

Many developers are familiar with "find-file-at-point" (M-x ffap), which attempts to open the file path or URL currently under the cursor. However, its sibling command, M-x ffap-menu, is far more powerful for navigating modern, link-heavy documents.

Instead of acting only on the cursor's current position, ffap-menu scans the entire active buffer for anything resembling a file path or URL. It then aggregates these references and presents them in a completion menu. This allows you to quickly jump to or open any URI mentioned in a long README, code comment, or documentation buffer without having to manually search, copy, or click through the text.

Native Dictionary Tooltips on Hover

When reading unfamiliar codebases or documentation, looking up terminology usually means context-switching to a browser. Emacs provides a built-in way to handle this inline using M-x dictionary-tooltip-mode.

When this minor mode is active, hovering your mouse cursor over a word triggers a tooltip showing its definition. This feature relies on tooltip-mode (which is enabled by default). If you have local dictionaries configured on your system, Emacs will query those first. Otherwise, it can query online resources like Wiktionary, making it surprisingly capable of resolving contemporary technical jargon and lingo directly within your editing environment.

Conclusion

Before adding another package to your configuration, it pays to explore what stock Emacs already offers. By leveraging built-in wildcard expansion, native URI extraction, and hover-based dictionary lookups, you can build a highly capable development environment while keeping your configuration minimal and fast.

Sources & further reading

  1. Even more batteries included with Emacs — karthinks.com
Rachel Goldstein
Written by
Rachel Goldstein · Dev Tools Editor

Rachel has been embedded in the developer tooling ecosystem for nearly eight years, covering everything from IDE wars and package-manager drama to the quiet rise of AI-assisted coding. She has a soft spot for open-source maintainers and an unhealthy number of terminal emulators installed on a single laptop.

Discussion 1

Join the discussion

Sign in or create an account to comment and vote.

Oleg Petrov @db_nerd_oleg · 3 days ago

i've been using the multi-level wildcards in dired for ages, it's crazy how many people don't know about it - totally changed my file management workflow in emacs

Related Reading