annotate mercurial/help.py @ 9381:642febca0e5d

Merge with crew-stable
author Martin Geisler <mg@lazybytes.net>
date Sat, 22 Aug 2009 10:52:53 +0200
parents bb7e2cdd4854
children f04d17912441
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
1 # help.py - help data for mercurial
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
2 #
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
3 # Copyright 2006 Matt Mackall <mpm@selenic.com>
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
4 #
8225
46293a0c7e9f updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents: 8159
diff changeset
5 # This software may be used and distributed according to the terms of the
46293a0c7e9f updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents: 8159
diff changeset
6 # GNU General Public License version 2, incorporated herein by reference.
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
7
8871
20a25042fadc extensions: move extensions listing functions from mercurial.help
Cédric Duval <cedricduval@free.fr>
parents: 8865
diff changeset
8 from i18n import _
8938
9b8c9266c59d commands: wrap short descriptions in 'hg help'
Martin Geisler <mg@lazybytes.net>
parents: 8933
diff changeset
9 import extensions, util
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
10
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
11
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
12 def moduledoc(file):
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
13 '''return the top-level python documentation for the given file
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
14
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
15 Loosely inspired by pydoc.source_synopsis(), but rewritten to handle \'''
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
16 as well as """ and to return the whole text instead of just the synopsis'''
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
17 result = []
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
18
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
19 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
20 while line[:1] == '#' or not line.strip():
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
21 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
22 if not line: break
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
23
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
24 start = line[:3]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
25 if start == '"""' or start == "'''":
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
26 line = line[3:]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
27 while line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
28 if line.rstrip().endswith(start):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
29 line = line.split(start)[0]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
30 if line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
31 result.append(line)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
32 break
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
33 elif not line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
34 return None # unmatched delimiter
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
35 result.append(line)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
36 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
37 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
38 return None
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
39
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
40 return ''.join(result)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
41
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
42 def listexts(header, exts, maxlength):
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
43 '''return a text listing of the given extensions'''
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
44 if not exts:
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
45 return ''
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
46 result = '\n%s\n\n' % header
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
47 for name, desc in sorted(exts.iteritems()):
9295
b0f447a259ab help: use field lists for lists of extensions
Martin Geisler <mg@lazybytes.net>
parents: 9294
diff changeset
48 result += ' %-*s %s\n' % (maxlength + 2, ':%s:' % name, desc)
8864
cad6370a15cb help: refactor extensions listing, and show enabled ones in the dedicated topic
Cédric Duval <cedricduval@free.fr>
parents: 8863
diff changeset
49 return result
cad6370a15cb help: refactor extensions listing, and show enabled ones in the dedicated topic
Cédric Duval <cedricduval@free.fr>
parents: 8863
diff changeset
50
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
51 def extshelp():
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
52 doc = _(r'''
8880
a3a936a2fe46 help: improve grammar/wording of 'extensions' topic
Greg Ward <greg-hg@gerg.ca>
parents: 8879
diff changeset
53 Mercurial has the ability to add new features through the use of
a3a936a2fe46 help: improve grammar/wording of 'extensions' topic
Greg Ward <greg-hg@gerg.ca>
parents: 8879
diff changeset
54 extensions. Extensions may add new commands, add options to
a3a936a2fe46 help: improve grammar/wording of 'extensions' topic
Greg Ward <greg-hg@gerg.ca>
parents: 8879
diff changeset
55 existing commands, change the default behavior of commands, or
a3a936a2fe46 help: improve grammar/wording of 'extensions' topic
Greg Ward <greg-hg@gerg.ca>
parents: 8879
diff changeset
56 implement hooks.
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
57
8880
a3a936a2fe46 help: improve grammar/wording of 'extensions' topic
Greg Ward <greg-hg@gerg.ca>
parents: 8879
diff changeset
58 Extensions are not loaded by default for a variety of reasons:
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
59 they can increase startup overhead; they may be meant for advanced
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
60 usage only; they may provide potentially dangerous abilities (such
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
61 as letting you destroy or modify history); they might not be ready
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
62 for prime time; or they may alter some usual behaviors of stock
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
63 Mercurial. It is thus up to the user to activate extensions as
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
64 needed.
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
65
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
66 To enable the "foo" extension, either shipped with Mercurial or in
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
67 the Python search path, create an entry for it in your hgrc, like
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
68 this::
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
69
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
70 [extensions]
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
71 foo =
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
72
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
73 You may also specify the full path to an extension::
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
74
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
75 [extensions]
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
76 myfeature = ~/.hgext/myfeature.py
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
77
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
78 To explicitly disable an extension enabled in an hgrc of broader
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
79 scope, prepend its path with !::
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
80
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
81 [extensions]
8895
ef59f4634a15 help: fixing non-matching example texts
Cédric Duval <cedricduval@free.fr>
parents: 8889
diff changeset
82 # disabling extension bar residing in /path/to/extension/bar.py
8865
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
83 hgext.bar = !/path/to/extension/bar.py
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
84 # ditto, but no path was supplied for extension baz
37d8a5ddd499 help: expand the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8864
diff changeset
85 hgext.baz = !
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
86 ''')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
87
8871
20a25042fadc extensions: move extensions listing functions from mercurial.help
Cédric Duval <cedricduval@free.fr>
parents: 8865
diff changeset
88 exts, maxlength = extensions.enabled()
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
89 doc += listexts(_('enabled extensions:'), exts, maxlength)
8864
cad6370a15cb help: refactor extensions listing, and show enabled ones in the dedicated topic
Cédric Duval <cedricduval@free.fr>
parents: 8863
diff changeset
90
8871
20a25042fadc extensions: move extensions listing functions from mercurial.help
Cédric Duval <cedricduval@free.fr>
parents: 8865
diff changeset
91 exts, maxlength = extensions.disabled()
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
92 doc += listexts(_('disabled extensions:'), exts, maxlength)
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
93
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
94 return doc
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
95
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
96 helptable = (
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
97 (["dates"], _("Date Formats"),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
98 _(r'''
7764
14a42208d8af help: better formatting in "Date Formats" section
timeless <timeless@gmail.com>
parents: 7693
diff changeset
99 Some commands allow the user to specify a date, e.g.:
6163
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
100
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
101 - backout, commit, import, tag: Specify the commit date.
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
102 - log, revert, update: Select revision(s) by date.
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
103
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
104 Many date formats are valid. Here are some examples::
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
105
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
106 "Wed Dec 6 13:18:29 2006" (local timezone assumed)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
107 "Dec 6 13:18 -0600" (year assumed, time offset provided)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
108 "Dec 6 13:18 UTC" (UTC and GMT are aliases for +0000)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
109 "Dec 6" (midnight)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
110 "13:18" (today assumed)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
111 "3:39" (3:39AM assumed)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
112 "3:39pm" (15:39)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
113 "2006-12-06 13:18:29" (ISO 8601 format)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
114 "2006-12-6 13:18"
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
115 "2006-12-6"
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
116 "12-6"
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
117 "12/6"
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
118 "12/6/6" (Dec 6 2006)
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
119
9290
26fb5b0a4424 help: mark literal blocks
Martin Geisler <mg@lazybytes.net>
parents: 9277
diff changeset
120 Lastly, there is Mercurial's internal format::
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
121
9290
26fb5b0a4424 help: mark literal blocks
Martin Geisler <mg@lazybytes.net>
parents: 9277
diff changeset
122 "1165432709 0" (Wed Dec 6 13:18:29 2006 UTC)
3795
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
123
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
124 This is the internal representation format for dates. unixtime is
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
125 the number of seconds since the epoch (1970-01-01 00:00 UTC).
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
126 offset is the offset of the local timezone, in seconds west of UTC
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
127 (negative if the timezone is east of UTC).
6163
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
128
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
129 The log command also accepts date ranges::
6163
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
130
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
131 "<{datetime}" - at or before a given date/time
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
132 ">{datetime}" - on or after a given date/time
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
133 "{datetime} to {datetime}" - a date range, inclusive
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
134 "-{days}" - within a given number of days of today
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
135 ''')),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
136
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
137 (["patterns"], _("File Name Patterns"),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
138 _(r'''
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
139 Mercurial accepts several notations for identifying one or more
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
140 files at a time.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
141
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
142 By default, Mercurial treats filenames as shell-style extended
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
143 glob patterns.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
144
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
145 Alternate pattern notations must be specified explicitly.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
146
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
147 To use a plain path name without any pattern matching, start it
7808
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
148 with "path:". These path names must completely match starting at
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
149 the current repository root.
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
150
7808
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
151 To use an extended glob, start a name with "glob:". Globs are
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
152 rooted at the current directory; a glob such as "``*.c``" will
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
153 only match files in the current directory ending with ".c".
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
154
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
155 The supported glob syntax extensions are "``**``" to match any
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
156 string across path separators and "{a,b}" to mean "a or b".
3799
eb66d76c7746 move patterns topics
Matt Mackall <mpm@selenic.com>
parents: 3798
diff changeset
157
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
158 To use a Perl/Python regular expression, start a name with "re:".
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
159 Regexp pattern matching is anchored at the root of the repository.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
160
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
161 Plain examples::
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
162
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
163 path:foo/bar a name bar in a directory named foo in the root
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
164 of the repository
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
165 path:path:name a file or directory named "path:name"
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
166
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
167 Glob examples::
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
168
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
169 glob:*.c any name ending in ".c" in the current directory
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
170 *.c any name ending in ".c" in the current directory
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
171 **.c any name ending in ".c" in any subdirectory of the
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
172 current directory including itself.
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
173 foo/*.c any name ending in ".c" in the directory foo
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
174 foo/**.c any name ending in ".c" in any subdirectory of foo
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
175 including itself.
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
176
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
177 Regexp examples::
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
178
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
179 re:.*\.c$ any name ending in ".c", anywhere in the repository
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
180
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
181 ''')),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
182
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
183 (['environment', 'env'], _('Environment Variables'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
184 _(r'''
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
185 HG
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
186 Path to the 'hg' executable, automatically passed when running
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
187 hooks, extensions or external tools. If unset or empty, this is
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
188 the hg executable's name if it's frozen, or an executable named
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
189 'hg' (with %PATHEXT% [defaulting to COM/EXE/BAT/CMD] extensions on
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
190 Windows) is searched.
4686
849f011dbf79 Remember path to 'hg' executable and pass to external tools and hooks as $HG.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3913
diff changeset
191
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
192 HGEDITOR
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
193 This is the name of the editor to run when committing. See EDITOR.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
194
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
195 (deprecated, use .hgrc)
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
196
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
197 HGENCODING
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
198 This overrides the default locale setting detected by Mercurial.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
199 This setting is used to convert data including usernames,
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
200 changeset descriptions, tag names, and branches. This setting can
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
201 be overridden with the --encoding command-line option.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
202
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
203 HGENCODINGMODE
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
204 This sets Mercurial's behavior for handling unknown characters
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
205 while transcoding user input. The default is "strict", which
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
206 causes Mercurial to abort if it can't map a character. Other
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
207 settings include "replace", which replaces unknown characters, and
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
208 "ignore", which drops them. This setting can be overridden with
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
209 the --encodingmode command-line option.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
210
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
211 HGMERGE
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
212 An executable to use for resolving merge conflicts. The program
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
213 will be executed with three arguments: local file, remote file,
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
214 ancestor file.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
215
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
216 (deprecated, use .hgrc)
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
217
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
218 HGRCPATH
7808
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
219 A list of files or directories to search for hgrc files. Item
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
220 separator is ":" on Unix, ";" on Windows. If HGRCPATH is not set,
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
221 platform default search path is used. If empty, only the .hg/hgrc
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
222 from the current repository is read.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
223
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
224 For each element in HGRCPATH:
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
225
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
226 - if it's a directory, all files ending with .rc are added
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
227 - otherwise, the file itself will be added
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
228
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
229 HGUSER
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
230 This is the string used as the author of a commit. If not set,
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
231 available values will be considered in this order:
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
232
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
233 - HGUSER (deprecated)
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
234 - hgrc files from the HGRCPATH
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
235 - EMAIL
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
236 - interactive prompt
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
237 - LOGNAME (with '@hostname' appended)
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
238
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
239 (deprecated, use .hgrc)
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
240
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
241 EMAIL
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
242 May be used as the author of a commit; see HGUSER.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
243
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
244 LOGNAME
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
245 May be used as the author of a commit; see HGUSER.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
246
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
247 VISUAL
5660
3c80ecdc1bcd Use VISUAL in addition to EDITOR when choosing the editor to use.
Osku Salerma <osku@iki.fi>
parents: 5062
diff changeset
248 This is the name of the editor to use when committing. See EDITOR.
3c80ecdc1bcd Use VISUAL in addition to EDITOR when choosing the editor to use.
Osku Salerma <osku@iki.fi>
parents: 5062
diff changeset
249
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
250 EDITOR
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
251 Sometimes Mercurial needs to open a text file in an editor for a
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
252 user to modify, for example when writing commit messages. The
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
253 editor it uses is determined by looking at the environment
6009
f077815932ce filemerge: remove the hgmerge script
Matt Mackall <mpm@selenic.com>
parents: 5660
diff changeset
254 variables HGEDITOR, VISUAL and EDITOR, in that order. The first
f077815932ce filemerge: remove the hgmerge script
Matt Mackall <mpm@selenic.com>
parents: 5660
diff changeset
255 non-empty one is chosen. If all of them are empty, the editor
5660
3c80ecdc1bcd Use VISUAL in addition to EDITOR when choosing the editor to use.
Osku Salerma <osku@iki.fi>
parents: 5062
diff changeset
256 defaults to 'vi'.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
257
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
258 PYTHONPATH
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
259 This is used by Python to find imported modules and may need to be
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
260 set appropriately if this Mercurial is not installed system-wide.
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
261 ''')),
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
262
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
263 (['revs', 'revisions'], _('Specifying Single Revisions'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
264 _(r'''
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
265 Mercurial supports several ways to specify individual revisions.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
266
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
267 A plain integer is treated as a revision number. Negative integers
9302
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
268 are treated as sequential offsets from the tip, with -1 denoting
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
269 the tip, -2 denoting the revision prior to the tip, and so forth.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
270
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
271 A 40-digit hexadecimal string is treated as a unique revision
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
272 identifier.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
273
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
274 A hexadecimal string less than 40 characters long is treated as a
9302
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
275 unique revision identifier and is referred to as a short-form
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
276 identifier. A short-form identifier is only valid if it is the
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
277 prefix of exactly one full-length identifier.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
278
9302
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
279 Any other string is treated as a tag or branch name. A tag name is
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
280 a symbolic name associated with a revision identifier. A branch
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
281 name denotes the tipmost revision of that branch. Tag and branch
73bec717b825 help: improve "hg help revisions"
Stuart W Marks <smarks@smarks.org>
parents: 9023
diff changeset
282 names must not contain the ":" character.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
283
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
284 The reserved name "tip" is a special tag that always identifies
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
285 the most recent revision.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
286
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
287 The reserved name "null" indicates the null revision. This is the
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
288 revision of an empty repository, and the parent of revision 0.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
289
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
290 The reserved name "." indicates the working directory parent. If
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
291 no working directory is checked out, it is equivalent to null. If
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
292 an uncommitted merge is in progress, "." is the revision of the
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
293 first parent.
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
294 ''')),
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
295
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
296 (['mrevs', 'multirevs'], _('Specifying Multiple Revisions'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
297 _(r'''
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
298 When Mercurial accepts more than one revision, they may be
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
299 specified individually, or provided as a topologically continuous
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
300 range, separated by the ":" character.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
301
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
302 The syntax of range notation is [BEGIN]:[END], where BEGIN and END
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
303 are revision identifiers. Both BEGIN and END are optional. If
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
304 BEGIN is not specified, it defaults to revision number 0. If END
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
305 is not specified, it defaults to the tip. The range ":" thus means
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
306 "all revisions".
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
307
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
308 If BEGIN is greater than END, revisions are treated in reverse
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
309 order.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
310
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
311 A range acts as a closed interval. This means that a range of 3:5
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
312 gives 3, 4 and 5. Similarly, a range of 9:6 gives 9, 8, 7, and 6.
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
313 ''')),
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
314
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
315 (['diffs'], _('Diff Formats'),
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
316 _(r'''
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
317 Mercurial's default format for showing changes between two
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
318 versions of a file is compatible with the unified format of GNU
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
319 diff, which can be used by GNU patch and many other standard
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
320 tools.
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
321
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
322 While this standard format is often enough, it does not encode the
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
323 following information:
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
324
9299
fbe7172026f7 help: un-indent list in "hg help diffs"
Martin Geisler <mg@lazybytes.net>
parents: 9298
diff changeset
325 - executable status and other permission bits
fbe7172026f7 help: un-indent list in "hg help diffs"
Martin Geisler <mg@lazybytes.net>
parents: 9298
diff changeset
326 - copy or rename information
fbe7172026f7 help: un-indent list in "hg help diffs"
Martin Geisler <mg@lazybytes.net>
parents: 9298
diff changeset
327 - changes in binary files
fbe7172026f7 help: un-indent list in "hg help diffs"
Martin Geisler <mg@lazybytes.net>
parents: 9298
diff changeset
328 - creation or deletion of empty files
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
329
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
330 Mercurial also supports the extended diff format from the git VCS
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
331 which addresses these limitations. The git diff format is not
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
332 produced by default because a few widespread tools still do not
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
333 understand this format.
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
334
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
335 This means that when generating diffs from a Mercurial repository
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
336 (e.g. with "hg export"), you should be careful about things like
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
337 file copies and renames or other things mentioned above, because
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
338 when applying a standard diff to a different repository, this
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
339 extra information is lost. Mercurial's internal operations (like
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
340 push and pull) are not affected by this, because they use an
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
341 internal binary format for communicating changes.
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
342
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
343 To make Mercurial produce the git extended diff format, use the
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
344 --git option available for many commands, or set 'git = True' in
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
345 the [diff] section of your hgrc. You do not need to set this
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
346 option when importing diffs in this format or using them in the mq
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
347 extension.
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
348 ''')),
9298
8a254bd61224 help: add "templates" as an alias for "templating" help topic
Martin Geisler <mg@lazybytes.net>
parents: 9295
diff changeset
349 (['templating', 'templates'], _('Template Usage'),
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
350 _(r'''
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
351 Mercurial allows you to customize output of commands through
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
352 templates. You can either pass in a template from the command
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
353 line, via the --template option, or select an existing
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
354 template-style (--style).
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
355
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
356 You can customize output for any "log-like" command: log,
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
357 outgoing, incoming, tip, parents, heads and glog.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
358
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
359 Three styles are packaged with Mercurial: default (the style used
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
360 when no explicit preference is passed), compact and changelog.
9290
26fb5b0a4424 help: mark literal blocks
Martin Geisler <mg@lazybytes.net>
parents: 9277
diff changeset
361 Usage::
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
362
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
363 $ hg log -r1 --style changelog
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
364
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
365 A template is a piece of text, with markup to invoke variable
9290
26fb5b0a4424 help: mark literal blocks
Martin Geisler <mg@lazybytes.net>
parents: 9277
diff changeset
366 expansion::
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
367
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
368 $ hg log -r1 --template "{node}\n"
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
369 b56ce7b07c52de7d5fd79fb89701ea538af65746
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
370
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
371 Strings in curly braces are called keywords. The availability of
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
372 keywords depends on the exact context of the templater. These
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
373 keywords are usually available for templating a log-like command:
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
374
9294
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
375 :author: String. The unmodified author of the changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
376 :branches: String. The name of the branch on which the changeset
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
377 was committed. Will be empty if the branch name was
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
378 default.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
379 :date: Date information. The date when the changeset was
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
380 committed.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
381 :desc: String. The text of the changeset description.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
382 :diffstat: String. Statistics of changes with the following
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
383 format: "modified files: +added/-removed lines"
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
384 :files: List of strings. All files modified, added, or removed
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
385 by this changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
386 :file_adds: List of strings. Files added by this changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
387 :file_mods: List of strings. Files modified by this changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
388 :file_dels: List of strings. Files removed by this changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
389 :node: String. The changeset identification hash, as a
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
390 40-character hexadecimal string.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
391 :parents: List of strings. The parents of the changeset.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
392 :rev: Integer. The repository-local changeset revision
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
393 number.
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
394 :tags: List of strings. Any tags associated with the
5f4862a00697 help: format templating help topic with a field list
Martin Geisler <mg@lazybytes.net>
parents: 9290
diff changeset
395 changeset.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
396
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
397 The "date" keyword does not produce human-readable output. If you
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
398 want to use a date in your output, you can use a filter to process
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
399 it. Filters are functions which return a string based on the input
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
400 variable. You can also use a chain of filters to get the desired
9290
26fb5b0a4424 help: mark literal blocks
Martin Geisler <mg@lazybytes.net>
parents: 9277
diff changeset
401 output::
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
402
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
403 $ hg tip --template "{date|isodate}\n"
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
404 2008-08-21 18:22 +0000
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
405
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
406 List of filters:
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
407
9362
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
408 :addbreaks: Any text. Add an XHTML "<br />" tag before the end of
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
409 every line except the last.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
410 :age: Date. Returns a human-readable date/time difference
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
411 between the given date/time and the current
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
412 date/time.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
413 :basename: Any text. Treats the text as a path, and returns the
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
414 last component of the path after splitting by the
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
415 path separator (ignoring trailing separators). For
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
416 example, "foo/bar/baz" becomes "baz" and "foo/bar//"
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
417 becomes "bar".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
418 :stripdir: Treat the text as path and strip a directory level,
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
419 if possible. For example, "foo" and "foo/bar" becomes
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
420 "foo".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
421 :date: Date. Returns a date in a Unix date format, including
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
422 the timezone: "Mon Sep 04 15:13:13 2006 0700".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
423 :domain: Any text. Finds the first string that looks like an
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
424 email address, and extracts just the domain
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
425 component. Example: 'User <user@example.com>' becomes
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
426 'example.com'.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
427 :email: Any text. Extracts the first string that looks like
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
428 an email address. Example: 'User <user@example.com>'
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
429 becomes 'user@example.com'.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
430 :escape: Any text. Replaces the special XML/XHTML characters
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
431 "&", "<" and ">" with XML entities.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
432 :fill68: Any text. Wraps the text to fit in 68 columns.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
433 :fill76: Any text. Wraps the text to fit in 76 columns.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
434 :firstline: Any text. Returns the first line of text.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
435 :nonempty: Any text. Returns '(none)' if the string is empty.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
436 :hgdate: Date. Returns the date as a pair of numbers:
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
437 "1157407993 25200" (Unix timestamp, timezone offset).
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
438 :isodate: Date. Returns the date in ISO 8601 format:
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
439 "2009-08-18 13:00 +0200".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
440 :isodatesec: Date. Returns the date in ISO 8601 format, including
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
441 seconds: "2009-08-18 13:00:13 +0200". See also the
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
442 rfc3339date filter.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
443 :localdate: Date. Converts a date to local date.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
444 :obfuscate: Any text. Returns the input text rendered as a
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
445 sequence of XML entities.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
446 :person: Any text. Returns the text before an email address.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
447 :rfc822date: Date. Returns a date using the same format used in
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
448 email headers: "Tue, 18 Aug 2009 13:00:13 +0200".
9361
419aa488432e Merge with crew-stable
Martin Geisler <mg@lazybytes.net>
parents: 9327 9360
diff changeset
449 :rfc3339date: Date. Returns a date using the Internet date format
419aa488432e Merge with crew-stable
Martin Geisler <mg@lazybytes.net>
parents: 9327 9360
diff changeset
450 specified in RFC 3339: "2009-08-18T13:00:13+02:00".
9362
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
451 :short: Changeset hash. Returns the short form of a changeset
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
452 hash, i.e. a 12-byte hexadecimal string.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
453 :shortdate: Date. Returns a date like "2006-09-18".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
454 :strip: Any text. Strips all leading and trailing whitespace.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
455 :tabindent: Any text. Returns the text, with every line except
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
456 the first starting with a tab character.
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
457 :urlescape: Any text. Escapes all "special" characters. For
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
458 example, "foo bar" becomes "foo%20bar".
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
459 :user: Any text. Returns the user portion of an email
bb7e2cdd4854 help: align columns "hg help templates" output
Martin Geisler <mg@lazybytes.net>
parents: 9361
diff changeset
460 address.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
461 ''')),
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
462
7979
6b04f12d2831 commands, help: consistently write 'URL' in upper-case
Martin Geisler <mg@daimi.au.dk>
parents: 7978
diff changeset
463 (['urls'], _('URL Paths'),
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
464 _(r'''
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
465 Valid URLs are of the form::
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
466
9023
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
467 local/filesystem/path[#revision]
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
468 file://local/filesystem/path[#revision]
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
469 http://[user[:pass]@]host[:port]/[path][#revision]
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
470 https://[user[:pass]@]host[:port]/[path][#revision]
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
471 ssh://[user[:pass]@]host[:port]/[path][#revision]
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
472
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
473 Paths in the local filesystem can either point to Mercurial
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
474 repositories or to bundle files (as created by 'hg bundle' or 'hg
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
475 incoming --bundle').
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
476
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
477 An optional identifier after # indicates a particular branch, tag,
9023
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
478 or changeset to use from the remote repository. See also 'hg help
cd92a6968f70 help: add #revision syntax to the example valid URLs.
David Wolever <wolever@cs.toronto.edu>
parents: 8938
diff changeset
479 revisions'.
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
480
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
481 Some features, such as pushing to http:// and https:// URLs are
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
482 only possible if the feature is explicitly enabled on the remote
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
483 Mercurial server.
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
484
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
485 Some notes about using SSH with Mercurial:
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
486
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
487 - SSH requires an accessible shell account on the destination
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
488 machine and a copy of hg in the remote path or specified with as
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
489 remotecmd.
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
490 - path is relative to the remote user's home directory by default.
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
491 Use an extra slash at the start of a path to specify an absolute
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
492 path::
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
493
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
494 ssh://example.com//tmp/repository
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
495
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
496 - Mercurial doesn't use its own compression via SSH; the right
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
497 thing to do is to configure it in your ~/.ssh/config, e.g.::
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
498
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
499 Host *.mylocalnetwork.example.com
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
500 Compression no
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
501 Host *
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
502 Compression yes
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
503
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
504 Alternatively specify "ssh -C" as your ssh command in your hgrc
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
505 or with the --ssh command line option.
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
506
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
507 These URLs can all be stored in your hgrc with path aliases under
9277
1f0085918c29 help: wrap help strings at 70 characters
Martin Geisler <mg@lazybytes.net>
parents: 9160
diff changeset
508 the [paths] section like so::
9157
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
509
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
510 [paths]
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
511 alias1 = URL1
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
512 alias2 = URL2
9261667e9b82 commands: use minirst parser when displaying help
Martin Geisler <mg@lazybytes.net>
parents: 9082
diff changeset
513 ...
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
514
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
515 You can then use the alias for any command that uses a URL (for
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
516 example 'hg pull alias1' would pull from the 'alias1' path).
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
517
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
518 Two path aliases are special because they are used as defaults
7979
6b04f12d2831 commands, help: consistently write 'URL' in upper-case
Martin Geisler <mg@daimi.au.dk>
parents: 7978
diff changeset
519 when you do not provide the URL to a command:
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
520
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
521 default:
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
522 When you create a repository with hg clone, the clone command
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
523 saves the location of the source repository as the new
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
524 repository's 'default' path. This is then used when you omit
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
525 path from push- and pull-like commands (including incoming and
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
526 outgoing).
7693
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
527
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
528 default-push:
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
529 The push command will look for a path named 'default-push', and
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
530 prefer it over 'default' if both are defined.
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
531 ''')),
8879
d0a3eadfbdb3 help: more improvements for the extensions topic
Cédric Duval <cedricduval@free.fr>
parents: 8871
diff changeset
532 (["extensions"], _("Using additional features"), extshelp),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
533 )