A community driven list of useful Emacs packages, libraries and others.
Most of the following packages are available in MELPA. We recommend installing packages via it.
Table of Contents
- Awesome Emacs
- Interface Enhancement
- File Manager
- Navigation
- Visual
- Editing
- Project management
- Programming
- Programming Language
- Keys Cheat Sheet
- Note
- Version control
- Integration
- Markdown
- LaTeX
- Internet
- DevOps
- Package Management
- Library
- Appearance
- Theme
- Multimedia
- Fun
- Starter Kit
- Noteworthy Configurations
- Tutorials
- Links and resources
- Contributing
- Other Awesome Lists
- License
- IDO -
[built-in]
Interactively do things with buffers and files.- ido-ubiquitous - Enhance the built-in ido for completion all over Emacs.
- ido-vertical-mode - Make ido display vertically.
- Helm - (Formerly ‘Anything’) A powerful completion and selection narrowing framework. ( External Guides 1 )
- Ivy - flexible, simple tools for minibuffer completion in Emacs.
- 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.
- Icicles - An Emacs library that enhances minibuffer completion.
- smex - A smart M-x enhancement for Emacs.
- tabbar - Display a tab bar in the header line.
- winner -
[built-in]
“Undo”(and “redo”) changes in the window configuration with the key commands. - Evil - An e xtensible vi l ayer: manipulate Emacs with Vi key binding.
- Hydra - Make bindings that stick around.
- sublimity - smooth-scrolling, minimap inspired by the sublime editor.
- ElScreen - Utility for multiple screens.
- god-mode - Global minor mode for entering Emacs commands without modifier keys.
- ergoemacs-mode - Global minor mode to use both common interface keys and ergonomic keys for emacs.
- workgroups2 - Session manager, saves all your opened buffers, their location and sizes on disk to restore later.
- modalka - Introduce native modal editing of your own design.
- ace-popup-menu - Replace GUI popup menu with something more efficient.
- multi-compile - Multi target interface to compile.
- Dashboard - A startup dashboard which provides certain information about your recent Emacs activities.
- EXWM - EXWM turns Emacs into a full-featured tiling X window manager.
- Dired -
[built-in]
Dir ectory Ed itor. A customizable great file manager.- Dired+ - Functional & interface extensions for Dired.
- dired-hacks - Collection of useful Dired additions.
- dired-k - Highlight Dired buffer by file size, modified time, git status.
- NeoTree - A emacs tree plugin like NERD tree for Vim.
- Sr Speedbar - Same frame speedbar.
- projectile-speedbar - Speedbar and Projectile integration.
- Direx - directory tree explorer.
- ztree - Directory tree comparison mode.
- Ranger - ranger like file manager based on Dired.
- Sunrise Commander - Twin-pane file manager for Emacs based on Dired and inspired by Midnight Commander.
- Treemacs - a tree layout file explorer for Emacs.
- windmove -
[built-in]
Tired withC-x o
? Now you can useshift+arrows
to jump between windows. - Ace jump - A quick cursor jump mode.
- Avy - Jump to visible text using a char-based decision tree.
- goto-last-change - Move point through buffer-undo-list positions.
- Helm-swoop - Efficiently jump between matched string/lines.
- anzu - displays current match and total matches.
- imenu -
[built-in]
Menus for accessing locations in documents. - imenu-anywhere - IDO/Helm imenu tag selection across all buffers with the same mode.
- Minimap - A SublimeText-style minimap sidebar.
- switch-window - A visual replacement for
C-x o
. - ace-window - A visual replacement for
C-x o
using Ace jump. - ace-link - Follow links in
org-mode
,help-mode
, andInfo-mode
using Ace jump. - back-button - Visual navigation through mark rings.
- bm - Visual Bookmarks, provides an easy way to navigate in a buffer.
- buffer-move - Move or swap buffer to other window.
- emacs-pophint - Provide navigation like the Vimperator/KeySnail Hint Mode of Firefox.
- vertigo.el - Jump lines using the home row.
- undo-tree - Visualize the whole undo history in buffer as a tree, and you can access anywhere in it.
- highlight-symbol - Auto/manually highlight the same symbols in code, navigate in them, or replace string.
- rainbow-delimiters - Highlights parentheses, brackets, and braces according to their depth.
- rainbow-mode - Display color on color-code string (hex/rgb) directly.
- visual-regexp - Replace via RegExp, with real-time visual feedback directly in the buffer.
- visual-regexp-steroids - The same as visual-regexp, but use modern regular expressions instead of Emacs-style.
- whitespace -
[built-in]
Visualize blanks (tab/space/newline). - linum-relative - display relative line number in the left margin in emacs.
- prettify-symbol-mode -
[built-in]
displaying characters as fancy symbols (e.g.lambda
->λ
). - typo.el - Emacs extension for typographical editing.
- highlight-thing - Light-weight minor mode to highlight thing under point using built-ins.
- focus - Dim the font color of text in surrounding paragraphs.
- beacon - Never lose your cursor again.
- Multiple cursors - Mark, edit multiple lines at once.
- pangu-spacing - Minor-mode to automatically add space between CJK and Latin characters.
- hungry-delete - Delete an entire block of whitespace at point.
- Drag Stuff - Drag Stuff is a minor mode for Emacs that makes it possible to drag stuff (words, region, lines) around in Emacs.
- expand-region.el - Increase selected region by semantic units.
- multifiles.el - View and edit parts of multiple files in one buffer.
- lentic - Create views of the same content in two Emacs buffers.
- fix-word - Transform words in Emacs (upcase, downcase, capitalize).
- string-inflection - Conversion of text between lowercase, uppercase, camelcase etc.
- zzz-to-char - Fancy replacement for `zap-to-char`.
- Visual Bookmarks - Visible bookmarks in buffer for GNU Emacs.
- artist-mode -
[built-in]
Draw ASCII lines, squares, rectangles and poly-lines, ellipses, and circles with your mouse and/or keyboard.
- Popup-killring - Browse kill-ring with popup menu.
- Browse-kill-ring - Visually navigate kill-ring.
- easy-kill - Kill & Mark Things Easily in Emacs.
- clipmon - Clipboard monitor for Emacs. Monitors clipboard and pastes contents on change.
- simpleclip - Simplified access to the system clipboard.
- Projectile - Project Interaction Library for Emacs.
- Prodigy - Manage external services from within Emacs.
- Fiplr - An Emacs Fuzzy Find in Project Package.
- Project-Explorer - a tree project explorer (integrates with projectile).
- Find-file-in-project - Quick access to project files in Emacs.
- CEDET -
[built-in]
an advanced development environment in Emacs. - Xrefactory - A refactoring browser for Emacs.
- YASnippets - Template system.
- auto-yasnippet - Advanced copy-paste using Yasnippet.
- tiny - Templates based on linear range transformations.
- evil-nerd-commenter - Comment/uncomment lines efficiently. Like Nerd Commenter in Vim. This program can be used independently without evil-mode.
- mmm-mode - allows Multiple Major Modes to coexist in one buffer (ex: Embedded CSS & JS in HTML file).
- SmartParens - Deals with parens pairs and tries to be smart about it.
- Aggressive-indent - Keeps your code always indented automatically.
- indent-guide - Show vertical lines to guide indentation.
- Doxymacs - Doxymacs is Doxygen + {X}Emacs.
- whitespace-cleanup-mode - Intelligently call whitespace-cleanup on save.
- realgud - A modular front-end for interacting with external debuggers.
- ggtags - Emacs frontend to GNU Global source code tagging system.
- Auto-Complete - An intelligent auto-completion extension with great interface.
- Company - A text completion framework.
- company-quickhelp - Documentation popups for company.
- flx - Fuzzy matching for Emacs like Sublime Text.
- abbrev -
[built-in]
Abbreviation expander. - emacs-ycmd - Emacs client for YCM.
- Helm-dash - Browse Dash docsets via Helm interface.
- eldoc -
[built-in]
shows function arguments / variable doc in minibuffer when coding.
- vimish-fold - Vim-like text folding.
- hideshow -
[built-in]
Folding regions by balanced-expression code.- hideshowvis - Based on
hideshow
, just display its nodes on fringe.
- hideshowvis - Based on
- Origami.el - Feature rich text folding minor mode.
- FlyMake -
[built-in]
on-the-fly syntax checks on files using external tools. - Flycheck - Modern on-the-fly syntax checking meant to be a replacement to
FlyMake
.
- GNU Global - advanced source code tagging system with jump to definition functionality.
- Dumb Jump - easy jump to definition package for multiple languages using
ag
orgrep
.
- CC Mode -
[built-in]
An Emacs and XEmacs mode for editing C and other languages with similar syntax. - rtags - A C/C++ client/server indexer with for integration with emacs based on clang.
- irony-mode - A C/C++ minor mode for Emacs powered by libclang.
- cmake-font-lock - Enhanced font-lock rules for CMake.
- function-args - visual CEDET enhancements for C++.
- Ebrowse -
[built-in]
A C++ class browser.
- Elpy - An Emacs Python development environment.
- anaconda-mode - Code navigation, documentation lookup and completion for Python.
- virtualenvwrapper.el - Manage virtualenv from inside Emacs.
- rvm Ruby versions manager within Emacs.
- bundler Interact with gem Bundler from Emacs.
- inf-ruby REPL buffer connected to a Ruby subprocess.
- enhanced-ruby-mode Enhanced Ruby Mode replaces the emacs ruby mode that comes with ruby. It uses the Ripper class found in ruby 1.9.2 (and later) to parse and indent the source code.
- yari Yet Another RI interface for Emacs.
- robe Code navigation, documentation lookup and completion for Ruby.
- rubocop A Ruby static code analyzer, based on the community Ruby style guide.
- motion-mode A package to provide emacs’ major mode for RubyMotion enviroment.
- rspec-mode An RSpec minor mode for Emacs.
- feature-mode Emacs mode for editing Cucumber plain text stories.
- rinari - Rinari Is Not A Rails IDE (it is an Emacs minor mode for Rails).
- Paredit - Minor mode for editing parentheses. Strict parenthesis auto-pairing and easy depth adjustment. Compatible with Lisp/Scheme/Clojure.
- lispy - Minor mode for editing parenthesis, evaluating and refactoring LISP code with extremely short key bindings. Compatible with Lisp/Scheme/Clojure.
- Parinfer - Parinfer for Emacs, simpler Lisp editing.
- SLIME - A fully-functional IDE for Common Lisp development, with debugger, REPL.
- SLY - A fork of SLIME.
- common-lisp-snippets - Yasnippets for Common Lisp.
- Quack - Enhanced Emacs Support for Editing and Running Scheme Code.
- Geiser - Intergrated development with Guile and Racket.
- racket-mode - major modes for Racket: Edit and REPL.
- Clojure mode - A major mode for clojure.
- Cider - Clojure IDE and REPL.
- Clojure snippets - Clojure snippets with yasnippet.
- clj-refactor.el - A collection of Clojure refactoring functions for Emacs.
- ielm -
[built-in]
A simple Emacs Lisp REPL. - elmacro - Display keyboard macros or latest interactive commands as Emacs Lisp.
- suggest.el - Discover elisp functions that do what you want.
- web-mode - major mode for editing various html templates (PHP, JSP, ASP, ERB…etc).
- emmet - Emmet support for Emacs.
- web-beautify - Format HTML, CSS and JavaScript/JSON by js-beautify.
- skewer-mode - live interact with JavaScript, CSS, and HTML in a web-browser.
- impatient-mode - See your changes in the browser as you type.
- restclient.el - HTTP REST client tool for emacs.
- elnode - An evented IO webserver in Emacs Lisp.
- js2-mode - Improved JavaScript editing mode.
- js-comint.el - Run an inferior javascript REPL process in Emacs.
- tern - Emacs flavor of the popular JavaScript analysis engine.
- json-mode - Major mode for editing JSON files.
- indium - A JavaScript development environment for Emacs.
- js2-refactor - A JavaScript refactoring library for emacs.
- rjsx-mode - A JSX major mode for Emacs.
- coffee-mode - An Emacs major mode for CoffeeScript and IcedCoffeeScript.
- Tide - TypeScript Interactive Development Environment for Emacs.
- purescript-mode - An Emacs major mode for PureScript.
- emacs-psci - An Emacs major mode for psci.
- php-mode - Major mode for PHP programming.
- phpunit.el - Launch PHP unit tests using phpunit.
- emacs-eclim - An Eclipse plugin which exposes Eclipse features through a server interface.
- malabar-mode - A better Java mode for Emacs.
- JDEE - The JDEE is an add-on software package that turns Emacs into a comprehensive system for creating, editing, debugging, and documenting Java applications.
- meghanada-emacs - A Better Java Development Environment for Emacs.
- Gomode - Go mode rewrite for Emacs. Provides Go toolchain integration.
- Goflymake - Go syntax checker. Wrapper around Emacs flymake for Go.
- Gocode - An autocompletion daemon for the Go programming language.
- Goerrcheck - go-errcheck provides an easy way to invoke errcheck from within Emacs.
- Go-playground - Local playground for Go code snippets.
- GoRepl - A minor emacs mode for Go REPL.
- gotest.el - Launch GO unit tests.
- csharp-mode - Major mode for C#.
- omnisharp-emacs - IDE-like features for editing C# code.
- rust-mode - An Emacs major mode for editing Rust code.
- flycheck-rust - Better Rust/Cargo support for Flycheck.
- emacs-racer - Racer support for Emacs.
- cargo.el - Cargo support for Emacs.
- erlang - The official Erlang mode for Emacs.
- distel - Distel is a library for Emacs<->Erlang communication, plus a suite of tools built on top of it, such as a debugger front-end.
- EDTS - EDTS is meant to be a able to replace Distel but only provides part of the most commonly used of Distel’s features.
- Wrangler - Wrangler is a mode that supports interactive refactoring of Erlang programs.
- elixir-mode - Emacs major mode for Elixir.
- alchemist - Elixir Tooling Integration Into Emacs.
- haskell-mode - Major mode for Haskell.
- structured-haskell-mode - Minor mode for structured editing of Haskell.
- HaRe - Haskell refactoring tool with emacs integration.
- ghc-mod - Backend to provide e.g. type information with an emacs frontend.
- intero - Complete interactive development program for Haskell.
External Guides:
- swift-mode - Emacs support for Apple’s Swift programming language.
- company-sourcekit - Completion for Swift projects via SourceKit with the help of SourceKitten.
- scala-mode - The definitive scala-mode for emacs.
- Ensime - ENhanced Scala Interaction Mode for Emacs.
- sbt-mode - An emacs mode for interacting with scala sbt and projects.
- lua-mode - A major mode for editing Lua sources in Emacs.
- Makefile Mode -
[built-in]
A major mode for editing Makefiles. - helm-make - Select a Makefile target with helm.
- basic-c-compile - Emacs package to create a Makefile, compile and run a C file.
- makefile-executor - Emacs helpers to run things from Makefiles.
- emacs-makefile-runner - Searches for Makefile and fetches targets.
- SML mode - a major Emacs mode for editing Standard ML source code.
- groovy-emacs-modes - A collection of modes for use with Groovy-related technology – Groovy, Grails, etc.
- grails.el - A minor mode for Grails projects.
- tuareg - a Caml mode for Emacs.
- TypeRex - a set of tools for developing in OCaml.
- Merlin - an assistant for editing OCaml code.
- nim-mode - An Emacs major mode for editing Nim code.
- Emacs-D-Mode - An Emacs major mode for editing D code.
- elm-mode - An Emacs major mode for editing Elm code.
- stan-mode - An Emacs major mode for editing Stan code.
- mips-mode - An emacs major mode for editing MIPS assembly.
- riscv-mode - An emacs major mode for editing RISCV assembly.
- verilog-mode - Emacs major mode for verilog with Indentation, Hightlighting and AUTOs.
- discover.el - Discover more of emacs with well-categorized context menus.
- discover-my-major - Discover key bindings and their meaning for the current Emacs major mode.
- guide-key - Displays the available key bindings automatically and dynamically.
- guide-key-tip - Tooltip version of guide-key.
- which-key - Display available key bindings in popup. Rewrite of guide-key with added features to improve display.
- cheatsheet - Create your own customized cheatsheet.
- helm-descbinds - Helm interface for Emacs’
describe-bindings
.
- Emacs Muse - a publishing environment for Emacs.
- Fountain Mode - a full-featured screenwriting environment for GNU Emacs using the Fountain markup format.
- guess-language - Robust automatic language detection (e.g. Arabic, Czech, Danish, etc).
- Org -
[built-in]
Write notes, GTD, authoring, publish and wash dishes.- org-page - A static site generator based on org-mode files.
- org-ioslide - Export Org document into Google I/O HTML5 slide.
- org-bullets - Shows org-mode bullets as pretty UTF-8 characters.
- org-trello - Minor mode to synchronize org-mode buffer and trello board.
- org-protocol-capture-html - Capture HTML from the browser selection into Emacs as org-mode content.
- Magit - Interacting with git.
- magithub - Magit interfaces for GitHub.
- 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. - github-clone.el - Fork and clone Github projects from Emacs.
- git-rebase-mode - Major mode for editing git rebase files.
- git-timemachine - Step through historic versions of git controlled files.
- git-gutter - Indicator the modified lines via git diff.
- git-messenger - popup commit message at current line to know why this line was changed.
- browse-at-remote - Open page at github/bitbucket from emacs buffers.
- git-link - Get the GitHub/Bitbucket/GitLab etc… URL for a buffer location.
- monky - An interactive interface for mercurial.
- aHg - An Emacs front-end for the Mercurial SCM.
- EShell -
[built-in]
A shell-like command interpreter implemented in Emacs Lisp. - Term -
[built-in]
A terminal emulator in Emacs. - exec-path-from-shell - Get environment variables such as $PATH from the shell for Mac user.
- eshell-prompt-extras - Display extra information and color for your eshell prompt.
- multi-term - Managing multiple terminal buffers in Emacs.
- shell-pop - Quickly toggle a shell with one key action.
- eshell-up - Quickly navigate to a specific parent directory in eshell without having to repeatedly typing
cd ..
- fasd - Emacs integration for the command-line productivity booster fasd.
- Symon - tiny graphical system monitor.
- system-packages - Manage your installed packages with emacs.
- wgrep - Writable grep/ack/ag/pt buffer and apply the changes to files.
- ag.el - An Emacs frontend to Ag (“the silver searcher” ack replacment).
- helm-ag - Ag with helm interface.
- pt.el - An emacs front-end for Pt, the Platinum Searcher.
- ripgrep.el - Emacs front-end for ripgrep, a command line search tool.
- gist.el - Paste Gist in Emacs.
- yagist.el - Yet another Gist integration.
- dpaste.el - Emacs mode to post to dpaste.com.
- jist.el - Yet another gist client for Emacs.
- ix.el - Paste to ix.io pastebin.
- webpaste.el - Paste to pastebin-like services.
- google-this - A set of functions and bindings to google under point.
- google-translate - Interface to Google Translate.
- Hyde - An Emacs mode to manage Jekyll blogs.
- hexo.el - A frontend UI of Hexo for Emacs.
- blog-admin - Write blog in emacs with hexo/org-page/nikola.
- blog-minimal - 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-mode - markdown-mode is a major mode for editing Markdown-formatted text files in GNU Emacs.
- markdown-mode+ - Additional functions for Emacs [markdown-mode].
- markdown-toc - Generate TOC for markdown files.
- markdownfmt - Format markdown using markdownfmt.
- 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.
- RefTeX -
[built-in]
Adds support for labels, references, citations, and index entries.
- PDF Tools - major mode for rendering PDF files, much better than DocView, and has much richer set of features.
- EWW -
[built-in]
EWW, the Emacs Web Wowser, is a web browser for Emacs. - emacs-webkit - Emacs-webkit, a webkit browser inside Emacs.
- Gnus -
[built-in]
Reading e-mail and Usenet news. - Messages -
[built-in]
Composing and sending e-mail inside Emacs. - mu4e - An e-mail client for Emacs.
- notmuch - A mail indexer which can serve as a complete client with its emacs integration.
- Wanderlust - A powerful email and Usenet client for Emacs (IMAP4rev1, NNTP, POP(POP3/APOP), MH/Maildir).
- mew - A very easy to use e-mail reader and client for Emacs.
- ERC -
[built-in]
A powerful, modular, and extensible IRC client. - Riece - An IRC client for Emacs.
- Rcirc -
[built-in]
Next generation IRC client. - Circe - A Client for IRC in Emacs.
- Weechat.el - A Weechat-relay client for Emacs.
- slack - slack client for Emacs.
- Twittering mode - Major mode for Twitter.
- SX - Stack Exchange for Emacs.
- howdoi - Instant coding answers via Emacs, a way to query Stack Overflow directly from within Emacs.
- weibo.emacs - Sina weibo client in Emacs.
- Elfeed - RSS/Atom Reader for Emacs.
- Newsticker -
[built-in]
RSS/Atom Reader for Emacs.
- chef-mode - Emacs mode to edit Chef repositories.
- emacs-ansible - Ansible minor mode.
- puppet-mode - Edit Puppet 3 manifests with GNU Emacs 24.
- salt-mode - Edit Salt States with GNU Emacs 24.
- docker - Emacs interface to Docker, manipulate docker images, containers & more from Emacs.
- terraform-mode - Terraform mode to edit terraform files.
- package.el -
[built-in]
Install and manage Emacs packages easily.- paradox - Modernizing Emacs’ Package Menu with package ratings, usage statistics, customizability & more.
- package-utils - Interactive extensions for package.el .
- try - Try out Emacs packages.
- el-get - apt-get style Emacs packages manager.
- cask - Manage dependencies for your local Emacs configuration and automate the package development cycle.
- pallet - A package management tool for Emacs, built on Cask.
- quelpa - Build and install your Emacs Lisp packages on-the-fly directly from source.
- homebrew-emacs - Homebrew tap for installing Emacs packages.
- borg - Assimilate Emacs packages as Git submodules.
- straight.el - Next-generation, purely functional package manager for the Emacs hacker.
- use-package - A declaration macro to isolate package configuration in a way that is performance-oriented and tidy.
- req-package - A use-package wrapper for package runtime dependencies management.
- ESUP - Emacs Start Up Profiler. Benchmark Emacs Startup time without ever leaving your Emacs.
- better-defaults - A small number of better defaults for Emacs.
- no-littering - Help keeping ~/.emacs.d clean.
- auto-package-update.el - Automatically update Emacs packages.
- SPU - Emacs Silent Package Upgrader.
- dash.el - A modern list library.
- seq.el -
[built-in]
Sequence manipulation functions. - cl-lib.el -
[built-in]
Common Lisp extensions for Emacs. - s.el - String manipulation library.
- ht.el - The missing hash table library for Emacs.
- f.el - Modern API for working with files and directories in Emacs.
- emacs-async - Simple library for asynchronous processing in Emacs.
- Grizzl - A small utility library to be used in other Elisp code needing fuzzy search behaviour.
- ov.el - Overlay library for Emacs Lisp.
- Names - A Namespace implementation for Emacs Lisp.
- emacs-deferred - Simple asynchronous functions for Emacs Lisp.
- EIEIO -
[built-in]
EIEIO (“Enhanced Implementation of Emacs Interpreted Objects”) provides an Object Oriented layer for Emacs Lisp. - popup.el - Visual Popup Interface Library for Emacs.
- alert - A Growl-like alerts notifier for Emacs.
- gh.el - GitHub API library for Emacs.
- request - A HTTP request library with multiple backends.
- websocket - A websocket implementation in elisp, for emacs.
- powerline - Emacs version of the Vim powerline.
- powerline-evil - Utilities for better Evil support for Powerline.
- smart-mode-line - A sexy mode-line for Emacs.
- spaceline - Powerline theme from Spacemacs.
- telephone-line - A new implementation of Powerline for Emacs.
- mode-icons - Show icons instead of mode names.
- emojify - Display emojis in Emacs.
- Zenburn - (dark) Vim’s “Zenburn theme” ported to Emacs.
- Solarized - (light/dark) Solarized color theme.
- Doom-themes - (dark) Inspired by the One Dark/Light UI and syntax themes in Atom.
- Sanityinc-tomorrow - (light/dark) An Emacs version of “Tomorrow-themes”.
- Monokai - (dark) A port of the popular TextMate theme Monokai.
- Cyberpunk-theme - (dark) [256color] Mostly a direct port of the “Cyberpunk Overtone theme”.
- Ample-theme - (light/dark) [256color] A low-contrast theme for Emacs.
- Moe-theme- (light/dark) [256color] A customizable colorful eye-candy theme. Moe, moe, kyun!
- Leuven-theme -
[built-in]
(light) Awesome Emacs color theme for white backgrounds. - Grandshell-theme - (dark) [256color] Theme with intensive colors.
The above list contains some of the most popular/installed themes. If still unsatisfied, you can also take a look at GNU Emacs Themes Gallery for screenshots of almost all available Emacs themes.
- mpc -
[built-in]
An Emacs front end to the Music Player Daemon. - EMMS - The Emacs Multimedia System.
- Bongo - A flexible and usable media player for GNU Emacs.
- Dionysos - A simple music player for Emacs.
- Mingus - An Emacs front end to the Music Player Daemon with an interface that resembles ncmpc.
- Nyan-mode - Let Nyan Cat show you your buffer position in mode line.
- Zone Mode -
[built-in]
A buffer obfuscator, or a screensaver. - swimmers.el - An emacs screensaver.
- minesweeper.el - An implementation of minesweeper in emacs.
- 2048-game.el - An implementation of 2048 in emacs.
- emacs-xkcd - Read xkcd from emacs.
- gnugo.el - The official Emacs Lisp interface to GNU Go.
- Pacmacs - Pacman-like game for Emacs.
- speed-type - Practice speed/touch typing in Emacs.
- spray - A speed reading mode for Emacs.
- fsc.el - Fuck the Speeching Censorship!
- wttrin - Emacs frontend for weather web service wttr.in.
- fireplace - A cozy fireplace for emacs.
- clippy - Show tooltip with function documentation at point.
- Prelude - Prelude is an enhanced Emacs 24 distribution that should make your experience with Emacs both more pleasant and more powerful.
- Emacs-live - M-x start-hacking http://overtone.github.io/emacs-live/.
- Purcell’s .emacs.d - An Emacs configuration bundle with batteries included.
- Emacs24 Starter Kit - A cleaner version of the literate starter kit based on Emacs24 http://eschulte.github.io/emacs24-starter-kit/.
- Oh-My-Emacs - Provide an awesome, out-of-box, literate dotemacs for both newbies and nerds http://xiaohanyu.github.io/oh-my-emacs.
- Cabbage - Get the maximum out of emacs http://senny.github.io/cabbage/.
- Spacemacs - A slick Evil focused starter kit: do not fear RSI anymore.
- Graphene - A set of defaults for Emacs, for refugees from GUI text editors.
- Ohai Emacs - The finest hand crafted artisanal emacs.d for your editing pleasure.
- Emacs-Bootstrap - Your on-the-fly Emacs development environment!
- Scimax - An Emacs starter kit for scientists and engineers with a focus on Org-Mode.
- init.el - Drew Adams : Icicles, bookmark+ to name a few.
- dot-emacs - John Wiegley (@jwiegley): Lead maintainer of Emacs, use-package.
- emacs.org - Howard Abrams (@howardabrams).
- .emacs.d - Magnar Sveen (@magnars) : multiple-cursors, dash, expand-region.
- Sacha.org - Sacha Chua (@sachac).
- emacs - Johan Andersson (@rejeep).
- emacs.d - Henrik Lissner (@hlissner): Evil setup.
- emacs.d - Chen Bin (@redguardtoo).
- emacs - Chris Wanstrath (@defunkt).
- .emacs.d - Sebastian Wiesner (@lunaryorn): Flycheck.
- home - Grant Rhettke (@grettke).
- oremacs - Oleh Krehel (@abo-abo) : Swiper, Ivy, Hydra, Avy.
- .emacs.d - Kaushal Modi (@kaushalmodi).
- DotEmacs - Eric James Michael Ritz (@ejmr).
- emacs-tv-config - Thierry Volpiatto (@thierryvolpiatto) : Helm Maintainer.
- emacs.el - Jorgen Schäfer (@jorgenschaefer) : Elpy, Circe.
- emacsconfig.html - Dennis Ogbe.
- emacs - Joe di Castro @joedicastro.
- emacs.d - Julien Fantin : use-package, good config organisation system.
- A Guided Tour of Emacs - An official guided tour of Emacs.
- Emacs for developers - A document to help developers to use Emacs as a developer.
- Emacs for writers - The Woodnotes Guide to Emacs for Writers.
- C’est la Z - Using Emacs Series - A series of beginner-friendly Emacs tutorials by Mike Zamansky (@zamansky).
- Planet Emacsen - A community driven mashup of Emacs articles.
- Emacs subreddit - The reddit Emacs channel.
- (or emacs - An (ir)relevant blog about Emacs.
- Emacs Redux - Return to the Essence of Text Editing.
- Emacs Rocks - Some episodes to prove that Emacs rocks.
- Mastering Emacs - Mastering the world’s best text editor.
- Endless Parentheses - Concise ramblings on Emacs productivity.
- What the .emacs.d!? - Sharing Emacs snippets and pastes with others.
Your contributions are always welcome! Please submit a pull request or create an issue to add a new package, library or software to the list.
Before contributing, please read this tiny guideline:
Please don’t rearrange the package ordering without any reason! The items should be sorted by its popularity ( roughly, because it’s impossible to have a precious standard. e.g. most of people would use it; recommended for every newbie…), instead of your personal preference.
For example, Evil
is obviously not a package that every Emacser needs. So please don’t move it onto the top of its category.
In contrast, if you think a package is recommended for every Emacser (especially for a newbie), just place it at a higher place in the list.
If a package is available in the latest version of Emacs, please remember to add a [built-in]
tag in the front of the description.
After you have added a package or edited the README.org
, and before committing and issuing a pull request on this awesome list, use gen-toc.el
to update the Table of Contents.
Open gen-toc.el
and M-x eval-buffer
. Then change buffers to README.org
. Subsequently, issue M-x awesome-emacs-gen-toc
in the README.org
buffer. If a new category of packages has been added in your commit, the Table of Contents section will be revised and updated.
A curated list of awesome lists can be found at awesome.re.
To the extent possible under law, emacs.tw has waived all copyright and related or neighboring rights to this work.