mirror of
https://github.com/doomemacs/doomemacs.git
synced 2025-12-05 18:20:29 -08:00
An Emacs framework for the stubborn martian hacker
| core | ||
| ext | ||
| modules | ||
| private | ||
| .gitignore | ||
| .gitmodules | ||
| Cask | ||
| init.el | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
This is an Emacs configuration for stubborn vimmers and silent demon annihilating protagonists alike. It strives to emulate vim as best it can, and surpass it in any way possible.
[](http://ultravioletbat.deviantart.com/art/Yay-Evil-111710573)It is tailored to OSX 10.11+, Emacs 24.5.1+ and my needs as a software developer, designer, scientist and doom enthusiast.
Installation
brew install cask
brew install emacs --with-cocoa --with-imagemagick
git clone https://github.com/hlissner/.emacs.d ~/.emacs.d
cd ~/.emacs.d
make # installs plugins via cask and generates autoloads
# Optional
make compile # compiles core and autoloaded files
make snippets # install hlissner/emacs-snippets into private/snippets
For a more comprehensive byte compile, run :bc! (:bc will compile the
current *.el file).
Features
To get a picture of what's in here, check out:
- The Caskfile: lists installed plugins and where they're configured.
- init.el: lists all loaded modules
- private/my-bindings.el: most of the custom keybinds
- private/my-commands.el: available custom ex commands
- ext/Makefile: lists external dependencies
Highlights
- Pretty line numbers with nlinum and neckbearded hackery
- Syntax checking with Flycheck
- Completion with company-mode
- Nigh-universal code debugging interface with realgud
- Pretty mode-line with spaceline
- Project navigation with helm and neotree
- Project search with ag and file search with evil-search or helm-swoop
- Project-wide search and replace with helm-ag (press shift-Tab while in results buffer)
- Session persistence (and tab emulation) with workgroups2

- Run code inline with quickrun
- REPLs for many major modes with repl-toggle, including Ruby, Python, PHP, JS, Elisp, Haskell and Lua.
- 2-char motions with evil-snipe
- Diffs in the margin with git-gutter
- Repeat (most) motions with SPC
- Snippet expansion with yasnippet and auto-yasnippet
- File template support with auto-insert and yasnippet
- Code folding with hideshow
- Multiple cursors with evil-multiedit
- O/S interaction functions, like os-reveal and os-open-in-browser
- Custom TODO, FIXME and NOTE highlighting
- big-mode for presentations and demonstrations
- Tmux integration with
:tand:tcdex commands - Tamed popup windows with shackle
- Vim-esque omnicompletion. e.g.
C-x C-ffor files - Quick keybindings with
:[nviom]map - Emacs for modern note-taking/LaTeX/writing with org-mode or rst-mode
- Modeline improvements





