Show More
@@ -1422,7 +1422,8 b' class changeset_templater(changeset_prin' | |||||
1422 | (self.ui.debugflag, 'debug'), |
|
1422 | (self.ui.debugflag, 'debug'), | |
1423 | ] |
|
1423 | ] | |
1424 |
|
1424 | |||
1425 |
self._parts = {'header': '', 'footer': '', 'changeset': 'changeset' |
|
1425 | self._parts = {'header': '', 'footer': '', 'changeset': 'changeset', | |
|
1426 | 'docheader': '', 'docfooter': ''} | |||
1426 | for mode, postfix in tmplmodes: |
|
1427 | for mode, postfix in tmplmodes: | |
1427 | for t in self._parts: |
|
1428 | for t in self._parts: | |
1428 | cur = t |
|
1429 | cur = t | |
@@ -1431,6 +1432,16 b' class changeset_templater(changeset_prin' | |||||
1431 | if mode and cur in self.t: |
|
1432 | if mode and cur in self.t: | |
1432 | self._parts[t] = cur |
|
1433 | self._parts[t] = cur | |
1433 |
|
1434 | |||
|
1435 | if self._parts['docheader']: | |||
|
1436 | self.ui.write(templater.stringify(self.t(self._parts['docheader']))) | |||
|
1437 | ||||
|
1438 | def close(self): | |||
|
1439 | if self._parts['docfooter']: | |||
|
1440 | if not self.footer: | |||
|
1441 | self.footer = "" | |||
|
1442 | self.footer += templater.stringify(self.t(self._parts['docfooter'])) | |||
|
1443 | return super(changeset_templater, self).close() | |||
|
1444 | ||||
1434 | def _show(self, ctx, copies, matchfn, props): |
|
1445 | def _show(self, ctx, copies, matchfn, props): | |
1435 | '''show a single changeset or file revision''' |
|
1446 | '''show a single changeset or file revision''' | |
1436 |
|
1447 |
@@ -1,5 +1,5 b'' | |||||
1 | header = '<?xml version="1.0"?>\n<log>\n' |
|
1 | docheader = '<?xml version="1.0"?>\n<log>\n' | |
2 | footer = '</log>\n' |
|
2 | docfooter = '</log>\n' | |
3 |
|
3 | |||
4 | changeset = '<logentry revision="{rev}" node="{node}">\n{branches}{bookmarks}{tags}{parents}<author email="{author|email|xmlescape}">{author|person|xmlescape}</author>\n<date>{date|rfc3339date}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n</logentry>\n' |
|
4 | changeset = '<logentry revision="{rev}" node="{node}">\n{branches}{bookmarks}{tags}{parents}<author email="{author|email|xmlescape}">{author|person|xmlescape}</author>\n<date>{date|rfc3339date}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n</logentry>\n' | |
5 | changeset_verbose = '<logentry revision="{rev}" node="{node}">\n{branches}{bookmarks}{tags}{parents}<author email="{author|email|xmlescape}">{author|person|xmlescape}</author>\n<date>{date|rfc3339date}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{file_adds}{file_dels}{file_mods}</paths>\n{file_copies}</logentry>\n' |
|
5 | changeset_verbose = '<logentry revision="{rev}" node="{node}">\n{branches}{bookmarks}{tags}{parents}<author email="{author|email|xmlescape}">{author|person|xmlescape}</author>\n<date>{date|rfc3339date}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{file_adds}{file_dels}{file_mods}</paths>\n{file_copies}</logentry>\n' |
@@ -343,6 +343,11 b' Compact style works:' | |||||
343 |
|
343 | |||
344 | Test xml styles: |
|
344 | Test xml styles: | |
345 |
|
345 | |||
|
346 | $ hg log --style xml -r 'not all()' | |||
|
347 | <?xml version="1.0"?> | |||
|
348 | <log> | |||
|
349 | </log> | |||
|
350 | ||||
346 | $ hg log --style xml |
|
351 | $ hg log --style xml | |
347 | <?xml version="1.0"?> |
|
352 | <?xml version="1.0"?> | |
348 | <log> |
|
353 | <log> |
General Comments 0
You need to be logged in to leave comments.
Login now