annotate mercurial/help.py @ 8863:7b19c3c0172b

help: adding a new help topic about extensions Currently listing non-enabled extensions and a short introductory text. Thanks to Dan Villiom Podlaski Christiansen for the preliminary proof-of-concept code for listing available extensions.
author Cédric Duval <cedricduval@free.fr>
date Sat, 20 Jun 2009 20:55:43 +0200
parents aea3a23151bd
children cad6370a15cb
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
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
8 import os, sys
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
9 from i18n import _, gettext
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
10 import extensions
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
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
13 # borrowed from pydoc
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
14 def pathdirs():
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
15 '''Convert sys.path into a list of absolute, existing, unique paths.'''
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
16 dirs = []
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
17 normdirs = []
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
18 for dir in sys.path:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
19 dir = os.path.abspath(dir or '.')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
20 normdir = os.path.normcase(dir)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
21 if normdir not in normdirs and os.path.isdir(dir):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
22 dirs.append(dir)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
23 normdirs.append(normdir)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
24 return dirs
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
25
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
26 # loosely inspired by pydoc.source_synopsis()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
27 # rewritten to handle ''' as well as """
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
28 # and to return the whole text instead of just the synopsis
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
29 def moduledoc(file):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
30 '''Return the top python documentation for the given file'''
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
31 result = []
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
32
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
33 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
34 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
35 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
36 if not line: break
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
37
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
38 start = line[:3]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
39 if start == '"""' or start == "'''":
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
40 line = line[3:]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
41 while line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
42 if line.rstrip().endswith(start):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
43 line = line.split(start)[0]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
44 if line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
45 result.append(line)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
46 break
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
47 elif not line:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
48 return None # unmatched delimiter
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
49 result.append(line)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
50 line = file.readline()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
51 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
52 return None
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
53
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
54 return ''.join(result)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
55
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
56 def additionalextensions():
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
57 '''Find the extensions shipped with Mercurial but not enabled
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
58
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
59 Returns extensions names and descriptions, and the max name length
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
60 '''
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
61 exts = {}
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
62 maxlength = 0
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
63
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
64 for dir in filter(os.path.isdir,
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
65 (os.path.join(pd, 'hgext') for pd in pathdirs())):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
66 for e in os.listdir(dir):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
67 if e.endswith('.py'):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
68 name = e.rsplit('.', 1)[0]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
69 path = os.path.join(dir, e)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
70 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
71 name = e
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
72 path = os.path.join(dir, e, '__init__.py')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
73
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
74 if name in exts or name == '__init__' or not os.path.exists(path):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
75 continue
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
76
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
77 try:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
78 extensions.find(name)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
79 except KeyError:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
80 pass
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
81 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
82 continue # enabled extension
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
83
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
84 try:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
85 file = open(path)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
86 except IOError:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
87 continue
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
88 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
89 doc = moduledoc(file)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
90 file.close()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
91
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
92 if doc: # extracting localized synopsis
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
93 exts[name] = gettext(doc).splitlines()[0]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
94 else:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
95 exts[name] = _('(no help text available)')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
96 if len(name) > maxlength:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
97 maxlength = len(name)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
98
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
99 return exts, maxlength
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
100
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
101 def topicextensions():
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
102 doc = _(r'''
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
103 Mercurial has an extension mechanism for adding new features.
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
104
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
105 To enable an extension "foo" bundled with Mercurial, create an
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
106 entry for it your hgrc, like this:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
107
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
108 [extensions]
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
109 foo =
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
110 ''')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
111
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
112 exts, maxlength = additionalextensions()
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
113 if exts:
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
114 doc += _('\nnon-enabled extensions:\n\n')
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
115 for name, desc in sorted(exts.iteritems()):
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
116 doc += ' %s %s\n' % (name.ljust(maxlength), desc)
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
117
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
118 return doc
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
119
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
120 helptable = (
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
121 (["dates"], _("Date Formats"),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
122 _(r'''
7764
14a42208d8af help: better formatting in "Date Formats" section
timeless <timeless@gmail.com>
parents: 7693
diff changeset
123 Some commands allow the user to specify a date, e.g.:
14a42208d8af help: better formatting in "Date Formats" section
timeless <timeless@gmail.com>
parents: 7693
diff changeset
124 * backout, commit, import, tag: Specify the commit date.
14a42208d8af help: better formatting in "Date Formats" section
timeless <timeless@gmail.com>
parents: 7693
diff changeset
125 * log, revert, update: Select revision(s) by date.
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
126
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
127 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
128
3811
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
129 "Wed Dec 6 13:18:29 2006" (local timezone assumed)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
130 "Dec 6 13:18 -0600" (year assumed, time offset provided)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
131 "Dec 6 13:18 UTC" (UTC and GMT are aliases for +0000)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
132 "Dec 6" (midnight)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
133 "13:18" (today assumed)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
134 "3:39" (3:39AM assumed)
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
135 "3:39pm" (15:39)
6773
c68f84448012 fix iso date help
Matt Mackall <mpm@selenic.com>
parents: 6655
diff changeset
136 "2006-12-06 13:18:29" (ISO 8601 format)
3811
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
137 "2006-12-6 13:18"
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
138 "2006-12-6"
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
139 "12-6"
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
140 "12/6"
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
141 "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
142
3811
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
143 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
144
3811
6fa11a9d7cac Update dates help topic
Matt Mackall <mpm@selenic.com>
parents: 3799
diff changeset
145 "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
146
17a11f4ff260 Add basic support for help topics and a dates topic
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
147 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
148 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
149 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
150 (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
151
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
152 The log command also accepts date ranges:
1f733c2f0165 Document log date ranges and mention 'hg help dates' for all commands (issue998)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6009
diff changeset
153
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
154 "<{datetime}" - at or before a given date/time
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
155 ">{datetime}" - on or after a given date/time
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
156 "{datetime} to {datetime}" - a date range, inclusive
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
157 "-{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
158 ''')),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
159
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
160 (["patterns"], _("File Name Patterns"),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
161 _(r'''
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
162 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
163 files at a time.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
164
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
165 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
166 glob patterns.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
167
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
168 Alternate pattern notations must be specified explicitly.
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
169
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
170 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
171 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
172 the current repository root.
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
173
7808
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
174 To use an extended glob, start a name with "glob:". Globs are
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
175 rooted at the current directory; a glob such as "*.c" will only
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
176 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
177
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
178 The supported glob syntax extensions are "**" to match any string
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
179 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
180
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
181 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
182 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
183
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
184 Plain examples:
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
185
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
186 path:foo/bar a name bar in a directory named foo in the root of
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
187 the repository
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
188 path:path:name a file or directory named "path:name"
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
189
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
190 Glob examples:
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
191
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
192 glob:*.c any name ending in ".c" in the current directory
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
193 *.c any name ending in ".c" in the current directory
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
194 **.c any name ending in ".c" in any subdirectory of the
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
195 current directory including itself.
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
196 foo/*.c any name ending in ".c" in the directory foo
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
197 foo/**.c any name ending in ".c" in any subdirectory of foo
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
198 including itself.
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
199
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
200 Regexp examples:
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
201
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
202 re:.*\.c$ any name ending in ".c", anywhere in the repository
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
203
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
204 ''')),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
205
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
206 (['environment', 'env'], _('Environment Variables'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
207 _(r'''
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
208 HG::
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
209 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
210 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
211 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
212 '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
213 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
214
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
215 HGEDITOR::
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
216 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
217
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
218 (deprecated, use .hgrc)
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
219
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
220 HGENCODING::
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
221 This overrides the default locale setting detected by Mercurial.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
222 This setting is used to convert data including usernames,
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
223 changeset descriptions, tag names, and branches. This setting can
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
224 be overridden with the --encoding command-line option.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
225
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
226 HGENCODINGMODE::
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
227 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
228 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
229 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
230 settings include "replace", which replaces unknown characters, and
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
231 "ignore", which drops them. This setting can be overridden with
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
232 the --encodingmode command-line option.
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
233
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
234 HGMERGE::
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
235 An executable to use for resolving merge conflicts. The program
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
236 will be executed with three arguments: local file, remote file,
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
237 ancestor file.
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
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
241 HGRCPATH::
7808
5b010dae99c3 help: get rid of double spaces
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7806
diff changeset
242 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
243 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
244 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
245 from the current repository is read.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
246
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
247 For each element in HGRCPATH:
7904
fef5f3ef84c4 Clarify the usage of HGRCPATH
Dongsheng Song <dongsheng.song@gmail.com>
parents: 7888
diff changeset
248 * if it's a directory, all files ending with .rc are added
fef5f3ef84c4 Clarify the usage of HGRCPATH
Dongsheng Song <dongsheng.song@gmail.com>
parents: 7888
diff changeset
249 * otherwise, the file itself will be added
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
250
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
251 HGUSER::
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
252 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
253 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
254
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
255 * HGUSER (deprecated)
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
256 * hgrc files from the HGRCPATH
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
257 * EMAIL
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
258 * interactive prompt
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
259 * LOGNAME (with '@hostname' appended)
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
260
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
261 (deprecated, use .hgrc)
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
262
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
263 EMAIL::
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
264 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
265
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
266 LOGNAME::
7805
cf6ec23a1bb5 help: better explanation for some of the environment variables
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7804
diff changeset
267 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
268
5660
3c80ecdc1bcd Use VISUAL in addition to EDITOR when choosing the editor to use.
Osku Salerma <osku@iki.fi>
parents: 5062
diff changeset
269 VISUAL::
3c80ecdc1bcd Use VISUAL in addition to EDITOR when choosing the editor to use.
Osku Salerma <osku@iki.fi>
parents: 5062
diff changeset
270 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
271
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
272 EDITOR::
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
273 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
274 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
275 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
276 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
277 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
278 defaults to 'vi'.
3798
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
279
6f0c42d50394 move environment topic
Matt Mackall <mpm@selenic.com>
parents: 3795
diff changeset
280 PYTHONPATH::
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
281 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
282 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
283 ''')),
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
284
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
285 (['revs', 'revisions'], _('Specifying Single Revisions'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
286 _(r'''
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
287 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
288
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
289 A plain integer is treated as a revision number. Negative integers
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
290 are treated as topological offsets from the tip, with -1 denoting
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
291 the tip. As such, negative numbers are only useful if you've
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
292 memorized your local tree numbers and want to save typing a single
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
293 digit. This editor suggests copy and paste.
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
294
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
295 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
296 identifier.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
297
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
298 A hexadecimal string less than 40 characters long is treated as a
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
299 unique revision identifier, and referred to as a short-form
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
300 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
301 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
302
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
303 Any other string is treated as a tag name, which is a symbolic
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
304 name associated with a revision identifier. Tag names may not
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
305 contain the ":" character.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
306
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
307 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
308 the most recent revision.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
309
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
310 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
311 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
312
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
313 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
314 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
315 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
316 first parent.
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
317 ''')),
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
318
7013
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
319 (['mrevs', 'multirevs'], _('Specifying Multiple Revisions'),
f56e788fa292 i18n: mark help strings for translation
Martin Geisler <mg@daimi.au.dk>
parents: 7012
diff changeset
320 _(r'''
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
321 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
322 specified individually, or provided as a topologically continuous
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
323 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
324
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
325 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
326 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
327 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
328 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
329 "all revisions".
6655
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
330
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
331 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
332 order.
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
333
ab798a37b846 help: move "revision syntax" help topics into online help
Johannes Stezenbach <js@sig21.net>
parents: 6654
diff changeset
334 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
335 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
336 ''')),
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
337
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
338 (['diffs'], _('Diff Formats'),
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
339 _(r'''
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
340 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
341 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
342 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
343 tools.
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
344
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
345 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
346 following information:
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
347
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
348 - executable status and other permission bits
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
349 - copy or rename information
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
350 - changes in binary files
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
351 - 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
352
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
353 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
354 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
355 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
356 understand this format.
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
357
7387
7e9a15fa6c8f update help on git diffs
Matt Mackall <mpm@selenic.com>
parents: 7328
diff changeset
358 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
359 (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
360 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
361 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
362 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
363 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
364 internal binary format for communicating changes.
7328
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
365
3909e2c2622b Enhance gitdiffs help text
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7298
diff changeset
366 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
367 --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
368 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
369 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
370 extension.
7293
3549659450e6 help: add a topic on git diffs (issue1352)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7013
diff changeset
371 ''')),
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
372 (['templating'], _('Template Usage'),
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
373 _(r'''
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
374 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
375 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
376 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
377 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
378
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
379 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
380 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
381
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
382 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
383 when no explicit preference is passed), compact and changelog.
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
384 Usage:
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
385
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
386 $ 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
387
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
388 A template is a piece of text, with markup to invoke variable
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
389 expansion:
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
390
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
391 $ 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
392 b56ce7b07c52de7d5fd79fb89701ea538af65746
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
393
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
394 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
395 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
396 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
397
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
398 - author: String. The unmodified author of the changeset.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
399 - branches: String. The name of the branch on which the changeset
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
400 was committed. Will be empty if the branch name was default.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
401 - date: Date information. The date when the changeset was committed.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
402 - desc: String. The text of the changeset description.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
403 - diffstat: String. Statistics of changes with the following
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
404 format: "modified files: +added/-removed lines"
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
405 - files: List of strings. All files modified, added, or removed by
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
406 this changeset.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
407 - file_adds: List of strings. Files added by this changeset.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
408 - file_mods: List of strings. Files modified by this changeset.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
409 - file_dels: List of strings. Files removed by this changeset.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
410 - node: String. The changeset identification hash, as a
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
411 40-character hexadecimal string.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
412 - parents: List of strings. The parents of the changeset.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
413 - rev: Integer. The repository-local changeset revision number.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
414 - tags: List of strings. Any tags associated with the changeset.
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
415
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
416 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
417 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
418 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
419 variable. You can also use a chain of filters to get the desired
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
420 output:
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
421
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
422 $ 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
423 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
424
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
425 List of filters:
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
426
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
427 - addbreaks: Any text. Add an XHTML "<br />" tag before the end of
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
428 every line except the last.
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
429 - age: Date. Returns a human-readable date/time difference between
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
430 the given date/time and the current date/time.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
431 - basename: Any text. Treats the text as a path, and returns the
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
432 last component of the path after splitting by the path
8668
aea3a23151bd fixed typos found in translatable strings
Martin Geisler <mg@lazybytes.net>
parents: 8591
diff changeset
433 separator (ignoring trailing separators). For example,
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
434 "foo/bar/baz" becomes "baz" and "foo/bar//" becomes "bar".
8159
19f22977e635 help: document stripdir template filter
Martin Geisler <mg@lazybytes.net>
parents: 8005
diff changeset
435 - stripdir: Treat the text as path and strip a directory level, if
19f22977e635 help: document stripdir template filter
Martin Geisler <mg@lazybytes.net>
parents: 8005
diff changeset
436 possible. For example, "foo" and "foo/bar" becomes "foo".
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
437 - date: Date. Returns a date in a Unix date format, including
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
438 the timezone: "Mon Sep 04 15:13:13 2006 0700".
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
439 - domain: Any text. Finds the first string that looks like an
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
440 email address, and extracts just the domain component.
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
441 Example: 'User <user@example.com>' becomes 'example.com'.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
442 - email: Any text. Extracts the first string that looks like an
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
443 email address. Example: 'User <user@example.com>' becomes
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
444 'user@example.com'.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
445 - escape: Any text. Replaces the special XML/XHTML characters "&",
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
446 "<" and ">" with XML entities.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
447 - fill68: Any text. Wraps the text to fit in 68 columns.
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
448 - fill76: Any text. Wraps the text to fit in 76 columns.
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
449 - firstline: Any text. Returns the first line of text.
8237
1320459daa91 help: document nonempty template filter.
Martin Geisler <mg@lazybytes.net>
parents: 8225
diff changeset
450 - nonempty: Any text. Returns '(none)' if the string is empty.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
451 - hgdate: Date. Returns the date as a pair of numbers:
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
452 "1157407993 25200" (Unix timestamp, timezone offset).
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
453 - isodate: Date. Returns the date in ISO 8601 format.
8591
08c93b07f5ad templatefilters: add filter to convert date to local date (issue1674)
Henrik Stuart <hg@hstuart.dk>
parents: 8237
diff changeset
454 - localdate: Date. Converts a date to local date.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
455 - obfuscate: Any text. Returns the input text rendered as a
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
456 sequence of XML entities.
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
457 - person: Any text. Returns the text before an email address.
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
458 - rfc822date: Date. Returns a date using the same format used
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
459 in email headers.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
460 - short: Changeset hash. Returns the short form of a changeset
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
461 hash, i.e. a 12-byte hexadecimal string.
7806
6d0cf2a2acad help: better explanations for some of the template filters
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7805
diff changeset
462 - shortdate: Date. Returns a date like "2006-09-18".
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
463 - strip: Any text. Strips all leading and trailing whitespace.
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
464 - tabindent: Any text. Returns the text, with every line except
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
465 the first starting with a tab character.
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
466 - urlescape: Any text. Escapes all "special" characters. For
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
467 example, "foo bar" becomes "foo%20bar".
7678
b19850c7908a help: some improvements for the templating topic
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 7677
diff changeset
468 - user: Any text. Returns the user portion of an email address.
7677
6a0bc2dc9da6 help: add a topic about some of the templating features
Alexander Solovyov <piranha@piranha.org.ua>
parents: 7387
diff changeset
469 ''')),
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
470
7979
6b04f12d2831 commands, help: consistently write 'URL' in upper-case
Martin Geisler <mg@daimi.au.dk>
parents: 7978
diff changeset
471 (['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
472 _(r'''
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 Valid URLs are of the form:
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
474
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
475 local/filesystem/path (or file://local/filesystem/path)
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 http://[user[:pass]@]host[:port]/[path]
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 https://[user[:pass]@]host[:port]/[path]
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
478 ssh://[user[:pass]@]host[:port]/[path]
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
479
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 Paths in the local filesystem can either point to Mercurial
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 repositories or to bundle files (as created by 'hg bundle' or
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
482 'hg incoming --bundle').
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
483
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 An optional identifier after # indicates a particular branch, tag,
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
485 or changeset to use from the remote repository.
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
486
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
487 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
488 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
489 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
490
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
491 Some notes about using SSH with Mercurial:
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
492 - 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
493 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
494 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
495 - path is relative to the remote user's home directory by default.
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
496 Use an extra slash at the start of a path to specify an absolute path:
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
497 ssh://example.com//tmp/repository
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
498 - Mercurial doesn't use its own compression via SSH; the right
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
499 thing to do is to configure it in your ~/.ssh/config, e.g.:
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
500 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
501 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
502 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
503 Compression yes
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
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
508 the [paths] section like so:
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
509 [paths]
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
510 alias1 = URL1
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
511 alias2 = URL2
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
512 ...
e040f9d6b2f3 consolidated url help into urls help topic and added information about path aliases
Bill Barry <after.fallout@gmail.com>
parents: 7678
diff changeset
513
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
514 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
515 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
516
7804
06afe0f9dbf8 help: some language fixes for help topics
timeless <timeless@gmail.com>
parents: 7764
diff changeset
517 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
518 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
519
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 default:
8005
595baa7c726f help: word-wrap help texts at 70 characters
Martin Geisler <mg@daimi.au.dk>
parents: 7979
diff changeset
521 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
522 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
523 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
524 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
525 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
526
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 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
528 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
529 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
530 ''')),
8863
7b19c3c0172b help: adding a new help topic about extensions
Cédric Duval <cedricduval@free.fr>
parents: 8668
diff changeset
531 (["extensions"], _("Using additional features"), topicextensions),
6654
2713e42dcf4e help: helptable is an ordered collection
Johannes Stezenbach <js@sig21.net>
parents: 6163
diff changeset
532 )