Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Emacs configuration of an ex-vimmer

branch: master
README.md

My Emacs Config

"Emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish." -Neal Stephenson, "In the Beginning was the Command Line"

"Show me your ~/.emacs and I will tell you who you are." -Bogdan Maryniuk

"Emacs is like a laser guided missile. It only has to be slightly mis-configured to ruin your whole day." -Sean McGrathi

"While any text editor can save your files, only Emacs can save your soul." -Per Abrahamseni

"Lisp isn't a language, it's a building material." - Alan Kay

"The reasonable man adapts himself to Emacs; the unreasonable one persists in trying to adapt Emacs to himself. Therefore all progress depends on the unreasonable man." - G.B. Shaw

"Compared to Emacs Wizards, graphical-IDE users are the equivalent of amateur musicians, pawing at their instrument with a sort of desperation. An IDE has blinking lights and pretty dialogs that you can't interact with properly, and gives newbies a nice comfortable sense of control. But that control is extremely crude, and all serious programmers prefer something that gives them more power." - Steve Yegge

Philosophy

New iteration of my emacs configuration. Built around a few principals that probably don't apply to many people other then me

  • I don't really like the emacs key scheme.
  • I love modal editing
  • I hate vim
  • I love lisp, and any reason to use it
  • I like my editor to do a lot of work for me, and I like hacking on it

Evil mode is the best vim implementation that I know about that isn't vim. Emacs is a much better platform then vim. That is why this configuration exists.

Also, line numbers are overrated. No linum mode.

Organization

init.el does as little as possible. Configuration is done in init/init-*, and is as modular as possible (so that when something goes wrong, you can comment out modules).

Package management is done by quelpa, which will use MELPA when possible to build emacs packages. I think it is a step up from el-get, and find it to be much more stable. quelpa will bootstrap itself and all packages when emacs loads.

My crazy mappings are mostly in init-keymaps, and are inspired by all the different editors I have used before. Both vim and emacs use different philosophies to have all key mappings available at all times. I prefer instead to have the things I use frequently quickly available, even if it means not having the things I don't use easily available in a standard location.

Dependancies

osx:

brew install ctags node

If ctags isn't pointing at the right version

on ubuntu run

sudo update-alternatives --config ctags

and choose ctags-exuberant

on osx lion do

sudo mv /usr/bin/ctags /usr/bin/ctags-old

Something went wrong with that request. Please try again.