Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 18:38:00 +0100] rev 373
Split line continuation in 2 steps (style)
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 18:36:23 +0100] rev 372
Add empty_ok argument to kwrepo.commit
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 18:33:55 +0100] rev 371
Allow keyword expansion on clone
If [keyword] filename patterns are specified in a global hgrc
keywords will be expanded in clone.
This behaviour is more consistent but also more dangerous.
Specifying global, and thus more complicted, [keyword] patterns
might slow things down as well.
Mention this in help?
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 17:23:24 +0100] rev 370
(0.9.2compat) expand keywords in raw web output, and other changes from default branch
Comment out import related tests, as not always available.
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 16:22:40 +0100] rev 369
Remove obsolete test message
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 16:13:15 +0100] rev 368
Fix web output: expand to requested rev; kwcat: wrap cat, avoid filelog subclass
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 12:22:48 +0100] rev 367
Expand keywords in hgweb rawfile output
Christian Ebert <blacktrash@gmx.net> [Thu, 31 Jan 2008 01:06:49 +0100] rev 366
(0.9.2compat) use templatefilters module if available; bail out in mq dir
Revert to always using full definition of repo._link.
Christian Ebert <blacktrash@gmx.net> [Tue, 05 Feb 2008 08:04:50 +0100] rev 365
Disable expansion in mq directory; add test for qcommit
There might still be problems with qsave copied patch queues.
Christian Ebert <blacktrash@gmx.net> [Fri, 01 Feb 2008 00:48:37 +0100] rev 364
Adapt to templatefilters module splitoff
Matt Mackall <mpm@selenic.com> [Thu, 31 Jan 2008 14:44:19 -0600] rev 363
templates: move filters to their own module
This eliminates just about all Mercurial dependencies in templater.py
[ original upstream description ]
Jesse Glick <jesse.glick@sun.com> [Tue, 08 Jan 2008 22:40:51 -0500] rev 362
Ensure that absolutized paths from hgrc do not contain ../ segments.
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Fri, 01 Feb 2008 08:16:56 +0100] rev 361
stable branch: reflects latest Mercurial upstream state
Christian Ebert <blacktrash@gmx.net> [Thu, 31 Jan 2008 14:34:45 +0100] rev 360
(0.9.2compat) clean import handling when patchfile class available
Change help and test output accordingly.
Christian Ebert <blacktrash@gmx.net> [Wed, 30 Jan 2008 10:38:10 +0100] rev 359
(0.9.2compat) restructure based on wwread/wwrite methods as in default branch
Christian Ebert <blacktrash@gmx.net> [Wed, 30 Jan 2008 01:24:10 +0100] rev 358
Handle LookupError eg. for hg convert
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2008 21:15:57 +0100] rev 357
Add empty_ok argument to commit
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2008 17:33:00 +0100] rev 356
Update test using kwcat
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2008 17:32:25 +0100] rev 355
Implement kwcat command
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2008 17:32:15 +0100] rev 354
Make kwtemplater kwrepo attribute instead of global variable
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2008 17:32:10 +0100] rev 353
Refactor overriding wread, wwrite, wwritedata repo methods
- restrict consistently to reading/writing in working dir
- no cludgy sys.argv parsing anymore
Eases collaboration with other extensions, or external tools
like TortoiseHg.
Changes in behaviour:
- hg cat does not expand; will be implemented with new kwcat command
- no expansion in web /display/, only in downloaded archives
Thanks to Jesse Glick for inciting this approach.
Christian Ebert <blacktrash@gmx.net> [Fri, 25 Jan 2008 21:42:52 +0000] rev 352
(0.9.2compat) fix external hook as in default branch
Christian Ebert <blacktrash@gmx.net> [Fri, 25 Jan 2008 17:31:55 +0000] rev 351
Return silently when external command triggers error
- make hook accept hg command as string or as function object.
- intercept dispatch.ParseError as well.
Kudos to Steve Borho (TortoiseHg) for testing and debugging.
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 12:33:24 +0100] rev 350
(0.9.2compat) implement external call handle and hook
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 12:31:41 +0100] rev 349
Implement handle and hook for external callers
Allows external callers that do not use the command line to
pass current hg command to keyword extension.
This implementation might change in the future, if wrapping
of patch.diff is possible to the effect of avoiding external
handles.
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 11:38:22 +0100] rev 348
Get changes from default branch; update test output
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 11:36:37 +0100] rev 347
Detect restricted commands thru variable
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 09:53:40 +0100] rev 346
Improve use of dictionaries
- iteritems() where we do iter over dicts' items
- store commithooks in dictionary
(safe, as hook.hook() sorts before execution)
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2008 10:02:57 +0100] rev 345
bugfix: avoid expansion with qfold
Christian Ebert <blacktrash@gmx.net> [Sun, 20 Jan 2008 14:31:00 +0100] rev 344
Prefer item in dict over dict.has_key(item)
Message-ID: <4792DB2A.7050909@serpentine.com>
Christian Ebert <blacktrash@gmx.net> [Sat, 19 Jan 2008 18:26:17 +0100] rev 343
(0.9.2compat) get mq support, improved diff output from default branch
Reimplement _parse wrapper obtain diff options.
Christian Ebert <blacktrash@gmx.net> [Wed, 16 Jan 2008 11:22:16 +0100] rev 342
Add a very simple mq test
Christian Ebert <blacktrash@gmx.net> [Wed, 16 Jan 2008 11:22:16 +0100] rev 341
Avoid extra diffs when not comparing against working dir
When diffing against specified revisions expanded keywords
only get in the way.
Update test output.
Christian Ebert <blacktrash@gmx.net> [Tue, 15 Jan 2008 13:19:23 +0100] rev 340
Implement support for mq; handle (q)record more gracefully
mq:
Ensure that expanded keywords do not make it into patches.
- disable expansion when reading filelog
- shrink expanded keywords when reading from working dir (wread)
(q)record:
Avoid additional hunks due to expanded keywords. However this is
still a compromise, as keyword expansions are not updated in
working directory because record should not overwrite files.
Mention above shortcomings and "hg kwexpand" workaround in help
and update test output.
system argument parsing:
Command detection might be slightly more expensive with
dispatch._parse, but we will need this for improving "hg diff"
output.
Christian Ebert <blacktrash@gmx.net> [Mon, 14 Jan 2008 15:21:57 +0100] rev 339
(0.9.2compat) get changes from default branch
Christian Ebert <blacktrash@gmx.net> [Mon, 14 Jan 2008 15:12:20 +0100] rev 338
Merge Solaris test compatibility
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 14 Jan 2008 09:00:23 +0100] rev 337
Solaris compatibility fixes for test-keyword:
- do not use /bin/false (yields 255 instead of 1)
- do not use "cd -", simply use "cd .." instead.
Christian Ebert <blacktrash@gmx.net> [Fri, 11 Jan 2008 23:36:56 +0100] rev 336
Test that expansion is done filewise
Checks issue fixed in c5bba07dadd5.
Christian Ebert <blacktrash@gmx.net> [Fri, 11 Jan 2008 14:41:22 +0100] rev 335
Fix some doc strings; update copyright
Christian Ebert <blacktrash@gmx.net> [Wed, 09 Jan 2008 18:17:23 +0100] rev 334
(0.9.2compat) test: avoid "sed -i" in commented rejecttest
Will Maier <willmaier@ml1.net> [Wed, 09 Jan 2008 10:00:18 -0600] rev 333
Don't use the -i option with sed
This patch fixes test-keyword on platforms without GNU sed (like
OpenBSD).
Christian Ebert <blacktrash@gmx.net> [Wed, 09 Jan 2008 12:52:59 +0100] rev 332
(0.9.2compat) Get bugfix from default branch
Christian Ebert <blacktrash@gmx.net> [Wed, 09 Jan 2008 11:07:42 +0100] rev 331
Suppress keyword expansion for log commands
With previous bugfix "hg log -p" expanded keywords.
Turn off again by making log, tip nokwcommands.
Christian Ebert <blacktrash@gmx.net> [Wed, 09 Jan 2008 05:13:22 +0100] rev 330
fix: only set general changenode for kwtemplater when committing
kwexpand must always obtain changenode from filectx,
otherwise current changenode is expanded in every file.
Also fixes "hg cat <more than 1 file>".
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Jan 2008 12:02:23 +0100] rev 329
(0.9.2compat) obtain simplifications from default branch
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Jan 2008 11:48:51 +0100] rev 328
Just add unknown kwfiles candidates when untracked option is given
Christian Ebert <blacktrash@gmx.net> [Mon, 07 Jan 2008 11:27:41 +0100] rev 327
Simplify temporary ui.quiet setting in kwdemo
Christian Ebert <blacktrash@gmx.net> [Sat, 05 Jan 2008 16:47:14 +0100] rev 326
(0.9.2compat) test: redirect "cd -" output to /dev/null
Christian Ebert <blacktrash@gmx.net> [Sat, 05 Jan 2008 12:33:21 +0100] rev 325
test: redirect all "cd -" output to /dev/null
Christian Ebert <blacktrash@gmx.net> [Fri, 04 Jan 2008 17:27:37 +0100] rev 324
(0.9.2compat) add rejecttest as comment, as it is not working in this branch
Christian Ebert <blacktrash@gmx.net> [Fri, 04 Jan 2008 17:23:13 +0100] rev 323
test: rename (misleading) conflicttest to rejecttest
Christian Ebert <blacktrash@gmx.net> [Fri, 04 Jan 2008 17:16:13 +0100] rev 322
(0.9.2compat) get backwards compatible changes from default branch
Clean commit hook handling and avoidance of import rejects
are missing from backwards compatible branch.
Christian Ebert <blacktrash@gmx.net> [Fri, 04 Jan 2008 16:56:26 +0100] rev 321
README: fix help instruction
Spotted by Thomas Arendsen Hein.
Christian Ebert <blacktrash@gmx.net> [Wed, 02 Jan 2008 16:42:17 +0100] rev 320
Compress kwfstats intitialization
Christian Ebert <blacktrash@gmx.net> [Wed, 02 Jan 2008 16:31:49 +0100] rev 319
Always opts.get to be on safe side
Christian Ebert <blacktrash@gmx.net> [Tue, 01 Jan 2008 19:16:13 +0100] rev 318
Make command line check even more private
Christian Ebert <blacktrash@gmx.net> [Sat, 29 Dec 2007 18:45:47 +0100] rev 317
Turn patch.patchfile.__init__ monkeypatch into a wrapper
While the nastiness is even more blatant, this makes us independent
from changes in patchfile.__init__.
After all we only need to potentially change patchfile.lines.
Christian Ebert <blacktrash@gmx.net> [Fri, 21 Dec 2007 00:42:09 +0100] rev 316
Test potential import conflict
Christian Ebert <blacktrash@gmx.net> [Fri, 21 Dec 2007 00:40:25 +0100] rev 315
Avoid import and merge conflicts caused by expanded keywords
While monkeypatching patch.patchfile.__init__ is brute force and dirty,
it seems the least intrusive method.
Christian Ebert <blacktrash@gmx.net> [Thu, 20 Dec 2007 22:15:43 +0100] rev 314
Do not pass global _kwtemplater around in arguments
Christian Ebert <blacktrash@gmx.net> [Thu, 20 Dec 2007 17:08:43 +0100] rev 313
Remove spurious echo from test
Christian Ebert <blacktrash@gmx.net> [Mon, 17 Dec 2007 16:43:26 +0100] rev 312
(0.9.2compat) use updated fancyopts from 88803a69b24a
Christian Ebert <blacktrash@gmx.net> [Tue, 04 Dec 2007 09:56:12 +0100] rev 311
(0.9.2compat) implement context based changes from default branch
NOTE:
Interrupted commit is broken with versions < 0.9.5!
Leave tests outcommented.
Christian Ebert <blacktrash@gmx.net> [Sun, 02 Dec 2007 08:32:19 +0100] rev 310
Reintroduce _iskwfile with link method as argument
Rename kwtemplater.match to matcher analogous to util.matcher.
Christian Ebert <blacktrash@gmx.net> [Sun, 02 Dec 2007 08:15:36 +0100] rev 309
Make path format output switches more compact
Christian Ebert <blacktrash@gmx.net> [Sun, 02 Dec 2007 08:00:31 +0100] rev 308
Set kwtemplater.path at kwfilelog initialization
Christian Ebert <blacktrash@gmx.net> [Sat, 01 Dec 2007 20:31:13 +0100] rev 307
Refactor to initialize kwtemplater only once during reposetup
- when overwriting kwtemplater was initialized (and the same keyword regex
compiled) before and with every file read.
- therefore remove overwrite from kwtemplater, and make it private method.
_ matcher becomes attribute of kwtemplater.
- by making kwtemplater a global, avoid adding attribute to ui.
Christian Ebert <blacktrash@gmx.net> [Sat, 01 Dec 2007 13:15:13 +0100] rev 306
Rename kwtemplater.t to kwtemplater.ct
Christian Ebert <blacktrash@gmx.net> [Sat, 01 Dec 2007 10:32:40 +0100] rev 305
Test that commit hooks are not run on interrupted commit
Christian Ebert <blacktrash@gmx.net> [Sat, 01 Dec 2007 09:52:00 +0100] rev 304
Do not run commit hooks if there is no node
Eg. when commit is interrupted.
Christian Ebert <blacktrash@gmx.net> [Mon, 26 Nov 2007 12:52:54 +0100] rev 303
(0.9.2compat) do not bother about debug templates
Christian Ebert <blacktrash@gmx.net> [Mon, 26 Nov 2007 12:30:50 +0100] rev 302
Do not test debug templates
Christian Ebert <blacktrash@gmx.net> [Mon, 26 Nov 2007 12:29:23 +0100] rev 301
Make match object function private to kwtemplater.substitute
Christian Ebert <blacktrash@gmx.net> [Mon, 26 Nov 2007 12:24:16 +0100] rev 300
Do not bother about debug templates
Speedup of debug flag toggle dubious at best.
{files}, {file_adds} etc. templates do not make sense in file context,
but leave decision to user; that's what kwdemo is for.
Christian Ebert <blacktrash@gmx.net> [Wed, 14 Nov 2007 13:36:41 +0100] rev 299
(0.9.2compat) kwfiles print code similar to commands.status
Christian Ebert <blacktrash@gmx.net> [Wed, 14 Nov 2007 13:32:33 +0100] rev 298
kwfiles print code similar to commands.status
Christian Ebert <blacktrash@gmx.net> [Tue, 13 Nov 2007 02:06:38 +0100] rev 297
Rearrange commit hook hack
Christian Ebert <blacktrash@gmx.net> [Sun, 11 Nov 2007 11:29:50 +0100] rev 296
Commit hook handling entirely into if-condition
Christian Ebert <blacktrash@gmx.net> [Sat, 10 Nov 2007 14:33:15 +0100] rev 295
(0.9.2compat) update doc strings
Christian Ebert <blacktrash@gmx.net> [Sat, 10 Nov 2007 14:08:12 +0100] rev 294
Add commit hook test
Christian Ebert <blacktrash@gmx.net> [Sat, 10 Nov 2007 14:06:59 +0100] rev 293
Postpone commit hooks until keywords are expanded
If a commit hook acts on a file with keywords, it now does so
on the file with keywords already expanded.
Unhook all hooks with "commit" in name during kwdemo.
Christian Ebert <blacktrash@gmx.net> [Thu, 08 Nov 2007 13:03:24 +0100] rev 292
Avoid dispatch import, revert to simple argument parser
Christian Ebert <blacktrash@gmx.net> [Thu, 08 Nov 2007 12:59:43 +0100] rev 291
(0.9.2compat) avoid dispatch import, revert to simple argument parser
Make nokwcommands a tuple as long as it's private.
No need to import fancyopts, as we use own w/o bug.
Clean overriding of findcmd.
We only need simple argument parsing for command.
No expensive dispatch import, also avoids potential clashes with invasive
RuleDispatch (setuptools).
Christian Ebert <blacktrash@gmx.net> [Wed, 07 Nov 2007 13:40:58 +0100] rev 290
Make keyword against current Mercurial available as standalone extension
Christian Ebert <blacktrash@gmx.net> [Wed, 07 Nov 2007 13:33:19 +0100] rev 289
Branch off backwards compatible version
The default branch will contain the version without
the overhead for backwards compatibility.
This will make a standalone extension available which works
with current Mercurial.
Christian Ebert <blacktrash@gmx.net> [Tue, 06 Nov 2007 13:20:39 +0100] rev 288
Avoid name conflict with dispatch package(s)
Thanks to Marcin Kasperski for spotting and analysing this.
Message-ID: <87wsswvhbk.fsf@cauchy.softax.local> ff.
Christian Ebert <blacktrash@gmx.net> [Mon, 29 Oct 2007 10:55:41 +0100] rev 287
Add convert to nokwcommands (fix issue802)
Is there a more general way to decide on allowed commands?
Unfortunately we don't know what commands are added by extensions.
Christian Ebert <blacktrash@gmx.net> [Wed, 24 Oct 2007 09:43:59 +0200] rev 286
Check if there candidates before _overwrite
Potentially saves calculation of node.
Christian Ebert <blacktrash@gmx.net> [Wed, 24 Oct 2007 00:38:27 +0200] rev 285
Arrange commands and cmdtable in alphabetical order
Christian Ebert <blacktrash@gmx.net> [Tue, 23 Oct 2007 09:10:11 +0200] rev 284
Tell user that kwexpand/kwshrink do not run if given files contain changes
Christian Ebert <blacktrash@gmx.net> [Tue, 23 Oct 2007 08:58:19 +0200] rev 283
Respect Mercurial conventions in kwdemo help
Christian Ebert <blacktrash@gmx.net> [Fri, 19 Oct 2007 19:37:41 +0200] rev 282
Obtaining cwd redundant in pathto wrapper
Christian Ebert <blacktrash@gmx.net> [Fri, 19 Oct 2007 16:28:56 +0200] rev 281
Detailed test of kwexpand/kwshrink w/ file arguments
Christian Ebert <blacktrash@gmx.net> [Fri, 19 Oct 2007 16:09:56 +0200] rev 280
Revert to using status for kw-commands
cmdutil.bail_if_changed has to call status stat'ing working dir.
This renders the whole walk experiment mute, duh.
On the upside kwexpand/kwshrink can be applied to selected clean files,
while there are local changes in other files.
bail_if_changed compatibility wrapper not needed anymore.
Christian Ebert <blacktrash@gmx.net> [Fri, 19 Oct 2007 12:36:32 +0200] rev 279
Test if warning about non-existing files is triggered
Christian Ebert <blacktrash@gmx.net> [Thu, 18 Oct 2007 09:38:05 +0200] rev 278
cwd optional argument of _pathto to simplify _kwfwrite
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 23:53:59 +0200] rev 277
Use pathto to display nonexisting files
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 17:52:25 +0200] rev 276
kwexpand/kwshrink: warn about nonexisting files
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 17:51:36 +0200] rev 275
_overwrite method for kwrepo.commit, kwexpand, kwshrink
File selection (kwexpand/kwshrink) in _kwfwrite method.
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 17:06:08 +0200] rev 274
Sort files before overwriting
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 17:03:59 +0200] rev 273
_iskwfile checking method for kwrepo.commit, kwexpand/kwshrink
Christian Ebert <blacktrash@gmx.net> [Wed, 17 Oct 2007 13:22:48 +0200] rev 272
Walk manifest in kwexpand/kwshrink
Christian Ebert <blacktrash@gmx.net> [Mon, 15 Oct 2007 23:42:50 +0200] rev 271
For overwriting commands use node and manifest to speed up walk
Christian Ebert <blacktrash@gmx.net> [Tue, 16 Oct 2007 07:43:55 +0200] rev 270
kwfiles: change option "ignored" to "ignore", add option "untracked"
"ignore" like corresponding config value.
"untracked" allows quick check if a new file that has not been added yet
would be target for expansion.
Update help accordingly.
Christian Ebert <blacktrash@gmx.net> [Mon, 15 Oct 2007 11:01:00 +0200] rev 269
File collections specific to kwexpand/kwshrink vs kwfiles commands
Christian Ebert <blacktrash@gmx.net> [Mon, 15 Oct 2007 10:25:20 +0200] rev 268
Flag kwfiles if verbose; shorten bailout code
Christian Ebert <blacktrash@gmx.net> [Sat, 13 Oct 2007 22:15:20 +0200] rev 267
Tighten condition for kwshrink/kwexpand test
Christian Ebert <blacktrash@gmx.net> [Sat, 13 Oct 2007 15:25:06 +0200] rev 266
Underscore prefixes only for names at top level, or compatibility wrappers
Christian Ebert <blacktrash@gmx.net> [Sat, 13 Oct 2007 15:01:55 +0200] rev 265
Count keywords in a customized kwfilelog read method
Christian Ebert <blacktrash@gmx.net> [Thu, 11 Oct 2007 13:10:33 +0200] rev 264
walkopts for kwexpand, kwshrink, kwfiles commands
kwfiles optionally shows ignored files or all flagged
Use pathto method to print kw filenames if possible.
Commands abort with meaningful error
_weedcandidates renamed to _weedfiles, and only for commands.
For kwrepo.commit we could get modified + added from
kwrepo.status(match=ui.kwfmatcher) -- but this would mean
to read manifest before commit, and again after for expansion.
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 23:11:40 +0200] rev 263
kwfiles notifies if there are no files configured for expansion
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 19:55:30 +0200] rev 262
Bail out earlier in overwrite commands if repo has changes
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 20:13:18 +0200] rev 261
Make kwfmatcher an ui attribute
Thus kw commands do not weed candidates twice.
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 16:56:14 +0200] rev 260
Unlowercase command help
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 16:19:04 +0200] rev 259
Test kwfiles working context
Christian Ebert <blacktrash@gmx.net> [Sat, 06 Oct 2007 16:07:03 +0200] rev 258
Determine kwfiles on workingctx
Added but not yet committed files should be shown.
Removed but not yet committed files should not be shown.
Christian Ebert <blacktrash@gmx.net> [Fri, 05 Oct 2007 15:53:28 +0200] rev 257
test: use grep instead of grep -F
Christian Ebert <blacktrash@gmx.net> [Fri, 05 Oct 2007 15:49:32 +0200] rev 256
Test if debug flag influences expansion
Christian Ebert <blacktrash@gmx.net> [Fri, 05 Oct 2007 14:52:39 +0200] rev 255
Turn off debug while expanding
We don't need templates like file_add etc. as keywords a file specific.
Turning off debug avoids accidental expansion of such templates.
As a side effect it speeds up expansion when running hg --debug.
Functionality of _ctxnode now in new _substitute function.
Christian Ebert <blacktrash@gmx.net> [Thu, 04 Oct 2007 16:12:48 +0200] rev 254
Map re.escape