javascriptの編集も java-mode で兼用してたが、 Ruby屋としては要らぬセミコロンを打たない派なので、 セミコロンがない次の行がどんどんずれてく java-mode はボツ。
で、javascript-mode.el を頂いて来たが、インデントがおかしい。 行の途中に漢字があるとそこでカラムカウントがずれて、 カーソルがあらぬところ(次の行)に行っちゃう。 emacs23で (corrent-column) が漢字文字列以降で使えないせいか。 js2.el ってのはいいらしいが、要バイトコンパイルなんでめんどい。 うーん、最短の手間でなんとかしたい。ええい、こうだ。 元の javascript-indent-line を save-excursiion でwrapしてまえ。
(setq javascript-mode-hook
'(lambda ()
(setq javascript-indent-level 2)
(or (fboundp 'saved-javascript-indent-line)
(fset 'saved-javascript-indent-line
(symbol-function 'javascript-indent-line)))
(defun javascript-indent-line ()
"Indent the current line as JavaScript source text."
(save-excursion
(saved-javascript-indent-line))
(skip-chars-forward " \t"))))
今風にやるなら、defadvice使うべき。