An advanced self-contained Emacs configuration suitable for many software developers (deprecated)
Emacs Lisp
Latest commit f8634f3 Apr 19, 2012 @bbatsov Update README.md
Failed to load latest commit information.
backports backported package.el from Emacs 24 and enabled the marmalade Sep 13, 2011
themes nicer highlighting for current line/active region Oct 3, 2011
vendor updated projectile and zenburn Oct 2, 2011
.gitignore updated magit to latest version from git, introduced mac-config Aug 27, 2011
README.md Update README.md Apr 19, 2012
abbrev_defs removed Emacs entry Aug 27, 2011
auctex-config.el minor changes Sep 13, 2011
bindings-config.el minor changes Sep 13, 2011
c-config.el minor changes Sep 13, 2011
clojure-config.el minor changes Sep 13, 2011
coding-config.el minor changes Sep 13, 2011
coding-utils.el minor changes Sep 13, 2011
coffee-script-config.el minor changes Sep 13, 2011
common-lisp-config.el added support for Clozure CL Aug 18, 2011
download-utils.el minor changes Sep 13, 2011
editing-utils.el minor changes Sep 13, 2011
elpa-config.el backported package.el from Emacs 24 and enabled the marmalade Sep 13, 2011
emacs-lisp-config.el fixed a couple of typos and updated zenburn Aug 28, 2011
erc-config.el minor changes Sep 13, 2011
eshell-config.el minor changes Sep 13, 2011
haskell-config.el minor changes Sep 13, 2011
ibuffer-config.el minor changes Sep 13, 2011
init.el removed unneeded show-paren-face faces definitions Oct 7, 2011
java-config.el cleaned up the java config since malabar mode seems mostly dead Apr 6, 2011
mac-config.el minor changes Sep 13, 2011
misc-config.el removed unneeded show-paren-face faces definitions Oct 7, 2011
misc-utils.el minor changes Sep 13, 2011
navigation-utils.el minor changes Sep 13, 2011
nxml-config.el minor changes Sep 13, 2011
org-config.el minor changes Sep 13, 2011
perl-config.el minor changes Sep 13, 2011
prolog-config.el minor changes Sep 13, 2011
python-config.el minor changes Sep 13, 2011
ruby-config.el turn off the annoying input echo in irb Oct 4, 2011
scala-config.el updated scala-mode to latest version Sep 11, 2011
scheme-config.el simplified scheme config Apr 8, 2011

README.md

Emacs Dev Kit

Emacs Prelude

The Emacs Dev Kit will not be actively developed any longer. I'll be focusing most of my efforts on Emacs Prelude. If you like the dev kit - you'll love the Prelude ;-)

Why another project instead of continuing this one? I want it to be clear that the Emacs Prelude will be a radical departure from the way things were done in the Dev Kit - it will have a more structured, cleaner and better documented codebase. It will also drop support for all Emacsen prior to Emacs 24.

Last, but not least - the Emacs Dev Kit was a particularly poor naming choice. People constantly kept associating it with two things: for developers only and the Emacs Starter Kit. No more. The Emacs Prelude is for everyone and apart from a few functions borrowed for the ESK shares next to nothing with it.

About

The Emacs Dev Kit is a set of customizations and extensions for the latest GNU Emacs (currently 23.2) designed to improve the development experience on Emacs and make it more competitive to the modern IDEs. Sure, I know that Emacs is the greatest, but many people don't and I hope this powerful setup will make believers out of them as well.

I have borrowed the idea from technomancy's Emacs Starter Kit, but pushed it to the next level.

Enhanced language support

What do I mean by "enhanced support"? Basically that Emacs features built-in support for that particular programming language, but I've augmented it with additional settings and helper modes or functions. On some occasions I've replaced the bundled support for the language all together (Prolog, LaTeX, etc)...

The Emacs Dev Kit features enhanced support for the following programming languages:

  • C/C++
  • Ruby
  • Common Lisp
  • Emacs Lisp
  • Scheme
  • Perl
  • Python
  • Java
  • Prolog
  • LaTeX
  • XML

I'll be adding more stuff along the way.

Additional programming languages support

  • Clojure
  • Scala
  • Haskell
  • CoffeeScript

Additional markup languages support

  • Markdown
  • Sass
  • Haml
  • Yaml

Misc

The Emacs Dev Kit uses by default the Zenburn color theme (a personal preference of me and many other hackers), but you can easily disable (replace) it.

Emacs 24 compatibility

I've recently started to tweak the config to use some of the exciting new features from Emacs 24 (the global electric modes, the new deftheme infrastructure, etc).

If you're already using Emacs 24 the EDK will a good fit for you. Emacs 23.2 will remain fully supported of course (at least until the official release of Emacs 24).

Installation

git clone git://github.com/bbatsov/emacs-dev-kit.git path/to/local/repo
ln -s path/to/local/repo ~/.emacs.d

Running

Nothing fancy here. Just start Emacs as usual. Personally I run Emacs in daemon mode:

emacs --daemon

Afterwards I connect to the server with either a terminal or a GUI client like this:

emacsclient -t
emacsclient -c

Known issues

I've opted against bundling SLIME with the EDK since it's a rapidly moving target. I heartily recommend you to install it from Quicklisp. If you do so with the default Quicklisp settings EDK will pick up the SLIME installation automatically.

The proper LaTeX support depends on Auctex being installed. You won't get any errors without auctex, though. Just keep in mind you have to install it manually if you're planning of doing some serious LaTeX editing.

Bugs & Improvements

Bug reports and suggestions for improvements are always welcome. github pull request are even better! ;-)

Bozhidar