Awesome Emacs Plugins Ranking

date
Dec 11, 2025
slug
Emacs
status
Published
tags
Emacs
summary
type
Post

Installation

Much information can be found at the GNU Emacs Download & Installation page. Upgrading to the newest/current version of emacs (if emacs comes preinstalled on ones operating system) will give the best user experience, and it is advised to do so as soon as possible. Here are several resources to assist you as you start or continue your journey with emacs.
  • evm - (⭐ 223) Emacs Version Manager.
  • nix-emacs-ci - (⭐ 188) Emacs installations for continuous integration.
  • npostavs/emacs-travis - (⭐ 10) Pre-built emacs binaries for Travis CI (fork of flycheck/emacs-travis, significant though in that it is used for CI in projects such as Magit). The following resources can be used to build emacs in various environments– e.g. containerized docker builds, continuous integration, building various versions of emacs, etc.

Interface Enhancement

  • Casual - (built-in) A collection of Transient user interfaces for various built-in Emacs modes.
  • Helpful - (built-in) An enchancement of the Emacs built-in help system.
  • Dashboard - (⭐ 1,444) A startup dashboard which provides certain information about your recent Emacs activities.
  • beacon - (⭐ 690) Never lose your cursor again.
  • sublimity - (⭐ 507) smooth-scrolling, minimap inspired by the sublime editor.
  • workgroups2 - (⭐ 304) Session manager, saves all your opened buffers, their location and sizes on disk to restore later.
  • sideline - (⭐ 182) Show information on the side.
  • linum-relative - (⭐ 172) display relative line number in the left margin in emacs.
  • pulsar - (⭐ 98) Highlights current line, an minimal alternative to beacon.
  • ace-popup-menu - (⭐ 85) Replace GUI popup menu with something more efficient.
  • line-reminder - (⭐ 83) Line annotation for changed and saved lines.
  • GNU Hyperbole - GNU Hyperbole is an efficient and programmable hypertextual information management system. It is a toolkit and user interface for viewing, retrieving and interlinking all kinds of textual information.
  • enlight — Highly customizable startup screen for Emacs.
  • inhibit-mouse.el — A package that allows disabling mouse input in Emacs. It can help prevent accidental clicks or be used to reinforce a keyboard-centric workflow.

Window & Frame Management

The window & frame system of Emacs itself, NOT the window system of OS (See “Operating System”).

Font

  • fontaine - (⭐ 91) lets the user specify presets of font configurations and set them on demand on graphical Emacs frames.
  • default-font-presets - lets user specify presets for the default-font, with utilities to scale and cycle fonts.

Layout

  • winner - =[built-in]= “Undo”(and “redo”) changes in the window configuration with the key commands.
  • Zoom - (⭐ 385) Fixed and automatic balanced window layout for Emacs.
  • ElScreen - (⭐ 177) Utility for multiple screens.

Switching

  • windmove - =[built-in]= Tired with =C-x o=? Now you can use =shift+arrows= to jump between windows.
  • emacs-winum - (⭐ 150) Window numbers for Emacs - Navigate windows and frames using numbers.
  • buffer-move - (⭐ 119) Move or swap buffer to other window.

Tabbar

  • vim-tab-bar - (built-in) Makes Emacs’ built-in tab-bar look like Vim’s tabbed browsing interface.
  • tab-bar-mode - =[built-in]= =tab-bar-mode= and =tab-line-mode= to display a tab bar at the top.
  • centaur-tabs - (⭐ 834) Aesthetic, functional tabs plugin with icons and styles, Helm, Ivy and Projectile integration, supported by many popular themes.
  • awesome-tab - (⭐ 384) Out of box extension to use tab in Emacs. grouping buffers by projects and many awesome features.
  • tabbar - (⭐ 182) Display a tab bar in the header line.
  • otpp.el - (⭐ 53) Automatically creates enables =tab-bar-mode= and creates a tab when opening a project.

Navigation

  • imenu (built-in) Menus for accessing locations in documents.
  • Avy - (⭐ 1,891) Jump to visible text using a char-based decision tree.
  • Helm-swoop - (⭐ 700) Efficiently jump between matched string/lines.
  • Ace jump - (⭐ 614) A quick cursor jump mode.
  • anzu - (⭐ 435) displays current match and total matches.
  • CTRLF - (⭐ 367) An intuitive and efficient solution for single-buffer text search in Emacs.
  • bm - (⭐ 284) Visual Bookmarks, provides an easy way to navigate in a buffer.
  • ace-link - (⭐ 223) Quickly follow links in =org-mode=, =help-mode=, =Info-mode=, and several other modes.
  • imenu-anywhere - (⭐ 132) IDO/Helm imenu tag selection across all buffers with the same mode.
  • back-button - (⭐ 91) Visual navigation through mark rings.
  • mwim - (⭐ 89) Toggle point between line positions of interest.
  • emacs-pophint - (⭐ 33) Provide navigation like the Vimperator/KeySnail Hint Mode of Firefox.
  • vertigo.el - (⭐ 30) Jump lines using the home row.
  • avy-zap - (⭐ 28) Zap to char using avy.
  • block-nav - (⭐ 28) Navigate by indentation block levels.

Key-bindings

Possibly help prevent keyboard-related repetitive strain injury (RSI) from occurring.
  • Evil - (⭐ 3,660) An e xtensible vi l ayer: manipulate Emacs with Vi key binding.
  • Hydra - (⭐ 1,910) Make bindings that stick around.
  • meow - (⭐ 1,514) Yet another modal editing on Emacs.
  • general - (⭐ 1,076) A convenient, unified interface for key definitions - like use-package but for key-bindings.
  • god-mode - (⭐ 945) Global minor mode for entering Emacs commands without modifier keys.
  • xah-fly-keys - (⭐ 523) A modal keybinding for emacs (like vim), but based on command frequency and ergonomics.
  • LispyVille - (⭐ 322) Evil bindings for lispy-mode.
  • ergoemacs-mode - (⭐ 311) Global minor mode to use both common interface keys and ergonomic keys for emacs.
  • modalka - (⭐ 294) Introduce native modal editing of your own design.
  • ryo-modal - (⭐ 235) Inspired by modalka, ryo-modal provides useful features for creating your own modal editing environment.
  • devil - (⭐ 197) Non-modal way to enter Emacs commands without modifier keys, using the comma.
  • Evil mu4e - (⭐ 18) Evil bindings for mu4e. - multistate - Use Evil-like binding states without predefined keybindings (Evil mode without vi).

Minibuffer

  • IDO - =[built-in]= Interactively do things with buffers and files.
  • Icomplete - =[built-in]= See the list of candidates while completing for any command. Can be made to behave more like Ido with M-x fido-mode.
  • Helm - (⭐ 3,506) (Formerly ‘Anything’) A powerful completion and selection narrowing framework. ( External Guides 1 )
  • Ivy - (⭐ 2,390) flexible, simple tools for minibuffer completion in Emacs.
  • vertico - (⭐ 1,715) Vertico provides a minimalistic vertical completion UI, which is based on the default completion system.
  • consult - (⭐ 1,508) Consult provides various practical commands based on the Emacs completion function completing-read.
  • marginalia - (⭐ 887) Show document of function in ==M-x=, or file attributes in =C-x C-f=.
  • amx - (⭐ 160) An alternative M-x interface for Emacs.
  • Icicles - An Emacs library that enhances minibuffer completion.
    • Ivy, a generic completion mechanism for Emacs.
    • Counsel, a collection of Ivy-enhanced versions of common Emacs commands.
    • Swiper, an Ivy-enhanced alternative to isearch.

Fuzzy & Narrowing

Tools or libraries specially focused on fuzzy searching in list, mostly for minibuffer.
  • Orderless - (⭐ 943) Use space-separated search terms in any order when completing with Icomplete or the default interface.
  • selectrum - (⭐ 727) Clean, stable, and intuitive incremental narrowing framework for Emacs. [Deprecated. The project suggests using Vertico]
  • prescient.el - (⭐ 685) Fast and intuitive frequency-and-recency-based sorting and filtering for Emacs.
  • Snails - (⭐ 386) A modern, easy-to-expand fuzzy search framework.
  • fussy - (⭐ 145) Emacs completion-style leveraging flx / fzf / etc

Mode-line

  • doom-modeline - (⭐ 1,443) A mode-line package included in Doom and Centaur emacs.
  • powerline - (⭐ 810) Emacs version of the Vim powerline.
  • telephone-line - (⭐ 574) A new implementation of Powerline for Emacs.
  • spaceline - (⭐ 543) Powerline theme from Spacemacs.
  • minions - (⭐ 308) A minor-mode menu for the mode line. Minor modes in a single menu.
  • awesome-tray - (⭐ 294) Display mode-line information at right of minibuffer.
  • diminish - (⭐ 183) Diminished modes are minor modes with no modeline display.
  • blackout - (⭐ 63) Customize or hide the display of major and minor modes in the mode-line.
  • powerline-evil - (⭐ 49) Utilities for better Evil support for Powerline.
  • mode-line-idle - Evaluate mode-line elements when idle, displaying detailed information without sacrificing performance.

Dim Distracting

  • focus - (⭐ 509) Dim the font color of text in surrounding paragraphs.
  • Solaire mode - (⭐ 353) Visually distinguish file-visiting windows from other types of windows (like popups or sidebars) by giving them a slightly different background.
  • dimmer.el - (⭐ 280) Interactively highlight which buffer is active by dimming the others.

Editing Enhancement

  • artist-mode - =[built-in]= Draw ASCII lines, squares, rectangles and poly-lines, ellipses, and circles with your mouse and/or keyboard.
  • crux - (⭐ 1,002) A Collection of Ridiculously Useful eXtensions for Emacs.
  • Casual EditKit - (⭐ 272) a Transient user interface library for Emacs editing commands. Included in Casual.
  • lentic - (⭐ 195) Create views of the same content in two Emacs buffers.
  • typo.el - (⭐ 118) Emacs extension for typographical editing.
  • multifiles.el - (⭐ 80) View and edit parts of multiple files in one buffer.

Indentation Enhancement

  • electric-indent-mode -(built-in) (enabled by default) Auto-indent current and new lines ([Emacs Wiki](https://www.emacswiki.org/emacs/AutoIndentation))
  • indent-bars - (⭐ 501) Optimized vertical lines to guide indentation, with additional tree-sitter support.
  • indent-guide - (⭐ 372) Show vertical lines to guide indentation. - hl-indent-scope - Highlight indentation using source-code scope (typically defined by brackets).

Symbols / Tokens

  • highlight-thing - (built-in) Light-weight minor mode to highlight thing under point using built-ins.
  • symbol-overlay - (⭐ 391) Highlight symbols with keymap-enabled overlays (inspired by highlight-symbol).
  • color-identifiers-mode - (⭐ 328) Color Identifiers is a minor mode for Emacs that highlights each source code identifier uniquely based on its name.
  • highlight-symbol - (⭐ 283) Auto/manually highlight the same symbols in code, navigate in them, or replace string.
  • rainbow-mode - (⭐ 24) Colorize color names / color hex code in buffers.

Whitespaces Enhancement

  • whitespace- (built-in) Visualize blanks (tab/space/newline).
  • ws-butler - (⭐ 274) Unobtrusively trim extraneous white-space ONLY in lines edited.

Delete Enhancement

  • delete-selection-mode - =[built-in]= Auto delete selected region when typing, just like most of other modern text editors.
  • smart-hungry-delete - (⭐ 44) Delete whitespace between words, parenthesis and other delimiters in a (not very) smart way.
  • zzz-to-char - (⭐ 27) Fancy replacement for =zap-to-char=.
  • hungry-delete - (⭐ 16) Delete an entire block of whitespace at point.

Fancy Icons

  • prettify-symbol-mode - =[built-in]= displaying characters as fancy symbols (e.g. =lambda= -> =λ=).
  • all-the-icons - (⭐ 1,535) A package used to include fancy icons within emacs.
  • emojify - (⭐ 425) Display emojis in Emacs.
  • nerd-icons - (⭐ 295) A Library for Nerd Font icons.
  • mode-icons - (⭐ 159) Show icons instead of mode names.

Massive Edit

  • visual-replace - (built-in) Provides a visual representation of replacetement. Unlike visual-regexp, it uses built-in Emacs functionality.
  • align - ( built-in ) supports aligning with regular text, while =align-regexp= uses regular expressions.
  • visual-regexp - (⭐ 417) Replace via RegExp, with real-time visual feedback directly in the buffer.
  • visual-regexp-steroids - (⭐ 265) The same as visual-regexp, but use modern regular expressions instead of Emacs-style.
  • tiny - (⭐ 147) Templates based on linear range transformations.
  • ialign - (⭐ 136) Interactively align lines using a regular expression. - Multiple cursors - Mark, edit multiple lines at once.

Quotes & Parenthesis & Delimiters Handling

Insert & Edit

  • SmartParens - (⭐ 1,915) Deals with parens pairs and tries to be smart about it.
  • evil-surround - (⭐ 653) Emacs version of vim.surround that uses =Evil= as its vi layer.
  • Puni - (⭐ 462) Structured editing (soft deletion, expression navigating & manipulating) that supports many major modes out of the box.
  • pangu-spacing - (⭐ 150) Minor-mode to automatically add space between CJK and Latin characters.
  • siege-mode - (⭐ 33) An emacs minor mode to surround the region with smart delimiters interactively.

Select

  • evil-visualstar - (⭐ 80) Makes visual selections work with the * operator in =evil-mode=.
  • expreg - Like =expand-region=, but using =tree-sitter= for language-specific region expansion.

Highlight

  • show-paren-mode - =[built-in]= a minor mode to visualize parenthesis matching.
  • rainbow-delimiters - (⭐ 729) Highlights parentheses, brackets, and braces according to their depth.
  • prism - (⭐ 329) highlight code based on depth

Kill-ring / Clipboard

  • easy-kill - (⭐ 272) Kill & Mark Things Easily in Emacs.
  • simpleclip - (⭐ 179) Simplified access to the system clipboard.
  • clipmon - (⭐ 95) Clipboard monitor for Emacs. Monitors clipboard and pastes contents on change.

Drag Lines

  • Drag Stuff - (⭐ 245) Drag Stuff is a minor mode for Emacs that makes it possible to drag stuff (words, region, lines) around in Emacs.
  • move-text - (⭐ 226) move current line or region up or down.
  • move-dup - (⭐ 54) Minor mode for Eclipse-like moving and duplicating lines or rectangles.

Undo & Redo

  • vundo - (⭐ 593) Navigate the emacs undo buffer history as a tree-structure.
  • undo-propose - (⭐ 116) Navigate the emacs undo history by staging undo’s in a temporary buffer.
    • undo-fu-session - Save undo history across sessions. Intended to work with, but not dependent on =undo-fu=.
  • undo-fu - An undo/redo system that advertises itself as being simpler than Undo Tree.
  • undo-tree - Visualize the whole undo history in buffer as a tree, and you can access anywhere in it.

Multiple Major-Mode

  • polymode - (⭐ 737) Framework for Multiple Major Modes in Emacs (ex: Embedded programming language code in Markdown, Org, RST file…etc)
  • mmm-mode - (⭐ 344) allows Multiple Major Modes to coexist in one buffer (ex: Embedded CSS & JS in HTML file).

Snippet

  • YASnippets - (⭐ 2,897) A template system that allows you to type an abbreviation and automatically expand it into function templates.
  • Tempel: Template package which uses the syntax of the Emacs Tempo library.

Text Conversion

  • string-inflection - (⭐ 260) Conversion of text between lowercase, uppercase, camelcase etc.
  • fix-word - (⭐ 43) Transform words in Emacs (upcase, downcase, capitalize).

Programming

  • CEDET - (built-in) an advanced development environment in Emacs.
  • Casual RE-Builder - (built-in) a Transient user interface for RE-Builder, the built-in Elisp regular expression tool. Included in Casual.
  • treesit-auto - (built-in) Automatically setup and use the built-in tree-sitter, by installing grammars and using tree-sitter major modes.
  • apheleia - (⭐ 706) Run code formatter on buffer contents without moving point, using RCS patches and dynamic programming.
  • format-all - (⭐ 662) Auto-format source code in many languages using the same command.
  • evil-nerd-commenter - (⭐ 411) Comment/uncomment lines efficiently. Like Nerd Commenter in Vim. This program can be used independently without evil-mode.
  • codemetrics - (⭐ 75) Plugin shows complexity information.
  • C-xrefactory - (⭐ 25) refactoring tool and code browser for C and Java.
  • Doxymacs - Doxymacs is Doxygen + {X}Emacs.

Completion

  • abbrev - ( built-in ) Abbreviation expander.
  • Auto-Complete - (⭐ 1,758) An intelligent auto-completion extension with great interface.
  • corfu - (⭐ 1,385) Corfu enhances the default completion in region function with a completion overlay.
  • cape - (⭐ 739) Completion At Point extensions that can be used with =corfu=, =company=, or the default completion ui.
  • company-box - (⭐ 586) A company front-end with icons.
  • flx - (⭐ 523) Fuzzy matching for Emacs like Sublime Text.
  • flx-rs - (⭐ 22) flx in Rust using dynamic module. - mono-complete - Non-blocking completion with preview that doesn’t block user input which supports multiple back-ends at once including back-ends for dabbrev, capf and statistical word prediction among others. - recomplete - Immediate completion that doesn’t block user input, but cycles through options on successive calls. It can also be used with ISpell as a fast way to correct typos. - Company - A text completion framework.

Jump to Definition / Tagging

  • Dumb Jump - (⭐ 1,706) easy jump to definition package for multiple languages using =ag= or =grep=.
  • ggtags - (⭐ 583) Emacs frontend to GNU Global source code tagging system.
  • Citre - (⭐ 365) Advanced Ctags frontend, comes with powerful code-reading tool.
  • Smart Jump - (⭐ 123) smartly go to definition leveraging several methods to do so.
  • GNU Global - advanced source code tagging system with jump to definition functionality.

LSP Client

  • eglot - =[built-in]= A client for Language Server Protocol servers.
  • lsp-bridge - (⭐ 1,690) Fastest LSP client for Emacs.
  • lsp-ui - (⭐ 1,100) An extension which adds code lenses and documentation pop-up for lsp-mode.
  • lspce - (⭐ 217) Simple LSP client implemented as an Emacs module using Rust.

Debugging

  • dap-mode - (⭐ 1,359) An implementation of the debug adapter protocol used in VSCode and other editors.
  • realgud - (⭐ 0) A modular front-end for interacting with external debuggers.

Error Checking

  • FlyMake - (built-in) on-the-fly syntax checks on files using external tools.
  • Flycheck - (⭐ 2,493) Modern on-the-fly syntax checking meant to be a replacement to =FlyMake=.

Document

  • eldoc - =[built-in]= shows function arguments / variable doc in minibuffer when coding.
  • eldoc-box - (⭐ 446) Displays =eldoc= documentation within a childframe.
  • docstr - (⭐ 71) A document string minor mode.

Code Folding

  • hideshow - ( built-in ) Folding regions by balanced-expression code.
  • Origami.el - (⭐ 529) Feature rich text folding minor mode.
  • ts-fold - (⭐ 260) Code-folding using tree-sitter.
  • treesit-fold - (⭐ 158) Code folding based on the tree-sitter syntax tree, built on top of treesit.el.
  • savefold - (⭐ 37) Persistence for various Emacs folding systems.
    • hideshowvis - Based on =hideshow=, just display its nodes on fringe.

Compiling

  • quickrun - (⭐ 487) Implements run button used in many IDE.
  • compile-angel.el - (⭐ 99) A package that ensures all .el files are both byte-compiled and native-compiled, significantly speeding up Emacs.

Project management

  • Projectile - (⭐ 4,154) Project Interaction Library for Emacs.
  • Prodigy - (⭐ 567) Manage external services from within Emacs.
  • Project-Explorer - (⭐ 268) a tree project explorer (integrates with projectile).
  • Whaler - (⭐ 11) Minimalistic and highly customizable project manager.

File Manager

  • Dired - =[built-in]= Dir ectory Ed itor. A customizable great file manager.
  • Treemacs - (⭐ 2,292) a tree layout file explorer for Emacs.
  • NeoTree - (⭐ 1,609) A emacs tree plugin like NERD tree for Vim.
  • Dirvish - (⭐ 1,022) A polished Dired bundled with useful extensions.
  • dired-hacks - (⭐ 940) Collection of useful Dired additions.
  • Sidebar.el - (⭐ 304) A customizable file explorer with git integration for emacs.
  • Casual Dired - (⭐ 272) a Transient user interface for the Dired file manager. Included in Casual.
  • Casual IBuffer - (⭐ 272) a Transient user interface for IBuffer, a major mode for viewing and managing Emacs buffers. Included in Casual.
  • Sunrise Commander - (⭐ 229) Twin-pane file manager for Emacs based on Dired and inspired by Midnight Commander.
  • Direx - (⭐ 209) directory tree explorer.
  • filetree - (⭐ 101) tree-based file explorer.
  • dired-k - (⭐ 83) Highlight Dired buffer by file size, modified time, git status.
  • eFar - (⭐ 49) FAR-like file manager.
  • tramp-hdfs - (⭐ 11) Browse HDFS in Emacs with dired using Tramp.
    • Dired+ - Functional & interface extensions for Dired.
  • ztree - Directory tree comparison mode.

Programming Language

C/C++

  • CC Mode - (built-in) An Emacs and XEmacs mode for editing C and other languages with similar syntax.
  • Ebrowse - (built-in) A C++ class browser.
  • rtags - (⭐ 1,844) A C/C++ client/server indexer with for integration with emacs based on
  • irony-mode - (⭐ 916) A C/C++ minor mode for Emacs powered by libclang.
  • cmake-ide - (⭐ 728) Configures other packages to consider compile options like include paths from cmake projects to improve e.g. autocompletion.
  • emacs-ccls - (⭐ 203) Emacs client of ccls, a C/C++/Objective-C language server powered by clang.
  • emacs-cquery - (⭐ 116) Emacs client of cquery, a C/C++/Objective-C language server powered by clang.
  • clang-format - (⭐ 5) An interface to clang-format for Emacs, provides C/C++ code formatting functionality.

Python

  • Elpy - (⭐ 1,931) An Emacs Python development environment.
  • anaconda-mode - (⭐ 714) Code navigation, documentation lookup and completion for Python.
  • pipenv.el - (⭐ 170) Integrates pipenv to emacs providing useful commands.
  • renpy-mode - (⭐ 23) Emacs major mode for working with the Ren’Py visual novel engine.

Ruby

  • rubocop - (⭐ 12,813) A Ruby static code analyzer, based on the community Ruby style guide.
  • robe - (⭐ 590) Code navigation, documentation lookup and completion for Ruby.
  • rinari - (⭐ 411) Rinari Is Not A Rails IDE (it is an Emacs minor mode for Rails).
  • rspec-mode - (⭐ 265) An RSpec minor mode for Emacs.
  • projectile-rails - (⭐ 257) Emacs minor mode for working with Ruby on Rails applications and engines.
  • feature-mode - (⭐ 257) Emacs mode for editing Cucumber plain text stories.
  • inf-ruby - (⭐ 223) REPL buffer connected to a Ruby subprocess.
  • rvm - (⭐ 216) Ruby versions manager within Emacs.
  • bundler - (⭐ 41) Interact with gem Bundler from Emacs.
  • motion-mode - (⭐ 38) A package to provide emacs’ major mode for RubyMotion environment. - yari - Yet Another RI interface for Emacs.
    • comes with ruby. It uses the Ripper class found in ruby 1.9.2 (and later) to parse and indent the source code.

Lisp Family

  • lispy - (⭐ 1,268) Minor mode for editing parenthesis, evaluating and refactoring LISP code with extremely short key bindings. Compatible with Lisp/Scheme/Clojure.
  • Parinfer - (⭐ 406) Parinfer for Emacs, simpler Lisp editing. - Paredit - Minor mode for editing parentheses. Strict parenthesis auto-pairing and easy depth adjustment. Compatible with Lisp/Scheme/Clojure.

Common Lisp

  • SLIME - (⭐ 2,008) A fully-functional IDE for Common Lisp development, with debugger, REPL.
  • SLY - (⭐ 1,374) A fork of SLIME.

Scheme

  • Geiser - (built-in) Integrated development with Guile and Racket.
  • Quack - (built-in) Enhanced Emacs Support for Editing and Running Scheme Code.

Racket

  • racket-mode - (⭐ 705) Major modes for Racket: Edit and REPL.

Clojure

  • Cider - (⭐ 3,622) Clojure IDE and REPL.
  • clj-refactor.el - (⭐ 781) A collection of Clojure refactoring functions for Emacs.
  • jet - (⭐ 58) Emacs integration for the jet Clojure tool.

Emacs Lisp

  • ielm - (built-in) A simple Emacs Lisp REPL.
  • Elsa - (⭐ 691) Emacs Lisp Static Analyzer and gradual type system.
  • suggest.el - (⭐ 378) Discover elisp functions that do what you want.
  • eros - (⭐ 173) Evaluation Result OverlayS for Emacs Lisp.
  • elmacro - (⭐ 161) Display keyboard macros or latest interactive commands as Emacs Lisp.
  • easy-escape - (⭐ 48) Improve readability of escape characters in ELisp regular expressions.
  • ellsp - (⭐ 46) Elisp Language Server.
    • elisp-autofmt - Auto-format ELisp (with support for formatting the buffer on save).

Web Development

  • skewer-mode - (⭐ 1,120) live interact with JavaScript, CSS, and HTML in a web-browser.
  • verb - (⭐ 725) Organize and send HTTP requests from Emacs.
  • elnode - (⭐ 484) An evented IO webserver in Emacs Lisp.
  • impatient-mode - (⭐ 226) See your changes in the browser as you type.
  • web-beautify - (⭐ 223) Format HTML, CSS and JavaScript/JSON by js-beautify.
  • emmet2 - (⭐ 17) Another implemenation of Emmet, that leverages the =npm= package instead of replicating the logic in lisp. - web-mode - major mode for editing various html templates (PHP, JSP, ASP, ERB…etc).

JavaScript

  • js2-mode - (⭐ 1,337) Improved JavaScript editing mode.
  • indium - (⭐ 1,132) A JavaScript development environment for Emacs.
  • rjsx-mode - (⭐ 642) A JSX major mode for Emacs.
  • js2-refactor - (⭐ 376) A JavaScript refactoring library for emacs.
  • json-mode - (⭐ 329) Major mode for editing JSON files.
  • npm.el - (⭐ 29) Run your npm workflows in emacs.
    • tern - Emacs flavor of the popular JavaScript analysis engine.
    • js-comint.el - Run an inferior javascript REPL process in Emacs.

CoffeeScript

  • coffee-mode - (⭐ 577) An Emacs major mode for CoffeeScript and IcedCoffeeScript.

TypeScript

  • Tide - (⭐ 1,472) TypeScript Interactive Development Environment for Emacs.

PureScript

  • psc-ide-emacs - (⭐ 132) Emacs integration for PureScript’s psc-ide tool.
  • emacs-psci - (⭐ 17) An Emacs major mode for psci.

PHP

  • php-mode - (⭐ 600) Major mode for PHP programming.
  • phpactor.el - (⭐ 43) Interface to Phpactor (an intelligent code-completion and refactoring tool for PHP).
  • phpunit.el - (⭐ 36) Launch PHP unit tests using phpunit.
  • psysh.el - (⭐ 34) PsySH on Emacs, PHP interactive shell (REPL).
  • composer.el - (⭐ 11) PHP Composer interface for Emacs.

Java

  • lsp-java - (⭐ 677) Eclipse JDT Language Server integration for Emacs.
  • emacs-eclim - (⭐ 164) An Eclipse plugin which exposes Eclipse features through a server interface.

Go

  • Gocode - (⭐ 5,001) An autocompletion daemon for the Go programming language.
  • Gomode - (⭐ 1,444) Go mode rewrite for Emacs. Provides Go toolchain integration.
  • Goflymake - (⭐ 89) Go syntax checker. Wrapper around Emacs flymake for Go.
  • Goerrcheck - (⭐ 42) go-errcheck provides an easy way to invoke errcheck from within Emacs.
  • GoRepl - (⭐ 28) A minor emacs mode for Go REPL.

C

Rust

  • rust-mode - (⭐ 1,213) An Emacs major mode for editing Rust code.
  • rustic - (⭐ 737) A fork of rust mode with improvements and configurations for things such as flycheck and lsp-mode.
  • cargo.el - (⭐ 178) Cargo support for Emacs.
  • flycheck-rust - (⭐ 125) Better Rust/Cargo support for Flycheck.

Erlang

  • EDTS - (⭐ 358) EDTS is meant to be able to replace Distel but only provides part of the most commonly used of Distel’s features.
  • distel - (⭐ 323) Distel is a library for Emacs<->Erlang communication, plus a suite of tools built on top of it, such as a debugger front-end.
  • Wrangler - (⭐ 163) Wrangler is a mode that supports interactive refactoring of Erlang programs. - erlang - The official Erlang mode for Emacs.

Elixir

  • alchemist - (⭐ 908) Elixir Tooling Integration Into Emacs.

Haskell

  • lsp-haskell - (built-in) A successor to Intero under active development.
  • dante - (⭐ 398) Dante provides a frontend to GHCi features: type-checking, execution, completion and cross referencing. It integrates with standard Emacs tooling as much as possible.
  • HaRe - (⭐ 138) Haskell refactoring tool with Emacs integration.
External Guides: - Using Emacs for Haskell development

Swift

  • swift-mode - (⭐ 378) Emacs support for Apple’s Swift programming language.

Scala

  • sbt-mode - (⭐ 7) An emacs mode for interacting with scala sbt and projects. - Ensime - ENhanced Scala Interaction Mode for Emacs. - Metals - Scala language server with rich IDE features.

Lua

  • lua-mode - (⭐ 337) A major mode for editing Lua sources in Emacs.

Makefile

  • helm-make - (⭐ 64) Select a Makefile target with helm.
  • basic-c-compile - (⭐ 8) Emacs package to create a Makefile, compile and run a C file.

SML

Gdscript

  • gdscript-mode - (⭐ 366) An Emacs package to get GDScript support and syntax highlighting.

Groovy

  • groovy-emacs-modes - (⭐ 89) A collection of modes for use with Groovy-related technology – Groovy, Grails, etc.
  • grails.el - (⭐ 2) A minor mode for Grails projects.

Kotlin

R

Julia

  • julia-mode - (⭐ 308) Major mode for editing Julia source code.
  • julia-repl - (⭐ 182) A minor emacs mode for Julia REPL.

OCaml

  • Merlin - (⭐ 1,653) an assistant for editing OCaml code.
  • tuareg - (⭐ 385) a Caml mode for Emacs. - TypeRex - a set of tools for developing in OCaml.

ReasonML

  • reason-mode - (⭐ 121) An Emacs major mode for ReasonML.

Mint

Nim

  • nim-mode - (⭐ 142) An Emacs major mode for editing Nim code.

D

  • Emacs-D-Mode - (⭐ 86) An Emacs major mode for editing D code.

Raku

  • raku-mode - (⭐ 63) An Emacs major mode for editing Raku code.

Elm

  • elm-mode - (⭐ 381) An Emacs major mode for editing Elm code.

Stan

  • stan-mode - (⭐ 72) An Emacs major mode for editing Stan code.

MIPS Assembly

  • mips-mode - (⭐ 30) An emacs major mode for editing MIPS assembly.

RISC-V Assembly

  • riscv-mode - (⭐ 22) An emacs major mode for editing RISC-V assembly.

Verilog/SystemVerilog

  • verilog-mode - (⭐ 278) Emacs major mode for Verilog and SystemVerilog with Indentation, Highlighting and AUTOs.
  • verilog-ext - (⭐ 62) SystemVerilog Extensions for Emacs.

VHDL

  • vhdl-ext - (⭐ 35) VHDL Extensions for Emacs.

LAMMPS

Ada

AI

Code Completion

  • Copilot.el - (⭐ 2,229) an Emacs plugin for GitHub Copilot.
  • Ellama - (⭐ 876) Emacs plugin for Ollama, which has both code completion and refactoring capabilities, running on the CPU and with experimental AMD GPU support.
  • Minuet-ai.el - (⭐ 305) Minuet offers code completion as-you-type from popular LLMs including OpenAI, Gemini, Claude, Ollama, Llama.cpp, Codestral, and more.
  • tabby-mode - (⭐ 26) Emacs interface for Tabby, an OpenSource self-hosted coding assistant with support for CPU and AMD GPU.

ChatGPT

  • GPTel - (⭐ 3,039) A simple ChatGPT client for Emacs.
  • chatgpt-shell - (⭐ 1,177) ChatGPT and DALL-E Emacs shells + Org Babel.
  • org-ai - (⭐ 799) Minor mode for Emacs org-mode that provides access to generative AI models.
  • chatgpt - (⭐ 218) Use ChatGPT inside Emacs

AI assistant programming

  • aider.el - (⭐ 633) aider (AI Pair Programming) Inside Emacs
  • elysium - (⭐ 287) Automatically apply AI-generated changes as you code with GPTel
  • codegpt - (⭐ 96) Use GPT-3 inside Emacs

Session management

  • easysession - (⭐ 157) A lightweight session manager that persists and restores Emacs frames, the tab-bar, and buffers (file editing buffers, indirect buffers, Dired buffers, etc.).

Keys Cheat Sheet

  • which-key - =[built-in]= Display available key bindings in popup. Rewrite of guide-key with added features to improve display.
  • guide-key - (⭐ 377) Displays the available key bindings automatically and dynamically.
  • discover.el - (⭐ 178) Discover more of emacs with well-categorized context menus.
  • helm-descbinds - (⭐ 121) Helm interface for Emacs’ =describe-bindings=.
  • cheatsheet - (⭐ 95) Create your own customized cheatsheet.
  • discover-my-major - Discover key bindings and their meaning for the current Emacs major mode.

Note

  • deft - (⭐ 746) Quickly browse, filter, and edit directories of plain text notes.
  • writeroom-mode - (⭐ 655) Writeroom-mode: distraction-free writing for Emacs.
  • Fountain Mode - (⭐ 428) a full-featured screenwriting environment for GNU Emacs using the Fountain markup format.
  • annotate.el - (⭐ 416) annotate files without changing them.
  • langtool - (⭐ 396) LanguageTool for Emacs.
  • zetteldeft - (⭐ 392) Extend deft.el and turn it into a basic Zettelkasten note-taking system.
  • lsp-grammarly - (⭐ 205) Grammarly Language Server integration for Emacs.
  • grammarly - (⭐ 130) Grammarly API interface.
  • guess-language - (⭐ 126) Robust automatic language detection (e.g. Arabic, Czech, Danish, etc).
  • lsp-ltex - (⭐ 59) LTEX Language Server integration for Emacs. - Emacs Muse - a publishing environment for Emacs.

Org-mode

  • org-roam - (⭐ 5,865) a Roam replica built on top of the all-powerful Org-mode.
  • org-html-themes - (⭐ 2,278) Export Org mode files into awesome HTML in 2 minutes.
  • org-modern - (⭐ 1,810) Implements a modern style for org buffers, including UTF-8 characters.
  • org-brain - (⭐ 1,762) Org-mode wiki + concept-mapping.
  • org-ql - (⭐ 1,543) An Org-mode query language, including search commands and saved views.
  • org-super-agenda - (⭐ 1,490) Help organize your agenda items into tidy groups.
  • org-web - (⭐ 1,403) Web app for viewing and editing org files online, optimized for mobile use.
  • org-journal - (⭐ 1,331) A simple org-mode based journaling mode.
  • org-download - (⭐ 1,191) Drag and drop images to Emacs org-mode.
  • org-noter - (⭐ 1,148) Annotate documents with a synchronized org-mode buffer alongside them.
  • org-transclusion - (⭐ 1,042) Link content between buffers to make multiple changes with one edit.
  • org-bullets - (⭐ 718) Shows org-mode bullets as pretty UTF-8 characters.
  • org-page - (⭐ 679) A static site generator based on org-mode files.
  • org-trello - (⭐ 621) Minor mode to synchronize org-mode buffer and trello board.
  • helm-org-rifle - (⭐ 516) Rifle through your Org buffers and acquire your target.
  • org-cliplink - (⭐ 337) Insert org-mode links from clipboard.
  • toc-org - (⭐ 312) Generate TOC for Org files.
  • dslide - (⭐ 276) Programmable presentation for org documents
  • org-ioslide - (⭐ 274) Export Org document into Google I/O HTML5 slide.
  • org-sort-tasks - (⭐ 43) Functions to keep TODO tasks in orgmode sorted and organized.
  • orgtbl-join - (⭐ 38) Enrich a table with material from other tables
  • orgtbl-fit - (⭐ 16) Do regression fitting on Org Mode tables
    • org-timeblock — Interactive multiple-day timeblock view for orgmode tasks.

Version control

  • VC - =[built-in]= Emacs version control interface works with several different version control systems including Bazaar, CVS, Git, Mercurial, Monotone, RCS, SCCS/CSSC, and Subversion.
  • forge - (⭐ 1,478) Work with Git forges, such as Github and Gitlab, from the comfort of Magit.
  • diff-hl - (⭐ 1,028) Highlights uncommitted changes. Works with several different VC systems. An actively-maintained alternative to =git-gutter=.
  • git-gutter - (⭐ 873) Indicates modified lines via git diff. [Unmaintained, consider using =diff-hl= instead.]
  • magit-todo - (⭐ 779) Show TODO’s and FIXME’s within a magit status buffer.
  • magithub - (⭐ 576) Magit interfaces for GitHub. [Deprecated. The project suggests using forge]
  • git-link - (⭐ 444) Get the GitHub/Bitbucket/GitLab etc… URL for a buffer location.
  • monky - (⭐ 159) An interactive interface for mercurial.
  • git-messenger - (⭐ 149) popup commit message at current line to know why this line was changed.
  • git-undo - (⭐ 95) A command for Emacs to regress or “undo” a region back through its Git history.
  • magit-svn - (⭐ 24) git svn integration for magit.
  • magit-lfs - (⭐ 17) git lfs integration for magit.
  • aHg - An Emacs front-end for the Mercurial SCM.
  • Magit - Interacting with git.
For additional git-related emacs packages to use or to get inspiration from, take a look at the following resource: [[https://github.com/tarsius-legacy/git-elisp-overview]].

Integration

Console

  • vterm - (⭐ 1,886) A fully-fledged terminal emulator inside Emacs based on libvterm.
  • exec-path-from-shell - (⭐ 1,525) Get environment variables such as $PATH from the shell for Mac user.
  • aweshell - (⭐ 438) Awesome shell extension based on eshell with wonderful features!
  • fzf.el - (⭐ 404) An extensible Emacs front-end for fzf.
  • shell-pop - (⭐ 216) Quickly toggle a shell with one key action.
  • eshell-up - (⭐ 35) Quickly navigate to a specific parent directory in eshell without having to repeatedly typing ~cd ..~. - Eat - Emulate A Terminal, in a region, in a buffer and in Eshell. - fasd - Emacs integration for the command-line productivity booster fasd. - multi-term - Managing multiple terminal buffers in Emacs.

Operating System

  • Emacs Application Framework - (⭐ 3,374) EAF’s extensibility allows one to interact with PyQt GUI applications, so that one can develop any PyQt application and integrate it into Emacs (e.g. web browser, video player, camera, rss reader, etc).
  • EXWM - (⭐ 2,839) EXWM turns Emacs into a full-featured tiling X window manager.
  • Symon - (⭐ 297) Tiny graphical system monitor.
  • restart-emacs - (⭐ 158) A simple emacs package to restart emacs from within emacs.
  • theme-magic - (⭐ 150) Apply your Emacs theme to the rest of Linux.
  • EDNC - (⭐ 88) Manage all your desktop notifications without leaving Emacs.
  • spotlight - (⭐ 40) Emacs package to query macOS Spotlight.
  • Helm-EXWM - (⭐ 40) EXWM-specific sources for Helm together with an application launchers and switches.
  • osx-lib - (⭐ 40) Emacs functions for macOS. - Eyebrowse - A simple-minded way of managing window configs in emacs. - system-packages - Manage your installed packages with emacs.

Search

  • wgrep - (⭐ 736) Writable grep/ack/ag/pt buffer and apply the changes to files.

Ack

  • ack-el - (⭐ 61) Emacs Interface to Ack-like Tools. - full-ack - An Emacs front-end for ack.

Ag

  • ag.el - (⭐ 531) An Emacs frontend to Ag (“the silver searcher” ack replacment).
  • helm-ag - (⭐ 500) Ag with helm interface.

Pt

Sift

  • sift.el - (⭐ 7) Front-end for sift, a fast and powerful grep alternative.

Ripgrep

  • deadgrep - (⭐ 768) Deadgrep is the fast, beautiful text search that your Emacs deserves.
  • rg.el - (⭐ 529) Emacs search tool based on ripgrep.
  • color-rg.el - (⭐ 181) - Search and refactoring tool base on ripgrep, integrate edit feature like wgrep, don’t need install wgrep added.

Pastebin

  • gist.el - (⭐ 552) Paste Gist in Emacs.
  • webpaste.el - (⭐ 94) Paste to pastebin-like services.
  • yagist.el - (⭐ 32) Yet another Gist integration.
  • dpaste.el - (⭐ 12) Emacs mode to post to dpaste.com.
  • jist.el - (⭐ 10) Yet another gist client for Emacs.

Google

  • google-this - (⭐ 271) A set of functions and bindings to google under point.

Blog System

  • blog-admin - (⭐ 229) Write blog in emacs with hexo/org-page/nikola.
  • Hyde - (⭐ 116) An Emacs mode to manage Jekyll blogs.
  • blog-minimal - (⭐ 67) A simple static site generator based on org mode. - ox-hugo - Export Org subtrees/files to Markdown with front-matter for Hugo static site generator.

Markdown

  • grip-mode - (⭐ 305) Instant Github-flavored Markdown/Org preview using Grip.
  • markdown-mode+ - (⭐ 38) Additional functions for Emacs [markdown-mode].
  • Markdown-mode - markdown-mode is a major mode for editing Markdown-formatted text files in GNU Emacs.

LaTeX

  • RefTeX - =[built-in]= Adds support for labels, references, citations, and index entries.
  • AUCTeX - an extensible package for writing and formatting TeX files.
  • latex-preview-pane is a minor mode for Emacs that enables you to preview your LaTeX files directly in Emacs.

PDF

  • PDF Tools - (⭐ 757) major mode for rendering PDF files, much better than DocView, and has a much richer set of features.
  • pdf-view-restore - (⭐ 40) addition to PDF Tools which saves the current position in a PDF to resume reading at that place even after the buffer has been closed or emacs restarted.

Internet

Browser

Mail

  • mu4e-alert - (⭐ 159) Desktop notifications and modeline display for mu4e.
    • mu4e-conversation - Alternative view for displaying emails in mu4e.
    • mew - A very easy to use e-mail reader and client for Emacs.
    • notmuch - A mail indexer which can serve as a complete client with its emacs integration.
    • mu4e - An e-mail client for Emacs.
    • Wanderlust - A powerful email and Usenet client for Emacs (IMAP4rev1, NNTP, POP(POP3/APOP), MH/Maildir).

IRC

  • Circe - (⭐ 421) A Client for IRC in Emacs. - Riece - An IRC client for Emacs.

Chat

  • slack - (⭐ 1,198) slack client for Emacs.
  • ement - (⭐ 557) A Matrix client for Emacs.
  • Weechat.el - (⭐ 179) A Weechat-relay client for Emacs.

Social Network

  • SX - (⭐ 715) Stack Exchange for Emacs.
  • howdoi - (⭐ 69) Instant coding answers via Emacs, a way to query Stack Overflow directly from within Emacs. - Mastodon.el - An Emacs client for Mastodon.

Web Feed

  • Elfeed - (⭐ 1,654) RSS/Atom Reader for Emacs.
  • elfeed-org - (⭐ 369) An extension for Elfeed which lets you define all feeds in an Org file.

FTP

Torrent

  • mentor - (⭐ 94) GNU Emacs frontend for the rTorrent bittorrent client.

DevOps

  • docker - (⭐ 799) Emacs interface to Docker, manipulate docker images, containers & more from Emacs.
  • kubernetes-el - (⭐ 675) A magit-style interface to the Kubernetes command-line client.
  • kubel - (⭐ 282) Emacs extension for controlling Kubernetes with limited permissions.
  • kele.el - (⭐ 96) Nimble, well-integrated Kubernetes cluster management package.
  • puppet-mode - (⭐ 92) Edit Puppet 3 manifests with GNU Emacs 24.
  • chef-mode - (⭐ 20) Emacs mode to edit Chef repositories.
  • salt-mode - (⭐ 1) Edit Salt States with GNU Emacs 24.

Package Management

Package Manager

  • straight.el - (⭐ 2,937) Next-generation, purely functional package manager for the Emacs hacker.
  • el-get - (⭐ 1,657) apt-get style Emacs packages manager.
  • cask - (⭐ 1,314) Manage dependencies for your local Emacs configuration and automate the package development cycle.
  • Elpaca - (⭐ 841) Elpaca is an elisp package manager. It allows users to find, install, update, and remove third-party packages for Emacs.
  • quelpa - (⭐ 671) Build and install your Emacs Lisp packages on-the-fly directly from source.
  • borg - (⭐ 278) Assimilate Emacs packages as Git submodules.
  • pallet - (⭐ 278) A package management tool for Emacs, built on Cask.
  • Eask - (⭐ 175) CLI for building, running, testing, and managing your Emacs Lisp dependencies.
  • try - (⭐ 114) Try out Emacs packages.

Package Configuration

  • leaf - (⭐ 545) Flexible, declarative, and modern init.el package configuration.
  • req-package - (⭐ 153) A use-package wrapper for package runtime dependencies management.

Package Updates

  • SPU - (⭐ 24) Emacs Silent Package Upgrader.

Config Management

  • ESUP - (⭐ 411) Emacs Start Up Profiler. Benchmark Emacs Startup time without ever leaving your Emacs.
  • elisp-bug-hunter - (⭐ 282) Debug and bisect your init file for errors or assertions.
  • explain-pause-mode - (⭐ 250) Monitor interactions to discover configurations or packages which slow down Emacs.
  • Chemacs, Chemacs2 - Ease testing of different emacs setups, an Emacs profile switcher which assists running multiple Emacs configurations side by side. ## Library
  • cl-lib.el - =[built-in]= Common Lisp extensions for Emacs.
  • seq.el - =[built-in]= Sequence manipulation functions.
  • EIEIO - =[built-in]= EIEIO (“Enhanced Implementation of Emacs Interpreted Objects”) provides an Object Oriented layer for Emacs Lisp.
  • dash.el - (⭐ 1,729) A modern list library.
  • s.el - (⭐ 1,061) String manipulation library.
  • emacs-async - (⭐ 884) Simple library for asynchronous processing in Emacs.
  • f.el - (⭐ 704) Modern API for working with files and directories in Emacs.
  • request - (⭐ 642) A HTTP request library with multiple backends.
  • popup.el - (⭐ 467) Visual Popup Interface Library for Emacs.
  • alert - (⭐ 463) A Growl-like alerts notifier for Emacs.
  • SVG Library - (⭐ 357) A small Emacs library to create and display various SVG objects, namely tags, progress bars, progress pies, and icons. Each object is guaranteed to fit nicely in a text buffer ensuring width is an integer multiple of character width.
  • websocket - (⭐ 344) A websocket implementation in elisp, for emacs.
  • emacs-deferred - (⭐ 321) Simple asynchronous functions for Emacs Lisp.
  • gh.el - (⭐ 282) GitHub API library for Emacs.
  • el-patch - (⭐ 271) Future-proof your Emacs Lisp customizations and automatically notify you about upstream changes that might break your hacks.
  • ht.el - (⭐ 259) The missing hash table library for Emacs.
  • Names - (⭐ 257) A Namespace implementation for Emacs Lisp.
  • ov.el - (⭐ 221) Overlay library for Emacs Lisp.
  • ts.el - (⭐ 192) A timestamp and date-time library for Emacs.
  • jeison - (⭐ 119) A library for declarative JSON parsing.
  • indicators.el - (⭐ 45) Display the buffer relative location of line in the fringe.
  • pos-tip - (⭐ 4) Show tooltip at point.

Theme

  • Leuven-theme - =[built-in]= /(light)/ Awesome Emacs color theme for white backgrounds.
  • Doom-themes - (⭐ 2,314) /(theme pack)/ UI plugin and pack of themes extracted from Doom Emacs.
  • Zenburn - (⭐ 1,043) /(dark)/ Vim’s “Zenburn theme” ported to Emacs.
  • Solarized - (⭐ 819) /(light/dark)/ Solarized color theme.
  • Kaolin-themes - (⭐ 794) (theme package) Set of eye-pleasing themes for GNU Emacs. Supports both GUI and terminal.
  • Moe-theme - (⭐ 762) /(light/dark)/ [256color] A customizable colorful eye-candy theme. Moe, moe, kyun!
  • Poet - (⭐ 531) /(light/dark)/ A lightweight theme that plays well with prose and org-mode.
  • Ef themes - (⭐ 489) /(light/dark)/ - Colourful and legible themes for GNU Emacs.
  • Monokai - (⭐ 485) /(dark)/ A port of the popular TextMate theme Monokai.
  • N Λ N O (Nano) Themes - (⭐ 416) /(light/dark)/ A light theme based on Material colors and a dark theme based on Nord colors.
  • Ample-theme - (⭐ 297) /(light/dark)/ [256color] A low-contrast theme for Emacs.
  • Cyberpunk-theme - (⭐ 270) /(dark)/ [256color] Mostly a direct port of the “Cyberpunk Overtone theme”.
  • auto-dark - (⭐ 227) /(automatic theme changer)/ - Not a theme, but an automatic changer tool between any 2 themes, dark/light, following MacOS, Linux or Windows Dark Mode settings.
  • Wilmersdorf-theme - (⭐ 88) /(dark)/ Emacs theme with dark subtle syntax highlighting.
  • Modus Themes - /(light/dark)/ Accessible themes for GNU Emacs, conforming with the highest accessibility standard for colour contrast between background and foreground values (WCAG AAA standard).

Multimedia

  • mpc - =[built-in]= An Emacs front end to the Music Player Daemon.
  • Bongo - (⭐ 216) A flexible and usable media player for GNU Emacs.
  • Mingus - (⭐ 106) An Emacs front end to the Music Player Daemon with an interface that resembles ncmpc.
  • eradio - (⭐ 73) An Internet radio player.
  • csound-mode - (⭐ 41) Emacs major mode for coding in Csound.
  • taggie - (⭐ 24) Audio tag editor.
  • Dionysos - (⭐ 18) A simple music player for Emacs.
  • EMMS - The Emacs Multimedia System.

Finance

Fun

  • Zone Mode - =[built-in]= A buffer obfuscator, or a screensaver.
  • Nyan-mode - (⭐ 835) Let Nyan Cat show you your buffer position in mode line.
  • fireplace - (⭐ 747) A cozy fireplace for emacs.
  • clippy - (⭐ 223) Show tooltip with function documentation at point.
  • parrot - (⭐ 181) Rotate text and Party Parrot at the same time.
  • Selectric Mode - (⭐ 167) Make your Emacs sound like a proper typewriter.
  • speed-type - (⭐ 155) Practice speed/touch typing in Emacs.
  • Pacmacs - (⭐ 121) Pacman-like game for Emacs.
  • fsc.el - (⭐ 36) Fuck the Speeching Censorship!
  • key-quiz - (⭐ 35) Key Quiz game for Emacs.
  • wttrin - (⭐ 9) Emacs frontend for weather web service wttr.in.
  • gnugo - (⭐ 4) Play GNU Go in a buffer.
  • Landmark - a neural network that trains a robot to find a tree.
  • spray - A speed reading mode for Emacs.

Music

  • Vuiet - (⭐ 293) The music player and explorer for Emacs.
  • Scel - (⭐ 81) SuperCollider/Emacs interface.
  • lyqi - (⭐ 70) 3rd party emacs mode for LilyPond editing.
  • alda-mode - (⭐ 31) emacs mode for alda, a music programming language for musicians written in java and clojure.

Screencasting

  • keycast - (⭐ 347) Show current commands and its key in the mode line.
  • frameshot - (⭐ 50) Take screenshots of Emacs frames.
  • script2svg - (⭐ 21) Record terminal sessions as svg.

Starter Kit

  • Spacemacs - (⭐ 24,741) A slick Evil focused starter kit: do not fear RSI anymore.
  • Doom - (⭐ 21,328) Henrik Lissner’s (@hlissner) Emacs configuration for the stubborn martian vimmer.
  • Prelude - (⭐ 5,244) An enhanced default Emacs experience with friendlier defaults and minimal additions.
  • Emacs Starter Kit - (⭐ 2,860) A prose guide to various packages and settings which can greatly improve the Emacs experience.
  • Centaur Emacs - (⭐ 2,125) A Fancy and Fast Emacs Configuration.
  • Emacs From Scratch - (⭐ 1,874) Custom Emacs configuration that you can use as inspiration when building your own.
  • Emacs-Live - (⭐ 1,538) M-x start-hacking http://overtone.github.io/emacs-live/.
  • Scimax - (⭐ 1,104) An Emacs starter kit for scientists and engineers with a focus on Org-Mode.
  • Emacs24 Starter Kit - (⭐ 797) A cleaner version of the literate starter kit based on Emacs24 http://eschulte.github.io/emacs24-starter-kit/.
  • Oh-My-Emacs - (⭐ 706) Provide an awesome, out-of-box, literate dotemacs for both newbies and nerds.
  • minimal-emacs.d - (⭐ 640) A customizable Emacs base that offers improved default settings and optimized startup, intended to serve as a solid foundation for a vanilla Emacs configuration.
  • Frontmacs - (⭐ 504) A package-based, web-centric, customizable, awesome-by-default, acceptance-tested Emacs distribution.
  • Ian’s Yay-Evil Distro - (⭐ 408) A lightweight literate Emacs config with even better “better defaults”: shipped with a custom theme!
  • Ohai Emacs - (⭐ 382) The finest hand-crafted artisanal emacs.d for your editing pleasure.
  • Graphene - (⭐ 323) A set of defaults for Emacs, for refugees from GUI text editors.
  • Cabbage - (⭐ 157) Get the maximum out of emacs http://senny.github.io/cabbage/.
  • Emacs Bedrock - A minimal, no-magic, bare-bones starter kit focusing on tweaking stock Emacs 29. Minimal 3rd-party dependencies.

Tutorials

  • Emacs From Scratch - (⭐ 1,874) A series of videos showing how to build an advanced Emacs configuration from scratch by David Wilson (@daviwil).
  • elisp-koans - (⭐ 167) A tour of emacs lisp via test-driven development.

Links and resources

  • (or emacs - An (ir)relevant blog about Emacs.
  • Emacs Docs - The modern documentation website Emacs deserves.
  • EmacsWiki - The EmacsWiki is dedicated to documenting and discussing Emacs and EmacsLisp.

© RP 2021 - 2026