annotate paste/paste.29213 @ 11182:9d5983817909

<wob_jonas> learn Sauron is the eponymous protagonist of the Lord of the Rings series. He serves primarily as narrator and the main driver of the plot. His heroic exploits include the resurrection of the Kings of Men and the conquest of the racists of Gondor. He now leads the Illuminati from his pyramid fort /\xea\x99\xa9\\ .
author HackBot
date Sat, 02 Sep 2017 18:01:47 +0000
parents 21888741373f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7970
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
1 Template Usage
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
2
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
3 Mercurial allows you to customize output of commands through templates.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
4 You can either pass in a template from the command line, via the
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
5 --template option, or select an existing template-style (--style).
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
6
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
7 You can customize output for any "log-like" command: log, outgoing,
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
8 incoming, tip, parents, heads and glog.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
9
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
10 Four styles are packaged with Mercurial: default (the style used when no
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
11 explicit preference is passed), compact, changelog, and xml. Usage:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
12
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
13 $ hg log -r1 --style changelog
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
14
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
15 A template is a piece of text, with markup to invoke variable expansion:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
16
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
17 $ hg log -r1 --template "{node}\n"
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
18 b56ce7b07c52de7d5fd79fb89701ea538af65746
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
19
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
20 Strings in curly braces are called keywords. The availability of keywords
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
21 depends on the exact context of the templater. These keywords are usually
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
22 available for templating a log-like command:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
23
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
24 author String. The unmodified author of the changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
25 bisect String. The changeset bisection status.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
26 bookmarks List of strings. Any bookmarks associated with the
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
27 changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
28 branch String. The name of the branch on which the changeset was
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
29 committed.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
30 branches List of strings. The name of the branch on which the
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
31 changeset was committed. Will be empty if the branch name
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
32 was default.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
33 children List of strings. The children of the changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
34 date Date information. The date when the changeset was committed.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
35 desc String. The text of the changeset description.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
36 diffstat String. Statistics of changes with the following format:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
37 "modified files: +added/-removed lines"
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
38 file_adds List of strings. Files added by this changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
39 file_copies List of strings. Files copied in this changeset with their
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
40 sources.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
41 file_copies_switch
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
42 List of strings. Like "file_copies" but displayed only if
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
43 the --copied switch is set.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
44 file_dels List of strings. Files removed by this changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
45 file_mods List of strings. Files modified by this changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
46 files List of strings. All files modified, added, or removed by
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
47 this changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
48 latesttag String. Most recent global tag in the ancestors of this
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
49 changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
50 latesttagdistance
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
51 Integer. Longest path to the latest tag.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
52 node String. The changeset identification hash, as a 40
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
53 hexadecimal digit string.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
54 phase String. The changeset phase name.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
55 phaseidx Integer. The changeset phase index.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
56 rev Integer. The repository-local changeset revision number.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
57 tags List of strings. Any tags associated with the changeset.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
58
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
59 The "date" keyword does not produce human-readable output. If you want to
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
60 use a date in your output, you can use a filter to process it. Filters are
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
61 functions which return a string based on the input variable. Be sure to
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
62 use the stringify filter first when you're applying a string-input filter
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
63 to a list-like input variable. You can also use a chain of filters to get
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
64 the desired output:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
65
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
66 $ hg tip --template "{date|isodate}\n"
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
67 2008-08-21 18:22 +0000
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
68
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
69 List of filters:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
70
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
71 addbreaks Any text. Add an XHTML "<br />" tag before the end of every
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
72 line except the last.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
73 age Date. Returns a human-readable date/time difference between
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
74 the given date/time and the current date/time.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
75 basename Any text. Treats the text as a path, and returns the last
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
76 component of the path after splitting by the path separator
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
77 (ignoring trailing separators). For example, "foo/bar/baz"
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
78 becomes "baz" and "foo/bar//" becomes "bar".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
79 date Date. Returns a date in a Unix date format, including the
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
80 timezone: "Mon Sep 04 15:13:13 2006 0700".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
81 domain Any text. Finds the first string that looks like an email
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
82 address, and extracts just the domain component. Example:
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
83 "User <user@example.com>" becomes "example.com".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
84 email Any text. Extracts the first string that looks like an email
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
85 address. Example: "User <user@example.com>" becomes
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
86 "user@example.com".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
87 emailuser Any text. Returns the user portion of an email address.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
88 escape Any text. Replaces the special XML/XHTML characters "&", "<"
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
89 and ">" with XML entities.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
90 fill68 Any text. Wraps the text to fit in 68 columns.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
91 fill76 Any text. Wraps the text to fit in 76 columns.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
92 firstline Any text. Returns the first line of text.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
93 hex Any text. Convert a binary Mercurial node identifier into
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
94 its long hexadecimal representation.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
95 hgdate Date. Returns the date as a pair of numbers: "1157407993
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
96 25200" (Unix timestamp, timezone offset).
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
97 isodate Date. Returns the date in ISO 8601 format: "2009-08-18 13:00
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
98 +0200".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
99 isodatesec Date. Returns the date in ISO 8601 format, including
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
100 seconds: "2009-08-18 13:00:13 +0200". See also the
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
101 rfc3339date filter.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
102 localdate Date. Converts a date to local date.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
103 nonempty Any text. Returns '(none)' if the string is empty.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
104 obfuscate Any text. Returns the input text rendered as a sequence of
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
105 XML entities.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
106 person Any text. Returns the name before an email address,
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
107 interpreting it as per RFC 5322.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
108 rfc3339date Date. Returns a date using the Internet date format
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
109 specified in RFC 3339: "2009-08-18T13:00:13+02:00".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
110 rfc822date Date. Returns a date using the same format used in email
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
111 headers: "Tue, 18 Aug 2009 13:00:13 +0200".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
112 short Changeset hash. Returns the short form of a changeset hash,
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
113 i.e. a 12 hexadecimal digit string.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
114 shortbisect Any text. Treats "text" as a bisection status, and returns a
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
115 single-character representing the status (G: good, B: bad,
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
116 S: skipped, U: untested, I: ignored). Returns single space
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
117 if "text" is not a valid bisection status.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
118 shortdate Date. Returns a date like "2006-09-18".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
119 stringify Any type. Turns the value into text by converting values
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
120 into text and concatenating them.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
121 strip Any text. Strips all leading and trailing whitespace.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
122 stripdir Treat the text as path and strip a directory level, if
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
123 possible. For example, "foo" and "foo/bar" becomes "foo".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
124 tabindent Any text. Returns the text, with every line except the first
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
125 starting with a tab character.
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
126 urlescape Any text. Escapes all "special" characters. For example,
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
127 "foo bar" becomes "foo%20bar".
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
128 user Any text. Returns a short representation of a user name or
21888741373f <fizzie> ` hg help templates | paste
HackBot
parents:
diff changeset
129 email address.