Emacs
Contents
Awesome Emacs
Installation
Alternative
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).
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.
Interface Enhancement
A startup dashboard which provides certain information about your recent Emacs activities.
Session manager, saves all your opened buffers, their location and sizes on disk to restore later.
Minor mode for visual feedback on some operations in Emacs.
Font
Layout
Integration
Search
Console
A fully-fledged terminal emulator inside Emacs based on [[https://github.com/neovim/libvterm][libvterm]].
Get environment variables such as $PATH from the shell for Mac user.
Display extra information and color for your eshell prompt.
Quickly navigate to a specific parent directory in eshell without having to repeatedly typing ~cd ..~.
Operating System
EXWM-specific sources for Helm together with an application launchers and switches.
EAF's extensibility allows one to interact with [[https://riverbankcomputing.com/software/pyqt/intro][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).
Ag
Pt
Sift
Top
Tabbar
Aesthetic, functional tabs plugin with icons and styles, Helm, Ivy and Projectile integration, supported by many popular themes.
Out of box extension to use tab in Emacs. grouping buffers by projects and many awesome features.
Navigation
An intuitive and efficient solution for single-buffer text search in Emacs.
IDO/Helm imenu tag selection across all buffers with the same mode.
Quickly follow links in =org-mode=, =help-mode=, =Info-mode=, and several other modes.
Provide navigation like the Vimperator/KeySnail Hint Mode of Firefox.
Key-bindings
Inspired by modalka, ryo-modal provides useful features for creating your own modal editing environment.
A modal keybinding for emacs (like vim), but based on command frequency and ergonomics.
Global minor mode to use both common interface keys and ergonomic keys for emacs.
Minibuffer
Minibuffer
(Formerly 'Anything') A powerful completion and selection narrowing framework. ( External Guides [[http://tuhdo.github.io/helm-intro.html][1]] )
Fuzzy & Narrowing
Fast and intuitive frequency-and-recency-based sorting and filtering for Emacs.
Use space-separated search terms in any order when completing with Icomplete or the default interface.
Mode-line
Evaluate mode-line elements when idle, displaying detailed information without sacrificing performance.
Dim Distracting
Editing Enhancement
Indentation Enhancement
Symbols / Tokens
Programming Language
Light-weight minor mode to highlight thing under point using built-ins.
Color Identifiers is a minor mode for Emacs that highlights each source code identifier uniquely based on its name.
Highlights occurrences of the current selected region.
A C/C++ client/server indexer with for integration with emacs based on clang.
Emacs client of [[https://github.com/MaskRay/ccls][ccls]], a C/C++/Objective-C language server powered by clang.
Emacs client of [[https://github.com/jacobdufault/cquery][cquery]], a C/C++/Objective-C language server powered by clang.
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.
Emacs minor mode for working with Ruby on Rails applications and engines.
Minor mode for editing parenthesis, evaluating and refactoring LISP code with extremely short key bindings. Compatible with Lisp/Scheme/Clojure.
[[https://shaunlebron.github.io/parinfer/][Parinfer]] for Emacs, simpler Lisp editing.
Improve readability of escape characters in ELisp regular expressions.
C/C++
Emacs Lisp
Web Development
Whitespaces Enhancement
Delete Enhancement
Fancy Icons
Massive Edit
Quotes & Parenthesis & Delimiters Handling
Structured editing (soft deletion, expression navigating & manipulating) that supports many major modes out of the box.
Minor-mode to automatically add space between CJK and Latin characters.
An emacs minor mode to surround the region with smart delimiters interactively.
Kill-ring / Clipboard
Drag Lines
Undo & Redo
Multiple Major-Mode
Snippet
Text Conversion
Programming
Comment/uncomment lines efficiently. Like Nerd Commenter in Vim. This program can be used independently without evil-mode.
Run code formatter on buffer contents without moving point, using RCS patches and dynamic programming.
Automatically setup and use the built-in tree-sitter, by installing grammars and using tree-sitter major modes.
Completion At Point extensions that can be used with =corfu=, =company=, or the default completion ui.
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.
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.
easy jump to definition package for multiple languages using =ag= or =grep=.
Emacs client for the [[https://langserver.org/][Language Server Protocol]].
An extension which adds code lenses and documentation pop-up for lsp-mode.
An implementation of the debug adapter protocol used in VSCode and other editors.
Modern on-the-fly syntax checking meant to be a replacement to =FlyMake=.
Code folding based on the tree-sitter syntax tree, built on top of treesit.el.
Project management
File Manager
PureScript
PHP
Languages
Java
Go
C#
Rust
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 is meant to be able to replace Distel but only provides part of the most commonly used of Distel's features.
Erlang
Elixir
Haskell
Swift
Makefile
Groovy
OCaml
Raku
RISC-V Assembly
Verilog/SystemVerilog
LAMMPS
Code Completion
ChatGPT
AI assistant programming
ChatGPT
AI assistant programming
AI assistant programming
AI assistant programming
Session management
Session management
Keys Cheat Sheet
Data
deft
Org-mode
Implements a modern style for org buffers, including UTF-8 characters.
Minor mode to synchronize org-mode buffer and [[https://trello.com][trello]] board.
Capture HTML from the browser selection into Emacs as org-mode content.
Annotate documents with a synchronized org-mode buffer alongside them.
Web app for viewing and editing org files online, optimized for mobile use.
a [[https://roamresearch.com/][Roam]] replica built on top of the all-powerful Org-mode.
Version control
Magit
Highlights uncommitted changes. Works with several different VC systems. An actively-maintained alternative to =git-gutter=.
Indicates modified lines via git diff. [Unmaintained, consider using =diff-hl= instead.]
popup commit message at current line to know why this line was changed.
A command for Emacs to regress or "undo" a region back through its Git history.
Operating System
Blog System
Markdown
Chat
Social Network
Web Feed
DevOps
Package Management
Manage dependencies for your local Emacs configuration and automate the package development cycle.
CLI for building, running, testing, and managing your Emacs Lisp dependencies.
Build and install your Emacs Lisp packages on-the-fly directly from source.
Package Configuration
Package Updates
Config Management
Emacs Start Up Profiler. Benchmark Emacs Startup time without ever leaving your Emacs.
Ease testing of different emacs setups, an Emacs profile switcher which assists running multiple Emacs configurations side by side.
Library
Theme
(theme pack) UI plugin and pack of themes extracted from Doom Emacs.
(dark) [256color] Mostly a direct port of the "Cyberpunk Overtone theme".
(light/dark) [256color] A customizable colorful eye-candy theme. Moe, moe, kyun!
=[built-in]= /(light)/ Awesome Emacs color theme for white backgrounds.
(theme package) Set of eye-pleasing themes for GNU Emacs. Supports both GUI and terminal.
(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
Finance
Fun
Music
Screencasting
Starter Kit
An enhanced default Emacs experience with friendlier defaults and minimal additions.
Henrik Lissner's (@hlissner) Emacs configuration for the stubborn martian vimmer.
A package-based, web-centric, customizable, awesome-by-default, acceptance-tested Emacs distribution.
An Emacs starter kit for scientists and engineers with a focus on Org-Mode.
A lightweight literate Emacs config with even better "better defaults": shipped with a custom theme!
A cleaner version of the literate starter kit based on Emacs24 http://eschulte.github.io/emacs24-starter-kit/.
Provide an awesome, out-of-box, literate dotemacs for both newbies and nerds.
Custom Emacs configuration that you can use as inspiration when building your own.
A prose guide to various packages and settings which can greatly improve the Emacs experience.