##// END OF EJS Templates
paper/coal: add branches page
Sune Foldager -
r8353:6058d291 default
parent child Browse files
Show More
@@ -0,0 +1,45 b''
1 {header}
2 <title>{repo|escape}: branches</title>
3 <link rel="alternate" type="application/atom+xml"
4 href="{url}atom-tags" title="Atom feed for {repo|escape}: branches" />
5 <link rel="alternate" type="application/rss+xml"
6 href="{url}rss-tags" title="RSS feed for {repo|escape}: branches" />
7 </head>
8 <body>
9
10 <div class="container">
11 <div class="menu">
12 <div class="logo">
13 <a href="http://www.selenic.com/mercurial/">
14 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
15 </div>
16 <ul>
17 <li><a href="{url}shortlog{sessionvars%urlparameter}">log</a></li>
18 <li><a href="{url}graph{sessionvars%urlparameter}">graph</a></li>
19 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
20 <li class="active">branches</li>
21 </ul>
22 </div>
23
24 <div class="main">
25 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
26 <h3>branches</h3>
27
28 <form class="search" action="{url}log">
29 {sessionvars%hiddenformentry}
30 <p><input name="rev" id="search1" type="text" size="30" /></p>
31 <div id="hint">find changesets by author, revision,
32 files, or words in the commit message</div>
33 </form>
34
35 <table class="bigtable">
36 <tr>
37 <th>branch</th>
38 <th>node</th>
39 </tr>
40 {entries%branchentry}
41 </table>
42 </div>
43 </div>
44
45 {footer}
@@ -1,74 +1,76 b''
1 1 default = 'shortlog'
2 2
3 3 mimetype = 'text/html; charset={encoding}'
4 4 header = header.tmpl
5 5 footer = ../paper/footer.tmpl
6 6 search = ../paper/search.tmpl
7 7
8 8 changelog = ../paper/shortlog.tmpl
9 9 shortlog = ../paper/shortlog.tmpl
10 10 shortlogentry = ../paper/shortlogentry.tmpl
11 11 graph = ../paper/graph.tmpl
12 12
13 13 naventry = '<a href="{url}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
14 14 navshortentry = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
15 15 navgraphentry = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
16 16 filenaventry = '<a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a> '
17 17 filedifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
18 18 filenodelink = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
19 19 filenolink = '{file|escape} '
20 20 fileellipses = '...'
21 21 changelogentry = ../paper/shortlogentry.tmpl
22 22 searchentry = ../paper/shortlogentry.tmpl
23 23 changeset = ../paper/changeset.tmpl
24 24 manifest = ../paper/manifest.tmpl
25 25
26 26 direntry = '<tr class="fileline parity{parity}"><td class="name"><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}"><img src="{staticurl}coal-folder.png"> {basename|escape}/</a> <a href="{url}file/{node|short}{path|urlescape}/{emptydirs|urlescape}{sessionvars%urlparameter}">{emptydirs|escape}</a><td class="size"></td><td class="permissions">drwxr-xr-x</td></tr>'
27 27 fileentry = '<tr class="fileline parity{parity}"><td class="filename"><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}"><img src="{staticurl}coal-file.png"> {basename|escape}</a></td><td class="size">{size}</td><td class="permissions">{permissions|permissions}</td></tr>'
28 28
29 29 filerevision = ../paper/filerevision.tmpl
30 30 fileannotate = ../paper/fileannotate.tmpl
31 31 filediff = ../paper/filediff.tmpl
32 32 filelog = ../paper/filelog.tmpl
33 33 fileline = '<div class="parity{parity} source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</div>'
34 34 filelogentry = ../paper/filelogentry.tmpl
35 35
36 36 annotateline = '<tr class="parity{parity}"><td class="annotate"><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#{targetline}" title="{node|short}: {desc|escape|firstline}">{author|user}@{rev}</a></td><td class="source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</td></tr>'
37 37
38 38 diffblock = '<div class="source bottomline parity{parity}">{lines}</div>'
39 39 difflineplus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="plusline">{line|escape}</span>'
40 40 difflineminus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="minusline">{line|escape}</span>'
41 41 difflineat = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="atline">{line|escape}</span>'
42 42 diffline = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}'
43 43
44 44 changelogparent = '<tr><th class="parent">parent {rev}:</th><td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
45 45
46 46 changesetparent = '<a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
47 47
48 48 filerevparent = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rename%filerename}{node|short}</a> '
49 49 filerevchild = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a> '
50 50
51 51 filerename = '{file|escape}@'
52 52 filelogrename = '<tr><th>base:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}@{node|short}</a></td></tr>'
53 53 fileannotateparent = '<tr><td class="metatag">parent:</td><td><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rename%filerename}{node|short}</a></td></tr>'
54 54 changesetchild = ' <a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>'
55 55 changelogchild = '<tr><th class="child">child</th><td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
56 56 fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
57 57 tags = ../paper/tags.tmpl
58 58 tagentry = '<tr class="tagEntry parity{parity}"><td><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{tag|escape}</a></td><td class="node">{node|short}</td></tr>'
59 branches = ../paper/branches.tmpl
60 branchentry = '<tr class="tagEntry parity{parity}"><td><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{branch|escape}</a></td><td class="node">{node|short}</td></tr>'
59 61 changelogtag = '<span class="tag">{name|escape}</span> '
60 62 changesettag = '<span class="tag">{tag|escape}</span> '
61 63 changelogbranchhead = '<span class="branchhead">{name|escape}</span> '
62 64 changelogbranchname = '<span class="branchname">{name|escape}</span> '
63 65 filediffparent = '<tr><th class="parent">parent {rev}:</th><td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
64 66 filelogparent = '<tr><th>parent {rev}:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
65 67 filediffchild = '<tr><th class="child">child {rev}:</th><td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
66 68 filelogchild = '<tr><th>child {rev}:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
67 69 indexentry = '<tr class="parity{parity}"><td><a href="{url}{sessionvars%urlparameter}">{name|escape}</a></td><td>{description}</td><td>{contact|obfuscate}</td><td class="age">{lastchange|age} ago</td><td class="indexlinks">{archives%indexarchiveentry}</td></tr>\n'
68 70 indexarchiveentry = '<a href="{url}archive/{node|short}{extension|urlescape}">&nbsp;&darr;{type|escape}</a>'
69 71 index = ../paper/index.tmpl
70 72 archiveentry = '<li><a href="{url}archive/{node|short}{extension|urlescape}">{type|escape}</a></li>'
71 73 notfound = ../paper/notfound.tmpl
72 74 error = ../paper/error.tmpl
73 75 urlparameter = '{separator}{name}={value|urlescape}'
74 76 hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />'
@@ -1,70 +1,71 b''
1 1 {header}
2 2 <title>{repo|escape}: {node|short}</title>
3 3 </head>
4 4 <body>
5 5 <div class="container">
6 6 <div class="menu">
7 7 <div class="logo">
8 8 <a href="http://www.selenic.com/mercurial/">
9 9 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
10 10 </div>
11 11 <ul>
12 12 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
13 13 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
14 14 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
15 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
15 16 </ul>
16 17 <ul>
17 18 <li class="active">changeset</li>
18 19 <li><a href="{url}raw-rev/{node|short}{sessionvars%urlparameter}">raw</a></li>
19 20 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">browse</a></li>
20 21 </ul>
21 22 <ul>
22 23 {archives%archiveentry}
23 24 </ul>
24 25 </div>
25 26
26 27 <div class="main">
27 28
28 29 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
29 30 <h3>changeset {rev}:{node|short} {changesetbranch%changelogbranchname} {changesettag}</h3>
30 31
31 32 <form class="search" action="{url}log">
32 33 {sessionvars%hiddenformentry}
33 34 <p><input name="rev" id="search1" type="text" size="30" /></p>
34 35 <div id="hint">find changesets by author, revision,
35 36 files, or words in the commit message</div>
36 37 </form>
37 38
38 39 <div class="description">{desc|strip|escape|addbreaks|nonempty}</div>
39 40
40 41 <table id="changesetEntry">
41 42 <tr>
42 43 <th class="author">author</th>
43 44 <td class="author">{author|obfuscate}</td>
44 45 </tr>
45 46 <tr>
46 47 <th class="date">date</th>
47 48 <td class="date">{date|date} ({date|age} ago)</td></tr>
48 49 <tr>
49 50 <th class="author">parents</th>
50 51 <td class="author">{parent%changesetparent}</td>
51 52 </tr>
52 53 <tr>
53 54 <th class="author">children</th>
54 55 <td class="author">{child%changesetchild}</td>
55 56 </tr>
56 57 <tr>
57 58 <th class="files">files</th>
58 59 <td class="files">{files}</td>
59 60 </tr>
60 61 </table>
61 62
62 63 <div class="overflow">
63 64 <div class="sourcefirst"> line diff</div>
64 65
65 66 {diff}
66 67 </div>
67 68
68 69 </div>
69 70 </div>
70 71 {footer}
@@ -1,42 +1,43 b''
1 1 {header}
2 2 <title>{repo|escape}: error</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18 </div>
18 19
19 20 <div class="main">
20 21
21 22 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
22 23 <h3>error</h3>
23 24
24 25 <form class="search" action="{url}log">
25 26 {sessionvars%hiddenformentry}
26 27 <p><input name="rev" id="search1" type="text" size="30"></p>
27 28 <div id="hint">find changesets by author, revision,
28 29 files, or words in the commit message</div>
29 30 </form>
30 31
31 32 <div class="description">
32 33 <p>
33 34 An error occurred while processing your request:
34 35 </p>
35 36 <p>
36 37 {error|escape}
37 38 </p>
38 39 </div>
39 40 </div>
40 41 </div>
41 42
42 43 {footer}
@@ -1,78 +1,79 b''
1 1 {header}
2 2 <title>{repo|escape}: {file|escape} annotate</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18
18 19 <ul>
19 20 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
20 21 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
21 22 </ul>
22 23 <ul>
23 24 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
24 25 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
25 26 <li class="active">annotate</li>
26 27 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file log</a></li>
27 28 <li><a href="{url}raw-annotate/{node|short}/{file|urlescape}">raw</a></li>
28 29 </ul>
29 30 </div>
30 31
31 32 <div class="main">
32 33 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
33 34 <h3>annotate {file|escape} @ {rev}:{node|short}</h3>
34 35
35 36 <form class="search" action="{url}log">
36 37 {sessionvars%hiddenformentry}
37 38 <p><input name="rev" id="search1" type="text" size="30" /></p>
38 39 <div id="hint">find changesets by author, revision,
39 40 files, or words in the commit message</div>
40 41 </form>
41 42
42 43 <div class="description">{desc|strip|escape|addbreaks|nonempty}</div>
43 44
44 45 <table id="changesetEntry">
45 46 <tr>
46 47 <th class="author">author</th>
47 48 <td class="author">{author|obfuscate}</td>
48 49 </tr>
49 50 <tr>
50 51 <th class="date">date</th>
51 52 <td class="date">{date|date} ({date|age} ago)</td>
52 53 </tr>
53 54 <tr>
54 55 <th class="author">parents</th>
55 56 <td class="author">{parent%filerevparent}</td>
56 57 </tr>
57 58 <tr>
58 59 <th class="author">children</th>
59 60 <td class="author">{child%filerevchild}</td>
60 61 </tr>
61 62 {changesettag}
62 63 </table>
63 64
64 65 <br/>
65 66
66 67 <div class="overflow">
67 68 <table class="bigtable">
68 69 <tr>
69 70 <th class="annotate">rev</th>
70 71 <th class="line">&nbsp;&nbsp;line source</th>
71 72 </tr>
72 73 {annotate%annotateline}
73 74 </table>
74 75 </div>
75 76 </div>
76 77 </div>
77 78
78 79 {footer}
@@ -1,71 +1,72 b''
1 1 {header}
2 2 <title>{repo|escape}: {file|escape} diff</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18 <ul>
18 19 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
19 20 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
20 21 </ul>
21 22 <ul>
22 23 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
23 24 <li class="active">diff</li>
24 25 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
25 26 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file log</a></li>
26 27 <li><a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a></li>
27 28 </ul>
28 29 </div>
29 30
30 31 <div class="main">
31 32 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
32 33 <h3>diff {file|escape} @ {rev}:{node|short}</h3>
33 34
34 35 <form class="search" action="{url}log">
35 36 <p>{sessionvars%hiddenformentry}</p>
36 37 <p><input name="rev" id="search1" type="text" size="30" /></p>
37 38 <div id="hint">find changesets by author, revision,
38 39 files, or words in the commit message</div>
39 40 </form>
40 41
41 42 <div class="description">{desc|strip|escape|addbreaks|nonempty}</div>
42 43
43 44 <table id="changesetEntry">
44 45 <tr>
45 46 <th>author</th>
46 47 <td>{author|obfuscate}</td>
47 48 </tr>
48 49 <tr>
49 50 <th>date</th>
50 51 <td>{date|date} ({date|age} ago)</td>
51 52 </tr>
52 53 <tr>
53 54 <th>parents</th>
54 55 <td>{parent%filerevparent}</td>
55 56 </tr>
56 57 <tr>
57 58 <th>children</th>
58 59 <td>{child%filerevchild}</td>
59 60 </tr>
60 61 {changesettag}
61 62 </table>
62 63
63 64 <div class="overflow">
64 65 <div class="sourcefirst"> line diff</div>
65 66
66 67 {diff}
67 68 </div>
68 69 </div>
69 70 </div>
70 71
71 72 {footer}
@@ -1,59 +1,60 b''
1 1 {header}
2 2 <title>{repo|escape}: {file|escape} history</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log/tip/{file|urlescape}" title="Atom feed for {repo|escape}:{file}" />
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log/tip/{file|urlescape}" title="RSS feed for {repo|escape}:{file}" />
7 7 </head>
8 8 <body>
9 9
10 10 <div class="container">
11 11 <div class="menu">
12 12 <div class="logo">
13 13 <a href="http://www.selenic.com/mercurial/">
14 14 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
15 15 </div>
16 16 <ul>
17 17 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
18 18 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
19 19 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
20 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
20 21 </ul>
21 22 <ul>
22 23 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
23 24 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
24 25 </ul>
25 26 <ul>
26 27 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
27 28 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
28 29 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
29 30 <li class="active">file log</li>
30 31 <li><a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a></li>
31 32 </ul>
32 33 </div>
33 34
34 35 <div class="main">
35 36 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
36 37 <h3>log {file|escape}</h3>
37 38
38 39 <form class="search" action="{url}log">
39 40 {sessionvars%hiddenformentry}
40 41 <p><input name="rev" id="search1" type="text" size="30" /></p>
41 42 <div id="hint">find changesets by author, revision,
42 43 files, or words in the commit message</div>
43 44 </form>
44 45
45 46 <div class="navigate">{nav%filenaventry}</div>
46 47
47 48 <table class="bigtable">
48 49 <tr>
49 50 <th class="age">age</th>
50 51 <th class="author">author</th>
51 52 <th class="description">description</th>
52 53 </tr>
53 54 {entries%filelogentry}
54 55 </table>
55 56
56 57 </div>
57 58 </div>
58 59
59 60 {footer}
@@ -1,71 +1,72 b''
1 1 {header}
2 2 <title>{repo|escape}: {node|short} {file|escape}</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18 <ul>
18 19 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
19 20 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
20 21 </ul>
21 22 <ul>
22 23 <li class="active">file</li>
23 24 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
24 25 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
25 26 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file log</a></li>
26 27 <li><a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a></li>
27 28 </ul>
28 29 </div>
29 30
30 31 <div class="main">
31 32 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
32 33 <h3>view {file|escape} @ {rev}:{node|short}</h3>
33 34
34 35 <form class="search" action="{url}log">
35 36 {sessionvars%hiddenformentry}
36 37 <p><input name="rev" id="search1" type="text" size="30" /></p>
37 38 <div id="hint">find changesets by author, revision,
38 39 files, or words in the commit message</div>
39 40 </form>
40 41
41 42 <div class="description">{desc|strip|escape|addbreaks|nonempty}</div>
42 43
43 44 <table id="changesetEntry">
44 45 <tr>
45 46 <th class="author">author</th>
46 47 <td class="author">{author|obfuscate}</td>
47 48 </tr>
48 49 <tr>
49 50 <th class="date">date</th>
50 51 <td class="date">{date|date} ({date|age} ago)</td>
51 52 </tr>
52 53 <tr>
53 54 <th class="author">parents</th>
54 55 <td class="author">{parent%filerevparent}</td>
55 56 </tr>
56 57 <tr>
57 58 <th class="author">children</th>
58 59 <td class="author">{child%filerevchild}</td>
59 60 </tr>
60 61 {changesettag}
61 62 </table>
62 63
63 64 <div class="overflow">
64 65 <div class="sourcefirst"> line source</div>
65 66 {text%fileline}
66 67 <div class="sourcelast"></div>
67 68 </div>
68 69 </div>
69 70 </div>
70 71
71 72 {footer}
@@ -1,131 +1,132 b''
1 1 {header}
2 2 <title>{repo|escape}: revision graph</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}: log" />
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}: log" />
7 7 <!--[if IE]><script type="text/javascript" src="{staticurl}excanvas.js"></script><![endif]-->
8 8 </head>
9 9 <body>
10 10
11 11 <div class="container">
12 12 <div class="menu">
13 13 <div class="logo">
14 14 <a href="http://www.selenic.com/mercurial/">
15 15 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
16 16 </div>
17 17 <ul>
18 18 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
19 19 <li class="active">graph</li>
20 20 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
21 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
21 22 </ul>
22 23 <ul>
23 24 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
24 25 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
25 26 </ul>
26 27 </div>
27 28
28 29 <div class="main">
29 30 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
30 31 <h3>graph</h3>
31 32
32 33 <form class="search" action="{url}log">
33 34 {sessionvars%hiddenformentry}
34 35 <p><input name="rev" id="search1" type="text" size="30" /></p>
35 36 <div id="hint">find changesets by author, revision,
36 37 files, or words in the commit message</div>
37 38 </form>
38 39
39 40 <div class="navigate">
40 41 <a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
41 42 <a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
42 43 | rev {rev}: {changenav%navgraphentry}
43 44 </div>
44 45
45 46 <noscript><p>The revision graph only works with JavaScript-enabled browsers.</p></noscript>
46 47
47 48 <div id="wrapper">
48 49 <ul id="nodebgs"></ul>
49 50 <canvas id="graph" width="224" height="{canvasheight}"></canvas>
50 51 <ul id="graphnodes"></ul>
51 52 </div>
52 53
53 54 <script type="text/javascript" src="{staticurl}graph.js"></script>
54 55 <script type="text/javascript">
55 56 <!-- hide script content
56 57
57 58 var data = {jsdata|json};
58 59 var graph = new Graph();
59 60 graph.scale({bg_height});
60 61
61 62 graph.edge = function(x0, y0, x1, y1, color) {
62 63
63 64 this.setColor(color, 0.0, 0.65);
64 65 this.ctx.beginPath();
65 66 this.ctx.moveTo(x0, y0);
66 67 this.ctx.lineTo(x1, y1);
67 68 this.ctx.stroke();
68 69
69 70 }
70 71
71 72 var revlink = '<li style="_STYLE"><span class="desc">';
72 73 revlink += '<a href="{url}rev/_NODEID{sessionvars%urlparameter}" title="_NODEID">_DESC</a>';
73 74 revlink += '</span>_TAGS<span class="info">_DATE ago, by _USER</span></li>';
74 75
75 76 graph.vertex = function(x, y, color, parity, cur) {
76 77
77 78 this.ctx.beginPath();
78 79 color = this.setColor(color, 0.25, 0.75);
79 80 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
80 81 this.ctx.fill();
81 82
82 83 var bg = '<li class="bg parity' + parity + '"></li>';
83 84 var left = (this.columns + 1) * this.bg_height;
84 85 var nstyle = 'padding-left: ' + left + 'px;';
85 86 var item = revlink.replace(/_STYLE/, nstyle);
86 87 item = item.replace(/_PARITY/, 'parity' + parity);
87 88 item = item.replace(/_NODEID/, cur[0]);
88 89 item = item.replace(/_NODEID/, cur[0]);
89 90 item = item.replace(/_DESC/, cur[3]);
90 91 item = item.replace(/_USER/, cur[4]);
91 92 item = item.replace(/_DATE/, cur[5]);
92 93
93 94 var tagspan = '';
94 95 if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) {
95 96 tagspan = '<span class="logtags">';
96 97 if (cur[6][1]) {
97 98 tagspan += '<span class="branchhead" title="' + cur[6][0] + '">';
98 99 tagspan += cur[6][0] + '</span> ';
99 100 } else if (!cur[6][1] && cur[6][0] != 'default') {
100 101 tagspan += '<span class="branchname" title="' + cur[6][0] + '">';
101 102 tagspan += cur[6][0] + '</span> ';
102 103 }
103 104 if (cur[7].length) {
104 105 for (var t in cur[7]) {
105 106 var tag = cur[7][t];
106 107 tagspan += '<span class="tag">' + tag + '</span> ';
107 108 }
108 109 }
109 110 tagspan += '</span>';
110 111 }
111 112
112 113 item = item.replace(/_TAGS/, tagspan);
113 114 return [bg, item];
114 115
115 116 }
116 117
117 118 graph.render(data);
118 119
119 120 // stop hiding script -->
120 121 </script>
121 122
122 123 <div class="navigate">
123 124 <a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
124 125 <a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
125 126 | rev {rev}: {changenav%navgraphentry}
126 127 </div>
127 128
128 129 </div>
129 130 </div>
130 131
131 132 {footer}
@@ -1,53 +1,54 b''
1 1 {header}
2 2 <title>{repo|escape}: {node|short} {path|escape}</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18 <ul>
18 19 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
19 20 <li class="active">browse</li>
20 21 </ul>
21 22 <ul>
22 23 {archives%archiveentry}
23 24 </ul>
24 25 </div>
25 26
26 27 <div class="main">
27 28 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
28 29 <h3>directory {path|escape} @ {rev}:{node|short} {tags%changelogtag}</h3>
29 30
30 31 <form class="search" action="{url}log">
31 32 {sessionvars%hiddenformentry}
32 33 <p><input name="rev" id="search1" type="text" size="30" /></p>
33 34 <div id="hint">find changesets by author, revision,
34 35 files, or words in the commit message</div>
35 36 </form>
36 37
37 38 <table class="bigtable">
38 39 <tr>
39 40 <th class="name">name</th>
40 41 <th class="size">size</th>
41 42 <th class="permissions">permissions</th>
42 43 </tr>
43 44 <tr class="fileline parity{upparity}">
44 45 <td class="name"><a href="{url}file/{node|short}{up|urlescape}{sessionvars%urlparameter}">[up]</a></td>
45 46 <td class="size"></td>
46 47 <td class="permissions">drwxr-xr-x</td>
47 48 </tr>
48 49 {dentries%direntry}
49 50 {fentries%fileentry}
50 51 </table>
51 52 </div>
52 53 </div>
53 54 {footer}
@@ -1,74 +1,76 b''
1 1 default = 'shortlog'
2 2
3 3 mimetype = 'text/html; charset={encoding}'
4 4 header = header.tmpl
5 5 footer = footer.tmpl
6 6 search = search.tmpl
7 7
8 8 changelog = shortlog.tmpl
9 9 shortlog = shortlog.tmpl
10 10 shortlogentry = shortlogentry.tmpl
11 11 graph = graph.tmpl
12 12
13 13 naventry = '<a href="{url}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
14 14 navshortentry = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
15 15 navgraphentry = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
16 16 filenaventry = '<a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a> '
17 17 filedifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
18 18 filenodelink = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
19 19 filenolink = '{file|escape} '
20 20 fileellipses = '...'
21 21 changelogentry = shortlogentry.tmpl
22 22 searchentry = shortlogentry.tmpl
23 23 changeset = changeset.tmpl
24 24 manifest = manifest.tmpl
25 25
26 26 direntry = '<tr class="fileline parity{parity}"><td class="name"><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}"><img src="{staticurl}coal-folder.png" alt="dir."/> {basename|escape}/</a> <a href="{url}file/{node|short}{path|urlescape}/{emptydirs|urlescape}{sessionvars%urlparameter}">{emptydirs|escape}</a></td><td class="size"></td><td class="permissions">drwxr-xr-x</td></tr>'
27 27 fileentry = '<tr class="fileline parity{parity}"><td class="filename"><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}"><img src="{staticurl}coal-file.png" alt="file"/> {basename|escape}</a></td><td class="size">{size}</td><td class="permissions">{permissions|permissions}</td></tr>'
28 28
29 29 filerevision = filerevision.tmpl
30 30 fileannotate = fileannotate.tmpl
31 31 filediff = filediff.tmpl
32 32 filelog = filelog.tmpl
33 33 fileline = '<div class="parity{parity} source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</div>'
34 34 filelogentry = filelogentry.tmpl
35 35
36 36 annotateline = '<tr class="parity{parity}"><td class="annotate"><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#{targetline}" title="{node|short}: {desc|escape|firstline}">{author|user}@{rev}</a></td><td class="source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</td></tr>'
37 37
38 38 diffblock = '<div class="source bottomline parity{parity}">{lines}</div>'
39 39 difflineplus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="plusline">{line|escape}</span>'
40 40 difflineminus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="minusline">{line|escape}</span>'
41 41 difflineat = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="atline">{line|escape}</span>'
42 42 diffline = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}'
43 43
44 44 changelogparent = '<tr><th class="parent">parent {rev}:</th><td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
45 45
46 46 changesetparent = '<a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
47 47
48 48 filerevparent = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rename%filerename}{node|short}</a> '
49 49 filerevchild = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a> '
50 50
51 51 filerename = '{file|escape}@'
52 52 filelogrename = '<tr><th>base:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}@{node|short}</a></td></tr>'
53 53 fileannotateparent = '<tr><td class="metatag">parent:</td><td><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rename%filerename}{node|short}</a></td></tr>'
54 54 changesetchild = ' <a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>'
55 55 changelogchild = '<tr><th class="child">child</th><td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
56 56 fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
57 57 tags = tags.tmpl
58 58 tagentry = '<tr class="tagEntry parity{parity}"><td><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{tag|escape}</a></td><td class="node">{node|short}</td></tr>'
59 branches = branches.tmpl
60 branchentry = '<tr class="tagEntry parity{parity}"><td><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{branch|escape}</a></td><td class="node">{node|short}</td></tr>'
59 61 changelogtag = '<span class="tag">{name|escape}</span> '
60 62 changesettag = '<span class="tag">{tag|escape}</span> '
61 63 changelogbranchhead = '<span class="branchhead">{name|escape}</span> '
62 64 changelogbranchname = '<span class="branchname">{name|escape}</span> '
63 65 filediffparent = '<tr><th class="parent">parent {rev}:</th><td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
64 66 filelogparent = '<tr><th>parent {rev}:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
65 67 filediffchild = '<tr><th class="child">child {rev}:</th><td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
66 68 filelogchild = '<tr><th>child {rev}:</th><td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td></tr>'
67 69 indexentry = '<tr class="parity{parity}"><td><a href="{url}{sessionvars%urlparameter}">{name|escape}</a></td><td>{description}</td><td>{contact|obfuscate}</td><td class="age">{lastchange|age} ago</td><td class="indexlinks">{archives%indexarchiveentry}</td></tr>\n'
68 70 indexarchiveentry = '<a href="{url}archive/{node|short}{extension|urlescape}">&nbsp;&darr;{type|escape}</a>'
69 71 index = index.tmpl
70 72 archiveentry = '<li><a href="{url}archive/{node|short}{extension|urlescape}">{type|escape}</a></li>'
71 73 notfound = notfound.tmpl
72 74 error = error.tmpl
73 75 urlparameter = '{separator}{name}={value|urlescape}'
74 76 hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />'
@@ -1,42 +1,43 b''
1 1 {header}
2 2 <title>{repo|escape}: searching for {query|escape}</title>
3 3 </head>
4 4 <body>
5 5
6 6 <div class="container">
7 7 <div class="menu">
8 8 <div class="logo">
9 9 <a href="http://www.selenic.com/mercurial/">
10 10 <img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
11 11 </div>
12 12 <ul>
13 13 <li><a href="{url}shortlog{sessionvars%urlparameter}">log</a></li>
14 14 <li><a href="{url}graph{sessionvars%urlparameter}">graph</a></li>
15 15 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
16 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
16 17 </ul>
17 18 </div>
18 19
19 20 <div class="main">
20 21 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
21 22 <h3>searching for '{query|escape}'</h3>
22 23
23 24 <form class="search" action="{url}log">
24 25 {sessionvars%hiddenformentry}
25 26 <p><input name="rev" id="search1" type="text" size="30"></p>
26 27 <div id="hint">find changesets by author, revision,
27 28 files, or words in the commit message</div>
28 29 </form>
29 30
30 31 <table class="bigtable">
31 32 <tr>
32 33 <th class="age">age</th>
33 34 <th class="author">author</th>
34 35 <th class="description">description</th>
35 36 </tr>
36 37 {entries}
37 38 </table>
38 39
39 40 </div>
40 41 </div>
41 42
42 43 {footer}
@@ -1,56 +1,57 b''
1 1 {header}
2 2 <title>{repo|escape}: log</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}" />
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}" />
7 7 </head>
8 8 <body>
9 9
10 10 <div class="container">
11 11 <div class="menu">
12 12 <div class="logo">
13 13 <a href="http://www.selenic.com/mercurial/">
14 14 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
15 15 </div>
16 16 <ul>
17 17 <li class="active">log</li>
18 18 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
19 19 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
20 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
20 21 </ul>
21 22 <ul>
22 23 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a></li>
23 24 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
24 25 </ul>
25 26 <ul>
26 27 {archives%archiveentry}
27 28 </ul>
28 29 </div>
29 30
30 31 <div class="main">
31 32 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
32 33 <h3>log</h3>
33 34
34 35 <form class="search" action="{url}log">
35 36 {sessionvars%hiddenformentry}
36 37 <p><input name="rev" id="search1" type="text" size="30" /></p>
37 38 <div id="hint">find changesets by author, revision,
38 39 files, or words in the commit message</div>
39 40 </form>
40 41
41 42 <div class="navigate">rev {rev}: {changenav%navshortentry}</div>
42 43
43 44 <table class="bigtable">
44 45 <tr>
45 46 <th class="age">age</th>
46 47 <th class="author">author</th>
47 48 <th class="description">description</th>
48 49 </tr>
49 50 {entries%shortlogentry}
50 51 </table>
51 52
52 53 <div class="navigate">rev {rev}: {changenav%navshortentry}</div>
53 54 </div>
54 55 </div>
55 56
56 57 {footer}
@@ -1,44 +1,45 b''
1 1 {header}
2 2 <title>{repo|escape}: tags</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-tags" title="Atom feed for {repo|escape}: tags" />
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-tags" title="RSS feed for {repo|escape}: tags" />
7 7 </head>
8 8 <body>
9 9
10 10 <div class="container">
11 11 <div class="menu">
12 12 <div class="logo">
13 13 <a href="http://www.selenic.com/mercurial/">
14 14 <img src="{staticurl}hglogo.png" alt="mercurial" /></a>
15 15 </div>
16 16 <ul>
17 17 <li><a href="{url}shortlog{sessionvars%urlparameter}">log</a></li>
18 18 <li><a href="{url}graph{sessionvars%urlparameter}">graph</a></li>
19 19 <li class="active">tags</li>
20 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
20 21 </ul>
21 22 </div>
22 23
23 24 <div class="main">
24 25 <h2><a href="{url}{sessionvars%urlparameter}">{repo|escape}</a></h2>
25 26 <h3>tags</h3>
26 27
27 28 <form class="search" action="{url}log">
28 29 {sessionvars%hiddenformentry}
29 30 <p><input name="rev" id="search1" type="text" size="30" /></p>
30 31 <div id="hint">find changesets by author, revision,
31 32 files, or words in the commit message</div>
32 33 </form>
33 34
34 35 <table class="bigtable">
35 36 <tr>
36 37 <th>tag</th>
37 38 <th>node</th>
38 39 </tr>
39 40 {entries%tagentry}
40 41 </table>
41 42 </div>
42 43 </div>
43 44
44 45 {footer}
@@ -1,73 +1,74 b''
1 1 % Set up the repo
2 2 adding a1/a2/a3/a4/foo
3 3 adding b1/b2/b3/b4/foo
4 4 adding b1/b2/c3/c4/foo
5 5 adding d1/d2/d3/d4/foo
6 6 adding d1/d2/foo
7 7 % manifest with descending
8 8 200 Script output follows
9 9
10 10 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
11 11 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
12 12 <head>
13 13 <link rel="icon" href="/static/hgicon.png" type="image/png" />
14 14 <meta name="robots" content="index, nofollow" />
15 15 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
16 16
17 17 <title>test: 9087c84a0f5d /</title>
18 18 </head>
19 19 <body>
20 20
21 21 <div class="container">
22 22 <div class="menu">
23 23 <div class="logo">
24 24 <a href="http://www.selenic.com/mercurial/">
25 25 <img src="/static/hglogo.png" alt="mercurial" /></a>
26 26 </div>
27 27 <ul>
28 28 <li><a href="/shortlog/9087c84a0f5d">log</a></li>
29 29 <li><a href="/graph/9087c84a0f5d">graph</a></li>
30 30 <li><a href="/tags">tags</a></li>
31 <li><a href="/branches">branches</a></li>
31 32 </ul>
32 33 <ul>
33 34 <li><a href="/rev/9087c84a0f5d">changeset</a></li>
34 35 <li class="active">browse</li>
35 36 </ul>
36 37 <ul>
37 38
38 39 </ul>
39 40 </div>
40 41
41 42 <div class="main">
42 43 <h2><a href="/">test</a></h2>
43 44 <h3>directory / @ 0:9087c84a0f5d <span class="tag">tip</span> </h3>
44 45
45 46 <form class="search" action="/log">
46 47
47 48 <p><input name="rev" id="search1" type="text" size="30" /></p>
48 49 <div id="hint">find changesets by author, revision,
49 50 files, or words in the commit message</div>
50 51 </form>
51 52
52 53 <table class="bigtable">
53 54 <tr>
54 55 <th class="name">name</th>
55 56 <th class="size">size</th>
56 57 <th class="permissions">permissions</th>
57 58 </tr>
58 59 <tr class="fileline parity0">
59 60 <td class="name"><a href="/file/9087c84a0f5d/">[up]</a></td>
60 61 <td class="size"></td>
61 62 <td class="permissions">drwxr-xr-x</td>
62 63 </tr>
63 64 <tr class="fileline parity1"><td class="name"><a href="/file/9087c84a0f5d/a1"><img src="/static/coal-folder.png" alt="dir."/> a1/</a> <a href="/file/9087c84a0f5d/a1/a2/a3/a4">a2/a3/a4</a></td><td class="size"></td><td class="permissions">drwxr-xr-x</td></tr><tr class="fileline parity0"><td class="name"><a href="/file/9087c84a0f5d/b1"><img src="/static/coal-folder.png" alt="dir."/> b1/</a> <a href="/file/9087c84a0f5d/b1/b2">b2</a></td><td class="size"></td><td class="permissions">drwxr-xr-x</td></tr><tr class="fileline parity1"><td class="name"><a href="/file/9087c84a0f5d/d1"><img src="/static/coal-folder.png" alt="dir."/> d1/</a> <a href="/file/9087c84a0f5d/d1/d2">d2</a></td><td class="size"></td><td class="permissions">drwxr-xr-x</td></tr>
64 65
65 66 </table>
66 67 </div>
67 68 </div>
68 69
69 70
70 71 </body>
71 72 </html>
72 73
73 74 % ERRORS ENCOUNTERED
@@ -1,368 +1,372 b''
1 1 % setting up repo
2 2 adding a
3 3 adding b
4 4 % change permissions for git diffs
5 5 % set up hgweb
6 6 % revision
7 7 200 Script output follows
8 8
9 9 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
10 10 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
11 11 <head>
12 12 <link rel="icon" href="/static/hgicon.png" type="image/png" />
13 13 <meta name="robots" content="index, nofollow" />
14 14 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
15 15
16 16 <title>test: 0cd96de13884</title>
17 17 </head>
18 18 <body>
19 19 <div class="container">
20 20 <div class="menu">
21 21 <div class="logo">
22 22 <a href="http://www.selenic.com/mercurial/">
23 23 <img src="/static/hglogo.png" alt="mercurial" /></a>
24 24 </div>
25 25 <ul>
26 26 <li><a href="/shortlog/0cd96de13884">log</a></li>
27 27 <li><a href="/graph/0cd96de13884">graph</a></li>
28 28 <li><a href="/tags">tags</a></li>
29 <li><a href="/branches">branches</a></li>
29 30 </ul>
30 31 <ul>
31 32 <li class="active">changeset</li>
32 33 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
33 34 <li><a href="/file/0cd96de13884">browse</a></li>
34 35 </ul>
35 36 <ul>
36 37
37 38 </ul>
38 39 </div>
39 40
40 41 <div class="main">
41 42
42 43 <h2><a href="/">test</a></h2>
43 44 <h3>changeset 0:0cd96de13884 </h3>
44 45
45 46 <form class="search" action="/log">
46 47
47 48 <p><input name="rev" id="search1" type="text" size="30" /></p>
48 49 <div id="hint">find changesets by author, revision,
49 50 files, or words in the commit message</div>
50 51 </form>
51 52
52 53 <div class="description">a</div>
53 54
54 55 <table id="changesetEntry">
55 56 <tr>
56 57 <th class="author">author</th>
57 58 <td class="author">&#116;&#101;&#115;&#116;</td>
58 59 </tr>
59 60 <tr>
60 61 <th class="date">date</th>
61 62 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td></tr>
62 63 <tr>
63 64 <th class="author">parents</th>
64 65 <td class="author"></td>
65 66 </tr>
66 67 <tr>
67 68 <th class="author">children</th>
68 69 <td class="author"> <a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
69 70 </tr>
70 71 <tr>
71 72 <th class="files">files</th>
72 73 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
73 74 </tr>
74 75 </table>
75 76
76 77 <div class="overflow">
77 78 <div class="sourcefirst"> line diff</div>
78 79
79 80 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
80 81 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
81 82 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
82 83 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a
83 84 </span></div><div class="source bottomline parity1"><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
84 85 </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/b Thu Jan 01 00:00:00 1970 +0000
85 86 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@
86 87 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+b
87 88 </span></div>
88 89 </div>
89 90
90 91 </div>
91 92 </div>
92 93
93 94
94 95 </body>
95 96 </html>
96 97
97 98 % diff removed file
98 99 200 Script output follows
99 100
100 101 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
101 102 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
102 103 <head>
103 104 <link rel="icon" href="/static/hgicon.png" type="image/png" />
104 105 <meta name="robots" content="index, nofollow" />
105 106 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
106 107
107 108 <title>test: a diff</title>
108 109 </head>
109 110 <body>
110 111
111 112 <div class="container">
112 113 <div class="menu">
113 114 <div class="logo">
114 115 <a href="http://www.selenic.com/mercurial/">
115 116 <img src="/static/hglogo.png" alt="mercurial" /></a>
116 117 </div>
117 118 <ul>
118 119 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
119 120 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
120 121 <li><a href="/tags">tags</a></li>
122 <li><a href="/branches">branches</a></li>
121 123 </ul>
122 124 <ul>
123 125 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
124 126 <li><a href="/file/78e4ebad7cdf">browse</a></li>
125 127 </ul>
126 128 <ul>
127 129 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
128 130 <li class="active">diff</li>
129 131 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
130 132 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
131 133 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
132 134 </ul>
133 135 </div>
134 136
135 137 <div class="main">
136 138 <h2><a href="/">test</a></h2>
137 139 <h3>diff a @ 1:78e4ebad7cdf</h3>
138 140
139 141 <form class="search" action="/log">
140 142 <p></p>
141 143 <p><input name="rev" id="search1" type="text" size="30" /></p>
142 144 <div id="hint">find changesets by author, revision,
143 145 files, or words in the commit message</div>
144 146 </form>
145 147
146 148 <div class="description">b</div>
147 149
148 150 <table id="changesetEntry">
149 151 <tr>
150 152 <th>author</th>
151 153 <td>&#116;&#101;&#115;&#116;</td>
152 154 </tr>
153 155 <tr>
154 156 <th>date</th>
155 157 <td>Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
156 158 </tr>
157 159 <tr>
158 160 <th>parents</th>
159 161 <td></td>
160 162 </tr>
161 163 <tr>
162 164 <th>children</th>
163 165 <td></td>
164 166 </tr>
165 167
166 168 </table>
167 169
168 170 <div class="overflow">
169 171 <div class="sourcefirst"> line diff</div>
170 172
171 173 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
172 174 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
173 175 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
174 176 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a
175 177 </span></div>
176 178 </div>
177 179 </div>
178 180 </div>
179 181
180 182
181 183
182 184 </body>
183 185 </html>
184 186
185 187 % set up hgweb with git diffs
186 188 % revision
187 189 200 Script output follows
188 190
189 191 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
190 192 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
191 193 <head>
192 194 <link rel="icon" href="/static/hgicon.png" type="image/png" />
193 195 <meta name="robots" content="index, nofollow" />
194 196 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
195 197
196 198 <title>test: 0cd96de13884</title>
197 199 </head>
198 200 <body>
199 201 <div class="container">
200 202 <div class="menu">
201 203 <div class="logo">
202 204 <a href="http://www.selenic.com/mercurial/">
203 205 <img src="/static/hglogo.png" alt="mercurial" /></a>
204 206 </div>
205 207 <ul>
206 208 <li><a href="/shortlog/0cd96de13884">log</a></li>
207 209 <li><a href="/graph/0cd96de13884">graph</a></li>
208 210 <li><a href="/tags">tags</a></li>
211 <li><a href="/branches">branches</a></li>
209 212 </ul>
210 213 <ul>
211 214 <li class="active">changeset</li>
212 215 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
213 216 <li><a href="/file/0cd96de13884">browse</a></li>
214 217 </ul>
215 218 <ul>
216 219
217 220 </ul>
218 221 </div>
219 222
220 223 <div class="main">
221 224
222 225 <h2><a href="/">test</a></h2>
223 226 <h3>changeset 0:0cd96de13884 </h3>
224 227
225 228 <form class="search" action="/log">
226 229
227 230 <p><input name="rev" id="search1" type="text" size="30" /></p>
228 231 <div id="hint">find changesets by author, revision,
229 232 files, or words in the commit message</div>
230 233 </form>
231 234
232 235 <div class="description">a</div>
233 236
234 237 <table id="changesetEntry">
235 238 <tr>
236 239 <th class="author">author</th>
237 240 <td class="author">&#116;&#101;&#115;&#116;</td>
238 241 </tr>
239 242 <tr>
240 243 <th class="date">date</th>
241 244 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td></tr>
242 245 <tr>
243 246 <th class="author">parents</th>
244 247 <td class="author"></td>
245 248 </tr>
246 249 <tr>
247 250 <th class="author">children</th>
248 251 <td class="author"> <a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
249 252 </tr>
250 253 <tr>
251 254 <th class="files">files</th>
252 255 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
253 256 </tr>
254 257 </table>
255 258
256 259 <div class="overflow">
257 260 <div class="sourcefirst"> line diff</div>
258 261
259 262 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100644
260 263 <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null
261 264 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a
262 265 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@
263 266 </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a
264 267 </span></div><div class="source bottomline parity1"><a href="#l2.1" id="l2.1"> 2.1</a> new file mode 100644
265 268 <a href="#l2.2" id="l2.2"> 2.2</a> <span class="minusline">--- /dev/null
266 269 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="plusline">+++ b/b
267 270 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="atline">@@ -0,0 +1,1 @@
268 271 </span><a href="#l2.5" id="l2.5"> 2.5</a> <span class="plusline">+b
269 272 </span></div>
270 273 </div>
271 274
272 275 </div>
273 276 </div>
274 277
275 278
276 279 </body>
277 280 </html>
278 281
279 282 % diff removed file
280 283 200 Script output follows
281 284
282 285 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
283 286 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
284 287 <head>
285 288 <link rel="icon" href="/static/hgicon.png" type="image/png" />
286 289 <meta name="robots" content="index, nofollow" />
287 290 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
288 291
289 292 <title>test: a diff</title>
290 293 </head>
291 294 <body>
292 295
293 296 <div class="container">
294 297 <div class="menu">
295 298 <div class="logo">
296 299 <a href="http://www.selenic.com/mercurial/">
297 300 <img src="/static/hglogo.png" alt="mercurial" /></a>
298 301 </div>
299 302 <ul>
300 303 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
301 304 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
302 305 <li><a href="/tags">tags</a></li>
306 <li><a href="/branches">branches</a></li>
303 307 </ul>
304 308 <ul>
305 309 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
306 310 <li><a href="/file/78e4ebad7cdf">browse</a></li>
307 311 </ul>
308 312 <ul>
309 313 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
310 314 <li class="active">diff</li>
311 315 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
312 316 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
313 317 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
314 318 </ul>
315 319 </div>
316 320
317 321 <div class="main">
318 322 <h2><a href="/">test</a></h2>
319 323 <h3>diff a @ 1:78e4ebad7cdf</h3>
320 324
321 325 <form class="search" action="/log">
322 326 <p></p>
323 327 <p><input name="rev" id="search1" type="text" size="30" /></p>
324 328 <div id="hint">find changesets by author, revision,
325 329 files, or words in the commit message</div>
326 330 </form>
327 331
328 332 <div class="description">b</div>
329 333
330 334 <table id="changesetEntry">
331 335 <tr>
332 336 <th>author</th>
333 337 <td>&#116;&#101;&#115;&#116;</td>
334 338 </tr>
335 339 <tr>
336 340 <th>date</th>
337 341 <td>Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
338 342 </tr>
339 343 <tr>
340 344 <th>parents</th>
341 345 <td></td>
342 346 </tr>
343 347 <tr>
344 348 <th>children</th>
345 349 <td></td>
346 350 </tr>
347 351
348 352 </table>
349 353
350 354 <div class="overflow">
351 355 <div class="sourcefirst"> line diff</div>
352 356
353 357 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100755
354 358 <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null
355 359 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a
356 360 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@
357 361 </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a
358 362 </span></div>
359 363 </div>
360 364 </div>
361 365 </div>
362 366
363 367
364 368
365 369 </body>
366 370 </html>
367 371
368 372 % errors
@@ -1,344 +1,348 b''
1 1 200 Script output follows
2 2
3 3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
4 4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
5 5 <head>
6 6 <link rel="icon" href="/static/hgicon.png" type="image/png" />
7 7 <meta name="robots" content="index, nofollow" />
8 8 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
9 9
10 10 <title>test: log</title>
11 11 <link rel="alternate" type="application/atom+xml"
12 12 href="/atom-log" title="Atom feed for test" />
13 13 <link rel="alternate" type="application/rss+xml"
14 14 href="/rss-log" title="RSS feed for test" />
15 15 </head>
16 16 <body>
17 17
18 18 <div class="container">
19 19 <div class="menu">
20 20 <div class="logo">
21 21 <a href="http://www.selenic.com/mercurial/">
22 22 <img src="/static/hglogo.png" alt="mercurial" /></a>
23 23 </div>
24 24 <ul>
25 25 <li class="active">log</li>
26 26 <li><a href="/graph/000000000000">graph</a></li>
27 27 <li><a href="/tags">tags</a></li>
28 <li><a href="/branches">branches</a></li>
28 29 </ul>
29 30 <ul>
30 31 <li><a href="/rev/000000000000">changeset</a></li>
31 32 <li><a href="/file/000000000000">browse</a></li>
32 33 </ul>
33 34 <ul>
34 35
35 36 </ul>
36 37 </div>
37 38
38 39 <div class="main">
39 40 <h2><a href="/">test</a></h2>
40 41 <h3>log</h3>
41 42
42 43 <form class="search" action="/log">
43 44
44 45 <p><input name="rev" id="search1" type="text" size="30" /></p>
45 46 <div id="hint">find changesets by author, revision,
46 47 files, or words in the commit message</div>
47 48 </form>
48 49
49 50 <div class="navigate">rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> </div>
50 51
51 52 <table class="bigtable">
52 53 <tr>
53 54 <th class="age">age</th>
54 55 <th class="author">author</th>
55 56 <th class="description">description</th>
56 57 </tr>
57 58
58 59 </table>
59 60
60 61 <div class="navigate">rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> </div>
61 62 </div>
62 63 </div>
63 64
64 65
65 66
66 67 </body>
67 68 </html>
68 69
69 70 200 Script output follows
70 71
71 72 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
72 73 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
73 74 <head>
74 75 <link rel="icon" href="/static/hgicon.png" type="image/png" />
75 76 <meta name="robots" content="index, nofollow" />
76 77 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
77 78
78 79 <title>test: log</title>
79 80 <link rel="alternate" type="application/atom+xml"
80 81 href="/atom-log" title="Atom feed for test" />
81 82 <link rel="alternate" type="application/rss+xml"
82 83 href="/rss-log" title="RSS feed for test" />
83 84 </head>
84 85 <body>
85 86
86 87 <div class="container">
87 88 <div class="menu">
88 89 <div class="logo">
89 90 <a href="http://www.selenic.com/mercurial/">
90 91 <img src="/static/hglogo.png" alt="mercurial" /></a>
91 92 </div>
92 93 <ul>
93 94 <li class="active">log</li>
94 95 <li><a href="/graph/000000000000">graph</a></li>
95 96 <li><a href="/tags">tags</a></li>
97 <li><a href="/branches">branches</a></li>
96 98 </ul>
97 99 <ul>
98 100 <li><a href="/rev/000000000000">changeset</a></li>
99 101 <li><a href="/file/000000000000">browse</a></li>
100 102 </ul>
101 103 <ul>
102 104
103 105 </ul>
104 106 </div>
105 107
106 108 <div class="main">
107 109 <h2><a href="/">test</a></h2>
108 110 <h3>log</h3>
109 111
110 112 <form class="search" action="/log">
111 113
112 114 <p><input name="rev" id="search1" type="text" size="30" /></p>
113 115 <div id="hint">find changesets by author, revision,
114 116 files, or words in the commit message</div>
115 117 </form>
116 118
117 119 <div class="navigate">rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> </div>
118 120
119 121 <table class="bigtable">
120 122 <tr>
121 123 <th class="age">age</th>
122 124 <th class="author">author</th>
123 125 <th class="description">description</th>
124 126 </tr>
125 127
126 128 </table>
127 129
128 130 <div class="navigate">rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> </div>
129 131 </div>
130 132 </div>
131 133
132 134
133 135
134 136 </body>
135 137 </html>
136 138
137 139 200 Script output follows
138 140
139 141 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
140 142 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
141 143 <head>
142 144 <link rel="icon" href="/static/hgicon.png" type="image/png" />
143 145 <meta name="robots" content="index, nofollow" />
144 146 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
145 147
146 148 <title>test: revision graph</title>
147 149 <link rel="alternate" type="application/atom+xml"
148 150 href="/atom-log" title="Atom feed for test: log" />
149 151 <link rel="alternate" type="application/rss+xml"
150 152 href="/rss-log" title="RSS feed for test: log" />
151 153 <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]-->
152 154 </head>
153 155 <body>
154 156
155 157 <div class="container">
156 158 <div class="menu">
157 159 <div class="logo">
158 160 <a href="http://www.selenic.com/mercurial/">
159 161 <img src="/static/hglogo.png" alt="mercurial" /></a>
160 162 </div>
161 163 <ul>
162 164 <li><a href="/shortlog/000000000000">log</a></li>
163 165 <li class="active">graph</li>
164 166 <li><a href="/tags">tags</a></li>
167 <li><a href="/branches">branches</a></li>
165 168 </ul>
166 169 <ul>
167 170 <li><a href="/rev/000000000000">changeset</a></li>
168 171 <li><a href="/file/000000000000">browse</a></li>
169 172 </ul>
170 173 </div>
171 174
172 175 <div class="main">
173 176 <h2><a href="/">test</a></h2>
174 177 <h3>graph</h3>
175 178
176 179 <form class="search" action="/log">
177 180
178 181 <p><input name="rev" id="search1" type="text" size="30" /></p>
179 182 <div id="hint">find changesets by author, revision,
180 183 files, or words in the commit message</div>
181 184 </form>
182 185
183 186 <div class="navigate">
184 187 <a href="/graph/-1?revcount=12">less</a>
185 188 <a href="/graph/-1?revcount=50">more</a>
186 189 | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a>
187 190 </div>
188 191
189 192 <noscript><p>The revision graph only works with JavaScript-enabled browsers.</p></noscript>
190 193
191 194 <div id="wrapper">
192 195 <ul id="nodebgs"></ul>
193 196 <canvas id="graph" width="224" height="12"></canvas>
194 197 <ul id="graphnodes"></ul>
195 198 </div>
196 199
197 200 <script type="text/javascript" src="/static/graph.js"></script>
198 201 <script type="text/javascript">
199 202 <!-- hide script content
200 203
201 204 var data = [];
202 205 var graph = new Graph();
203 206 graph.scale(39);
204 207
205 208 graph.edge = function(x0, y0, x1, y1, color) {
206 209
207 210 this.setColor(color, 0.0, 0.65);
208 211 this.ctx.beginPath();
209 212 this.ctx.moveTo(x0, y0);
210 213 this.ctx.lineTo(x1, y1);
211 214 this.ctx.stroke();
212 215
213 216 }
214 217
215 218 var revlink = '<li style="_STYLE"><span class="desc">';
216 219 revlink += '<a href="/rev/_NODEID" title="_NODEID">_DESC</a>';
217 220 revlink += '</span>_TAGS<span class="info">_DATE ago, by _USER</span></li>';
218 221
219 222 graph.vertex = function(x, y, color, parity, cur) {
220 223
221 224 this.ctx.beginPath();
222 225 color = this.setColor(color, 0.25, 0.75);
223 226 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
224 227 this.ctx.fill();
225 228
226 229 var bg = '<li class="bg parity' + parity + '"></li>';
227 230 var left = (this.columns + 1) * this.bg_height;
228 231 var nstyle = 'padding-left: ' + left + 'px;';
229 232 var item = revlink.replace(/_STYLE/, nstyle);
230 233 item = item.replace(/_PARITY/, 'parity' + parity);
231 234 item = item.replace(/_NODEID/, cur[0]);
232 235 item = item.replace(/_NODEID/, cur[0]);
233 236 item = item.replace(/_DESC/, cur[3]);
234 237 item = item.replace(/_USER/, cur[4]);
235 238 item = item.replace(/_DATE/, cur[5]);
236 239
237 240 var tagspan = '';
238 241 if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) {
239 242 tagspan = '<span class="logtags">';
240 243 if (cur[6][1]) {
241 244 tagspan += '<span class="branchhead" title="' + cur[6][0] + '">';
242 245 tagspan += cur[6][0] + '</span> ';
243 246 } else if (!cur[6][1] && cur[6][0] != 'default') {
244 247 tagspan += '<span class="branchname" title="' + cur[6][0] + '">';
245 248 tagspan += cur[6][0] + '</span> ';
246 249 }
247 250 if (cur[7].length) {
248 251 for (var t in cur[7]) {
249 252 var tag = cur[7][t];
250 253 tagspan += '<span class="tag">' + tag + '</span> ';
251 254 }
252 255 }
253 256 tagspan += '</span>';
254 257 }
255 258
256 259 item = item.replace(/_TAGS/, tagspan);
257 260 return [bg, item];
258 261
259 262 }
260 263
261 264 graph.render(data);
262 265
263 266 // stop hiding script -->
264 267 </script>
265 268
266 269 <div class="navigate">
267 270 <a href="/graph/-1?revcount=12">less</a>
268 271 <a href="/graph/-1?revcount=50">more</a>
269 272 | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a>
270 273 </div>
271 274
272 275 </div>
273 276 </div>
274 277
275 278
276 279
277 280 </body>
278 281 </html>
279 282
280 283 200 Script output follows
281 284
282 285 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
283 286 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
284 287 <head>
285 288 <link rel="icon" href="/static/hgicon.png" type="image/png" />
286 289 <meta name="robots" content="index, nofollow" />
287 290 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
288 291
289 292 <title>test: 000000000000 /</title>
290 293 </head>
291 294 <body>
292 295
293 296 <div class="container">
294 297 <div class="menu">
295 298 <div class="logo">
296 299 <a href="http://www.selenic.com/mercurial/">
297 300 <img src="/static/hglogo.png" alt="mercurial" /></a>
298 301 </div>
299 302 <ul>
300 303 <li><a href="/shortlog/000000000000">log</a></li>
301 304 <li><a href="/graph/000000000000">graph</a></li>
302 305 <li><a href="/tags">tags</a></li>
306 <li><a href="/branches">branches</a></li>
303 307 </ul>
304 308 <ul>
305 309 <li><a href="/rev/000000000000">changeset</a></li>
306 310 <li class="active">browse</li>
307 311 </ul>
308 312 <ul>
309 313
310 314 </ul>
311 315 </div>
312 316
313 317 <div class="main">
314 318 <h2><a href="/">test</a></h2>
315 319 <h3>directory / @ -1:000000000000 <span class="tag">tip</span> </h3>
316 320
317 321 <form class="search" action="/log">
318 322
319 323 <p><input name="rev" id="search1" type="text" size="30" /></p>
320 324 <div id="hint">find changesets by author, revision,
321 325 files, or words in the commit message</div>
322 326 </form>
323 327
324 328 <table class="bigtable">
325 329 <tr>
326 330 <th class="name">name</th>
327 331 <th class="size">size</th>
328 332 <th class="permissions">permissions</th>
329 333 </tr>
330 334 <tr class="fileline parity0">
331 335 <td class="name"><a href="/file/000000000000/">[up]</a></td>
332 336 <td class="size"></td>
333 337 <td class="permissions">drwxr-xr-x</td>
334 338 </tr>
335 339
336 340
337 341 </table>
338 342 </div>
339 343 </div>
340 344
341 345
342 346 </body>
343 347 </html>
344 348
@@ -1,555 +1,560 b''
1 1 adding b
2 2 adding a
3 3 adding a
4 4 changeset: 6:38d962e6234d
5 5 tag: tip
6 6 user: test
7 7 date: Thu Jan 01 00:00:00 1970 +0000
8 8 summary: change c
9 9
10 10 diff -r a3b6a9e4507e -r 38d962e6234d c
11 11 --- a/c Thu Jan 01 00:00:00 1970 +0000
12 12 +++ b/c Thu Jan 01 00:00:00 1970 +0000
13 13 @@ -1,1 +1,2 @@
14 14 b
15 15 +c
16 16
17 17 changeset: 5:a3b6a9e4507e
18 18 user: test
19 19 date: Thu Jan 01 00:00:00 1970 +0000
20 20 summary: mv b
21 21
22 22 diff -r 52e848cdcd88 -r a3b6a9e4507e b
23 23 --- a/b Thu Jan 01 00:00:00 1970 +0000
24 24 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
25 25 @@ -1,1 +0,0 @@
26 26 -b
27 27 diff -r 52e848cdcd88 -r a3b6a9e4507e c
28 28 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
29 29 +++ b/c Thu Jan 01 00:00:00 1970 +0000
30 30 @@ -0,0 +1,1 @@
31 31 +b
32 32
33 33 changeset: 4:52e848cdcd88
34 34 user: test
35 35 date: Thu Jan 01 00:00:00 1970 +0000
36 36 summary: del2 a
37 37
38 38 diff -r 01de2d66a28d -r 52e848cdcd88 a
39 39 --- a/a Thu Jan 01 00:00:00 1970 +0000
40 40 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
41 41 @@ -1,1 +0,0 @@
42 42 -b
43 43
44 44 changeset: 3:01de2d66a28d
45 45 user: test
46 46 date: Thu Jan 01 00:00:00 1970 +0000
47 47 summary: second a
48 48
49 49 diff -r be3ebcc91739 -r 01de2d66a28d a
50 50 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
51 51 +++ b/a Thu Jan 01 00:00:00 1970 +0000
52 52 @@ -0,0 +1,1 @@
53 53 +b
54 54
55 55 changeset: 2:be3ebcc91739
56 56 user: test
57 57 date: Thu Jan 01 00:00:00 1970 +0000
58 58 summary: del a
59 59
60 60 diff -r 5ed941583260 -r be3ebcc91739 a
61 61 --- a/a Thu Jan 01 00:00:00 1970 +0000
62 62 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
63 63 @@ -1,1 +0,0 @@
64 64 -a
65 65
66 66 changeset: 1:5ed941583260
67 67 user: test
68 68 date: Thu Jan 01 00:00:00 1970 +0000
69 69 summary: first a
70 70
71 71 diff -r 6563da9dcf87 -r 5ed941583260 a
72 72 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
73 73 +++ b/a Thu Jan 01 00:00:00 1970 +0000
74 74 @@ -0,0 +1,1 @@
75 75 +a
76 76
77 77 changeset: 0:6563da9dcf87
78 78 user: test
79 79 date: Thu Jan 01 00:00:00 1970 +0000
80 80 summary: b
81 81
82 82 diff -r 000000000000 -r 6563da9dcf87 b
83 83 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
84 84 +++ b/b Thu Jan 01 00:00:00 1970 +0000
85 85 @@ -0,0 +1,1 @@
86 86 +b
87 87
88 88 % tip - two revisions
89 89 200 Script output follows
90 90
91 91 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
92 92 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
93 93 <head>
94 94 <link rel="icon" href="/static/hgicon.png" type="image/png" />
95 95 <meta name="robots" content="index, nofollow" />
96 96 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
97 97
98 98 <title>test: a history</title>
99 99 <link rel="alternate" type="application/atom+xml"
100 100 href="/atom-log/tip/a" title="Atom feed for test:a" />
101 101 <link rel="alternate" type="application/rss+xml"
102 102 href="/rss-log/tip/a" title="RSS feed for test:a" />
103 103 </head>
104 104 <body>
105 105
106 106 <div class="container">
107 107 <div class="menu">
108 108 <div class="logo">
109 109 <a href="http://www.selenic.com/mercurial/">
110 110 <img src="/static/hglogo.png" alt="mercurial" /></a>
111 111 </div>
112 112 <ul>
113 113 <li><a href="/shortlog/01de2d66a28d">log</a></li>
114 114 <li><a href="/graph/01de2d66a28d">graph</a></li>
115 115 <li><a href="/tags">tags</a></li>
116 <li><a href="/branches">branches</a></li>
116 117 </ul>
117 118 <ul>
118 119 <li><a href="/rev/01de2d66a28d">changeset</a></li>
119 120 <li><a href="/file/01de2d66a28d">browse</a></li>
120 121 </ul>
121 122 <ul>
122 123 <li><a href="/file/01de2d66a28d/a">file</a></li>
123 124 <li><a href="/diff/01de2d66a28d/a">diff</a></li>
124 125 <li><a href="/annotate/01de2d66a28d/a">annotate</a></li>
125 126 <li class="active">file log</li>
126 127 <li><a href="/raw-file/01de2d66a28d/a">raw</a></li>
127 128 </ul>
128 129 </div>
129 130
130 131 <div class="main">
131 132 <h2><a href="/">test</a></h2>
132 133 <h3>log a</h3>
133 134
134 135 <form class="search" action="/log">
135 136
136 137 <p><input name="rev" id="search1" type="text" size="30" /></p>
137 138 <div id="hint">find changesets by author, revision,
138 139 files, or words in the commit message</div>
139 140 </form>
140 141
141 142 <div class="navigate"><a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div>
142 143
143 144 <table class="bigtable">
144 145 <tr>
145 146 <th class="age">age</th>
146 147 <th class="author">author</th>
147 148 <th class="description">description</th>
148 149 </tr>
149 150 <tr class="parity0">
150 151 <td class="age">many years</td>
151 152 <td class="author">test</td>
152 153 <td class="description"><a href="/rev/01de2d66a28d">second a</a></td>
153 154 </tr>
154 155 <tr class="parity1">
155 156 <td class="age">many years</td>
156 157 <td class="author">test</td>
157 158 <td class="description"><a href="/rev/5ed941583260">first a</a></td>
158 159 </tr>
159 160
160 161 </table>
161 162
162 163 </div>
163 164 </div>
164 165
165 166
166 167
167 168 </body>
168 169 </html>
169 170
170 171 % second version - two revisions
171 172 200 Script output follows
172 173
173 174 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
174 175 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
175 176 <head>
176 177 <link rel="icon" href="/static/hgicon.png" type="image/png" />
177 178 <meta name="robots" content="index, nofollow" />
178 179 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
179 180
180 181 <title>test: a history</title>
181 182 <link rel="alternate" type="application/atom+xml"
182 183 href="/atom-log/tip/a" title="Atom feed for test:a" />
183 184 <link rel="alternate" type="application/rss+xml"
184 185 href="/rss-log/tip/a" title="RSS feed for test:a" />
185 186 </head>
186 187 <body>
187 188
188 189 <div class="container">
189 190 <div class="menu">
190 191 <div class="logo">
191 192 <a href="http://www.selenic.com/mercurial/">
192 193 <img src="/static/hglogo.png" alt="mercurial" /></a>
193 194 </div>
194 195 <ul>
195 196 <li><a href="/shortlog/01de2d66a28d">log</a></li>
196 197 <li><a href="/graph/01de2d66a28d">graph</a></li>
197 198 <li><a href="/tags">tags</a></li>
199 <li><a href="/branches">branches</a></li>
198 200 </ul>
199 201 <ul>
200 202 <li><a href="/rev/01de2d66a28d">changeset</a></li>
201 203 <li><a href="/file/01de2d66a28d">browse</a></li>
202 204 </ul>
203 205 <ul>
204 206 <li><a href="/file/01de2d66a28d/a">file</a></li>
205 207 <li><a href="/diff/01de2d66a28d/a">diff</a></li>
206 208 <li><a href="/annotate/01de2d66a28d/a">annotate</a></li>
207 209 <li class="active">file log</li>
208 210 <li><a href="/raw-file/01de2d66a28d/a">raw</a></li>
209 211 </ul>
210 212 </div>
211 213
212 214 <div class="main">
213 215 <h2><a href="/">test</a></h2>
214 216 <h3>log a</h3>
215 217
216 218 <form class="search" action="/log">
217 219
218 220 <p><input name="rev" id="search1" type="text" size="30" /></p>
219 221 <div id="hint">find changesets by author, revision,
220 222 files, or words in the commit message</div>
221 223 </form>
222 224
223 225 <div class="navigate"><a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div>
224 226
225 227 <table class="bigtable">
226 228 <tr>
227 229 <th class="age">age</th>
228 230 <th class="author">author</th>
229 231 <th class="description">description</th>
230 232 </tr>
231 233 <tr class="parity0">
232 234 <td class="age">many years</td>
233 235 <td class="author">test</td>
234 236 <td class="description"><a href="/rev/01de2d66a28d">second a</a></td>
235 237 </tr>
236 238 <tr class="parity1">
237 239 <td class="age">many years</td>
238 240 <td class="author">test</td>
239 241 <td class="description"><a href="/rev/5ed941583260">first a</a></td>
240 242 </tr>
241 243
242 244 </table>
243 245
244 246 </div>
245 247 </div>
246 248
247 249
248 250
249 251 </body>
250 252 </html>
251 253
252 254 % first deleted - one revision
253 255 200 Script output follows
254 256
255 257 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
256 258 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
257 259 <head>
258 260 <link rel="icon" href="/static/hgicon.png" type="image/png" />
259 261 <meta name="robots" content="index, nofollow" />
260 262 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
261 263
262 264 <title>test: a history</title>
263 265 <link rel="alternate" type="application/atom+xml"
264 266 href="/atom-log/tip/a" title="Atom feed for test:a" />
265 267 <link rel="alternate" type="application/rss+xml"
266 268 href="/rss-log/tip/a" title="RSS feed for test:a" />
267 269 </head>
268 270 <body>
269 271
270 272 <div class="container">
271 273 <div class="menu">
272 274 <div class="logo">
273 275 <a href="http://www.selenic.com/mercurial/">
274 276 <img src="/static/hglogo.png" alt="mercurial" /></a>
275 277 </div>
276 278 <ul>
277 279 <li><a href="/shortlog/5ed941583260">log</a></li>
278 280 <li><a href="/graph/5ed941583260">graph</a></li>
279 281 <li><a href="/tags">tags</a></li>
282 <li><a href="/branches">branches</a></li>
280 283 </ul>
281 284 <ul>
282 285 <li><a href="/rev/5ed941583260">changeset</a></li>
283 286 <li><a href="/file/5ed941583260">browse</a></li>
284 287 </ul>
285 288 <ul>
286 289 <li><a href="/file/5ed941583260/a">file</a></li>
287 290 <li><a href="/diff/5ed941583260/a">diff</a></li>
288 291 <li><a href="/annotate/5ed941583260/a">annotate</a></li>
289 292 <li class="active">file log</li>
290 293 <li><a href="/raw-file/5ed941583260/a">raw</a></li>
291 294 </ul>
292 295 </div>
293 296
294 297 <div class="main">
295 298 <h2><a href="/">test</a></h2>
296 299 <h3>log a</h3>
297 300
298 301 <form class="search" action="/log">
299 302
300 303 <p><input name="rev" id="search1" type="text" size="30" /></p>
301 304 <div id="hint">find changesets by author, revision,
302 305 files, or words in the commit message</div>
303 306 </form>
304 307
305 308 <div class="navigate"><a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div>
306 309
307 310 <table class="bigtable">
308 311 <tr>
309 312 <th class="age">age</th>
310 313 <th class="author">author</th>
311 314 <th class="description">description</th>
312 315 </tr>
313 316 <tr class="parity0">
314 317 <td class="age">many years</td>
315 318 <td class="author">test</td>
316 319 <td class="description"><a href="/rev/5ed941583260">first a</a></td>
317 320 </tr>
318 321
319 322 </table>
320 323
321 324 </div>
322 325 </div>
323 326
324 327
325 328
326 329 </body>
327 330 </html>
328 331
329 332 % first version - one revision
330 333 200 Script output follows
331 334
332 335 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
333 336 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
334 337 <head>
335 338 <link rel="icon" href="/static/hgicon.png" type="image/png" />
336 339 <meta name="robots" content="index, nofollow" />
337 340 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
338 341
339 342 <title>test: a history</title>
340 343 <link rel="alternate" type="application/atom+xml"
341 344 href="/atom-log/tip/a" title="Atom feed for test:a" />
342 345 <link rel="alternate" type="application/rss+xml"
343 346 href="/rss-log/tip/a" title="RSS feed for test:a" />
344 347 </head>
345 348 <body>
346 349
347 350 <div class="container">
348 351 <div class="menu">
349 352 <div class="logo">
350 353 <a href="http://www.selenic.com/mercurial/">
351 354 <img src="/static/hglogo.png" alt="mercurial" /></a>
352 355 </div>
353 356 <ul>
354 357 <li><a href="/shortlog/5ed941583260">log</a></li>
355 358 <li><a href="/graph/5ed941583260">graph</a></li>
356 359 <li><a href="/tags">tags</a></li>
360 <li><a href="/branches">branches</a></li>
357 361 </ul>
358 362 <ul>
359 363 <li><a href="/rev/5ed941583260">changeset</a></li>
360 364 <li><a href="/file/5ed941583260">browse</a></li>
361 365 </ul>
362 366 <ul>
363 367 <li><a href="/file/5ed941583260/a">file</a></li>
364 368 <li><a href="/diff/5ed941583260/a">diff</a></li>
365 369 <li><a href="/annotate/5ed941583260/a">annotate</a></li>
366 370 <li class="active">file log</li>
367 371 <li><a href="/raw-file/5ed941583260/a">raw</a></li>
368 372 </ul>
369 373 </div>
370 374
371 375 <div class="main">
372 376 <h2><a href="/">test</a></h2>
373 377 <h3>log a</h3>
374 378
375 379 <form class="search" action="/log">
376 380
377 381 <p><input name="rev" id="search1" type="text" size="30" /></p>
378 382 <div id="hint">find changesets by author, revision,
379 383 files, or words in the commit message</div>
380 384 </form>
381 385
382 386 <div class="navigate"><a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div>
383 387
384 388 <table class="bigtable">
385 389 <tr>
386 390 <th class="age">age</th>
387 391 <th class="author">author</th>
388 392 <th class="description">description</th>
389 393 </tr>
390 394 <tr class="parity0">
391 395 <td class="age">many years</td>
392 396 <td class="author">test</td>
393 397 <td class="description"><a href="/rev/5ed941583260">first a</a></td>
394 398 </tr>
395 399
396 400 </table>
397 401
398 402 </div>
399 403 </div>
400 404
401 405
402 406
403 407 </body>
404 408 </html>
405 409
406 410 % before addition - error
407 411 404 Not Found
408 412
409 413 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
410 414 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
411 415 <head>
412 416 <link rel="icon" href="/static/hgicon.png" type="image/png" />
413 417 <meta name="robots" content="index, nofollow" />
414 418 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
415 419
416 420 <title>test: error</title>
417 421 </head>
418 422 <body>
419 423
420 424 <div class="container">
421 425 <div class="menu">
422 426 <div class="logo">
423 427 <a href="http://www.selenic.com/mercurial/">
424 428 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
425 429 </div>
426 430 <ul>
427 431 <li><a href="/shortlog">log</a></li>
428 432 <li><a href="/graph">graph</a></li>
429 433 <li><a href="/tags">tags</a></li>
434 <li><a href="/branches">branches</a></li>
430 435 </ul>
431 436 </div>
432 437
433 438 <div class="main">
434 439
435 440 <h2><a href="/">test</a></h2>
436 441 <h3>error</h3>
437 442
438 443 <form class="search" action="/log">
439 444
440 445 <p><input name="rev" id="search1" type="text" size="30"></p>
441 446 <div id="hint">find changesets by author, revision,
442 447 files, or words in the commit message</div>
443 448 </form>
444 449
445 450 <div class="description">
446 451 <p>
447 452 An error occurred while processing your request:
448 453 </p>
449 454 <p>
450 455 a@6563da9dcf87: not found in manifest
451 456 </p>
452 457 </div>
453 458 </div>
454 459 </div>
455 460
456 461
457 462
458 463 </body>
459 464 </html>
460 465
461 466 % should show base link, use spartan because it shows it
462 467 200 Script output follows
463 468
464 469 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
465 470 <html>
466 471 <head>
467 472 <link rel="icon" href="/static/hgicon.png" type="image/png">
468 473 <meta name="robots" content="index, nofollow" />
469 474 <link rel="stylesheet" href="/static/style.css" type="text/css" />
470 475
471 476 <title>test: c history</title>
472 477 <link rel="alternate" type="application/atom+xml"
473 478 href="/atom-log/tip/c" title="Atom feed for test:c">
474 479 <link rel="alternate" type="application/rss+xml"
475 480 href="/rss-log/tip/c" title="RSS feed for test:c">
476 481 </head>
477 482 <body>
478 483
479 484 <div class="buttons">
480 485 <a href="/log?style=spartan">changelog</a>
481 486 <a href="/shortlog?style=spartan">shortlog</a>
482 487 <a href="/graph?style=spartan">graph</a>
483 488 <a href="/tags?style=spartan">tags</a>
484 489 <a href="/file/38d962e6234d/c?style=spartan">file</a>
485 490 <a href="/annotate/38d962e6234d/c?style=spartan">annotate</a>
486 491 <a type="application/rss+xml" href="/rss-log/tip/c">rss</a>
487 492 <a type="application/atom+xml" href="/atom-log/tip/c" title="Atom feed for test:c">atom</a>
488 493 </div>
489 494
490 495 <h2>c revision history</h2>
491 496
492 497 <p>navigate: <small class="navigate"><a href="/log/a3b6a9e4507e/c?style=spartan">(0)</a> <a href="/log/tip/c?style=spartan">tip</a> </small></p>
493 498
494 499 <table class="logEntry parity0">
495 500 <tr>
496 501 <th class="age">many years ago:</th>
497 502 <th class="firstline"><a href="/rev/38d962e6234d?style=spartan">change c</a></th>
498 503 </tr>
499 504 <tr>
500 505 <th class="revision">revision 1:</td>
501 506 <td class="node">
502 507 <a href="/file/38d962e6234d/c?style=spartan">38d962e6234d</a>
503 508 <a href="/diff/38d962e6234d/c?style=spartan">(diff)</a>
504 509 <a href="/annotate/38d962e6234d/c?style=spartan">(annotate)</a>
505 510 </td>
506 511 </tr>
507 512
508 513 <tr>
509 514 <th class="author">author:</th>
510 515 <td class="author">&#116;&#101;&#115;&#116;</td>
511 516 </tr>
512 517 <tr>
513 518 <th class="date">date:</th>
514 519 <td class="date">Thu Jan 01 00:00:00 1970 +0000</td>
515 520 </tr>
516 521 </table>
517 522
518 523
519 524 <table class="logEntry parity1">
520 525 <tr>
521 526 <th class="age">many years ago:</th>
522 527 <th class="firstline"><a href="/rev/a3b6a9e4507e?style=spartan">mv b</a></th>
523 528 </tr>
524 529 <tr>
525 530 <th class="revision">revision 0:</td>
526 531 <td class="node">
527 532 <a href="/file/a3b6a9e4507e/c?style=spartan">a3b6a9e4507e</a>
528 533 <a href="/diff/a3b6a9e4507e/c?style=spartan">(diff)</a>
529 534 <a href="/annotate/a3b6a9e4507e/c?style=spartan">(annotate)</a>
530 535 </td>
531 536 </tr>
532 537 <tr><th>base:</th><td><a href="/file/1e88685f5dde/b?style=spartan">b@1e88685f5dde</a></td></tr>
533 538 <tr>
534 539 <th class="author">author:</th>
535 540 <td class="author">&#116;&#101;&#115;&#116;</td>
536 541 </tr>
537 542 <tr>
538 543 <th class="date">date:</th>
539 544 <td class="date">Thu Jan 01 00:00:00 1970 +0000</td>
540 545 </tr>
541 546 </table>
542 547
543 548
544 549
545 550
546 551
547 552 <div class="logo">
548 553 <a href="http://www.selenic.com/mercurial/">
549 554 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
550 555 </div>
551 556
552 557 </body>
553 558 </html>
554 559
555 560 % errors
@@ -1,178 +1,180 b''
1 1 % setting up repo
2 2 adding a
3 3 % set up hgweb
4 4 % revision
5 5 200 Script output follows
6 6
7 7 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
8 8 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
9 9 <head>
10 10 <link rel="icon" href="/static/hgicon.png" type="image/png" />
11 11 <meta name="robots" content="index, nofollow" />
12 12 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
13 13
14 14 <title>test: c78f6c5cbea9</title>
15 15 </head>
16 16 <body>
17 17 <div class="container">
18 18 <div class="menu">
19 19 <div class="logo">
20 20 <a href="http://www.selenic.com/mercurial/">
21 21 <img src="/static/hglogo.png" alt="mercurial" /></a>
22 22 </div>
23 23 <ul>
24 24 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
25 25 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
26 26 <li><a href="/tags">tags</a></li>
27 <li><a href="/branches">branches</a></li>
27 28 </ul>
28 29 <ul>
29 30 <li class="active">changeset</li>
30 31 <li><a href="/raw-rev/c78f6c5cbea9">raw</a></li>
31 32 <li><a href="/file/c78f6c5cbea9">browse</a></li>
32 33 </ul>
33 34 <ul>
34 35
35 36 </ul>
36 37 </div>
37 38
38 39 <div class="main">
39 40
40 41 <h2><a href="/">test</a></h2>
41 42 <h3>changeset 1:c78f6c5cbea9 <span class="tag">tip</span> </h3>
42 43
43 44 <form class="search" action="/log">
44 45
45 46 <p><input name="rev" id="search1" type="text" size="30" /></p>
46 47 <div id="hint">find changesets by author, revision,
47 48 files, or words in the commit message</div>
48 49 </form>
49 50
50 51 <div class="description">del</div>
51 52
52 53 <table id="changesetEntry">
53 54 <tr>
54 55 <th class="author">author</th>
55 56 <td class="author">&#116;&#101;&#115;&#116;</td>
56 57 </tr>
57 58 <tr>
58 59 <th class="date">date</th>
59 60 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td></tr>
60 61 <tr>
61 62 <th class="author">parents</th>
62 63 <td class="author"><a href="/rev/cb9a9f314b8b">cb9a9f314b8b</a> </td>
63 64 </tr>
64 65 <tr>
65 66 <th class="author">children</th>
66 67 <td class="author"></td>
67 68 </tr>
68 69 <tr>
69 70 <th class="files">files</th>
70 71 <td class="files">a </td>
71 72 </tr>
72 73 </table>
73 74
74 75 <div class="overflow">
75 76 <div class="sourcefirst"> line diff</div>
76 77
77 78 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
78 79 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
79 80 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -1,1 +0,0 @@
80 81 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="minusline">-a
81 82 </span></div>
82 83 </div>
83 84
84 85 </div>
85 86 </div>
86 87
87 88
88 89 </body>
89 90 </html>
90 91
91 92 % diff removed file
92 93 200 Script output follows
93 94
94 95 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
95 96 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
96 97 <head>
97 98 <link rel="icon" href="/static/hgicon.png" type="image/png" />
98 99 <meta name="robots" content="index, nofollow" />
99 100 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
100 101
101 102 <title>test: a diff</title>
102 103 </head>
103 104 <body>
104 105
105 106 <div class="container">
106 107 <div class="menu">
107 108 <div class="logo">
108 109 <a href="http://www.selenic.com/mercurial/">
109 110 <img src="/static/hglogo.png" alt="mercurial" /></a>
110 111 </div>
111 112 <ul>
112 113 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
113 114 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
114 115 <li><a href="/tags">tags</a></li>
116 <li><a href="/branches">branches</a></li>
115 117 </ul>
116 118 <ul>
117 119 <li><a href="/rev/c78f6c5cbea9">changeset</a></li>
118 120 <li><a href="/file/c78f6c5cbea9">browse</a></li>
119 121 </ul>
120 122 <ul>
121 123 <li><a href="/file/c78f6c5cbea9/a">file</a></li>
122 124 <li class="active">diff</li>
123 125 <li><a href="/annotate/c78f6c5cbea9/a">annotate</a></li>
124 126 <li><a href="/log/c78f6c5cbea9/a">file log</a></li>
125 127 <li><a href="/raw-file/c78f6c5cbea9/a">raw</a></li>
126 128 </ul>
127 129 </div>
128 130
129 131 <div class="main">
130 132 <h2><a href="/">test</a></h2>
131 133 <h3>diff a @ 1:c78f6c5cbea9</h3>
132 134
133 135 <form class="search" action="/log">
134 136 <p></p>
135 137 <p><input name="rev" id="search1" type="text" size="30" /></p>
136 138 <div id="hint">find changesets by author, revision,
137 139 files, or words in the commit message</div>
138 140 </form>
139 141
140 142 <div class="description">del</div>
141 143
142 144 <table id="changesetEntry">
143 145 <tr>
144 146 <th>author</th>
145 147 <td>&#116;&#101;&#115;&#116;</td>
146 148 </tr>
147 149 <tr>
148 150 <th>date</th>
149 151 <td>Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
150 152 </tr>
151 153 <tr>
152 154 <th>parents</th>
153 155 <td><a href="/file/cb9a9f314b8b/a">cb9a9f314b8b</a> </td>
154 156 </tr>
155 157 <tr>
156 158 <th>children</th>
157 159 <td></td>
158 160 </tr>
159 161
160 162 </table>
161 163
162 164 <div class="overflow">
163 165 <div class="sourcefirst"> line diff</div>
164 166
165 167 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
166 168 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
167 169 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -1,1 +0,0 @@
168 170 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="minusline">-a
169 171 </span></div>
170 172 </div>
171 173 </div>
172 174 </div>
173 175
174 176
175 177
176 178 </body>
177 179 </html>
178 180
@@ -1,277 +1,279 b''
1 1 adding da/foo
2 2 adding foo
3 3 % manifest
4 4 200 Script output follows
5 5
6 6
7 7 drwxr-xr-x da
8 8 -rw-r--r-- 4 foo
9 9
10 10
11 11 200 Script output follows
12 12
13 13
14 14 -rw-r--r-- 4 foo
15 15
16 16
17 17 % plain file
18 18 200 Script output follows
19 19
20 20 foo
21 21 % should give a 404 - static file that does not exist
22 22 404 Not Found
23 23
24 24 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
25 25 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
26 26 <head>
27 27 <link rel="icon" href="/static/hgicon.png" type="image/png" />
28 28 <meta name="robots" content="index, nofollow" />
29 29 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
30 30
31 31 <title>test: error</title>
32 32 </head>
33 33 <body>
34 34
35 35 <div class="container">
36 36 <div class="menu">
37 37 <div class="logo">
38 38 <a href="http://www.selenic.com/mercurial/">
39 39 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
40 40 </div>
41 41 <ul>
42 42 <li><a href="/shortlog">log</a></li>
43 43 <li><a href="/graph">graph</a></li>
44 44 <li><a href="/tags">tags</a></li>
45 <li><a href="/branches">branches</a></li>
45 46 </ul>
46 47 </div>
47 48
48 49 <div class="main">
49 50
50 51 <h2><a href="/">test</a></h2>
51 52 <h3>error</h3>
52 53
53 54 <form class="search" action="/log">
54 55
55 56 <p><input name="rev" id="search1" type="text" size="30"></p>
56 57 <div id="hint">find changesets by author, revision,
57 58 files, or words in the commit message</div>
58 59 </form>
59 60
60 61 <div class="description">
61 62 <p>
62 63 An error occurred while processing your request:
63 64 </p>
64 65 <p>
65 66 Not Found
66 67 </p>
67 68 </div>
68 69 </div>
69 70 </div>
70 71
71 72
72 73
73 74 </body>
74 75 </html>
75 76
76 77 % should give a 404 - bad revision
77 78 404 Not Found
78 79
79 80
80 81 error: revision not found: spam
81 82 % should give a 400 - bad command
82 83 400
83 84
84 85
85 86 error: no such method: spam
86 87 % should give a 404 - file does not exist
87 88 404 Not Found
88 89
89 90
90 91 error: bork@2ef0ac749a14: not found in manifest
91 92 404 Not Found
92 93
93 94 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
94 95 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
95 96 <head>
96 97 <link rel="icon" href="/static/hgicon.png" type="image/png" />
97 98 <meta name="robots" content="index, nofollow" />
98 99 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
99 100
100 101 <title>test: error</title>
101 102 </head>
102 103 <body>
103 104
104 105 <div class="container">
105 106 <div class="menu">
106 107 <div class="logo">
107 108 <a href="http://www.selenic.com/mercurial/">
108 109 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
109 110 </div>
110 111 <ul>
111 112 <li><a href="/shortlog">log</a></li>
112 113 <li><a href="/graph">graph</a></li>
113 114 <li><a href="/tags">tags</a></li>
115 <li><a href="/branches">branches</a></li>
114 116 </ul>
115 117 </div>
116 118
117 119 <div class="main">
118 120
119 121 <h2><a href="/">test</a></h2>
120 122 <h3>error</h3>
121 123
122 124 <form class="search" action="/log">
123 125
124 126 <p><input name="rev" id="search1" type="text" size="30"></p>
125 127 <div id="hint">find changesets by author, revision,
126 128 files, or words in the commit message</div>
127 129 </form>
128 130
129 131 <div class="description">
130 132 <p>
131 133 An error occurred while processing your request:
132 134 </p>
133 135 <p>
134 136 bork@2ef0ac749a14: not found in manifest
135 137 </p>
136 138 </div>
137 139 </div>
138 140 </div>
139 141
140 142
141 143
142 144 </body>
143 145 </html>
144 146
145 147 404 Not Found
146 148
147 149
148 150 error: bork@2ef0ac749a14: not found in manifest
149 151 % stop and restart
150 152 9 log lines written
151 153 % static file
152 154 200 Script output follows
153 155
154 156 body { font-family: sans-serif; font-size: 12px; margin:0px; border:solid #d9d8d1; border-width:1px; margin:10px; }
155 157 a { color:#0000cc; }
156 158 a:hover, a:visited, a:active { color:#880000; }
157 159 div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; }
158 160 div.page_header a:visited { color:#0000cc; }
159 161 div.page_header a:hover { color:#880000; }
160 162 div.page_nav { padding:8px; }
161 163 div.page_nav a:visited { color:#0000cc; }
162 164 div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px}
163 165 div.page_footer { padding:4px 8px; background-color: #d9d8d1; }
164 166 div.page_footer_text { float:left; color:#555555; font-style:italic; }
165 167 div.page_body { padding:8px; }
166 168 div.title, a.title {
167 169 display:block; padding:6px 8px;
168 170 font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000;
169 171 }
170 172 a.title:hover { background-color: #d9d8d1; }
171 173 div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; }
172 174 div.log_body { padding:8px 8px 8px 150px; }
173 175 .age { white-space:nowrap; }
174 176 span.age { position:relative; float:left; width:142px; font-style:italic; }
175 177 div.log_link {
176 178 padding:0px 8px;
177 179 font-size:10px; font-family:sans-serif; font-style:normal;
178 180 position:relative; float:left; width:136px;
179 181 }
180 182 div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; }
181 183 a.list { text-decoration:none; color:#000000; }
182 184 a.list:hover { text-decoration:underline; color:#880000; }
183 185 table { padding:8px 4px; }
184 186 th { padding:2px 5px; font-size:12px; text-align:left; }
185 187 tr.light:hover, .parity0:hover { background-color:#edece6; }
186 188 tr.dark, .parity1 { background-color:#f6f6f0; }
187 189 tr.dark:hover, .parity1:hover { background-color:#edece6; }
188 190 td { padding:2px 5px; font-size:12px; vertical-align:top; }
189 191 td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; }
190 192 td.indexlinks { white-space: nowrap; }
191 193 td.indexlinks a {
192 194 padding: 2px 5px; line-height: 10px;
193 195 border: 1px solid;
194 196 color: #ffffff; background-color: #7777bb;
195 197 border-color: #aaaadd #333366 #333366 #aaaadd;
196 198 font-weight: bold; text-align: center; text-decoration: none;
197 199 font-size: 10px;
198 200 }
199 201 td.indexlinks a:hover { background-color: #6666aa; }
200 202 div.pre { font-family:monospace; font-size:12px; white-space:pre; }
201 203 div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; }
202 204 div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; }
203 205 div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
204 206 .linenr { color:#999999; text-decoration:none }
205 207 div.rss_logo { float: right; white-space: nowrap; }
206 208 div.rss_logo a {
207 209 padding:3px 6px; line-height:10px;
208 210 border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e;
209 211 color:#ffffff; background-color:#ff6600;
210 212 font-weight:bold; font-family:sans-serif; font-size:10px;
211 213 text-align:center; text-decoration:none;
212 214 }
213 215 div.rss_logo a:hover { background-color:#ee5500; }
214 216 pre { margin: 0; }
215 217 span.logtags span {
216 218 padding: 0px 4px;
217 219 font-size: 10px;
218 220 font-weight: normal;
219 221 border: 1px solid;
220 222 background-color: #ffaaff;
221 223 border-color: #ffccff #ff00ee #ff00ee #ffccff;
222 224 }
223 225 span.logtags span.tagtag {
224 226 background-color: #ffffaa;
225 227 border-color: #ffffcc #ffee00 #ffee00 #ffffcc;
226 228 }
227 229 span.logtags span.branchtag {
228 230 background-color: #aaffaa;
229 231 border-color: #ccffcc #00cc33 #00cc33 #ccffcc;
230 232 }
231 233 span.logtags span.inbranchtag {
232 234 background-color: #d5dde6;
233 235 border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4;
234 236 }
235 237
236 238 /* Graph */
237 239 div#wrapper {
238 240 position: relative;
239 241 margin: 0;
240 242 padding: 0;
241 243 margin-top: 3px;
242 244 }
243 245
244 246 canvas {
245 247 position: absolute;
246 248 z-index: 5;
247 249 top: -0.9em;
248 250 margin: 0;
249 251 }
250 252
251 253 ul#nodebgs {
252 254 list-style: none inside none;
253 255 padding: 0;
254 256 margin: 0;
255 257 top: -0.7em;
256 258 }
257 259
258 260 ul#graphnodes li, ul#nodebgs li {
259 261 height: 39px;
260 262 }
261 263
262 264 ul#graphnodes {
263 265 position: absolute;
264 266 z-index: 10;
265 267 top: -0.8em;
266 268 list-style: none inside none;
267 269 padding: 0;
268 270 }
269 271
270 272 ul#graphnodes li .info {
271 273 display: block;
272 274 font-size: 100%;
273 275 position: relative;
274 276 top: -3px;
275 277 font-style: italic;
276 278 }
277 279 % errors
@@ -1,282 +1,285 b''
1 1 adding get-with-headers.py
2 2 adding isolatin.txt
3 3 % hg serve
4 4 % hgweb filerevision, html
5 5 200 Script output follows
6 6
7 7 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
8 8 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
9 9 <head>
10 10 <link rel="icon" href="/static/hgicon.png" type="image/png" />
11 11 <meta name="robots" content="index, nofollow" />
12 12 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
13 13
14 14 <link rel="stylesheet" href="/highlightcss" type="text/css" />
15 15 <title>test: 7c3facd7c58a get-with-headers.py</title>
16 16 </head>
17 17 <body>
18 18
19 19 <div class="container">
20 20 <div class="menu">
21 21 <div class="logo">
22 22 <a href="http://www.selenic.com/mercurial/">
23 23 <img src="/static/hglogo.png" alt="mercurial" /></a>
24 24 </div>
25 25 <ul>
26 26 <li><a href="/shortlog/7c3facd7c58a">log</a></li>
27 27 <li><a href="/graph/7c3facd7c58a">graph</a></li>
28 28 <li><a href="/tags">tags</a></li>
29 <li><a href="/branches">branches</a></li>
29 30 </ul>
30 31 <ul>
31 32 <li><a href="/rev/7c3facd7c58a">changeset</a></li>
32 33 <li><a href="/file/7c3facd7c58a/">browse</a></li>
33 34 </ul>
34 35 <ul>
35 36 <li class="active">file</li>
36 37 <li><a href="/diff/7c3facd7c58a/get-with-headers.py">diff</a></li>
37 38 <li><a href="/annotate/7c3facd7c58a/get-with-headers.py">annotate</a></li>
38 39 <li><a href="/log/7c3facd7c58a/get-with-headers.py">file log</a></li>
39 40 <li><a href="/raw-file/7c3facd7c58a/get-with-headers.py">raw</a></li>
40 41 </ul>
41 42 </div>
42 43
43 44 <div class="main">
44 45 <h2><a href="/">test</a></h2>
45 46 <h3>view get-with-headers.py @ 0:7c3facd7c58a</h3>
46 47
47 48 <form class="search" action="/log">
48 49
49 50 <p><input name="rev" id="search1" type="text" size="30" /></p>
50 51 <div id="hint">find changesets by author, revision,
51 52 files, or words in the commit message</div>
52 53 </form>
53 54
54 55 <div class="description">a</div>
55 56
56 57 <table id="changesetEntry">
57 58 <tr>
58 59 <th class="author">author</th>
59 60 <td class="author">&#116;&#101;&#115;&#116;</td>
60 61 </tr>
61 62 <tr>
62 63 <th class="date">date</th>
63 64 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
64 65 </tr>
65 66 <tr>
66 67 <th class="author">parents</th>
67 68 <td class="author"></td>
68 69 </tr>
69 70 <tr>
70 71 <th class="author">children</th>
71 72 <td class="author"></td>
72 73 </tr>
73 74
74 75 </table>
75 76
76 77 <div class="overflow">
77 78 <div class="sourcefirst"> line source</div>
78 79 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></div><div class="parity1 source"><a href="#l2" id="l2"> 2</a> </div><div class="parity0 source"><a href="#l3" id="l3"> 3</a> <span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></div><div class="parity1 source"><a href="#l4" id="l4"> 4</a> <span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></div><div class="parity0 source"><a href="#l5" id="l5"> 5</a> </div><div class="parity1 source"><a href="#l6" id="l6"> 6</a> <span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span><span class="o">,</span> <span class="nn">re</span></div><div class="parity0 source"><a href="#l7" id="l7"> 7</a> </div><div class="parity1 source"><a href="#l8" id="l8"> 8</a> <span class="kn">try</span><span class="p">:</span></div><div class="parity0 source"><a href="#l9" id="l9"> 9</a> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></div><div class="parity1 source"><a href="#l10" id="l10"> 10</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></div><div class="parity0 source"><a href="#l11" id="l11"> 11</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></div><div class="parity1 source"><a href="#l12" id="l12"> 12</a> <span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></div><div class="parity0 source"><a href="#l13" id="l13"> 13</a> <span class="kn">pass</span></div><div class="parity1 source"><a href="#l14" id="l14"> 14</a> </div><div class="parity0 source"><a href="#l15" id="l15"> 15</a> <span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">3</span><span class="p">:]]</span></div><div class="parity1 source"><a href="#l16" id="l16"> 16</a> <span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span></div><div class="parity0 source"><a href="#l17" id="l17"> 17</a> <span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span></div><div class="parity1 source"><a href="#l18" id="l18"> 18</a> <span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></div><div class="parity0 source"><a href="#l19" id="l19"> 19</a> <span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></div><div class="parity1 source"><a href="#l20" id="l20"> 20</a> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></div><div class="parity0 source"><a href="#l21" id="l21"> 21</a> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></div><div class="parity1 source"><a href="#l22" id="l22"> 22</a> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></div><div class="parity0 source"><a href="#l23" id="l23"> 23</a> <span class="kn">print</span></div><div class="parity1 source"><a href="#l24" id="l24"> 24</a> <span class="n">data</span> <span class="o">=</span> <span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">()</span></div><div class="parity0 source"><a href="#l25" id="l25"> 25</a> <span class="n">data</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">sub</span><span class="p">(</span><span class="s">&#39;\d+ years&#39;</span><span class="p">,</span> <span class="s">&#39;many years&#39;</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></div><div class="parity1 source"><a href="#l26" id="l26"> 26</a> <span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">data</span><span class="p">)</span></div><div class="parity0 source"><a href="#l27" id="l27"> 27</a> </div><div class="parity1 source"><a href="#l28" id="l28"> 28</a> <span class="kn">if</span> <span class="mi">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mi">299</span><span class="p">:</span></div><div class="parity0 source"><a href="#l29" id="l29"> 29</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span></div><div class="parity1 source"><a href="#l30" id="l30"> 30</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span></div>
79 80 <div class="sourcelast"></div>
80 81 </div>
81 82 </div>
82 83 </div>
83 84
84 85
85 86
86 87 </body>
87 88 </html>
88 89
89 90 % hgweb filerevision, html
90 91 200 Script output follows
91 92
92 93 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
93 94 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
94 95 <head>
95 96 <link rel="icon" href="/static/hgicon.png" type="image/png" />
96 97 <meta name="robots" content="index, nofollow" />
97 98 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
98 99
99 100 <link rel="stylesheet" href="/highlightcss" type="text/css" />
100 101 <title>test: 7c3facd7c58a isolatin.txt</title>
101 102 </head>
102 103 <body>
103 104
104 105 <div class="container">
105 106 <div class="menu">
106 107 <div class="logo">
107 108 <a href="http://www.selenic.com/mercurial/">
108 109 <img src="/static/hglogo.png" alt="mercurial" /></a>
109 110 </div>
110 111 <ul>
111 112 <li><a href="/shortlog/7c3facd7c58a">log</a></li>
112 113 <li><a href="/graph/7c3facd7c58a">graph</a></li>
113 114 <li><a href="/tags">tags</a></li>
115 <li><a href="/branches">branches</a></li>
114 116 </ul>
115 117 <ul>
116 118 <li><a href="/rev/7c3facd7c58a">changeset</a></li>
117 119 <li><a href="/file/7c3facd7c58a/">browse</a></li>
118 120 </ul>
119 121 <ul>
120 122 <li class="active">file</li>
121 123 <li><a href="/diff/7c3facd7c58a/isolatin.txt">diff</a></li>
122 124 <li><a href="/annotate/7c3facd7c58a/isolatin.txt">annotate</a></li>
123 125 <li><a href="/log/7c3facd7c58a/isolatin.txt">file log</a></li>
124 126 <li><a href="/raw-file/7c3facd7c58a/isolatin.txt">raw</a></li>
125 127 </ul>
126 128 </div>
127 129
128 130 <div class="main">
129 131 <h2><a href="/">test</a></h2>
130 132 <h3>view isolatin.txt @ 0:7c3facd7c58a</h3>
131 133
132 134 <form class="search" action="/log">
133 135
134 136 <p><input name="rev" id="search1" type="text" size="30" /></p>
135 137 <div id="hint">find changesets by author, revision,
136 138 files, or words in the commit message</div>
137 139 </form>
138 140
139 141 <div class="description">a</div>
140 142
141 143 <table id="changesetEntry">
142 144 <tr>
143 145 <th class="author">author</th>
144 146 <td class="author">&#116;&#101;&#115;&#116;</td>
145 147 </tr>
146 148 <tr>
147 149 <th class="date">date</th>
148 150 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
149 151 </tr>
150 152 <tr>
151 153 <th class="author">parents</th>
152 154 <td class="author"></td>
153 155 </tr>
154 156 <tr>
155 157 <th class="author">children</th>
156 158 <td class="author"></td>
157 159 </tr>
158 160
159 161 </table>
160 162
161 163 <div class="overflow">
162 164 <div class="sourcefirst"> line source</div>
163 165 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> h?bsch</div>
164 166 <div class="sourcelast"></div>
165 167 </div>
166 168 </div>
167 169 </div>
168 170
169 171
170 172
171 173 </body>
172 174 </html>
173 175
174 176 % hgweb fileannotate, html
175 177 200 Script output follows
176 178
177 179 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
178 180 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
179 181 <head>
180 182 <link rel="icon" href="/static/hgicon.png" type="image/png" />
181 183 <meta name="robots" content="index, nofollow" />
182 184 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
183 185
184 186 <link rel="stylesheet" href="/highlightcss" type="text/css" />
185 187 <title>test: get-with-headers.py annotate</title>
186 188 </head>
187 189 <body>
188 190
189 191 <div class="container">
190 192 <div class="menu">
191 193 <div class="logo">
192 194 <a href="http://www.selenic.com/mercurial/">
193 195 <img src="/static/hglogo.png" alt="mercurial" /></a>
194 196 </div>
195 197 <ul>
196 198 <li><a href="/shortlog/7c3facd7c58a">log</a></li>
197 199 <li><a href="/graph/7c3facd7c58a">graph</a></li>
198 200 <li><a href="/tags">tags</a></li>
201 <li><a href="/branches">branches</a></li>
199 202 </ul>
200 203
201 204 <ul>
202 205 <li><a href="/rev/7c3facd7c58a">changeset</a></li>
203 206 <li><a href="/file/7c3facd7c58a/">browse</a></li>
204 207 </ul>
205 208 <ul>
206 209 <li><a href="/file/7c3facd7c58a/get-with-headers.py">file</a></li>
207 210 <li><a href="/diff/7c3facd7c58a/get-with-headers.py">diff</a></li>
208 211 <li class="active">annotate</li>
209 212 <li><a href="/log/7c3facd7c58a/get-with-headers.py">file log</a></li>
210 213 <li><a href="/raw-annotate/7c3facd7c58a/get-with-headers.py">raw</a></li>
211 214 </ul>
212 215 </div>
213 216
214 217 <div class="main">
215 218 <h2><a href="/">test</a></h2>
216 219 <h3>annotate get-with-headers.py @ 0:7c3facd7c58a</h3>
217 220
218 221 <form class="search" action="/log">
219 222
220 223 <p><input name="rev" id="search1" type="text" size="30" /></p>
221 224 <div id="hint">find changesets by author, revision,
222 225 files, or words in the commit message</div>
223 226 </form>
224 227
225 228 <div class="description">a</div>
226 229
227 230 <table id="changesetEntry">
228 231 <tr>
229 232 <th class="author">author</th>
230 233 <td class="author">&#116;&#101;&#115;&#116;</td>
231 234 </tr>
232 235 <tr>
233 236 <th class="date">date</th>
234 237 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (many years ago)</td>
235 238 </tr>
236 239 <tr>
237 240 <th class="author">parents</th>
238 241 <td class="author"></td>
239 242 </tr>
240 243 <tr>
241 244 <th class="author">children</th>
242 245 <td class="author"></td>
243 246 </tr>
244 247
245 248 </table>
246 249
247 250 <br/>
248 251
249 252 <div class="overflow">
250 253 <table class="bigtable">
251 254 <tr>
252 255 <th class="annotate">rev</th>
253 256 <th class="line">&nbsp;&nbsp;line source</th>
254 257 </tr>
255 258 <tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#1" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#2" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l2" id="l2"> 2</a> </td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#3" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l3" id="l3"> 3</a> <span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#4" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l4" id="l4"> 4</a> <span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#5" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l5" id="l5"> 5</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#6" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l6" id="l6"> 6</a> <span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span><span class="o">,</span> <span class="nn">re</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#7" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l7" id="l7"> 7</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#8" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l8" id="l8"> 8</a> <span class="kn">try</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#9" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l9" id="l9"> 9</a> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#10" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l10" id="l10"> 10</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#11" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l11" id="l11"> 11</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#12" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l12" id="l12"> 12</a> <span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#13" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l13" id="l13"> 13</a> <span class="kn">pass</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#14" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l14" id="l14"> 14</a> </td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#15" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l15" id="l15"> 15</a> <span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">3</span><span class="p">:]]</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#16" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l16" id="l16"> 16</a> <span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#17" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l17" id="l17"> 17</a> <span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">2</span><span class="p">])</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#18" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l18" id="l18"> 18</a> <span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#19" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l19" id="l19"> 19</a> <span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#20" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l20" id="l20"> 20</a> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#21" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l21" id="l21"> 21</a> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#22" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l22" id="l22"> 22</a> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#23" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l23" id="l23"> 23</a> <span class="kn">print</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#24" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l24" id="l24"> 24</a> <span class="n">data</span> <span class="o">=</span> <span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">()</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#25" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l25" id="l25"> 25</a> <span class="n">data</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">sub</span><span class="p">(</span><span class="s">&#39;\d+ years&#39;</span><span class="p">,</span> <span class="s">&#39;many years&#39;</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#26" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l26" id="l26"> 26</a> <span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">data</span><span class="p">)</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#27" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l27" id="l27"> 27</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#28" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l28" id="l28"> 28</a> <span class="kn">if</span> <span class="mf">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mf">299</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#29" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l29" id="l29"> 29</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">0</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7c3facd7c58a/get-with-headers.py#30" title="7c3facd7c58a: a">test@0</a></td><td class="source"><a href="#l30" id="l30"> 30</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">1</span><span class="p">)</span></td></tr>
256 259 </table>
257 260 </div>
258 261 </div>
259 262 </div>
260 263
261 264
262 265
263 266 </body>
264 267 </html>
265 268
266 269 % hgweb fileannotate, raw
267 270
268 271 % hgweb filerevision, raw
269 272
270 273 % hgweb highlightcss friendly
271 274 200 Script output follows
272 275
273 276 /* pygments_style = friendly */
274 277
275 278 % errors encountered
276 279 % hg serve again
277 280 % hgweb highlightcss fruity
278 281 200 Script output follows
279 282
280 283 /* pygments_style = fruity */
281 284
282 285 % errors encountered
General Comments 0
You need to be logged in to leave comments. Login now