Mercurial > hg
annotate mercurial/templates/json/map @ 29471:c4fc33c477da
hgweb: expose list of per-repo labels to templates
hgweb currently offers limited functionality for "classifying"
repositories. This patch aims to change that.
The web.labels config option list is introduced. Its values
are exposed to the "index" and "summary" templates. Custom
templates can use template features like ifcontains() to e.g.
look for the presence of a specific label and engage specific
behavior. For example, a site operator may wish to assign a
"defunct" label to a repository so the repository is prominently
marked as dead in repository indexes.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 30 Jun 2016 18:59:53 -0700 |
parents | 59058549a611 |
children | b963750b125f |
rev | line source |
---|---|
24544
71e96b9fd3fd
templates: add a stub template for json
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 mimetype = 'application/json' |
29381
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
2 filerevision = '\{ |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
3 "node": {node|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
4 "path": {file|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
5 "date": {date|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
6 "desc": {desc|utf8|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
7 "branch": {if(branch, branch%changesetbranch, "default"|json)}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
8 "bookmarks": [{join(bookmarks%changelistentryname, ", ")}], |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
9 "tags": [{join(tags%changelistentryname, ", ")}], |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
10 "user": {author|utf8|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
11 "parents": [{join(parent%changesetparent, ", ")}], |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
12 "phase": {phase|json}, |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
13 "lines": [{join(text%lineentry, ", ")}] |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
14 }' |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
15 lineentry = '\{ |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
16 "line": {line|json} |
8bfe44494a0d
templates: add support for filerevision webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29380
diff
changeset
|
17 }' |
29383
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
18 search = '\{ |
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
19 "node": {node|json}, |
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
20 "query": {query|json}, |
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
21 "entries": [{join(entries%searchentry, ", ")}] |
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
22 }' |
f3dca85bd2d1
templates: add support for search webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29382
diff
changeset
|
23 searchentry = '{changelistentry}' |
24588
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
24 # changelog and shortlog are the same web API but with different |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
25 # number of entries. |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
26 changelog = changelist.tmpl |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
27 shortlog = changelist.tmpl |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
28 changelistentry = '\{ |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
29 "node": {node|json}, |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
30 "date": {date|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
31 "desc": {desc|utf8|json}, |
29380
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
32 "branch": {if(branch, branch%changesetbranch, "default"|json)}, |
24588
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
33 "bookmarks": [{join(bookmarks%changelistentryname, ", ")}], |
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
34 "tags": [{join(tags%changelistentryname, ", ")}], |
28709
94494031f659
hgweb: add parents to json-log (issue5074)
Anton Shestakov <av6@dwimlabs.net>
parents:
28268
diff
changeset
|
35 "user": {author|utf8|json}, |
29380
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
36 "phase": {phase|json}, |
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
37 "parents": [{if(allparents, join(allparents%changesetparent, ", "), |
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
38 join(parent%changesetparent, ", "))}] |
24588
0bf54479a9eb
json: implement {shortlog} and {changelog} templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24564
diff
changeset
|
39 }' |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
40 changelistentryname = '{name|utf8|json}' |
24563
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
41 changeset = '\{ |
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
42 "node": {node|json}, |
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
43 "date": {date|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
44 "desc": {desc|utf8|json}, |
24563
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
45 "branch": {if(branch, branch%changesetbranch, "default"|json)}, |
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
46 "bookmarks": [{join(changesetbookmark, ", ")}], |
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
47 "tags": [{join(changesettag, ", ")}], |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
48 "user": {author|utf8|json}, |
24564
5ec4bda3097a
hgweb: add phase to {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24563
diff
changeset
|
49 "parents": [{join(parent%changesetparent, ", ")}], |
5ec4bda3097a
hgweb: add phase to {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24563
diff
changeset
|
50 "phase": {phase|json} |
24563
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
51 }' |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
52 changesetbranch = '{name|utf8|json}' |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
53 changesetbookmark = '{bookmark|utf8|json}' |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
54 changesettag = '{tag|utf8|json}' |
24563
830280536946
json: implement {changeset} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24547
diff
changeset
|
55 changesetparent = '{node|json}' |
24589
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
56 manifest = '\{ |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
57 "node": {node|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
58 "abspath": {path|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
59 "directories": [{join(dentries%direntry, ", ")}], |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
60 "files": [{join(fentries%fileentry, ", ")}], |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
61 "bookmarks": [{join(bookmarks%name, ", ")}], |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
62 "tags": [{join(tags%name, ", ")}] |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
63 }' |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
64 name = '{name|utf8|json}' |
24589
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
65 direntry = '\{ |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
66 "abspath": {path|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
67 "basename": {basename|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
68 "emptydirs": {emptydirs|json} |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
69 }' |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
70 fileentry = '\{ |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
71 "abspath": {file|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
72 "basename": {basename|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
73 "date": {date|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
74 "size": {size|json}, |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
75 "flags": {permissions|json} |
30a737ae9b7d
json: implement {manifest} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24588
diff
changeset
|
76 }' |
24545
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
77 tags = '\{ |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
78 "node": {node|json}, |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
79 "tags": [{join(entriesnotip%tagentry, ", ")}] |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
80 }' |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
81 tagentry = '\{ |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
82 "tag": {tag|utf8|json}, |
24545
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
83 "node": {node|json}, |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
84 "date": {date|json} |
9e0c67e84896
json: implement {tags} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24544
diff
changeset
|
85 }' |
24546
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
86 bookmarks = '\{ |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
87 "node": {node|json}, |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
88 "bookmarks": [{join(entries%bookmarkentry, ", ")}] |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
89 }' |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
90 bookmarkentry = '\{ |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
91 "bookmark": {bookmark|utf8|json}, |
24546
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
92 "node": {node|json}, |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
93 "date": {date|json} |
adfd808c123f
json: implement {bookmarks} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24545
diff
changeset
|
94 }' |
24547
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
95 branches = '\{ |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
96 "branches": [{join(entries%branchentry, ", ")}] |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
97 }' |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
98 branchentry = '\{ |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
99 "branch": {branch|utf8|json}, |
24547
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
100 "node": {node|json}, |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
101 "date": {date|json}, |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
102 "status": {status|json} |
495f3e665b27
json: implement {branches} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24546
diff
changeset
|
103 }' |
29382
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
104 shortlogentry = '{changelistentry}' |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
105 summary = '\{ |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
106 "node": {node|json}, |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
107 "lastchange": {lastchange|json}, |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
108 "bookmarks": [{join(bookmarks%bookmarkentry, ", ")}], |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
109 "branches": [{join(branches%branchentry, ", ")}], |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
110 "shortlog": [{join(shortlog%shortlogentry, ", ")}], |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
111 "tags": [{join(tags%tagentry, ", ")}], |
29471
c4fc33c477da
hgweb: expose list of per-repo labels to templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29458
diff
changeset
|
112 "archives": [{join(archives%archiveentry, ", ")}], |
c4fc33c477da
hgweb: expose list of per-repo labels to templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29458
diff
changeset
|
113 "labels": {labels|json} |
29382
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
114 }' |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
115 archiveentry = '\{ |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
116 "node": {node|json}, |
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
117 "extension": {extension|json}, |
29458
59058549a611
hgweb: add absolute urls for archives in json-summary
Anton Shestakov <av6@dwimlabs.net>
parents:
29383
diff
changeset
|
118 "type": {type|json}, |
59058549a611
hgweb: add absolute urls for archives in json-summary
Anton Shestakov <av6@dwimlabs.net>
parents:
29383
diff
changeset
|
119 "url": {"{urlbase}{url}archive/{node}{extension}"|json} |
29382
e4b777fe1576
templates: add support for summary webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
29381
diff
changeset
|
120 }' |
24713
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
121 filediff = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
122 "path": {file|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
123 "node": {node|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
124 "date": {date|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
125 "desc": {desc|utf8|json}, |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
126 "author": {author|utf8|json}, |
24713
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
127 "parents": [{join(parent%changesetparent, ", ")}], |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
128 "children": [{join(child%changesetparent, ", ")}], |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
129 "diff": [{join(diff%diffblock, ", ")}] |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
130 }' |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
131 diffblock = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
132 "blockno": {blockno|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
133 "lines": [{join(lines, ", ")}] |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
134 }' |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
135 difflineplus = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
136 "t": "+", |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
137 "n": {lineno|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
138 "l": {line|json} |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
139 }' |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
140 difflineminus = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
141 "t": "-", |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
142 "n": {lineno|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
143 "l": {line|json} |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
144 }' |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
145 difflineat = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
146 "t": "@", |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
147 "n": {lineno|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
148 "l": {line|json} |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
149 }' |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
150 diffline = '\{ |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
151 "t": "", |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
152 "n": {lineno|json}, |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
153 "l": {line|json} |
2f43f8cf8219
json: implement {filediff} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24591
diff
changeset
|
154 }' |
24714
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
155 filecomparison = '\{ |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
156 "path": {file|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
157 "node": {node|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
158 "date": {date|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
159 "desc": {desc|utf8|json}, |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
160 "author": {author|utf8|json}, |
24714
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
161 "parents": [{join(parent%changesetparent, ", ")}], |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
162 "children": [{join(child%changesetparent, ", ")}], |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
163 "leftnode": {leftnode|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
164 "rightnode": {rightnode|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
165 "comparison": [{join(comparison, ", ")}] |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
166 }' |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
167 comparisonblock = '\{ |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
168 "lines": [{join(lines, ", ")}] |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
169 }' |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
170 comparisonline = '\{ |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
171 "t": {type|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
172 "ln": {leftlineno|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
173 "ll": {leftline|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
174 "rn": {rightlineno|json}, |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
175 "rl": {rightline|json} |
84859415a4c9
json: implement {comparison} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24713
diff
changeset
|
176 }' |
24715
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
177 fileannotate = '\{ |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
178 "abspath": {file|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
179 "node": {node|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
180 "author": {author|utf8|json}, |
24715
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
181 "date": {date|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
182 "desc": {desc|utf8|json}, |
24715
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
183 "parents": [{join(parent%changesetparent, ", ")}], |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
184 "children": [{join(child%changesetparent, ", ")}], |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
185 "permissions": {permissions|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
186 "annotate": [{join(annotate%fileannotation, ", ")}] |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
187 }' |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
188 fileannotation = '\{ |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
189 "node": {node|json}, |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
190 "author": {author|utf8|json}, |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
191 "desc": {desc|utf8|json}, |
24715
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
192 "abspath": {file|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
193 "targetline": {targetline|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
194 "line": {line|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
195 "lineno": {lineno|json}, |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
196 "revdate": {revdate|json} |
1439bacf0ec7
json: implement {fileannotate} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24714
diff
changeset
|
197 }' |
29380
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
198 filelog = '\{ |
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
199 "entries": [{join(entries%changelistentry, ", ")}] |
c1b526f55116
templates: add support for filelog webcommand in json style
Laura Médioni <laura.medioni@logilab.fr>
parents:
28709
diff
changeset
|
200 }' |
24544
71e96b9fd3fd
templates: add a stub template for json
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
201 graph = '"not yet implemented"' |
24590
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
202 helptopics = '\{ |
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
203 "topics": [{join(topics%helptopicentry, ", ")}], |
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
204 "earlycommands": [{join(earlycommands%helptopicentry, ", ")}], |
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
205 "othercommands": [{join(othercommands%helptopicentry, ", ")}] |
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
206 }' |
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
207 helptopicentry = '\{ |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
208 "topic": {topic|utf8|json}, |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
209 "summary": {summary|utf8|json} |
24590
0bb733dfcabe
json: implement {helptopics} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24589
diff
changeset
|
210 }' |
24591
517f3e190a5d
json: implement {help} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24590
diff
changeset
|
211 help = '\{ |
28212
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
212 "topic": {topic|utf8|json}, |
d4419c01532b
templatefilters: make json filter be byte-transparent (BC) (issue4926)
Yuya Nishihara <yuya@tcha.org>
parents:
24715
diff
changeset
|
213 "rawdoc": {doc|utf8|json} |
24591
517f3e190a5d
json: implement {help} template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
24590
diff
changeset
|
214 }' |
24544
71e96b9fd3fd
templates: add a stub template for json
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
215 filenodelink = '' |
71e96b9fd3fd
templates: add a stub template for json
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
216 filenolink = '' |
28268
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
217 index = '\{ |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
218 "entries": [{join(entries%indexentry, ", ")}] |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
219 }' |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
220 indexentry = '\{ |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
221 "name": {name|utf8|json}, |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
222 "description": {description|utf8|json}, |
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
223 "contact": {contact|utf8|json}, |
29471
c4fc33c477da
hgweb: expose list of per-repo labels to templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29458
diff
changeset
|
224 "lastchange": {lastchange|json}, |
c4fc33c477da
hgweb: expose list of per-repo labels to templates
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29458
diff
changeset
|
225 "labels": {labels|json} |
28268
3643b66d7f71
hgweb: add index template to json/map
Anton Shestakov <av6@dwimlabs.net>
parents:
28212
diff
changeset
|
226 }' |