Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/help.py @ 7677:6a0bc2dc9da6
help: add a topic about some of the templating features
author | Alexander Solovyov <piranha@piranha.org.ua> |
---|---|
date | Thu, 22 Jan 2009 14:18:08 +0100 |
parents | 7e9a15fa6c8f |
children | b19850c7908a |
comparison
equal
deleted
inserted
replaced
7676:43cfbb21f04d | 7677:6a0bc2dc9da6 |
---|---|
246 To make Mercurial produce the git extended diff format, use the | 246 To make Mercurial produce the git extended diff format, use the |
247 --git option available for many commands, or set 'git = True' in the | 247 --git option available for many commands, or set 'git = True' in the |
248 [diff] section of your hgrc. You do not need to set this option when | 248 [diff] section of your hgrc. You do not need to set this option when |
249 importing diffs in this format or using them in the mq extension. | 249 importing diffs in this format or using them in the mq extension. |
250 ''')), | 250 ''')), |
251 (['templating'], _('Usage of templates'), | |
252 _(r''' | |
253 Mercurial allows you to customize output of commands through | |
254 templates. There is command line option for that and additionally | |
255 styles, which are simply precanned templates that someone wrote. | |
256 | |
257 You can customize output for any "log-like" command, which currently | |
258 are: log, outgoing, incoming, tip, parents, heads and glog (if you have | |
259 graphlog extension enabled). | |
260 | |
261 There is three styles packaged with Mercurial: default (which is | |
262 naturally what you see by default), compact and changelog. Usage: | |
263 | |
264 > hg log -r1 --style changelog | |
265 | |
266 Template is a piece of text, where parts marked with special syntax | |
267 are expanded, for example: | |
268 | |
269 > hg log -r1 --template "{node}\n" | |
270 b56ce7b07c52de7d5fd79fb89701ea538af65746 | |
271 | |
272 Strings in curly brackets are called keywords and that's their | |
273 current list: | |
274 | |
275 - author: String. The unmodified author of the changeset. | |
276 - branches: String. The name of the branch on which the changeset | |
277 was committed. Will be empty if the branch name was default. | |
278 - date: Date information. The date when the changeset was committed. | |
279 - desc: String. The text of the changeset description. | |
280 - files: List of strings. All files modified, added, or removed by | |
281 this changeset. | |
282 - file_adds: List of strings. Files added by this changeset. | |
283 - file_dels: List of strings. Files removed by this changeset. | |
284 - node: String. The changeset identification hash, as a 40-character | |
285 hexadecimal string. | |
286 - parents: List of strings. The parents of the changeset. | |
287 - rev: Integer. The repository-local changeset revision number. | |
288 - tags: List of strings. Any tags associated with the changeset. | |
289 | |
290 But "date" keyword does not produce human-readable output, what | |
291 means that you should use a filter to process it. Filter is a | |
292 function which modifies the result of expanding a keyword and | |
293 Mercurial lets you specify a chain of filters: | |
294 | |
295 > hg tip --template "{date|isodate}\n" | |
296 2008-08-21 18:22 +0000 | |
297 | |
298 List of filters: | |
299 | |
300 - addbreaks: Any text. Add an XHTML "<br/>" tag before the end of | |
301 every line except the last. | |
302 - age: Date. Render the age of the date. | |
303 - basename: Any text. Treat the text as a path, and return the | |
304 basename. For example, "foo/bar/baz" becomes "baz". | |
305 - date: Date. Render a date in a Unix date command format, but with | |
306 timezone included: "Mon Sep 04 15:13:13 2006 0700". | |
307 - domain: Any text. Finds the first string that looks like an email | |
308 address, and extract just the domain component. | |
309 - email: Any text. Extract the first string that looks like an email | |
310 address. | |
311 - escape: Any text. Replace the special XML/XHTML characters "&", | |
312 "<" and ">" with XML entities. | |
313 - fill68: Any text. Wrap the text to fit in 68 columns. | |
314 - fill76: Any text. Wrap the text to fit in 76 columns. | |
315 - firstline: Any text. Yield the first line of text. | |
316 - hgdate: Date. Render the date as a pair of readable numbers: | |
317 "1157407993 25200". | |
318 - isodate: Date. Render the date in ISO 8601 format. | |
319 - obfuscate: Any text. Yield the input text rendered as a sequence | |
320 of XML entities. | |
321 - person: Any text. Yield the text before an email address. | |
322 - rfc822date: date keyword. Render a date using the same format used | |
323 in email headers. | |
324 - short: Changeset hash. Yield the short form of a changeset hash, | |
325 i.e. a 12-byte hexadecimal string. | |
326 - shortdate: Date. Render date like "2006-09-04". | |
327 - strip: Any text. Strip all leading and trailing whitespace. | |
328 - tabindent: Any text. Yield the text, with every line except the | |
329 first starting with a tab character. | |
330 - urlescape: Any text. Escape all "special" characters. For example, | |
331 foo bar becomes foo%20bar. | |
332 - user: Any text. Return the "user" portion of an email address. | |
333 ''')), | |
251 ) | 334 ) |