Towards Emacs Enlightenment
I’ve been using Emacs for roughly five years now and it’s quite shameful how little I’ve explored of it. I feel like I’ve barely begun to scratch the surface of the power of having a LISP engine underlying one’s day to day work. Having been content to be a journeyman Emacs user for too long, it’s high time I starting investing time in learning more about the program that eats most of my daily keystrokes.
So! Last weekend, I put my .emacs and its associated folder of non-standard modes in a remotely-accessible subversion repository. I use Emacs on four main computers- my Gentoo server, my Ubuntu desktop, my girlfriend’s Powerbook, and my work Windows laptop . Getting all my current customizations and keybindings working sensibly across all these different platforms was a learning experience and reward in and of itself. I’ve been reading up on elisp and starting to write bits and pieces of it; now, if I whip up and save some useful little lambda at work, it’s available wherever I am.
The next major task ahead of me is something of a doozy. At work, I use Emacs for everything- except Java. When I’m working on the Java side of our codebase, I tend to use Eclipse. Shameful, I know. It’s a huge resource hog, entirely too mouse-and-menu-centric, has relatively inefficient default keybindings, and doesn’t have a scripting layer akin to having LISP everywhere. But it’s got some features that make it really indispensable when working on a huge, sprawling Java codebase (and they all are). The ability to explore the APIs you’re working with via introspection and inline autocompletion is insanely useful, as is the ability to jump to where a particular method, class or variable is defined. It’s the size of the language and it’s libraries that makes wrangling a Java project unwieldy- you could probably take out a Buick by dropping Java In A Nutshell from a few stories up.
But I know Emacs can do all this, and I’d really like to be able to work with big Java projects in the world’s best programming environment. It’s just a question of figuring out how. So far, JDEE looks promising. It harnesses, among other things, the Semantic Bovinator to provide the language-specific features I mentioned above. It’s proven to be a real bear to set up, however, and I need to free up a good chunk of time to dig into it.
I’ll try to post any useful tips and “ah-ha!” moments here as I continue my journey towards Emacs zen.
Posted: May 16th, 2007 under Emacs.
Comments: 3
Comments
Comment from Nick
Time: May 16, 2007, 3:10 am
You know that you have a love/love relationship with Java. Just admit it and be done with it! >=D
Comment from Jonathan Aquino
Time: July 13, 2007, 7:50 pm
Thomas – Have you tried jEdit? It’s kitchen-sinkish like Emacs. I switched to it after a couple of enjoyable years with Emacs and quite like it (great plug-in manager, for example).
Comment from thegreatape
Time: July 14, 2007, 2:06 pm
Jonathan- Haven’t tried jEdit myself, though I’ve heard some pretty good things about it while reading The Inevitable Editor Flamewar-type threads on various Linux forums.
Write a comment