vc-print-log with mercurial.el

Mercurial(hg) を使うときに mercurial.el は欠かせない。 ただ、Emacs標準のvc.elが持っている機能がオーバーライドされて degradeしちゃう部分もある。

vc の持つ C-x v lvc-print-log が、 上書きされて hg-log になる。hg-log は ログを view-mode で起動するだけで気が利かない。うーむ。

あ、これが一番ラクダ。

(setq hg-mode-map (make-sparse-keymap))
(load "mercurial" t)

先に hg-mode-map を作ってしまうと、 C-x v が上書きされない。よって、 C-x v lvc-print-log が起動される。 このほうが d, a, g, f とかが使えて便利だ。