diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -399,9 +399,9 @@ def show_changeset(ui, repo, opts): if tmpl or mapfile: if mapfile: - if not os.path.isfile(mapfile): - mapname = templater.templatepath('map-cmdline.' + mapfile) - if not mapname: mapname = templater.templatepath(mapfile) + if not os.path.split(mapfile)[0]: + mapname = (templater.templatepath('map-cmdline.' + mapfile) + or templater.templatepath(mapfile)) if mapname: mapfile = mapname try: t = templater.changeset_templater(ui, repo, mapfile) diff --git a/tests/test-command-template b/tests/test-command-template --- a/tests/test-command-template +++ b/tests/test-command-template @@ -65,6 +65,10 @@ echo '[ui]' > .hg/hgrc echo 'style = t' >> .hg/hgrc hg log +echo '# issue338' +hg log --style=changelog > changelog +cat changelog + echo "# keys work" for key in author branches date desc file_adds file_dels files \ manifest node parents rev tags; do diff --git a/tests/test-command-template.out b/tests/test-command-template.out --- a/tests/test-command-template.out +++ b/tests/test-command-template.out @@ -76,6 +76,33 @@ 3 2 1 0 +# issue338 +1970-01-16 person + + * c: + no user, no domain + [10e46f2dcbf4] [tip] + +1970-01-14 other + + * c: + no person + [97054abb4ab8] + +1970-01-13 A. N. Other + + * b: + other 1 other 2 + + other 3 + [b608e9d1a3f0] + +1970-01-12 User Name + + * a: + line 1 line 2 + [1e4e1b8f71e0] + # keys work author: person author: other@place