Go to file
2016-06-06 01:19:38 -04:00
core Add pcre2el for pcre defuns 2016-06-06 01:19:38 -04:00
ext
modules Refactor doom-fix-unicode 2016-06-06 01:19:38 -04:00
private :dash -> doom:docs-lookup 2016-06-06 01:19:38 -04:00
.gitignore
.gitmodules
Cask Add pcre2el for pcre defuns 2016-06-06 01:19:38 -04:00
init.el Goodbye Helm, hello Ivy 2016-06-06 01:19:37 -04:00
LICENSE
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