some links were missing, outdated, or without description tried to remedy that a bit, pulling some information from behind the links to the overview also small insertion for private config bisecting, some sembr lines (better reading flow in editor) and headline capitalisation improvements index.org duplicates a lot of info from the README and tends to lag behind, should consider options of merging - from what I know github could support a README.org that could also serve as index then, or vice versa linking the markdown readme in emacs
11 KiB
Module Index
- Table of Contents
- :app
- :checkers
- :completion
- :config
- :editor
- :emacs
- :input
- :lang
- :os
- :term
- :tools
- :ui
Functionality in Doom is divided into collections of code called modules (à la
Spacemacs' layers). A module is a bundle of packages, configuration and
commands, organized into a unit that can be enabled or disabled by adding or
removing them from your doom! block in $DOOMDIR/init.el.
Table of Contents TOC
:app
Application modules are complex and opinionated modules that transform Emacs
toward a specific purpose. They may have additional dependencies and should be
loaded last, before :config modules.
:checkers
:completion
Modules that provide new interfaces or frameworks for completion, including code completion.
- corfu - The lightweight, customizable code completion backend
- company
+childframe +tng- The ultimate code completion backend (deprecated) - helm
+fuzzy +childframe- Another search engine for love and life - ido - The other other search engine for love and life
- ivy
+fuzzy +prescient +childframe +icons- The search engine for love and life - vertico
+icons- The search engine of the future
:config
Modules that configure Emacs one way or another, or focus on making it easier for you to customize it yourself. It is best to load these last.
- literate - For users with literate configs. This will tangle+compile a
config.org in your
doom-private-dirwhen it changes. - default
+bindings +smartparens- The default module sets reasonable defaults for Emacs. It also provides a Spacemacs-inspired keybinding scheme and a smartparens config. Use it as a reference for your own modules.
:editor
Modules that affect and augment your ability to manipulate or insert text.
- evil
+everywhere- transforms Emacs into Vim - file-templates - Auto-inserted templates in blank new files
- fold - universal code folding
- format
+onsave- TODO - god - TODO
- lispy - TODO
- multiple-cursors - TODO
- objed
+manual- TODO - parinfer - TODO
- rotate-text - TODO
- snippets - Snippet expansion for lazy typists
- word-wrap - soft wrapping with language-aware indent
:emacs
:lang
Modules that bring support for a language or group of languages to Emacs.
- agda
+local- TODO - beancount
+lsp- TODO - cc
+lsp- TODO - clojure
+lsp- TODO - common-lisp - TODO
- coq - TODO
- crystal - TODO
- csharp
+lsp +unity- TODO - dart
+lsp +flutter - data - TODO
- elixir
+lsp- TODO - elm
+lsp- TODO - emacs-lisp - TODO
- erlang
+lsp- TODO - ess
+lsp- TODO - factor - TODO
- faust - TODO
- fsharp
+lsp- TODO - fstar - F* support
- gdscript
+lsp- TODO - go
+lsp- TODO - haskell
+lsp- TODO - hy - TODO
- idris - TODO
- java
+meghanada +eclim +lsp- TODO - javascript
+lsp- JavaScript, TypeScript, and CoffeeScript support - json
+lsp- TODO - julia
+lsp- TODO - kotlin
+lsp- TODO - latex
+latexmk +cdlatex +fold +lsp- TODO - lean - TODO
- ledger - TODO
- lua
+fennel +moonscript- TODO - markdown
+grip- TODO - nim - TODO
- nix - TODO
- ocaml
+lsp- TODO - org
+brain +dragndrop +gnuplot +hugo +ipython +journal +jupyter +noter +pandoc +pomodoro +present +pretty +roam- TODO - php
+hack +lsp- TODO - plantuml - TODO
- purescript
+lsp- TODO - python
+cython +lsp +pyright +pyenv +conda +poetry- TODO - qt - TODO
- racket
+lsp +xp- TODO - raku - TODO
- rest - TODO
- rst - TODO
- ruby
+lsp +rvm +rbenv +rails +chruby - rust
+lsp- TODO - scala
+lsp- TODO - scheme
+chez +chibi +chicken +gambit +gauche +guile +kawa +mit +racket- TODO - sh
+fish +lsp +powershell- TODO - sml - TODO
- solidity - TODO
- swift
+lsp- TODO - terra - TODO
- web
+lsp- HTML and CSS (SCSS/SASS/LESS/Stylus) support. - yaml
+lsp- TODO - zig
+lsp- Zig support.
:os
:tools
Small modules that give Emacs access to external tools & services.
- ansible - TODO
- debugger
+lsp- A (nigh-)universal debugger in Emacs - direnv - TODO
- docker
+lsp- TODO - editorconfig - TODO
- ein - TODO
- eval
+overlay- REPL & code evaluation support for a variety of languages - gist - TODO
- lookup
+dictionary +docsets +offline- Universal jump-to & documentation lookup backend - lsp
+peek +eglot- Installation and configuration of language server protocol client (lsp-mode or eglot) - magit
+forge- TODO - make - TODO
- pass
+auth- TODO - pdf - TODO
- prodigy - TODO
- rgb - TODO
- taskrunner - TODO
- terraform - TODO
- tmux - TODO
- upload - TODO
:ui
Aesthetic modules that affect the Emacs interface or user experience.
- deft - TODO
- doom - TODO
- doom-dashboard - TODO
- doom-quit - TODO
- emoji
+ascii +github +unicode- Adds emoji support to Emacs - hl-todo - TODO
- hydra - TODO
- indent-guides - TODO
- ligatures
+extra +fira +hasklig +iosevka +pragmata-pro- Ligature support for Emacs - minimap - TODO
- modeline
+light- TODO - nav-flash - TODO
- neotree - TODO
- ophints - TODO
- popup
+all +defaults- Makes temporary/disposable windows less intrusive - tabs - TODO
- treemacs -
+lsp- A tree layout file explorer for Emacs - unicode - TODO
- vc-gutter - TODO
- vi-tilde-fringe - TODO
- window-select
+switch-window +numbers- TODO - workspaces - Isolated workspaces
- zen - Distraction-free coding (or writing)