hgext.keywordを有効化して おいたのだが、取扱注意、という話。
yatexをMercurial化するついでに自分用emacs-lispディレクトリも rsyncじゃなくてhgで同期取ろうとRCSとの共存で hg init したのだが、 hgext.keyword を入れたまま突っこんじゃうと Mercurial の ノードIdで上書きされちゃうのね。ってかそのためのモジュールだもん。
xcite.el
とかは RCSid を defconst に入れてプログラム中で使っていたのだが、
これが空っぽになっちゃった。あぶね。すくなくとも $Id$
はよく使っているので、$Id$ というキーワードは隔離した方がいいな。
とりあえず ~/.hgrc
では、このくらいにしておこう。
[keyword] * = *,v = ignore [keywordmaps] Date = {date|rfc822date} HGid = {file|basename},v {node|short} {date|utcdate} {author|user}
$HGid$ を明示的に書かない限り展開されない、って方が安全か。
hgでしか管理しないモジュールができたらそのディレクトリの
./.hg/hgrc
で
[keywordmaps] Id = {file|basename},v {node|short} {date|isodate} {author|user}
とか書いた方が良さそうだな。
お、rfc822dateよりisodateのほうが短いな。
site-packages/mercurial/templatefilters.py
見ると色々わかる。