##// END OF EJS Templates
merged brendan's hgweb cleanups
Thomas Arendsen Hein -
r3209:9e8dd611 merge default
parent child Browse files
Show More
@@ -148,6 +148,12 b' class filectx(object):'
148 def __eq__(self, other):
148 def __eq__(self, other):
149 return self._path == other._path and self._changeid == other._changeid
149 return self._path == other._path and self._changeid == other._changeid
150
150
151 def filectx(self, fileid):
152 '''opens an arbitrary revision of the file without
153 opening a new filelog'''
154 return filectx(self._repo, self._path, fileid=fileid,
155 filelog=self._filelog)
156
151 def filerev(self): return self._filerev
157 def filerev(self): return self._filerev
152 def filenode(self): return self._filenode
158 def filenode(self): return self._filenode
153 def filelog(self): return self._filelog
159 def filelog(self): return self._filelog
@@ -70,14 +70,12 b' class hgweb(object):'
70 if len(files) > self.maxfiles:
70 if len(files) > self.maxfiles:
71 yield self.t("fileellipses")
71 yield self.t("fileellipses")
72
72
73 def siblings(self, siblings=[], rev=None, hiderev=None, **args):
73 def siblings(self, siblings=[], hiderev=None, **args):
74 if not rev:
74 siblings = [s for s in siblings if s.node() != nullid]
75 rev = lambda x: ""
75 if len(siblings) == 1 and siblings[0].rev() == hiderev:
76 siblings = [s for s in siblings if s != nullid]
77 if len(siblings) == 1 and rev(siblings[0]) == hiderev:
78 return
76 return
79 for s in siblings:
77 for s in siblings:
80 yield dict(node=hex(s), rev=rev(s), **args)
78 yield dict(node=hex(s.node()), rev=s.rev(), **args)
81
79
82 def renamelink(self, fl, node):
80 def renamelink(self, fl, node):
83 r = fl.renamed(node)
81 r = fl.renamed(node)
@@ -191,23 +189,19 b' class hgweb(object):'
191 cl = self.repo.changelog
189 cl = self.repo.changelog
192 l = [] # build a list in forward order for efficiency
190 l = [] # build a list in forward order for efficiency
193 for i in range(start, end):
191 for i in range(start, end):
194 n = cl.node(i)
192 ctx = self.repo.changectx(i)
195 changes = cl.read(n)
193 n = ctx.node()
196 hn = hex(n)
197
194
198 l.insert(0, {"parity": parity,
195 l.insert(0, {"parity": parity,
199 "author": changes[1],
196 "author": ctx.user(),
200 "parent": self.siblings(cl.parents(n), cl.rev,
197 "parent": self.siblings(ctx.parents(), i - 1),
201 cl.rev(n) - 1),
198 "child": self.siblings(ctx.children(), i + 1),
202 "child": self.siblings(cl.children(n), cl.rev,
203 cl.rev(n) + 1),
204 "changelogtag": self.showtag("changelogtag",n),
199 "changelogtag": self.showtag("changelogtag",n),
205 "manifest": hex(changes[0]),
200 "desc": ctx.description(),
206 "desc": changes[4],
201 "date": ctx.date(),
207 "date": changes[2],
202 "files": self.listfilediffs(ctx.files(), n),
208 "files": self.listfilediffs(changes[3], n),
209 "rev": i,
203 "rev": i,
210 "node": hn})
204 "node": hex(n)})
211 parity = 1 - parity
205 parity = 1 - parity
212
206
213 for e in l:
207 for e in l:
@@ -223,7 +217,7 b' class hgweb(object):'
223
217
224 yield self.t(shortlog and 'shortlog' or 'changelog',
218 yield self.t(shortlog and 'shortlog' or 'changelog',
225 changenav=changenav,
219 changenav=changenav,
226 manifest=hex(mf),
220 node=hex(cl.tip()),
227 rev=pos, changesets=count, entries=changelist,
221 rev=pos, changesets=count, entries=changelist,
228 archives=self.archivelist("tip"))
222 archives=self.archivelist("tip"))
229
223
@@ -238,64 +232,59 b' class hgweb(object):'
238 for i in range(cl.count() - 1, 0, -100):
232 for i in range(cl.count() - 1, 0, -100):
239 l = []
233 l = []
240 for j in range(max(0, i - 100), i):
234 for j in range(max(0, i - 100), i):
241 n = cl.node(j)
235 ctx = self.repo.changectx(j)
242 changes = cl.read(n)
236 l.append(ctx)
243 l.append((n, j, changes))
244 l.reverse()
237 l.reverse()
245 for e in l:
238 for e in l:
246 yield e
239 yield e
247
240
248 for n, i, changes in revgen():
241 for ctx in revgen():
249 miss = 0
242 miss = 0
250 for q in qw:
243 for q in qw:
251 if not (q in changes[1].lower() or
244 if not (q in ctx.user().lower() or
252 q in changes[4].lower() or
245 q in ctx.description().lower() or
253 q in " ".join(changes[3][:20]).lower()):
246 q in " ".join(ctx.files()[:20]).lower()):
254 miss = 1
247 miss = 1
255 break
248 break
256 if miss:
249 if miss:
257 continue
250 continue
258
251
259 count += 1
252 count += 1
260 hn = hex(n)
253 n = ctx.node()
261
254
262 yield self.t('searchentry',
255 yield self.t('searchentry',
263 parity=self.stripes(count),
256 parity=self.stripes(count),
264 author=changes[1],
257 author=ctx.user(),
265 parent=self.siblings(cl.parents(n), cl.rev),
258 parent=self.siblings(ctx.parents()),
266 child=self.siblings(cl.children(n), cl.rev),
259 child=self.siblings(ctx.children()),
267 changelogtag=self.showtag("changelogtag",n),
260 changelogtag=self.showtag("changelogtag",n),
268 manifest=hex(changes[0]),
261 desc=ctx.description(),
269 desc=changes[4],
262 date=ctx.date(),
270 date=changes[2],
263 files=self.listfilediffs(ctx.files(), n),
271 files=self.listfilediffs(changes[3], n),
264 rev=ctx.rev(),
272 rev=i,
265 node=hex(n))
273 node=hn)
274
266
275 if count >= self.maxchanges:
267 if count >= self.maxchanges:
276 break
268 break
277
269
278 cl = self.repo.changelog
270 cl = self.repo.changelog
279 mf = cl.read(cl.tip())[0]
280
271
281 yield self.t('search',
272 yield self.t('search',
282 query=query,
273 query=query,
283 manifest=hex(mf),
274 node=hex(cl.tip()),
284 entries=changelist)
275 entries=changelist)
285
276
286 def changeset(self, nodeid):
277 def changeset(self, nodeid):
287 cl = self.repo.changelog
278 ctx = self.repo.changectx(nodeid)
288 n = self.repo.lookup(nodeid)
279 n = ctx.node()
289 nodeid = hex(n)
280 parents = ctx.parents()
290 changes = cl.read(n)
281 p1 = parents[0].node()
291 p1 = cl.parents(n)[0]
292
282
293 files = []
283 files = []
294 mf = self.repo.manifest.read(changes[0])
295 parity = 0
284 parity = 0
296 for f in changes[3]:
285 for f in ctx.files():
297 files.append(self.t("filenodelink",
286 files.append(self.t("filenodelink",
298 filenode=hex(mf.get(f, nullid)), file=f,
287 node=hex(n), file=f,
299 parity=parity))
288 parity=parity))
300 parity = 1 - parity
289 parity = 1 - parity
301
290
@@ -304,22 +293,21 b' class hgweb(object):'
304
293
305 yield self.t('changeset',
294 yield self.t('changeset',
306 diff=diff,
295 diff=diff,
307 rev=cl.rev(n),
296 rev=ctx.rev(),
308 node=nodeid,
297 node=hex(n),
309 parent=self.siblings(cl.parents(n), cl.rev),
298 parent=self.siblings(parents),
310 child=self.siblings(cl.children(n), cl.rev),
299 child=self.siblings(ctx.children()),
311 changesettag=self.showtag("changesettag",n),
300 changesettag=self.showtag("changesettag",n),
312 manifest=hex(changes[0]),
301 author=ctx.user(),
313 author=changes[1],
302 desc=ctx.description(),
314 desc=changes[4],
303 date=ctx.date(),
315 date=changes[2],
316 files=files,
304 files=files,
317 archives=self.archivelist(nodeid))
305 archives=self.archivelist(nodeid))
318
306
319 def filelog(self, f, filenode):
307 def filelog(self, fctx):
308 f = fctx.path()
320 cl = self.repo.changelog
309 cl = self.repo.changelog
321 fl = self.repo.file(f)
310 fl = fctx.filelog()
322 filenode = hex(fl.lookup(filenode))
323 count = fl.count()
311 count = fl.count()
324
312
325 def entries(**map):
313 def entries(**map):
@@ -327,41 +315,31 b' class hgweb(object):'
327 parity = (count - 1) & 1
315 parity = (count - 1) & 1
328
316
329 for i in range(count):
317 for i in range(count):
318 ctx = fctx.filectx(i)
330 n = fl.node(i)
319 n = fl.node(i)
331 lr = fl.linkrev(n)
332 cn = cl.node(lr)
333 cs = cl.read(cl.node(lr))
334
320
335 l.insert(0, {"parity": parity,
321 l.insert(0, {"parity": parity,
336 "filenode": hex(n),
337 "filerev": i,
322 "filerev": i,
338 "file": f,
323 "file": f,
339 "node": hex(cn),
324 "node": hex(ctx.node()),
340 "author": cs[1],
325 "author": ctx.user(),
341 "date": cs[2],
326 "date": ctx.date(),
342 "rename": self.renamelink(fl, n),
327 "rename": self.renamelink(fl, n),
343 "parent": self.siblings(fl.parents(n),
328 "parent": self.siblings(fctx.parents(), file=f),
344 fl.rev, file=f),
329 "child": self.siblings(fctx.children(), file=f),
345 "child": self.siblings(fl.children(n),
330 "desc": ctx.description()})
346 fl.rev, file=f),
347 "desc": cs[4]})
348 parity = 1 - parity
331 parity = 1 - parity
349
332
350 for e in l:
333 for e in l:
351 yield e
334 yield e
352
335
353 yield self.t("filelog", file=f, filenode=filenode, entries=entries)
336 yield self.t("filelog", file=f, node=hex(fctx.node()), entries=entries)
354
337
355 def filerevision(self, f, node):
338 def filerevision(self, fctx):
356 fl = self.repo.file(f)
339 f = fctx.path()
357 n = fl.lookup(node)
340 text = fctx.data()
358 node = hex(n)
341 fl = fctx.filelog()
359 text = fl.read(n)
342 n = fctx.filenode()
360 changerev = fl.linkrev(n)
361 cl = self.repo.changelog
362 cn = cl.node(changerev)
363 cs = cl.read(cn)
364 mfn = cs[0]
365
343
366 mt = mimetypes.guess_type(f)[0]
344 mt = mimetypes.guess_type(f)[0]
367 rawtext = text
345 rawtext = text
@@ -378,23 +356,21 b' class hgweb(object):'
378
356
379 yield self.t("filerevision",
357 yield self.t("filerevision",
380 file=f,
358 file=f,
381 filenode=node,
382 path=_up(f),
359 path=_up(f),
383 text=lines(),
360 text=lines(),
384 raw=rawtext,
361 raw=rawtext,
385 mimetype=mt,
362 mimetype=mt,
386 rev=changerev,
363 rev=fctx.rev(),
387 node=hex(cn),
364 node=hex(fctx.node()),
388 manifest=hex(mfn),
365 author=fctx.user(),
389 author=cs[1],
366 date=fctx.date(),
390 date=cs[2],
367 parent=self.siblings(fctx.parents(), file=f),
391 parent=self.siblings(fl.parents(n), fl.rev, file=f),
368 child=self.siblings(fctx.children(), file=f),
392 child=self.siblings(fl.children(n), fl.rev, file=f),
393 rename=self.renamelink(fl, n),
369 rename=self.renamelink(fl, n),
394 permissions=self.repo.manifest.read(mfn).execf(f))
370 permissions=fctx.manifest().execf(f))
395
371
396 def fileannotate(self, f, node):
372 def fileannotate(self, fctx):
397 fctx = self.repo.filectx(f, fileid=node)
373 f = fctx.path()
398 n = fctx.filenode()
374 n = fctx.filenode()
399 fl = fctx.filelog()
375 fl = fctx.filelog()
400
376
@@ -411,7 +387,6 b' class hgweb(object):'
411
387
412 yield {"parity": parity,
388 yield {"parity": parity,
413 "node": hex(f.node()),
389 "node": hex(f.node()),
414 "filenode": hex(fnode),
415 "rev": f.rev(),
390 "rev": f.rev(),
416 "author": name,
391 "author": name,
417 "file": f.path(),
392 "file": f.path(),
@@ -419,27 +394,20 b' class hgweb(object):'
419
394
420 yield self.t("fileannotate",
395 yield self.t("fileannotate",
421 file=f,
396 file=f,
422 filenode=node,
423 annotate=annotate,
397 annotate=annotate,
424 path=_up(f),
398 path=_up(f),
425 rev=fctx.rev(),
399 rev=fctx.rev(),
426 node=hex(fctx.node()),
400 node=hex(fctx.node()),
427 manifest=hex(fctx.changectx().changeset()[0]),
428 author=fctx.user(),
401 author=fctx.user(),
429 date=fctx.date(),
402 date=fctx.date(),
430 rename=self.renamelink(fl, n),
403 rename=self.renamelink(fl, n),
431 parent=self.siblings(fl.parents(n), fl.rev, file=f),
404 parent=self.siblings(fctx.parents(), file=f),
432 child=self.siblings(fl.children(n), fl.rev, file=f),
405 child=self.siblings(fctx.children(), file=f),
433 permissions=fctx.manifest().execf(f))
406 permissions=fctx.manifest().execf(f))
434
407
435 def manifest(self, mnode, path):
408 def manifest(self, ctx, path):
436 man = self.repo.manifest
409 mf = ctx.manifest()
437 mn = man.lookup(mnode)
410 node = ctx.node()
438 mnode = hex(mn)
439 mf = man.read(mn)
440 rev = man.rev(mn)
441 changerev = man.linkrev(mn)
442 node = self.repo.changelog.node(changerev)
443
411
444 files = {}
412 files = {}
445
413
@@ -469,7 +437,6 b' class hgweb(object):'
469 continue
437 continue
470
438
471 yield {"file": full,
439 yield {"file": full,
472 "manifest": mnode,
473 "filenode": hex(fnode),
440 "filenode": hex(fnode),
474 "parity": self.stripes(parity),
441 "parity": self.stripes(parity),
475 "basename": f,
442 "basename": f,
@@ -487,13 +454,11 b' class hgweb(object):'
487
454
488 yield {"parity": self.stripes(parity),
455 yield {"parity": self.stripes(parity),
489 "path": os.path.join(path, f),
456 "path": os.path.join(path, f),
490 "manifest": mnode,
491 "basename": f[:-1]}
457 "basename": f[:-1]}
492 parity += 1
458 parity += 1
493
459
494 yield self.t("manifest",
460 yield self.t("manifest",
495 manifest=mnode,
461 rev=ctx.rev(),
496 rev=rev,
497 node=hex(node),
462 node=hex(node),
498 path=path,
463 path=path,
499 up=_up(path),
464 up=_up(path),
@@ -503,7 +468,6 b' class hgweb(object):'
503
468
504 def tags(self):
469 def tags(self):
505 cl = self.repo.changelog
470 cl = self.repo.changelog
506 mf = cl.read(cl.tip())[0]
507
471
508 i = self.repo.tagslist()
472 i = self.repo.tagslist()
509 i.reverse()
473 i.reverse()
@@ -514,19 +478,17 b' class hgweb(object):'
514 if notip and k == "tip": continue
478 if notip and k == "tip": continue
515 yield {"parity": self.stripes(parity),
479 yield {"parity": self.stripes(parity),
516 "tag": k,
480 "tag": k,
517 "tagmanifest": hex(cl.read(n)[0]),
518 "date": cl.read(n)[2],
481 "date": cl.read(n)[2],
519 "node": hex(n)}
482 "node": hex(n)}
520 parity += 1
483 parity += 1
521
484
522 yield self.t("tags",
485 yield self.t("tags",
523 manifest=hex(mf),
486 node=hex(self.repo.changelog.tip()),
524 entries=lambda **x: entries(False, **x),
487 entries=lambda **x: entries(False, **x),
525 entriesnotip=lambda **x: entries(True, **x))
488 entriesnotip=lambda **x: entries(True, **x))
526
489
527 def summary(self):
490 def summary(self):
528 cl = self.repo.changelog
491 cl = self.repo.changelog
529 mf = cl.read(cl.tip())[0]
530
492
531 i = self.repo.tagslist()
493 i = self.repo.tagslist()
532 i.reverse()
494 i.reverse()
@@ -550,8 +512,7 b' class hgweb(object):'
550 parity = self.stripes(parity),
512 parity = self.stripes(parity),
551 tag = k,
513 tag = k,
552 node = hex(n),
514 node = hex(n),
553 date = t,
515 date = t)
554 tagmanifest = hex(m))
555 parity += 1
516 parity += 1
556
517
557 def changelist(**map):
518 def changelist(**map):
@@ -568,7 +529,6 b' class hgweb(object):'
568 'shortlogentry',
529 'shortlogentry',
569 parity = parity,
530 parity = parity,
570 author = changes[1],
531 author = changes[1],
571 manifest = hex(changes[0]),
572 desc = changes[4],
532 desc = changes[4],
573 date = t,
533 date = t,
574 rev = i,
534 rev = i,
@@ -577,8 +537,6 b' class hgweb(object):'
577
537
578 yield l
538 yield l
579
539
580 cl = self.repo.changelog
581 mf = cl.read(cl.tip())[0]
582 count = cl.count()
540 count = cl.count()
583 start = max(0, count - self.maxchanges)
541 start = max(0, count - self.maxchanges)
584 end = min(count, start + self.maxchanges)
542 end = min(count, start + self.maxchanges)
@@ -589,29 +547,26 b' class hgweb(object):'
589 self.repo.ui.config("web", "contact") or # deprecated
547 self.repo.ui.config("web", "contact") or # deprecated
590 self.repo.ui.config("web", "author", "unknown")), # also
548 self.repo.ui.config("web", "author", "unknown")), # also
591 lastchange = (0, 0), # FIXME
549 lastchange = (0, 0), # FIXME
592 manifest = hex(mf),
593 tags = tagentries,
550 tags = tagentries,
594 shortlog = changelist,
551 shortlog = changelist,
552 node = hex(self.repo.changelog.tip()),
595 archives=self.archivelist("tip"))
553 archives=self.archivelist("tip"))
596
554
597 def filediff(self, file, changeset):
555 def filediff(self, file, changeset):
598 cl = self.repo.changelog
556 ctx = self.repo.changectx(changeset)
599 n = self.repo.lookup(changeset)
557 n = ctx.node()
600 changeset = hex(n)
558 parents = ctx.parents()
601 p1 = cl.parents(n)[0]
559 p1 = parents[0].node()
602 cs = cl.read(n)
603 mf = self.repo.manifest.read(cs[0])
604
560
605 def diff(**map):
561 def diff(**map):
606 yield self.diff(p1, n, [file])
562 yield self.diff(p1, n, [file])
607
563
608 yield self.t("filediff",
564 yield self.t("filediff",
609 file=file,
565 file=file,
610 filenode=hex(mf.get(file, nullid)),
566 node=hex(n),
611 node=changeset,
567 rev=ctx.rev(),
612 rev=self.repo.changelog.rev(n),
568 parent=self.siblings(parents),
613 parent=self.siblings(cl.parents(n), cl.rev),
569 child=self.siblings(ctx.children()),
614 child=self.siblings(cl.children(n), cl.rev),
615 diff=diff)
570 diff=diff)
616
571
617 archive_specs = {
572 archive_specs = {
@@ -693,6 +648,25 b' class hgweb(object):'
693 form[name] = value
648 form[name] = value
694 del form[k]
649 del form[k]
695
650
651 if form.has_key('manifest'):
652 changeid = req.form['manifest'][0]
653 try:
654 req.changectx = self.repo.changectx(changeid)
655 except hg.RepoError:
656 man = self.repo.manifest
657 mn = man.lookup(changeid)
658 req.changectx = self.repo.changectx(man.linkrev(mn))
659
660 if form.has_key('filenode'):
661 changeid = req.form['filenode'][0]
662 path = self.cleanpath(req.form['file'][0])
663 try:
664 req.changectx = self.repo.changectx(changeid)
665 req.filectx = req.changectx.filectx(path)
666 except hg.RepoError:
667 req.filectx = self.repo.filectx(path, fileid=changeid)
668 req.changectx = req.filectx.changectx()
669
696 self.refresh()
670 self.refresh()
697
671
698 expand_form(req.form)
672 expand_form(req.form)
@@ -771,7 +745,7 b' class hgweb(object):'
771 req.write(self.changeset(req.form['node'][0]))
745 req.write(self.changeset(req.form['node'][0]))
772
746
773 def do_manifest(self, req):
747 def do_manifest(self, req):
774 req.write(self.manifest(req.form['manifest'][0],
748 req.write(self.manifest(req.changectx,
775 self.cleanpath(req.form['path'][0])))
749 self.cleanpath(req.form['path'][0])))
776
750
777 def do_tags(self, req):
751 def do_tags(self, req):
@@ -785,16 +759,13 b' class hgweb(object):'
785 req.form['node'][0]))
759 req.form['node'][0]))
786
760
787 def do_file(self, req):
761 def do_file(self, req):
788 req.write(self.filerevision(self.cleanpath(req.form['file'][0]),
762 req.write(self.filerevision(req.filectx))
789 req.form['filenode'][0]))
790
763
791 def do_annotate(self, req):
764 def do_annotate(self, req):
792 req.write(self.fileannotate(self.cleanpath(req.form['file'][0]),
765 req.write(self.fileannotate(req.filectx))
793 req.form['filenode'][0]))
794
766
795 def do_filelog(self, req):
767 def do_filelog(self, req):
796 req.write(self.filelog(self.cleanpath(req.form['file'][0]),
768 req.write(self.filelog(req.filectx))
797 req.form['filenode'][0]))
798
769
799 def do_heads(self, req):
770 def do_heads(self, req):
800 resp = " ".join(map(hex, self.repo.heads())) + "\n"
771 resp = " ".join(map(hex, self.repo.heads())) + "\n"
@@ -20,7 +20,7 b''
20 </div>
20 </div>
21
21
22 <div class="page_nav">
22 <div class="page_nav">
23 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | changelog | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
23 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | changelog | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
24 <br/>
24 <br/>
25 #changenav%naventry#<br/>
25 #changenav%naventry#<br/>
26 </div>
26 </div>
@@ -8,7 +8,7 b''
8 <div class="buttons">
8 <div class="buttons">
9 <a href="?sl=#rev#">shortlog</a>
9 <a href="?sl=#rev#">shortlog</a>
10 <a href="?cmd=tags">tags</a>
10 <a href="?cmd=tags">tags</a>
11 <a href="?mf=#manifest|short#;path=/">manifest</a>
11 <a href="?mf=#node|short#;path=/">manifest</a>
12 #archives%archiveentry#
12 #archives%archiveentry#
13 <a type="application/rss+xml" href="?style=rss">rss</a>
13 <a type="application/rss+xml" href="?style=rss">rss</a>
14 </div>
14 </div>
@@ -19,7 +19,7 b''
19 <td class="date">#date|date#</td>
19 <td class="date">#date|date#</td>
20 </tr>
20 </tr>
21 <tr>
21 <tr>
22 <th class="files"><a href="?mf=#manifest|short#;path=/">files</a>:</th>
22 <th class="files"><a href="?mf=#node|short#;path=/">files</a>:</th>
23 <td class="files">#files#</td>
23 <td class="files">#files#</td>
24 </tr>
24 </tr>
25 </table>
25 </table>
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a> | changeset | <a href="?cmd=changeset;node=#node#;style=raw">raw</a> #archives%archiveentry#<br/>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a> | changeset | <a href="?cmd=changeset;node=#node#;style=raw">raw</a> #archives%archiveentry#<br/>
14 </div>
14 </div>
15
15
16 <div>
16 <div>
@@ -21,7 +21,7 b''
21 <tr><td>author</td><td>#author|obfuscate#</td></tr>
21 <tr><td>author</td><td>#author|obfuscate#</td></tr>
22 <tr><td></td><td>#date|date# (#date|age# ago)</td></tr>
22 <tr><td></td><td>#date|date# (#date|age# ago)</td></tr>
23 <tr><td>changeset</td><td style="font-family:monospace">#node|short#</td></tr>
23 <tr><td>changeset</td><td style="font-family:monospace">#node|short#</td></tr>
24 <tr><td>manifest</td><td style="font-family:monospace"><a class="list" href="?cmd=manifest;manifest=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
24 <tr><td>manifest</td><td style="font-family:monospace"><a class="list" href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
25 #parent%changesetparent#
25 #parent%changesetparent#
26 #child%changesetchild#
26 #child%changesetchild#
27 #changesettag#
27 #changesettag#
@@ -7,7 +7,7 b''
7 <a href="?cl=#rev#">changelog</a>
7 <a href="?cl=#rev#">changelog</a>
8 <a href="?sl=#rev#">shortlog</a>
8 <a href="?sl=#rev#">shortlog</a>
9 <a href="?cmd=tags">tags</a>
9 <a href="?cmd=tags">tags</a>
10 <a href="?mf=#manifest|short#;path=/">manifest</a>
10 <a href="?mf=#node|short#;path=/">manifest</a>
11 <a href="?cs=#node|short#;style=raw">raw</a>
11 <a href="?cs=#node|short#;style=raw">raw</a>
12 #archives%archiveentry#
12 #archives%archiveentry#
13 </div>
13 </div>
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a><br/>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a><br/>
14 </div>
14 </div>
15
15
16 <div>
16 <div>
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=gitweb">file</a> | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#filenode#;style=gitweb">revisions</a> | annotate | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=raw">raw</a><br/>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node|short#;style=gitweb">file</a> | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#node|short#;style=gitweb">revisions</a> | annotate | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=raw">raw</a><br/>
14 </div>
14 </div>
15
15
16 <div class="title">#file|escape#</div>
16 <div class="title">#file|escape#</div>
@@ -24,7 +24,7 b''
24 #child%fileannotatechild#
24 #child%fileannotatechild#
25 <tr>
25 <tr>
26 <td class="metatag">manifest:</td>
26 <td class="metatag">manifest:</td>
27 <td><a href="?mf=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
27 <td><a href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
28 <tr>
28 <tr>
29 <td class="metatag">author:</td>
29 <td class="metatag">author:</td>
30 <td>#author|obfuscate#</td></tr>
30 <td>#author|obfuscate#</td></tr>
@@ -8,10 +8,10 b''
8 <a href="?sl=#rev#">shortlog</a>
8 <a href="?sl=#rev#">shortlog</a>
9 <a href="?tags=">tags</a>
9 <a href="?tags=">tags</a>
10 <a href="?cs=#node|short#">changeset</a>
10 <a href="?cs=#node|short#">changeset</a>
11 <a href="?mf=#manifest|short#;path=#path|urlescape#">manifest</a>
11 <a href="?mf=#node|short#;path=#path|urlescape#">manifest</a>
12 <a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
12 <a href="?f=#node|short#;file=#file|urlescape#">file</a>
13 <a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
13 <a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
14 <a href="?fa=#filenode|short#;file=#file|urlescape#;style=raw">raw</a>
14 <a href="?fa=#node|short#;file=#file|urlescape#;style=raw">raw</a>
15 </div>
15 </div>
16
16
17 <h2>Annotate #file|escape#</h2>
17 <h2>Annotate #file|escape#</h2>
@@ -8,9 +8,9 b''
8 <a href="?sl=#rev#">shortlog</a>
8 <a href="?sl=#rev#">shortlog</a>
9 <a href="?tags=">tags</a>
9 <a href="?tags=">tags</a>
10 <a href="?cs=#node|short#">changeset</a>
10 <a href="?cs=#node|short#">changeset</a>
11 <a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
11 <a href="?f=#node|short#;file=#file|urlescape#">file</a>
12 <a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
12 <a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
13 <a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
13 <a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
14 <a href="?fd=#node|short#;file=#file|urlescape#;style=raw">raw</a>
14 <a href="?fd=#node|short#;file=#file|urlescape#;style=raw">raw</a>
15 </div>
15 </div>
16
16
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=gitweb">file</a> | revisions | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=gitweb">annotate</a> | <a href="?fl=#filenode|short#;file=#file|urlescape#;style=rss">rss</a><br/>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node|short#;style=gitweb">file</a> | revisions | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=gitweb">annotate</a> | <a href="?fl=#node|short#;file=#file|urlescape#;style=rss">rss</a><br/>
14 </div>
14 </div>
15
15
16 <div class="title" >#file|urlescape#</div>
16 <div class="title" >#file|urlescape#</div>
@@ -10,8 +10,8 b''
10 <a href="?cl=tip">changelog</a>
10 <a href="?cl=tip">changelog</a>
11 <a href="?sl=tip">shortlog</a>
11 <a href="?sl=tip">shortlog</a>
12 <a href="?tags=">tags</a>
12 <a href="?tags=">tags</a>
13 <a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
13 <a href="?f=#node|short#;file=#file|urlescape#">file</a>
14 <a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
14 <a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
15 <a type="application/rss+xml" href="?fl=0;file=#file|urlescape#;style=rss">rss</a>
15 <a type="application/rss+xml" href="?fl=0;file=#file|urlescape#;style=rss">rss</a>
16 </div>
16 </div>
17
17
@@ -1,6 +1,6 b''
1 <item>
1 <item>
2 <title>#desc|strip|firstline|strip|escape#</title>
2 <title>#desc|strip|firstline|strip|escape#</title>
3 <link>#url#?f=#filenode|short#;file=#file|urlescape#</link>
3 <link>#url#?f=#node|short#;file=#file|urlescape#</link>
4 <description><![CDATA[#desc|strip|escape|addbreaks#]]></description>
4 <description><![CDATA[#desc|strip|escape|addbreaks#]]></description>
5 <author>#author|obfuscate#</author>
5 <author>#author|obfuscate#</author>
6 <pubDate>#date|rfc822date#</pubDate>>
6 <pubDate>#date|rfc822date#</pubDate>>
@@ -6,9 +6,9 b''
6 <tr>
6 <tr>
7 <th class="revision">revision #filerev#:</td>
7 <th class="revision">revision #filerev#:</td>
8 <td class="node">
8 <td class="node">
9 <a href="?f=#filenode|short#;file=#file|urlescape#">#filenode|short#</a>
9 <a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a>
10 <a href="?fd=#node|short#;file=#file|urlescape#">(diff)</a>
10 <a href="?fd=#node|short#;file=#file|urlescape#">(diff)</a>
11 <a href="?fa=#filenode|short#;file=#file|urlescape#">(annotate)</a>
11 <a href="?fa=#node|short#;file=#file|urlescape#">(annotate)</a>
12 </td>
12 </td>
13 </tr>
13 </tr>
14 #rename%filelogrename#
14 #rename%filelogrename#
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | file | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#filenode#;style=gitweb">revisions</a> | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=gitweb">annotate</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=raw">raw</a><br/>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | file | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#node|short#;style=gitweb">revisions</a> | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=gitweb">annotate</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=raw">raw</a><br/>
14 </div>
14 </div>
15
15
16 <div class="title">#file|escape#</div>
16 <div class="title">#file|escape#</div>
@@ -24,7 +24,7 b''
24 #child%fileannotatechild#
24 #child%fileannotatechild#
25 <tr>
25 <tr>
26 <td class="metatag">manifest:</td>
26 <td class="metatag">manifest:</td>
27 <td><a href="?mf=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
27 <td><a href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
28 <tr>
28 <tr>
29 <td class="metatag">author:</td>
29 <td class="metatag">author:</td>
30 <td>#author|obfuscate#</td></tr>
30 <td>#author|obfuscate#</td></tr>
@@ -8,10 +8,10 b''
8 <a href="?sl=#rev#">shortlog</a>
8 <a href="?sl=#rev#">shortlog</a>
9 <a href="?tags=">tags</a>
9 <a href="?tags=">tags</a>
10 <a href="?cs=#node|short#">changeset</a>
10 <a href="?cs=#node|short#">changeset</a>
11 <a href="?mf=#manifest|short#;path=#path|urlescape#">manifest</a>
11 <a href="?mf=#node|short#;path=#path|urlescape#">manifest</a>
12 <a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
12 <a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
13 <a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
13 <a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
14 <a href="?f=#filenode|short#;file=#file|urlescape#;style=raw">raw</a>
14 <a href="?f=#node|short#;file=#file|urlescape#;style=raw">raw</a>
15 </div>
15 </div>
16
16
17 <h2>#file|escape#</h2>
17 <h2>#file|escape#</h2>
@@ -18,7 +18,7 b''
18 <table cellspacing="0">
18 <table cellspacing="0">
19 <tr class="light">
19 <tr class="light">
20 <td style="font-family:monospace">drwxr-xr-x</td>
20 <td style="font-family:monospace">drwxr-xr-x</td>
21 <td><a href="?cmd=manifest;manifest=#manifest#;path=#up|urlescape#;style=gitweb">[up]</a></td>
21 <td><a href="?mf=#node|short#;path=#up|urlescape#;style=gitweb">[up]</a></td>
22 <td class="link">&nbsp;</td>
22 <td class="link">&nbsp;</td>
23 </tr>
23 </tr>
24 #dentries%manifestdirentry#
24 #dentries%manifestdirentry#
@@ -1,5 +1,5 b''
1 #header#
1 #header#
2 <title>#repo|escape#: manifest #manifest|short#</title>
2 <title>#repo|escape#: manifest for changeset #node|short#</title>
3 </head>
3 </head>
4 <body>
4 <body>
5
5
@@ -16,7 +16,7 b''
16 <table cellpadding="0" cellspacing="0">
16 <table cellpadding="0" cellspacing="0">
17 <tr class="parity1">
17 <tr class="parity1">
18 <td><tt>drwxr-xr-x</tt>&nbsp;
18 <td><tt>drwxr-xr-x</tt>&nbsp;
19 <td><a href="?mf=#manifest|short#;path=#up|urlescape#">[up]</a>
19 <td><a href="?mf=#node|short#;path=#up|urlescape#">[up]</a>
20 #dentries%manifestdirentry#
20 #dentries%manifestdirentry#
21 #fentries%manifestfileentry#
21 #fentries%manifestfileentry#
22 </table>
22 </table>
@@ -8,21 +8,21 b' shortlogentry = shortlogentry.tmpl'
8 naventry = '<a href="?cl=#rev#">#label|escape#</a> '
8 naventry = '<a href="?cl=#rev#">#label|escape#</a> '
9 navshortentry = '<a href="?sl=#rev#">#label|escape#</a> '
9 navshortentry = '<a href="?sl=#rev#">#label|escape#</a> '
10 filedifflink = '<a href="?fd=#node|short#;file=#file|urlescape#">#file|escape#</a> '
10 filedifflink = '<a href="?fd=#node|short#;file=#file|urlescape#">#file|escape#</a> '
11 filenodelink = '<a href="?f=#filenode|short#;file=#file|urlescape#">#file|escape#</a> '
11 filenodelink = '<a href="?f=#node|short#;file=#file|urlescape#">#file|escape#</a> '
12 fileellipses = '...'
12 fileellipses = '...'
13 changelogentry = changelogentry.tmpl
13 changelogentry = changelogentry.tmpl
14 searchentry = changelogentry.tmpl
14 searchentry = changelogentry.tmpl
15 changeset = changeset.tmpl
15 changeset = changeset.tmpl
16 manifest = manifest.tmpl
16 manifest = manifest.tmpl
17 manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt>&nbsp;<td><a href="?cmd=manifest;manifest=#manifest#;path=#path|urlescape#">#basename|escape#/</a>'
17 manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt>&nbsp;<td><a href="?mf=#node|short#;path=#path|urlescape#">#basename|escape#/</a>'
18 manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt>&nbsp;<td><a href="?f=#filenode|short#;file=#file|urlescape#">#basename|escape#</a>'
18 manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt>&nbsp;<td><a href="?f=#node|short#;file=#file|urlescape#">#basename|escape#</a>'
19 filerevision = filerevision.tmpl
19 filerevision = filerevision.tmpl
20 fileannotate = fileannotate.tmpl
20 fileannotate = fileannotate.tmpl
21 filediff = filediff.tmpl
21 filediff = filediff.tmpl
22 filelog = filelog.tmpl
22 filelog = filelog.tmpl
23 fileline = '<div class="parity#parity#"><span class="lineno">#linenumber#</span>#line|escape#</div>'
23 fileline = '<div class="parity#parity#"><span class="lineno">#linenumber#</span>#line|escape#</div>'
24 filelogentry = filelogentry.tmpl
24 filelogentry = filelogentry.tmpl
25 annotateline = '<tr class="parity#parity#"><td class="annotate"><a href="?fa=#filenode|short#;file=#file|urlescape#">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
25 annotateline = '<tr class="parity#parity#"><td class="annotate"><a href="?fa=#node|short#;file=#file|urlescape#">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
26 difflineplus = '<span class="plusline">#line|escape#</span>'
26 difflineplus = '<span class="plusline">#line|escape#</span>'
27 difflineminus = '<span class="minusline">#line|escape#</span>'
27 difflineminus = '<span class="minusline">#line|escape#</span>'
28 difflineat = '<span class="atline">#line|escape#</span>'
28 difflineat = '<span class="atline">#line|escape#</span>'
@@ -8,19 +8,19 b' error = error-gitweb.tmpl'
8 naventry = '<a href="?cmd=changelog;rev=#rev#;style=gitweb">#label|escape#</a> '
8 naventry = '<a href="?cmd=changelog;rev=#rev#;style=gitweb">#label|escape#</a> '
9 navshortentry = '<a href="?cmd=shortlog;rev=#rev#;style=gitweb">#label|escape#</a> '
9 navshortentry = '<a href="?cmd=shortlog;rev=#rev#;style=gitweb">#label|escape#</a> '
10 filedifflink = '<a href="?cmd=filediff;node=#node#;file=#file|urlescape#;style=gitweb">#file|escape#</a> '
10 filedifflink = '<a href="?cmd=filediff;node=#node#;file=#file|urlescape#;style=gitweb">#file|escape#</a> '
11 filenodelink = '<tr class="parity#parity#"><td><a class="list" href="">#file|escape#</a></td><td></td><td class="link"><a href="?cmd=file;filenode=#filenode#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a> | <!-- FIXME: <a href="?fd=#filenode|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?cmd=filelog;filenode=#filenode|short#;file=#file|urlescape#;style=gitweb">revisions</a></td></tr>'
11 filenodelink = '<tr class="parity#parity#"><td><a class="list" href="">#file|escape#</a></td><td></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?cmd=filelog;filenode=#node|short#;file=#file|urlescape#;style=gitweb">revisions</a></td></tr>'
12 fileellipses = '...'
12 fileellipses = '...'
13 changelogentry = changelogentry-gitweb.tmpl
13 changelogentry = changelogentry-gitweb.tmpl
14 searchentry = changelogentry-gitweb.tmpl
14 searchentry = changelogentry-gitweb.tmpl
15 changeset = changeset-gitweb.tmpl
15 changeset = changeset-gitweb.tmpl
16 manifest = manifest-gitweb.tmpl
16 manifest = manifest-gitweb.tmpl
17 manifestdirentry = '<tr class="parity#parity#"><td style="font-family:monospace">drwxr-xr-x</td><td><a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">#basename|escape#/</a></td><td class="link"><a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">manifest</a></td></tr>'
17 manifestdirentry = '<tr class="parity#parity#"><td style="font-family:monospace">drwxr-xr-x</td><td><a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">#basename|escape#/</a></td><td class="link"><a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a></td></tr>'
18 manifestfileentry = '<tr class="parity#parity#"><td style="font-family:monospace">#permissions|permissions#</td><td class="list"><a class="list" href="?f=#filenode|short#;file=#file|urlescape#;style=gitweb">#basename|escape#</a></td><td class="link"><a href="?f=#filenode|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fl=#filenode|short#;file=#file|urlescape#;style=gitweb">revisions</a> | <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a></td></tr>'
18 manifestfileentry = '<tr class="parity#parity#"><td style="font-family:monospace">#permissions|permissions#</td><td class="list"><a class="list" href="?f=#node|short#;file=#file|urlescape#;style=gitweb">#basename|escape#</a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fl=#node|short#;file=#file|urlescape#;style=gitweb">revisions</a> | <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a></td></tr>'
19 filerevision = filerevision-gitweb.tmpl
19 filerevision = filerevision-gitweb.tmpl
20 fileannotate = fileannotate-gitweb.tmpl
20 fileannotate = fileannotate-gitweb.tmpl
21 filelog = filelog-gitweb.tmpl
21 filelog = filelog-gitweb.tmpl
22 fileline = '<div style="font-family:monospace" class="parity#parity#"><pre><span class="linenr"> #linenumber#</span> #line|escape#</pre></div>'
22 fileline = '<div style="font-family:monospace" class="parity#parity#"><pre><span class="linenr"> #linenumber#</span> #line|escape#</pre></div>'
23 annotateline = '<tr style="font-family:monospace" class="parity#parity#"><td class="linenr" style="text-align: right;"><a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
23 annotateline = '<tr style="font-family:monospace" class="parity#parity#"><td class="linenr" style="text-align: right;"><a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
24 difflineplus = '<div style="color:#008800;">#line|escape#</div>'
24 difflineplus = '<div style="color:#008800;">#line|escape#</div>'
25 difflineminus = '<div style="color:#cc0000;">#line|escape#</div>'
25 difflineminus = '<div style="color:#cc0000;">#line|escape#</div>'
26 difflineat = '<div style="color:#990099;">#line|escape#</div>'
26 difflineat = '<div style="color:#990099;">#line|escape#</div>'
@@ -36,7 +36,7 b" changesetchild = '<tr><td>child</td><td "
36 filerevchild = '<tr><td class="metatag">child:</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
36 filerevchild = '<tr><td class="metatag">child:</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
37 fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="?cmd=annotate;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
37 fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="?cmd=annotate;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
38 tags = tags-gitweb.tmpl
38 tags = tags-gitweb.tmpl
39 tagentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#tag|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=changelog;rev=#node|short#;style=gitweb">changelog</a> | <a href="?mf=#tagmanifest|short#;path=/;style=gitweb">manifest</a></td></tr>'
39 tagentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#tag|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=changelog;rev=#node|short#;style=gitweb">changelog</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a></td></tr>'
40 diffblock = '<pre>#lines#</pre>'
40 diffblock = '<pre>#lines#</pre>'
41 changelogtag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
41 changelogtag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
42 changesettag = '<tr><td>tag</td><td>#tag|escape#</td></tr>'
42 changesettag = '<tr><td>tag</td><td>#tag|escape#</td></tr>'
@@ -45,6 +45,6 b' filelogparent = \'<tr><td align="right">p'
45 filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cmd=changeset;node=#node#;style=gitweb">#node|short#</a></td></tr>'
45 filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cmd=changeset;node=#node#;style=gitweb">#node|short#</a></td></tr>'
46 filelogchild = '<tr><td align="right">child #rev#:&nbsp;</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
46 filelogchild = '<tr><td align="right">child #rev#:&nbsp;</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
47 shortlog = shortlog-gitweb.tmpl
47 shortlog = shortlog-gitweb.tmpl
48 shortlogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><i>#author#</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=manifest;manifest=#manifest|short#;path=/;style=gitweb">manifest</a></td></tr>'
48 shortlogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><i>#author#</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=manifest;manifest=#node|short#;path=/;style=gitweb">manifest</a></td></tr>'
49 filelogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a> #rename%filelogrename#</td></tr>'
49 filelogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a> #rename%filelogrename#</td></tr>'
50 archiveentry = ' | <a href="?ca=#node|short#;type=#type|urlescape#">#type|escape#</a> '
50 archiveentry = ' | <a href="?ca=#node|short#;type=#type|urlescape#">#type|escape#</a> '
@@ -1,6 +1,6 b''
1 #header#
1 #header#
2 <div class="page_nav">
2 <div class="page_nav">
3 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a><br/>
3 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a><br/>
4 </div>
4 </div>
5
5
6 <h2>searching for #query|escape#</h2>
6 <h2>searching for #query|escape#</h2>
@@ -7,7 +7,7 b''
7 <a href="?cl=tip">changelog</a>
7 <a href="?cl=tip">changelog</a>
8 <a href="?sl=tip">shortlog</a>
8 <a href="?sl=tip">shortlog</a>
9 <a href="?tags=">tags</a>
9 <a href="?tags=">tags</a>
10 <a href="?mf=#manifest|short#;path=/">manifest</a>
10 <a href="?mf=#node|short#;path=/">manifest</a>
11 </div>
11 </div>
12
12
13 <h2>searching for #query|escape#</h2>
13 <h2>searching for #query|escape#</h2>
@@ -19,7 +19,7 b''
19 </form>
19 </form>
20 </div>
20 </div>
21 <div class="page_nav">
21 <div class="page_nav">
22 <a href="?cmd=summary;style=gitweb">summary</a> | shortlog | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
22 <a href="?cmd=summary;style=gitweb">summary</a> | shortlog | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
23 <br/>
23 <br/>
24
24
25 #changenav%navshortentry#<br/>
25 #changenav%navshortentry#<br/>
@@ -8,7 +8,7 b''
8 <div class="buttons">
8 <div class="buttons">
9 <a href="?cl=#rev#">changelog</a>
9 <a href="?cl=#rev#">changelog</a>
10 <a href="?cmd=tags">tags</a>
10 <a href="?cmd=tags">tags</a>
11 <a href="?mf=#manifest|short#;path=/">manifest</a>
11 <a href="?mf=#node|short#;path=/">manifest</a>
12 #archives%archiveentry#
12 #archives%archiveentry#
13 <a type="application/rss+xml" href="?style=rss">rss</a>
13 <a type="application/rss+xml" href="?style=rss">rss</a>
14 </div>
14 </div>
@@ -9,7 +9,7 b''
9 <a href="http://www.selenic.com/mercurial/" title="Mercurial"><div style="float:right;">Mercurial</div></a><a href="?cmd=summary;style=gitweb">#repo|escape#</a> / summary
9 <a href="http://www.selenic.com/mercurial/" title="Mercurial"><div style="float:right;">Mercurial</div></a><a href="?cmd=summary;style=gitweb">#repo|escape#</a> / summary
10 </div>
10 </div>
11 <div class="page_nav">
11 <div class="page_nav">
12 summary | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#
12 summary | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#
13 <br/>
13 <br/>
14 </div>
14 </div>
15
15
@@ -10,7 +10,7 b''
10 </div>
10 </div>
11
11
12 <div class="page_nav">
12 <div class="page_nav">
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | tags | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>
13 <a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | tags | <a href="?cmd=manifest;manifest=#node|short#;path=/;style=gitweb">manifest</a>
14 <br/>
14 <br/>
15 </div>
15 </div>
16
16
@@ -8,7 +8,7 b''
8 <div class="buttons">
8 <div class="buttons">
9 <a href="?cl=tip">changelog</a>
9 <a href="?cl=tip">changelog</a>
10 <a href="?sl=tip">shortlog</a>
10 <a href="?sl=tip">shortlog</a>
11 <a href="?mf=#manifest|short#;path=/">manifest</a>
11 <a href="?mf=#node|short#;path=/">manifest</a>
12 <a type="application/rss+xml" href="?cmd=tags;style=rss">rss</a>
12 <a type="application/rss+xml" href="?cmd=tags;style=rss">rss</a>
13 </div>
13 </div>
14
14
@@ -3,14 +3,11 b' rev a changeset.manifest revis'
3 node a changeset node
3 node a changeset node
4 changesets total number of changesets
4 changesets total number of changesets
5 file a filename
5 file a filename
6 filenode a file node
7 filerev a file revision
6 filerev a file revision
8 filerevs total number of file revisions
7 filerevs total number of file revisions
9 up the directory of the relevant file
8 up the directory of the relevant file
10 path a path in the manifest, starting with "/"
9 path a path in the manifest, starting with "/"
11 basename a short pathname
10 basename a short pathname
12 manifest a manifest node
13 manifestrev a manifest revision
14 date a date string
11 date a date string
15 age age in hours, days, etc
12 age age in hours, days, etc
16 line a line of text (escaped)
13 line a line of text (escaped)
General Comments 0
You need to be logged in to leave comments. Login now