keyword: the CVS keyword is $RCSfile$, not $RCSFile$
http://cvsbook.red-bean.com/cvsbook.html#List%20Of%20Keywords
Fix default keyword map accordingly.
Keep $RCSFile$ for Mercurial backwards compatibility.
extdiff: prevent exception on double-translation
The docstring is translated twice: once when used as a format string,
and once on display. The second translation fails when the first
translation introduces non-ASCII characters in the string.
The problem is that the gettext module calls unicode(message) on the
string, i.e., it decodes it to a Unicode string using the ASCII
encoding (the default encoding). By translating it into a Unicode
string here, the unicode() call becomes a noop.
commit: if relevant, tell user their commit message was saved.
(
issue1635)
Specifically, if:
1) the user edited the message (it didn't come straight from -m) and
2) the commit was aborted by an exception
then the saved commit message in .hg/last-message.txt could come in handy, so
mention it with a ui.write().
This doesn't help users who manually rollback to amend a changeset:
the fact that the message was saved to .hg/last-message.txt is
invisible in that case.
commit: save commit message so it's not destroyed by rollback.
(
issue1635)
Rationale: if a pretxncommit hook rejects this commit, the transaction
is rolled back and the user's commit message is irrevocably lost.
So save a copy in .hg/last-message.txt, just in case. Also handy if
the user deliberately rolls back a commit in order to amend it.