mercurial/templates/map-cmdline.show
author Yuya Nishihara <yuya@tcha.org>
Sat, 14 Oct 2017 17:51:01 +0900
changeset 34714 f4aeb952ab77
parent 34190 4441c1113eb2
child 34877 eb24f1d1b50b
permissions -rw-r--r--
templater: load template fragments from [templates] section in map file This allows us to %include map-cmdline.<style> file in our .hgrc files. The syntax is slightly different as hgrc doesn't support loading an external template file, but map-cmdline files don't use this feature, so the syntax can be considered identical in practice. Unnamed section is remapped for backward compatibility.

# TODO there are a few deficiencies in this file:
# * The "namespace" of the labels needs to be worked out. We currently
#   piggyback on existing values so color works.
# * Obsolescence isn't considered for node labels. See _cset_labels in
#   map-cmdline.default.

[templates]
showbookmarks = '{if(active, "*", " ")} {pad(bookmark, longestbookmarklen + 4)}{shortest(node, nodelen)}\n'

showwork = '{cset_shortnode}{namespaces % cset_namespace} {cset_shortdesc}'
showstack = '{showwork}'

cset_shortnode = '{label("log.changeset changeset.{phase}", shortest(node, nodelen))}'

# Treat branch and tags specially so we don't display "default" or "tip"
cset_namespace = '{ifeq(namespace, "branches", names_branches, ifeq(namespace, "tags", names_tags, names_others))}'
names_branches = '{ifeq(branch, "default", "", " ({label('log.{colorname}', branch)})")}'
names_tags = '{if(names % "{ifeq(name, 'tip', '', name)}", " ({label('log.{colorname}', join(names % "{ifeq(name, 'tip', '', name)}", ' '))})")}'
names_others = '{if(names, " ({label('log.{colorname}', join(names, ' '))})")}'

cset_shortdesc = '{label("log.description", desc|firstline)}'