Compiling Emacs.app and Tips 1

Posted by Justin Reagor Thu, 18 Dec 2008 03:08:00 GMT

I’d like to start by thanking Mr. Peepcode for his article which presented a great case for learning Emacs! Without it, I would have never thought of mastering the only Unix editor I had yet to experience.

Configure With NS

GNU is NeXTstep Unix… why even bother with Aqua, Carbon, Cocoa Emacs when you can just compile “nextstep” support for GNU Emacs itself?

NOTE: I used another blog article but it seems like its always incredibly slow. Check that guy’s blog out since he’s the original author though, or buy him a beer.

So here are the regurgitated compilation steps that I used.

git clone git://repo.or.cz/emacs.git
cd emacs/
./configure --with-ns
make
make install
sudo cp -R ./nextstep/Emacs.app ~/Applications

Configuration Tips

If your a picky hacker like myself you’ll be customizing your workspace for the rest of your life… but you’ll want to definitely clone topfunky’s emacs-starter-kit. It takes some configuration to get right, but puts you on a great start. I loaded linum-mode, ruby-electric and some radical themes to get comfortable. Also, I can’t keep away from RTFM too.

One final thing to note, I read that although nxhtml looks pretty friggin awesome… its a monster to load. I patched these lines to my starter-kit-misc.el as well… to use the nxml library in which nxhtml was built upon. Its gotta be smaller, faster and cleaner then all of those features I just won’t be using in nxhtml.

(add-to-list 'auto-mode-alist '("\\.html$" . nxml-mode))
(add-to-list 'auto-mode-alist '("\\.rhtml$" . nxml-mode))

If and when I get back around to adding syntax highlighting to the Ruby lines within erb/rhtml files (which nxml modes loads into now)... I’ll need to patch those lines up again to load Rinari’s “rhtml-mode” or what have you. You can remove just the rhtml mode from Rinari by the way.

Of course I haven’t yet decided if I want to use emacs-rails, Rinari, or just stick with Yasnippets by itself ::shrug::. I’m fine typing out my code right now while I get the hang of my workflow with Emacs, but if anyone has any experience with them please comment your thoughts.

Textmate ;_;

So yeah, TextMate is now officially dead to me. I wish it wasn’t so, but with all the amazing support of Emacs, the power and fun of Lisp and the focus of staying on the keyboard the entire day… I’m pretty sure I won’t go back.

Comments

Leave a response

  1. Avatar
    Justin about 1 hour later:
    Oh, one other thing. Some people have asked me how to handle loading files from Terminal/ZSH into a running Emacs instance. Emacs has a server/client arch. which will easily accomidate third party software, or the EDITOR env var. There's a page all about it in the manual. If your using Topfunky's fork of the emacs-starter-kit, you should be loading the emacs server on init. On the command-line however, with the nextstep compiled OS X application I described, you'll need to link emacsclient into your path, from ~/Applications/Emacs.app/Contents/MacOS/bin/emacsclient. If the server is loaded, simply run the client with the file name and it will load into a buffer in your already running Emacs.app instance. Of course I actually am not using this now. For one, it doesn't work with Spaces, SOOO I simply do a "open -a Emacs " which will work (though in another editor window, but from your current process).
Comments