Go to file
2016-06-06 01:19:38 -04:00
core Polish mode-line (and taller) 2016-06-06 01:19:38 -04:00
ext Massive refactor. Refactor all the things 2016-04-23 22:09:09 -04:00
modules Associate text-mode w/ /LICENSE 2016-06-06 01:19:38 -04:00
private :dash -> doom:docs-lookup 2016-06-06 01:19:38 -04:00
.gitignore Ignore debug.el 2016-05-27 15:56:01 -04:00
.gitmodules Extract doom-theme; use submodule 2016-05-28 22:33:30 -04:00
Cask Goodbye Helm, hello Ivy 2016-06-06 01:19:37 -04:00
init.el Goodbye Helm, hello Ivy 2016-06-06 01:19:37 -04:00
LICENSE python: fix eldoc-mode and dash docset 2016-03-04 22:34:14 -05:00
Makefile General cleanup + update readme 2016-06-06 01:19:00 -04:00
README.md General cleanup + update readme 2016-06-06 01:19:00 -04:00

MIT

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.

[![Yay! Evil!](https://raw.githubusercontent.com/hlissner/.emacs.d/screenshots/cacochan.png)](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.

Splash page screenshot Main screenshots

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:

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 Workgroups2 tabs emulation
  • 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 :t and :tcd ex commands
  • Tamed popup windows with shackle
  • Vim-esque omnicompletion. e.g. C-x C-f for files
  • Quick keybindings with :[nviom]map
  • Emacs for modern note-taking/LaTeX/writing with org-mode or rst-mode
  • Modeline improvements
    • evil-search/iedit/evil-substitute mode-line integration:

      matches count in mode-line substitutions count in mode-line

    • Macro-recording indicator:

      macro indicator in modeline

    • Show (py|rb)env version in mode-line

      py/rb version in modeline