I found and put into use two new tools this week that will change your life if you write Javascript and or Git in any capacity.
git-emacs
First up is git-emacs. I'd heard about the power
of emacs' vc modes for a while, and wanted to play, but hadn't gotten around to seeing what was available for git. It
seems like the jury is still out, but after playing with a number of the modules listed
here I've so far been most happy with git-emacs. I no longer
need to drop to a shell to switch branches, commit, see diffs, and get the status of my current tree, and the
dired-like staging area management is pretty slick.
js2-mode
Second is a long overdue new entrant into the Javascript mode game. Until now it seems like the
consensus has been to use
javascript.el, an altogether sufficient mode that does almost
everything you want. Conspicuously absent, however, are some of the error finding niceties that are found in modes for other
languages, but which can be difficult to include without parsing Javascript in elisp. Also, while javascript.el
is fine for writing modern Javascript, as the language continues to evolve to 2.0 it will increasingly show signs of being outdated
unless it sees some love.
Fortunately, Steve Yegge recently flexed his rather ample geek muscles and put
together one of the sexier piece of elisp since nXML's XML parser.
Boasting "a recursive-descent parser... ported from Mozilla Rhino", js2-mode is never wrong (%bugs) and is
capable of feats heretofore nearly impossible. Gone are the days of
trailing-comment-itis and missing semicolon
separators. Code-folding, bouncey indenting and on-the-fly syntax error checks are here to stay, and the world is a brighter and more friendly place.
Seriously though, js2-mode fucking rocks, so go get it now.