My motivations for choosing emacs

The EmacsVsVi wiki page on the PythonInfo wiki describes emacs as

Among technically inclined UNIX/Linux users vi/vim tends to be preferred more by sysadmins while emacs/xemacs tends to be favored by programmers.

In an effort to "know your enemy" and whatnot, I figured I would give emacs a shot. I've tried the tutorial a few times before and typically got about 1/2 way through before giving up on the control and alt craziness. This time, however, I actually managed to get through the tutorial.

Configuration and Compliation

The next hurdle I faced in my attempt to test emacs was configuring it and getting packages to run. The immediate configuration of emacs seemed to be pretty straight forward. You just type the lisp you want to run in the \*scratch\* buffer and C-j (that's control-j or ^j) to evaluate it. This allows for lots of simple "what's this do?" style configuration changes. I checked out the emacswiki, which is a great resource for general information about various parts of emacs. I grabbed a few snippets under their python section, and tested them out. Seemed to provide instant feedback, which is really nice when you're learning.


After testing a few configuration options, I decided it was time to be productive. Let's turn this into an IDE! The major packages that provide a lot of nifty bits seem to be CEDET ( Collection of Emacs Development Environment Tools ) and ecb ( Emacs Code Browser ). I followed the installation instructions, but hit a few walls.::

    Cannot open load file: encoded-kb
    Cannot open load file: term/mac-win

Turns out, this is specifically related to CarbonEmacs not being able to find all of its own load files. To remedy the situation, I had to setup the EMACSLOADPATH environment variable to point at the to directories which CarbonEmacs keeps its config files. The path to those are::


This allows me to compile the extensions for emacs. Its also worth noting that configuring CEDET is a total fool's errand and you should avoid it. It'll only cause you pain. Same with JDEE.

That's how my journey began; A working system that I could configure, so I tried to learn as I went and got a few things like I had them in Vim. I even missed brookstream enough to make an emacs version.