Artifact f3d85d1e19fdb861cd9908abd9d5f5acdeb54a6b:
Wiki page
[Cookbook]
by
anonymous on
2009-10-18 03:52:04.
0000: 44 20 32 30 30 39 2d 31 30 2d 31 38 54 30 33 3a D 2009-10-18T03:
0010: 35 32 3a 30 34 0a 4c 20 43 6f 6f 6b 62 6f 6f 6b 52:04.L Cookbook
0020: 0a 50 20 62 36 31 36 63 38 62 63 62 32 65 61 32 .P b616c8bcb2ea2
0030: 61 34 63 64 30 34 66 33 36 34 64 39 30 37 63 30 a4cd04f364d907c0
0040: 63 37 31 66 64 38 39 36 33 31 37 0a 55 20 61 6e c71fd896317.U an
0050: 6f 6e 79 6d 6f 75 73 0a 57 20 33 34 38 30 38 0a onymous.W 34808.
0060: 3c 68 31 3e 46 6f 73 73 69 6c 20 43 6f 6f 6b 62 <h1>Fossil Cookb
0070: 6f 6f 6b 3c 2f 68 31 3e 0d 0a 54 68 65 20 3c 63 ook</h1>..The <c
0080: 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 69 74 65 ite>Fossil</cite
0090: 3e 20 43 6f 6f 6b 62 6f 6f 6b 20 69 73 20 61 20 > Cookbook is a
00a0: 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 74 61 collection of ta
00b0: 73 6b 2d 6f 72 69 65 6e 74 65 64 20 69 6e 73 74 sk-oriented inst
00c0: 72 75 63 74 69 6f 6e 73 20 66 6f 72 20 69 6e 74 ructions for int
00d0: 65 72 6d 65 64 69 61 74 65 20 75 73 65 72 73 20 ermediate users
00e0: 77 68 6f 20 77 69 73 68 20 74 6f 20 64 6f 20 6d who wish to do m
00f0: 6f 72 65 20 74 68 61 6e 20 62 61 73 69 63 20 6f ore than basic o
0100: 70 65 72 61 74 69 6f 6e 73 20 77 69 74 68 20 74 perations with t
0110: 68 65 69 72 20 3c 63 69 74 65 3e 46 6f 73 73 69 heir <cite>Fossi
0120: 6c 3c 2f 63 69 74 65 3e 20 72 65 70 6f 73 69 74 l</cite> reposit
0130: 6f 72 69 65 73 2e 20 20 54 68 65 20 5b 54 75 74 ories. The [Tut
0140: 6f 72 69 61 6c 7c 74 75 74 6f 72 69 61 6c 5d 20 orial|tutorial]
0150: 69 73 20 61 20 6d 6f 72 65 20 73 75 69 74 61 62 is a more suitab
0160: 6c 65 20 70 6c 61 63 65 20 66 6f 72 20 6e 65 77 le place for new
0170: 63 6f 6d 65 72 73 20 74 72 79 69 6e 67 20 74 6f comers trying to
0180: 20 6c 65 61 72 6e 20 74 68 65 20 62 61 73 69 63 learn the basic
0190: 20 63 6f 6e 63 65 70 74 73 20 74 6f 20 67 6f 20 concepts to go
01a0: 66 69 72 73 74 20 62 65 66 6f 72 65 20 74 61 63 first before tac
01b0: 6b 6c 69 6e 67 20 74 68 65 73 65 20 72 65 63 69 kling these reci
01c0: 70 65 73 2e 0d 0a 0d 0a 3c 68 32 3e 49 6e 64 65 pes.....<h2>Inde
01d0: 78 3c 2f 68 32 3e 0d 0a 3c 75 6c 3e 0d 0a 20 20 x</h2>..<ul>..
01e0: 3c 6c 69 3e 20 53 65 72 76 65 72 20 72 65 63 69 <li> Server reci
01f0: 70 65 73 3a 0d 0a 20 20 20 20 3c 75 6c 3e 0d 0a pes:.. <ul>..
0200: 20 20 20 20 20 20 3c 6c 69 3e 20 20 3c 61 20 68 <li> <a h
0210: 72 65 66 3d 22 23 43 47 49 22 3e 55 73 69 6e 67 ref="#CGI">Using
0220: 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 <cite>Fossil</c
0230: 69 74 65 3e 27 73 20 42 75 69 6c 74 2d 49 6e 20 ite>'s Built-In
0240: 43 47 49 3c 2f 61 3e 0d 0a 20 20 20 20 3c 2f 75 CGI</a>.. </u
0250: 6c 3e 0d 0a 20 20 3c 6c 69 3e 20 3c 61 20 68 72 l>.. <li> <a hr
0260: 65 66 3d 22 23 65 6e 76 22 3e 55 73 69 6e 67 20 ef="#env">Using
0270: 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 Environment vari
0280: 61 62 6c 65 73 3c 2f 61 3e 0d 0a 20 20 3c 6c 69 ables</a>.. <li
0290: 3e 20 3c 61 20 68 72 65 66 3d 22 23 63 73 73 22 > <a href="#css"
02a0: 3e 45 78 61 6d 70 6c 65 20 43 53 53 3c 2f 61 3e >Example CSS</a>
02b0: 0d 0a 20 20 3c 6c 69 3e 20 3c 61 20 68 72 65 66 .. <li> <a href
02c0: 3d 22 23 73 6f 75 72 63 65 2d 68 69 6c 69 67 68 ="#source-hiligh
02d0: 74 22 3e 53 6f 75 72 63 65 20 68 69 67 68 6c 69 t">Source highli
02e0: 67 68 74 69 6e 67 3c 2f 61 3e 0d 0a 20 20 3c 6c ghting</a>.. <l
02f0: 69 3e 20 3c 61 20 68 72 65 66 3d 22 23 77 69 6e i> <a href="#win
0300: 33 32 64 65 76 22 3e 46 6f 73 73 69 6c 20 57 69 32dev">Fossil Wi
0310: 6e 33 32 20 44 65 76 65 6c 6f 70 6d 65 6e 74 20 n32 Development
0320: 4d 61 63 68 69 6e 65 20 73 65 74 75 70 3c 2f 61 Machine setup</a
0330: 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 0d 0a 3c 68 32 3e >..</ul>....<h2>
0340: 3c 61 20 6e 61 6d 65 3d 22 43 47 49 22 3e 55 73 <a name="CGI">Us
0350: 69 6e 67 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c ing <cite>Fossil
0360: 3c 2f 63 69 74 65 3e 27 73 20 42 75 69 6c 74 2d </cite>'s Built-
0370: 49 6e 20 43 47 49 3c 2f 61 3e 3c 2f 68 32 3e 0d In CGI</a></h2>.
0380: 0a 3c 68 33 3e 4d 6f 74 69 76 61 74 69 6f 6e 3c .<h3>Motivation<
0390: 2f 68 33 3e 0d 0a 20 20 2a 20 20 59 6f 75 20 77 /h3>.. * You w
03a0: 61 6e 74 20 74 6f 20 73 68 61 72 65 20 61 20 72 ant to share a r
03b0: 65 70 6f 73 69 74 6f 72 79 20 74 68 72 6f 75 67 epository throug
03c0: 68 20 79 6f 75 72 20 65 78 69 73 74 69 6e 67 20 h your existing
03d0: 77 65 62 20 69 6e 66 72 61 73 74 72 75 63 74 75 web infrastructu
03e0: 72 65 2e 0d 0a 20 20 2a 20 20 59 6f 75 20 77 61 re... * You wa
03f0: 6e 74 20 74 6f 20 73 68 61 72 65 20 6d 6f 72 65 nt to share more
0400: 20 74 68 61 6e 20 6f 6e 65 20 72 65 70 6f 73 69 than one reposi
0410: 74 6f 72 79 20 61 74 20 74 68 65 20 73 61 6d 65 tory at the same
0420: 20 74 69 6d 65 2e 0d 0a 0d 0a 3c 68 33 3e 50 72 time.....<h3>Pr
0430: 6f 62 6c 65 6d 3c 2f 68 33 3e 0d 0a 55 6e 6c 69 oblem</h3>..Unli
0440: 6b 65 20 73 6f 6d 65 20 6f 74 68 65 72 20 64 69 ke some other di
0450: 73 74 72 69 62 75 74 65 64 20 53 43 4d 73 2c 20 stributed SCMs,
0460: 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 69 <cite>Fossil</ci
0470: 74 65 3e 20 63 61 6e 20 6f 6e 6c 79 20 63 6c 6f te> can only clo
0480: 6e 65 2c 20 70 75 73 68 2c 20 70 75 6c 6c 20 61 ne, push, pull a
0490: 6e 64 20 61 6e 64 20 6f 74 68 65 72 77 69 73 65 nd and otherwise
04a0: 20 69 6e 74 65 72 61 63 74 20 74 68 72 6f 75 67 interact throug
04b0: 68 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 6f h repositories o
04c0: 76 65 72 20 48 54 54 50 2e 20 20 54 68 69 73 20 ver HTTP. This
04d0: 63 61 6e 20 62 65 20 73 69 6d 70 6c 79 20 61 6e can be simply an
04e0: 64 20 65 61 73 69 6c 79 20 6d 61 6e 61 67 65 64 d easily managed
04f0: 20 74 68 72 6f 75 67 68 20 75 73 65 20 6f 66 20 through use of
0500: 74 68 65 20 3c 63 6f 64 65 3e 66 6f 73 73 69 6c the <code>fossil
0510: 20 73 65 72 76 65 72 3c 2f 63 6f 64 65 3e 20 61 server</code> a
0520: 6e 64 2f 6f 72 20 3c 63 6f 64 65 3e 66 6f 73 73 nd/or <code>foss
0530: 69 6c 20 75 69 3c 2f 63 6f 64 65 3e 20 63 6f 6d il ui</code> com
0540: 6d 61 6e 64 73 2c 20 6f 66 20 63 6f 75 72 73 65 mands, of course
0550: 2c 20 62 75 74 20 74 68 69 73 20 69 73 20 72 65 , but this is re
0560: 61 6c 6c 79 20 6f 6e 6c 79 20 61 64 65 71 75 61 ally only adequa
0570: 74 65 20 66 6f 72 20 61 64 2d 68 6f 63 20 72 65 te for ad-hoc re
0580: 70 6f 73 69 74 6f 72 79 20 73 68 61 72 69 6e 67 pository sharing
0590: 2e 20 20 43 6f 6e 73 69 64 65 72 2c 20 66 6f 72 . Consider, for
05a0: 20 65 78 61 6d 70 6c 65 2c 20 73 68 61 72 69 6e example, sharin
05b0: 67 20 74 65 6e 20 72 65 70 6f 73 69 74 6f 72 69 g ten repositori
05c0: 65 73 2e 20 20 55 73 69 6e 67 20 74 68 65 20 62 es. Using the b
05d0: 75 69 6c 74 2d 69 6e 20 73 65 72 76 65 72 20 77 uilt-in server w
05e0: 6f 75 6c 64 20 72 65 71 75 69 72 65 20 79 6f 75 ould require you
05f0: 20 74 6f 20 6f 70 65 6e 20 74 65 6e 20 70 6f 72 to open ten por
0600: 74 73 20 69 6e 20 79 6f 75 72 20 66 69 72 65 77 ts in your firew
0610: 61 6c 6c 20 74 6f 20 70 65 72 6d 69 74 20 61 63 all to permit ac
0620: 63 65 73 73 2e 20 20 41 6e 79 20 73 65 72 69 6f cess. Any serio
0630: 75 73 20 73 68 61 72 69 6e 67 20 77 69 6c 6c 20 us sharing will
0640: 72 65 71 75 69 72 65 20 73 6f 6d 65 74 68 69 6e require somethin
0650: 67 20 6d 6f 72 65 20 72 6f 62 75 73 74 20 61 6e g more robust an
0660: 64 20 70 65 72 6d 61 6e 65 6e 74 2c 20 61 6e 64 d permanent, and
0670: 20 73 6f 6c 75 74 69 6f 6e 73 20 66 6f 72 20 64 solutions for d
0680: 6f 69 6e 67 20 73 6f 20 61 72 65 20 64 65 73 63 oing so are desc
0690: 72 69 62 65 64 20 62 65 6c 6f 77 2e 0d 0a 0d 0a ribed below.....
06a0: 3c 68 33 3e 53 6f 6c 75 74 69 6f 6e 3c 2f 68 33 <h3>Solution</h3
06b0: 3e 0d 0a 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c >..<cite>Fossil<
06c0: 2f 63 69 74 65 3e 20 73 75 70 70 6f 72 74 73 20 /cite> supports
06d0: 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 three different
06e0: 77 61 79 73 20 74 6f 20 73 68 61 72 65 20 72 65 ways to share re
06f0: 70 6f 73 69 74 6f 72 69 65 73 2e 20 20 46 6f 72 positories. For
0700: 20 61 64 2d 68 6f 63 20 73 68 61 72 69 6e 67 20 ad-hoc sharing
0710: 3c 63 6f 64 65 3e 66 6f 73 73 69 6c 20 73 65 72 <code>fossil ser
0720: 76 65 72 2f 75 69 3c 2f 63 6f 64 65 3e 20 69 73 ver/ui</code> is
0730: 20 6d 6f 72 65 20 74 68 61 6e 20 61 64 65 71 75 more than adequ
0740: 61 74 65 2e 20 20 46 6f 72 20 6d 6f 72 65 20 72 ate. For more r
0750: 6f 62 75 73 74 20 73 6f 6c 75 74 69 6f 6e 73 2c obust solutions,
0760: 20 68 6f 77 65 76 65 72 2c 20 74 68 65 20 75 73 however, the us
0770: 65 20 6f 66 20 3c 63 69 74 65 3e 28 78 29 69 6e e of <cite>(x)in
0780: 65 74 64 3c 2f 63 69 74 65 3e 20 6f 72 20 43 47 etd</cite> or CG
0790: 49 20 73 75 70 70 6f 72 74 20 69 73 20 69 6e 64 I support is ind
07a0: 69 63 61 74 65 64 2e 0d 0a 0d 0a 53 65 74 74 69 icated.....Setti
07b0: 6e 67 20 75 70 20 66 6f 73 73 69 6c 20 66 6f 72 ng up fossil for
07c0: 20 43 47 49 20 73 75 70 70 6f 72 74 20 69 73 20 CGI support is
07d0: 73 69 6d 70 6c 65 2e 20 20 28 53 65 74 74 69 6e simple. (Settin
07e0: 67 20 75 70 20 79 6f 75 72 20 77 65 62 20 73 65 g up your web se
07f0: 72 76 65 72 20 66 6f 72 20 43 47 49 20 73 75 70 rver for CGI sup
0800: 70 6f 72 74 20 6d 61 79 20 6f 72 20 6d 61 79 20 port may or may
0810: 6e 6f 74 20 62 65 20 73 69 6d 70 6c 65 2c 20 62 not be simple, b
0820: 75 74 20 69 74 20 69 73 20 6f 75 74 20 6f 66 20 ut it is out of
0830: 73 63 6f 70 65 20 6f 66 20 74 68 69 73 20 72 65 scope of this re
0840: 63 69 70 65 2e 20 20 43 6f 6e 73 75 6c 74 20 79 cipe. Consult y
0850: 6f 75 72 20 77 65 62 20 73 65 72 76 65 72 2f 73 our web server/s
0860: 65 72 76 69 63 65 20 70 72 6f 76 69 64 65 72 27 ervice provider'
0870: 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 s documentation
0880: 66 6f 72 20 74 68 69 73 2e 29 0d 0a 0d 0a 3c 68 for this.)....<h
0890: 34 3e 55 4e 49 58 3c 2f 68 34 3e 0d 0a 20 20 31 4>UNIX</h4>.. 1
08a0: 2e 20 20 46 69 6e 64 20 79 6f 75 72 20 43 47 49 . Find your CGI
08b0: 20 73 63 72 69 70 74 73 20 64 69 72 65 63 74 6f scripts directo
08c0: 72 79 20 28 69 66 20 61 70 70 6c 69 63 61 62 6c ry (if applicabl
08d0: 65 29 2e 20 20 54 68 69 73 20 69 73 20 63 6f 6d e). This is com
08e0: 6d 6f 6e 6c 79 20 73 6f 6d 65 74 68 69 6e 67 20 monly something
08f0: 6c 69 6b 65 20 3c 62 61 73 65 3e 2f 63 67 69 2d like <base>/cgi-
0900: 62 69 6e 2f 2c 20 62 75 74 20 64 6f 65 73 20 6e bin/, but does n
0910: 6f 74 20 68 61 76 65 20 74 6f 20 62 65 2e 0d 0a ot have to be...
0920: 20 20 32 2e 20 20 49 6e 73 69 64 65 20 74 68 61 2. Inside tha
0930: 74 20 64 69 72 65 63 74 6f 72 79 20 62 75 69 6c t directory buil
0940: 64 20 61 20 73 63 72 69 70 74 20 66 69 6c 65 20 d a script file
0950: 77 68 69 63 68 20 6c 6f 6f 6b 73 20 6c 69 6b 65 which looks like
0960: 20 74 68 69 73 3a 3c 62 72 3e 3c 63 6f 64 65 3e this:<br><code>
0970: 3c 70 72 65 3e 20 20 23 21 20 2f 75 73 72 2f 62 <pre> #! /usr/b
0980: 69 6e 2f 65 6e 76 20 66 6f 73 73 69 6c 3c 62 72 in/env fossil<br
0990: 3e 20 20 72 65 70 6f 73 69 74 6f 72 79 3a 20 2f > repository: /
09a0: 66 75 6c 6c 2f 70 61 74 68 2f 74 6f 2f 72 65 70 full/path/to/rep
09b0: 6f 73 69 74 6f 72 79 2f 66 69 6c 65 2e 66 73 6c ository/file.fsl
09c0: 3c 2f 70 72 65 3e 3c 2f 63 6f 64 65 3e 0d 0a 20 </pre></code>..
09d0: 20 33 2e 20 20 45 6e 73 75 72 65 20 74 68 61 74 3. Ensure that
09e0: 20 74 68 65 20 73 63 72 69 70 74 20 66 69 6c 65 the script file
09f0: 20 73 6f 20 67 65 6e 65 72 61 74 65 64 20 69 73 so generated is
0a00: 20 73 65 74 20 65 78 65 63 75 74 61 62 6c 65 20 set executable
0a10: 66 6f 72 20 74 68 65 20 43 47 49 20 75 73 65 72 for the CGI user
0a20: 20 61 63 63 6f 75 6e 74 2e 0d 0a 20 20 34 2e 20 account... 4.
0a30: 20 45 6e 73 75 72 65 20 74 68 61 74 20 65 76 65 Ensure that eve
0a40: 72 79 20 64 69 72 65 63 74 6f 72 79 20 69 6e 20 ry directory in
0a50: 74 68 65 20 70 61 74 68 20 6c 65 61 64 69 6e 67 the path leading
0a60: 20 74 6f 20 74 68 65 20 72 65 70 6f 73 69 74 6f to the reposito
0a70: 72 79 20 69 73 20 20 62 72 6f 77 73 65 61 62 6c ry is browseabl
0a80: 65 20 28 63 68 6d 6f 64 20 2b 78 29 20 74 6f 20 e (chmod +x) to
0a90: 74 68 65 20 43 47 49 20 75 73 65 72 20 61 63 63 the CGI user acc
0aa0: 6f 75 6e 74 2e 0d 0a 20 20 35 2e 20 20 45 6e 73 ount... 5. Ens
0ab0: 75 72 65 20 74 68 61 74 20 74 68 65 20 72 65 70 ure that the rep
0ac0: 6f 73 69 74 6f 72 79 20 66 69 6c 65 20 69 73 20 ository file is
0ad0: 72 65 61 64 61 62 6c 65 20 3c 65 6d 3e 61 6e 64 readable <em>and
0ae0: 3c 2f 65 6d 3e 20 77 72 69 74 61 62 6c 65 20 74 </em> writable t
0af0: 6f 20 74 68 65 20 43 47 49 20 75 73 65 72 20 61 o the CGI user a
0b00: 63 63 6f 75 6e 74 2e 0d 0a 0d 0a 54 68 65 20 66 ccount.....The f
0b10: 6f 6c 6c 6f 77 69 6e 67 20 3c 63 69 74 65 3e 62 ollowing <cite>b
0b20: 61 73 68 3c 2f 63 69 74 65 3e 20 73 63 72 69 70 ash</cite> scrip
0b30: 74 20 63 61 6e 20 62 65 20 72 75 6e 20 66 72 6f t can be run fro
0b40: 6d 20 77 69 74 68 69 6e 20 74 68 65 20 64 69 72 m within the dir
0b50: 65 63 74 6f 72 79 20 63 6f 6e 74 61 69 6e 69 6e ectory containin
0b60: 67 20 74 68 65 20 3c 63 69 74 65 3e 46 6f 73 73 g the <cite>Foss
0b70: 69 6c 3c 2f 63 69 74 65 3e 20 72 65 70 6f 73 69 il</cite> reposi
0b80: 74 6f 72 69 65 73 20 74 6f 20 62 65 20 73 68 61 tories to be sha
0b90: 72 65 64 20 28 61 6e 64 2c 20 6f 66 20 63 6f 75 red (and, of cou
0ba0: 72 73 65 2c 20 61 6c 74 65 72 65 64 20 66 6f 72 rse, altered for
0bb0: 20 79 6f 75 72 20 73 65 74 75 70 29 20 74 6f 20 your setup) to
0bc0: 73 65 74 20 73 6f 6d 65 20 6f 66 20 74 68 65 20 set some of the
0bd0: 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 62 6f 76 constraints abov
0be0: 65 20 75 70 20 61 75 74 6f 6d 61 74 69 63 61 6c e up automatical
0bf0: 6c 79 3a 0d 0a 0d 0a 3c 6e 6f 77 69 6b 69 3e 3c ly:....<nowiki><
0c00: 66 6f 6e 74 20 66 61 63 65 3d 22 6d 6f 6e 6f 73 font face="monos
0c10: 70 61 63 65 22 3e 0d 0a 3c 66 6f 6e 74 20 63 6f pace">..<font co
0c20: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e lor="#a52a2a">&n
0c30: 62 73 70 3b 31 20 3c 2f 66 6f 6e 74 3e 3c 66 6f bsp;1 </font><fo
0c40: 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 66 nt color="#0000f
0c50: 66 22 3e 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 f">#! /usr/bin/e
0c60: 6e 76 20 62 61 73 68 3c 2f 66 6f 6e 74 3e 3c 62 nv bash</font><b
0c70: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
0c80: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
0c90: 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 2 </font><font c
0ca0: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 43 olor="#008b8b">C
0cb0: 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 3d 2f GI_ROOT</font>=/
0cc0: 75 73 72 2f 6c 69 62 2f 66 6f 73 73 69 6c 3c 62 usr/lib/fossil<b
0cd0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
0ce0: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
0cf0: 33 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 3 </font><font c
0d00: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 52 olor="#008b8b">R
0d10: 45 50 4f 53 49 54 4f 52 59 5f 4f 57 4e 45 52 3c EPOSITORY_OWNER<
0d20: 2f 66 6f 6e 74 3e 3d 6d 69 63 68 61 65 6c 3c 62 /font>=michael<b
0d30: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
0d40: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
0d50: 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 4 </font><font c
0d60: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 43 olor="#008b8b">C
0d70: 47 49 5f 47 52 4f 55 50 3c 2f 66 6f 6e 74 3e 3d GI_GROUP</font>=
0d80: 77 77 77 2d 64 61 74 61 3c 62 72 3e 0d 0a 3c 66 www-data<br>..<f
0d90: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
0da0: 32 61 22 3e 26 6e 62 73 70 3b 35 20 3c 2f 66 6f 2a"> 5 </fo
0db0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
0dc0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 66 3c 2f #a52a2a"><b>if</
0dd0: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c b></font> <
0de0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
0df0: 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 a2a"><b>[</b></f
0e00: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
0e10: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
0e20: 60 77 68 6f 61 6d 69 60 3c 2f 66 6f 6e 74 3e 26 `whoami`</font>&
0e30: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
0e40: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 3d 3c ="#a52a2a"><b>=<
0e50: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
0e60: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
0e70: 30 30 66 66 22 3e 27 72 6f 6f 74 27 3c 2f 66 6f 00ff">'root'</fo
0e80: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
0e90: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
0ea0: 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 b>]</b></font><b
0eb0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
0ec0: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
0ed0: 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6 </font><font c
0ee0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
0ef0: 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>then</b></font
0f00: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
0f10: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0f20: 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 sp;7 </font>&nbs
0f30: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
0f40: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
0f50: 3e 66 6f 72 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 >for</b></font>&
0f60: 6e 62 73 70 3b 72 65 70 6f 73 69 74 6f 72 79 20 nbsp;repository
0f70: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
0f80: 32 61 32 61 22 3e 3c 62 3e 69 6e 3c 2f 62 3e 3c 2a2a"><b>in</b><
0f90: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2a 2e 66 73 /font> *.fs
0fa0: 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c l<br>..<font col
0fb0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0fc0: 73 70 3b 38 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 sp;8 </font>&nbs
0fd0: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
0fe0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
0ff0: 3e 64 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 >do</b></font><b
1000: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
1010: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
1020: 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 9 </font> &
1030: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
1040: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ;<font color="#0
1050: 30 38 62 38 62 22 3e 53 4f 55 52 43 45 3c 2f 66 08b8b">SOURCE</f
1060: 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 ont>=<font color
1070: 3d 22 23 36 61 35 61 63 64 22 3e 60 3c 2f 66 6f ="#6a5acd">`</fo
1080: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
1090: 23 61 35 32 61 32 61 22 3e 3c 62 3e 70 77 64 3c #a52a2a"><b>pwd<
10a0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
10b0: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
10c0: 60 3c 2f 66 6f 6e 74 3e 2f 3c 66 6f 6e 74 20 63 `</font>/<font c
10d0: 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 olor="#a020f0">$
10e0: 72 65 70 6f 73 69 74 6f 72 79 3c 2f 66 6f 6e 74 repository</font
10f0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
1100: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 30 20 or="#a52a2a">10
1110: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
1120: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c sp; <
1130: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
1140: 62 38 62 22 3e 44 45 53 54 49 4e 41 54 49 4f 4e b8b">DESTINATION
1150: 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f </font>=<font co
1160: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 43 lor="#a020f0">$C
1170: 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 2f 3c GI_ROOT</font>/<
1180: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
1190: 30 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 3e 3c 66 0f0">${</font><f
11a0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
11b0: 66 30 22 3e 72 65 70 6f 73 69 74 6f 72 79 3c 2f f0">repository</
11c0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
11d0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 25 3c ="#a52a2a"><b>%<
11e0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 2e 66 73 6c 3c 66 /b></font>.fsl<f
11f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
1200: 66 30 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 3e f0">}</font><br>
1210: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
1220: 61 35 32 61 32 61 22 3e 31 31 20 3c 2f 66 6f 6e a52a2a">11 </fon
1230: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
1240: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
1250: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
1260: 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e <b>echo</b></fon
1270: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
1280: 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f ff00ff"> </
1290: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
12a0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
12b0: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
12c0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
12d0: 30 66 66 22 3e 23 21 20 2f 75 73 72 2f 62 69 6e 0ff">#! /usr/bin
12e0: 2f 65 6e 76 20 66 6f 73 73 69 6c 3c 2f 66 6f 6e /env fossil</fon
12f0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
1300: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
1310: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
1320: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
1330: 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c "> </font><
1340: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1350: 61 32 61 22 3e 3c 62 3e 26 67 74 3b 3c 2f 62 3e a2a"><b>></b>
1360: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
1370: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
1380: 30 22 3e 24 44 45 53 54 49 4e 41 54 49 4f 4e 3c 0">$DESTINATION<
1390: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
13a0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
13b0: 22 3e 31 32 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">12 </font>&nbs
13c0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
13d0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
13e0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 "#a52a2a"><b>ech
13f0: 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e o</b></font><fon
1400: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
1410: 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c "> </font><
1420: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1430: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
1440: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
1450: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 72 olor="#ff00ff">r
1460: 65 70 6f 73 69 74 6f 72 79 3a 20 3c 2f 66 6f 6e epository: </fon
1470: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
1480: 61 30 32 30 66 30 22 3e 24 53 4f 55 52 43 45 3c a020f0">$SOURCE<
1490: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
14a0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
14b0: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
14c0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
14d0: 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 00ff"> </fo
14e0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
14f0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 67 74 3b #a52a2a"><b>>
1500: 26 67 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 ></b></font>&
1510: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
1520: 3d 22 23 61 30 32 30 66 30 22 3e 24 44 45 53 54 ="#a020f0">$DEST
1530: 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 3e 3c 62 INATION</font><b
1540: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
1550: 22 23 61 35 32 61 32 61 22 3e 31 33 20 3c 2f 66 "#a52a2a">13 </f
1560: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
1570: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 63 68 6f 77 chow
1580: 6e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 n <font color="#
1590: 61 30 32 30 66 30 22 3e 24 52 45 50 4f 53 49 54 a020f0">$REPOSIT
15a0: 4f 52 59 5f 4f 57 4e 45 52 3c 2f 66 6f 6e 74 3e ORY_OWNER</font>
15b0: 3a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 :<font color="#a
15c0: 30 32 30 66 30 22 3e 24 43 47 49 5f 47 52 4f 55 020f0">$CGI_GROU
15d0: 50 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 P</font> <f
15e0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
15f0: 66 30 22 3e 24 53 4f 55 52 43 45 3c 2f 66 6f 6e f0">$SOURCE</fon
1600: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
1610: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 34 lor="#a52a2a">14
1620: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
1630: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
1640: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
1650: 32 61 32 61 22 3e 3c 62 3e 63 68 6d 6f 64 3c 2f 2a2a"><b>chmod</
1660: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c b></font> <
1670: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
1680: 30 66 66 22 3e 36 36 34 3c 2f 66 6f 6e 74 3e 26 0ff">664</font>&
1690: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
16a0: 3d 22 23 61 30 32 30 66 30 22 3e 24 53 4f 55 52 ="#a020f0">$SOUR
16b0: 43 45 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c CE</font><br>..<
16c0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
16d0: 61 32 61 22 3e 31 35 20 3c 2f 66 6f 6e 74 3e 26 a2a">15 </font>&
16e0: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
16f0: 3b 26 6e 62 73 70 3b 63 68 6f 77 6e 20 72 6f 6f ; chown roo
1700: 74 3a 72 6f 6f 74 20 3c 66 6f 6e 74 20 63 6f 6c t:root <font col
1710: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 44 45 or="#a020f0">$DE
1720: 53 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 3e STINATION</font>
1730: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
1740: 72 3d 22 23 61 35 32 61 32 61 22 3e 31 36 20 3c r="#a52a2a">16 <
1750: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
1760: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
1770: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
1780: 32 61 22 3e 3c 62 3e 63 68 6d 6f 64 3c 2f 62 3e 2a"><b>chmod</b>
1790: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
17a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
17b0: 66 22 3e 37 35 35 3c 2f 66 6f 6e 74 3e 26 6e 62 f">755</font>&nb
17c0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
17d0: 23 61 30 32 30 66 30 22 3e 24 44 45 53 54 49 4e #a020f0">$DESTIN
17e0: 41 54 49 4f 4e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e ATION</font><br>
17f0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
1800: 61 35 32 61 32 61 22 3e 31 37 20 3c 2f 66 6f 6e a52a2a">17 </fon
1810: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
1820: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
1830: 32 61 22 3e 3c 62 3e 64 6f 6e 65 3c 2f 62 3e 3c 2a"><b>done</b><
1840: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
1850: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
1860: 22 3e 31 38 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">18 </font><fon
1870: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
1880: 22 3e 3c 62 3e 65 6c 73 65 3c 2f 62 3e 3c 2f 66 "><b>else</b></f
1890: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
18a0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
18b0: 31 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 19 </font>
18c0: 26 6e 62 73 70 3b 73 75 64 6f 20 3c 66 6f 6e 74 sudo <font
18d0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
18e0: 3e 24 30 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b >$0</font>
18f0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
1900: 32 30 66 30 22 3e 24 2a 3c 2f 66 6f 6e 74 3e 3c 20f0">$*</font><
1910: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
1920: 3d 22 23 61 35 32 61 32 61 22 3e 32 30 20 3c 2f ="#a52a2a">20 </
1930: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1940: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 69 ="#a52a2a"><b>fi
1950: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
1960: 0a 3c 2f 66 6f 6e 74 3e 3c 2f 6e 6f 77 69 6b 69 .</font></nowiki
1970: 3e 0d 0a 0d 0a 48 65 72 65 20 69 73 20 61 20 6c >....Here is a l
1980: 69 74 74 6c 65 20 70 65 72 6c 20 73 63 72 69 70 ittle perl scrip
1990: 74 20 74 6f 20 70 75 74 20 69 6e 20 79 6f 75 72 t to put in your
19a0: 20 63 67 69 2d 62 69 6e 20 74 6f 20 6c 69 73 74 cgi-bin to list
19b0: 20 61 6c 6c 20 74 68 65 20 66 6f 73 73 69 6c 73 all the fossils
19c0: 20 79 6f 75 20 61 72 65 20 70 75 62 6c 69 73 68 you are publish
19d0: 69 6e 67 3a 0d 0a 0d 0a 3c 6e 6f 77 69 6b 69 3e ing:....<nowiki>
19e0: 3c 70 72 65 3e 0d 0a 23 21 2f 75 73 72 2f 62 69 <pre>..#!/usr/bi
19f0: 6e 2f 70 65 72 6c 20 2d 77 0d 0a 6d 79 20 24 43 n/perl -w..my $C
1a00: 47 49 5f 42 49 4e 20 3d 20 27 2f 4c 69 62 72 61 GI_BIN = '/Libra
1a10: 72 79 2f 57 65 62 53 65 72 76 65 72 2f 43 47 49 ry/WebServer/CGI
1a20: 2d 45 78 65 63 75 74 61 62 6c 65 73 27 3b 0d 0a -Executables';..
1a30: 6d 79 20 40 66 69 6c 65 73 20 3d 20 60 67 72 65 my @files = `gre
1a40: 70 20 2d 6c 20 72 65 70 6f 73 69 74 6f 72 79 3a p -l repository:
1a50: 20 20 24 43 47 49 5f 42 49 4e 2f 2a 20 60 3b 0d $CGI_BIN/* `;.
1a60: 0a 70 72 69 6e 74 20 26 6c 74 3b 26 6c 74 3b 45 .print <<E
1a70: 4f 4d 3b 0d 0a 43 6f 6e 74 65 6e 74 2d 54 79 70 OM;..Content-Typ
1a80: 65 3a 20 74 65 78 74 2f 68 74 6d 6c 0d 0a 0d 0a e: text/html....
1a90: 46 6f 73 73 69 6c 73 20 66 6f 72 20 74 68 69 73 Fossils for this
1aa0: 20 73 65 72 76 65 72 0d 0a 26 6c 74 3b 75 6c 3e server..<ul>
1ab0: 0d 0a 45 4f 4d 0d 0a 0d 0a 66 6f 72 20 28 40 66 ..EOM....for (@f
1ac0: 69 6c 65 73 29 20 7b 0d 0a 20 20 73 7b 2e 2a 2f iles) {.. s{.*/
1ad0: 7d 7b 7d 3b 0d 0a 20 20 6e 65 78 74 20 69 66 20 }{};.. next if
1ae0: 2f 7e 24 2f 3b 0d 0a 20 20 70 72 69 6e 74 20 22 /~$/;.. print "
1af0: 26 6c 74 3b 6c 69 3e 26 6c 74 3b 61 20 68 72 65 <li><a hre
1b00: 66 3d 27 24 5f 27 3e 24 5f 26 6c 74 3b 2f 61 3e f='$_'>$_</a>
1b10: 26 6c 74 3b 2f 6c 69 3e 5c 6e 22 3b 0d 0a 7d 0d </li>\n";..}.
1b20: 0a 70 72 69 6e 74 20 22 26 6c 74 3b 2f 75 6c 3e .print "</ul>
1b30: 5c 6e 22 3b 3c 2f 70 72 65 3e 0d 0a 3c 2f 6e 6f \n";</pre>..</no
1b40: 77 69 6b 69 3e 0d 0a 0d 0a 54 68 65 20 66 6f 6c wiki>....The fol
1b50: 6c 6f 77 69 6e 67 20 3c 63 69 74 65 3e 61 70 61 lowing <cite>apa
1b60: 63 68 65 32 3c 2f 63 69 74 65 3e 20 63 6f 6e 66 che2</cite> conf
1b70: 69 67 75 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 iguration can be
1b80: 20 75 73 65 64 20 74 6f 20 72 75 6e 20 74 68 65 used to run the
1b90: 20 72 6f 6f 74 20 6f 66 20 61 20 77 65 62 20 73 root of a web s
1ba0: 69 74 65 20 77 69 74 68 20 66 6f 73 73 69 6c 2c ite with fossil,
1bb0: 20 62 75 74 20 73 74 69 6c 6c 20 61 6c 6c 6f 77 but still allow
1bc0: 20 6f 74 68 65 72 20 73 65 72 76 69 63 65 73 20 other services
1bd0: 2f 20 64 6f 63 75 6d 65 6e 74 73 20 74 6f 20 62 / documents to b
1be0: 65 20 72 65 61 63 68 65 64 20 76 69 61 20 73 70 e reached via sp
1bf0: 65 63 69 66 69 63 20 55 52 4c 73 2e 20 52 65 70 ecific URLs. Rep
1c00: 6c 61 63 65 20 22 63 6f 64 65 2e 61 75 74 6f 6e lace "code.auton
1c10: 6f 6d 6f 2e 75 73 22 20 77 69 74 68 20 79 6f 75 omo.us" with you
1c20: 72 20 73 69 74 65 27 73 20 6e 61 6d 65 20 61 6e r site's name an
1c30: 64 20 22 64 63 6c 61 72 6b 40 70 6f 62 6f 78 2e d "dclark@pobox.
1c40: 63 6f 6d 22 20 77 69 74 68 20 79 6f 75 72 20 65 com" with your e
1c50: 6d 61 69 6c 2e 0d 0a 0d 0a 3c 76 65 72 62 61 74 mail.....<verbat
1c60: 69 6d 3e 0d 0a 4e 61 6d 65 56 69 72 74 75 61 6c im>..NameVirtual
1c70: 48 6f 73 74 20 2a 3a 38 30 0d 0a 3c 56 69 72 74 Host *:80..<Virt
1c80: 75 61 6c 48 6f 73 74 20 2a 3a 38 30 3e 0d 0a 20 ualHost *:80>..
1c90: 20 20 20 53 65 72 76 65 72 4e 61 6d 65 20 63 6f ServerName co
1ca0: 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 0d 0a de.autonomo.us..
1cb0: 20 20 20 20 53 65 72 76 65 72 41 64 6d 69 6e 20 ServerAdmin
1cc0: 64 63 6c 61 72 6b 40 70 6f 62 6f 78 2e 63 6f 6d dclark@pobox.com
1cd0: 0d 0a 20 20 20 20 45 72 72 6f 72 4c 6f 67 20 2f .. ErrorLog /
1ce0: 76 61 72 2f 6c 6f 67 2f 61 70 61 63 68 65 32 2f var/log/apache2/
1cf0: 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 code.autonomo.us
1d00: 2d 65 72 72 6f 72 2e 6c 6f 67 0d 0a 20 20 20 20 -error.log..
1d10: 4c 6f 67 4c 65 76 65 6c 20 77 61 72 6e 0d 0a 20 LogLevel warn..
1d20: 20 20 20 43 75 73 74 6f 6d 4c 6f 67 20 2f 76 61 CustomLog /va
1d30: 72 2f 6c 6f 67 2f 61 70 61 63 68 65 32 2f 63 6f r/log/apache2/co
1d40: 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 2d 61 de.autonomo.us-a
1d50: 63 63 65 73 73 2e 6c 6f 67 20 63 6f 6d 62 69 6e ccess.log combin
1d60: 65 64 0d 0a 20 20 20 20 53 65 72 76 65 72 53 69 ed.. ServerSi
1d70: 67 6e 61 74 75 72 65 20 4f 6e 0d 0a 0d 0a 20 20 gnature On....
1d80: 20 20 44 6f 63 75 6d 65 6e 74 52 6f 6f 74 20 2f DocumentRoot /
1d90: 76 61 72 2f 77 77 77 2f 0d 0a 0d 0a 20 20 20 20 var/www/....
1da0: 53 63 72 69 70 74 41 6c 69 61 73 20 2f 63 67 69 ScriptAlias /cgi
1db0: 2d 62 69 6e 2f 20 2f 75 73 72 2f 6c 69 62 2f 63 -bin/ /usr/lib/c
1dc0: 67 69 2d 62 69 6e 2f 0d 0a 20 20 20 20 3c 44 69 gi-bin/.. <Di
1dd0: 72 65 63 74 6f 72 79 20 22 2f 75 73 72 2f 6c 69 rectory "/usr/li
1de0: 62 2f 63 67 69 2d 62 69 6e 22 3e 0d 0a 20 20 20 b/cgi-bin">..
1df0: 20 20 20 20 20 41 6c 6c 6f 77 4f 76 65 72 72 69 AllowOverri
1e00: 64 65 20 4e 6f 6e 65 0d 0a 20 20 20 20 20 20 20 de None..
1e10: 20 4f 70 74 69 6f 6e 73 20 2b 45 78 65 63 43 47 Options +ExecCG
1e20: 49 20 2d 4d 75 6c 74 69 56 69 65 77 73 20 2b 53 I -MultiViews +S
1e30: 79 6d 4c 69 6e 6b 73 49 66 4f 77 6e 65 72 4d 61 ymLinksIfOwnerMa
1e40: 74 63 68 0d 0a 20 20 20 20 20 20 20 20 4f 72 64 tch.. Ord
1e50: 65 72 20 61 6c 6c 6f 77 2c 64 65 6e 79 0d 0a 20 er allow,deny..
1e60: 20 20 20 20 20 20 20 41 6c 6c 6f 77 20 66 72 6f Allow fro
1e70: 6d 20 61 6c 6c 0d 0a 20 20 20 20 3c 2f 44 69 72 m all.. </Dir
1e80: 65 63 74 6f 72 79 3e 0d 0a 0d 0a 20 20 20 20 23 ectory>.... #
1e90: 20 46 6f 73 73 69 6c 20 53 43 4d 20 61 74 20 72 Fossil SCM at r
1ea0: 6f 6f 74 20 6f 66 20 77 65 62 20 73 69 74 65 20 oot of web site
1eb0: 28 68 74 74 70 3a 2f 2f 65 78 61 6d 70 6c 65 2e (http://example.
1ec0: 63 6f 6d 29 20 63 6f 6e 66 69 67 75 72 61 74 69 com) configurati
1ed0: 6f 6e 2e 2e 2e 0d 0a 20 20 20 20 52 65 77 72 69 on..... Rewri
1ee0: 74 65 45 6e 67 69 6e 65 20 4f 6e 0d 0a 20 20 20 teEngine On..
1ef0: 20 23 20 52 65 77 72 69 74 65 43 6f 6e 64 20 2d # RewriteCond -
1f00: 20 4f 6e 65 20 66 6f 72 20 65 76 65 72 79 20 55 One for every U
1f10: 52 4c 20 77 65 20 64 6f 6e 27 74 20 77 61 6e 74 RL we don't want
1f20: 20 46 6f 73 73 69 6c 20 53 43 4d 20 74 6f 20 73 Fossil SCM to s
1f30: 65 72 76 65 2e 20 49 6e 20 74 68 65 0d 0a 20 20 erve. In the..
1f40: 20 20 23 20 20 20 20 20 20 20 20 20 20 20 20 20 #
1f50: 20 20 65 78 61 6d 70 6c 65 2c 20 72 65 71 75 65 example, reque
1f60: 73 74 73 20 74 68 61 74 20 67 6f 20 74 6f 20 74 sts that go to t
1f70: 68 65 20 2f 76 61 72 2f 77 77 77 2f 74 6d 70 20 he /var/www/tmp
1f80: 64 69 72 65 63 74 6f 72 79 20 61 6e 64 20 0d 0a directory and ..
1f90: 20 20 20 20 23 20 20 20 20 20 20 20 20 20 20 20 #
1fa0: 20 20 20 20 74 68 65 20 2f 75 73 72 2f 6c 69 62 the /usr/lib
1fb0: 2f 63 67 69 2d 62 69 6e 20 64 69 72 65 63 74 6f /cgi-bin directo
1fc0: 74 79 20 61 72 65 20 69 67 6e 6f 72 65 64 20 62 ty are ignored b
1fd0: 79 20 46 6f 73 73 69 6c 20 53 43 4d 2e 0d 0a 20 y Fossil SCM...
1fe0: 20 20 20 52 65 77 72 69 74 65 43 6f 6e 64 20 25 RewriteCond %
1ff0: 7b 52 45 51 55 45 53 54 5f 55 52 49 7d 20 21 5e {REQUEST_URI} !^
2000: 2f 74 6d 70 2f 2e 2a 24 0d 0a 20 20 20 20 52 65 /tmp/.*$.. Re
2010: 77 72 69 74 65 43 6f 6e 64 20 25 7b 52 45 51 55 writeCond %{REQU
2020: 45 53 54 5f 55 52 49 7d 20 21 5e 2f 63 67 69 2d EST_URI} !^/cgi-
2030: 62 69 6e 2f 2e 2a 24 0d 0a 20 20 20 20 52 65 77 bin/.*$.. Rew
2040: 72 69 74 65 52 75 6c 65 20 5e 28 2e 2a 29 24 20 riteRule ^(.*)$
2050: 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d 62 69 6e /usr/lib/cgi-bin
2060: 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 /code.autonomo.u
2070: 73 2f 24 31 20 5b 54 3d 61 70 70 6c 69 63 61 74 s/$1 [T=applicat
2080: 69 6f 6e 2f 78 2d 68 74 74 70 64 2d 63 67 69 5d ion/x-httpd-cgi]
2090: 0d 0a 3c 2f 56 69 72 74 75 61 6c 48 6f 73 74 3e ..</VirtualHost>
20a0: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 0d ..</verbatim>...
20b0: 0a 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d 62 69 ./usr/lib/cgi-bi
20c0: 6e 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e n/code.autonomo.
20d0: 75 73 20 69 73 20 6a 75 73 74 20 61 20 73 74 61 us is just a sta
20e0: 6e 64 61 72 64 20 66 6f 73 73 69 6c 20 43 47 49 ndard fossil CGI
20f0: 20 66 69 6c 65 3b 20 69 74 20 6c 6f 6f 6b 73 20 file; it looks
2100: 6c 69 6b 65 20 74 68 69 73 3a 0d 0a 0d 0a 3c 76 like this:....<v
2110: 65 72 62 61 74 69 6d 3e 0d 0a 23 21 2f 75 73 72 erbatim>..#!/usr
2120: 2f 62 69 6e 2f 66 6f 73 73 69 6c 0d 0a 72 65 70 /bin/fossil..rep
2130: 6f 73 69 74 6f 72 79 3a 20 2f 73 72 76 2f 66 6f ository: /srv/fo
2140: 73 73 69 6c 2d 73 63 6d 2f 63 6f 64 65 2e 61 75 ssil-scm/code.au
2150: 74 6f 6e 6f 6d 6f 2e 75 73 2e 66 6f 73 73 69 6c tonomo.us.fossil
2160: 2d 73 63 6d 0d 0a 3c 2f 76 65 72 62 61 74 69 6d -scm..</verbatim
2170: 3e 0d 0a 0d 0a 3c 68 33 3e 41 6e 6f 74 68 65 72 >....<h3>Another
2180: 20 73 6f 6c 75 74 69 6f 6e 20 74 6f 20 3c 69 3e solution to <i>
2190: 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 3c 2f 69 automatically</i
21a0: 3e 20 73 65 72 76 65 20 6d 75 6c 74 69 70 6c 65 > serve multiple
21b0: 20 72 65 70 6f 73 69 74 6f 72 69 65 73 3c 2f 68 repositories</h
21c0: 33 3e 0d 0a 0d 0a 57 69 74 68 20 74 68 65 20 66 3>....With the f
21d0: 6f 6c 6c 6f 77 69 6e 67 20 43 47 49 20 73 63 72 ollowing CGI scr
21e0: 69 70 74 20 28 49 20 68 61 76 65 20 6e 61 6d 65 ipt (I have name
21f0: 64 20 69 74 20 3c 73 61 6d 70 3e 70 3c 2f 73 61 d it <samp>p</sa
2200: 6d 70 3e 20 73 69 6d 70 6c 79 29 20 69 74 20 69 mp> simply) it i
2210: 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 64 65 s possible to de
2220: 66 69 6e 65 20 61 20 6c 6f 63 61 74 69 6f 6e 20 fine a location
2230: 77 68 65 72 65 20 61 6c 6c 20 74 68 65 20 79 6f where all the yo
2240: 75 72 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 ur repositories
2250: 73 68 6f 75 6c 64 20 62 65 20 6c 6f 63 61 74 65 should be locate
2260: 64 20 28 69 6e 20 74 68 69 73 20 65 78 61 6d 70 d (in this examp
2270: 6c 65 3a 20 3c 73 61 6d 70 3e 2f 68 6f 6d 65 2f le: <samp>/home/
2280: 72 65 70 6f 73 2f 66 6f 73 73 69 6c 3c 2f 73 61 repos/fossil</sa
2290: 6d 70 3e 29 2e 20 41 6c 6c 20 74 68 65 20 72 65 mp>). All the re
22a0: 70 6f 73 69 74 6f 72 69 65 73 20 61 72 65 20 6e positories are n
22b0: 61 6d 65 64 20 61 63 63 6f 72 64 69 6e 67 20 74 amed according t
22c0: 68 65 20 73 63 68 65 6d 65 20 3c 73 61 6d 70 3e he scheme <samp>
22d0: 3c 70 72 6f 6a 65 63 74 20 6e 61 6d 65 3e 2e 66 <project name>.f
22e0: 73 6c 3c 2f 73 61 6d 70 3e 20 66 6f 72 20 73 61 sl</samp> for sa
22f0: 6b 65 20 6f 66 20 74 68 69 73 20 65 78 61 6d 70 ke of this examp
2300: 6c 65 2e 0d 0a 0d 0a 49 66 20 74 68 69 73 20 73 le.....If this s
2310: 63 72 69 70 74 20 69 73 20 63 61 6c 6c 65 64 20 cript is called
2320: 61 6c 6f 6e 65 20 28 6c 69 6b 65 20 65 2e 67 2e alone (like e.g.
2330: 3a 20 3c 73 61 6d 70 3e 68 74 74 70 3a 2f 2f 79 : <samp>http://y
2340: 6f 75 72 2e 73 65 72 76 65 72 2e 68 65 72 65 2f our.server.here/
2350: 63 67 69 2d 62 69 6e 2f 70 3c 2f 73 61 6d 70 3e cgi-bin/p</samp>
2360: 29 2c 20 69 74 20 77 69 6c 6c 20 6c 69 73 74 20 ), it will list
2370: 61 6c 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 73 all repositories
2380: 20 6c 6f 63 61 74 65 64 20 75 6e 64 65 72 20 3c located under <
2390: 73 61 6d 70 3e 24 52 45 50 4f 53 52 4f 4f 54 3c samp>$REPOSROOT<
23a0: 2f 73 61 6d 70 3e 2c 20 3c 62 3e 69 66 3c 2f 62 /samp>, <b>if</b
23b0: 3e 20 74 68 65 72 65 20 3c 62 3e 64 6f 65 73 20 > there <b>does
23c0: 6e 6f 74 3c 2f 62 3e 20 65 78 69 73 74 20 61 20 not</b> exist a
23d0: 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 66 69 corresponding fi
23e0: 6c 65 20 3c 73 61 6d 70 3e 2e 3c 70 72 6f 6a 65 le <samp>.<proje
23f0: 63 74 20 6e 61 6d 65 3e 3c 2f 73 61 6d 70 3e 20 ct name></samp>
2400: 28 74 68 61 74 20 6d 65 63 68 61 6e 69 73 6d 20 (that mechanism
2410: 69 73 20 75 73 65 64 20 74 6f 20 3c 69 3e 68 69 is used to <i>hi
2420: 64 65 3c 2f 69 3e 20 73 6f 6d 65 20 72 65 70 6f de</i> some repo
2430: 73 69 74 6f 72 79 20 69 6e 20 74 68 65 20 6c 69 sitory in the li
2440: 73 74 69 6e 67 29 2e 0d 0a 0d 0a 49 66 20 74 68 sting).....If th
2450: 65 20 73 63 72 69 70 74 20 69 73 20 63 61 6c 6c e script is call
2460: 65 64 20 6c 69 6b 65 20 65 2e 67 2e 20 3c 73 61 ed like e.g. <sa
2470: 6d 70 3e 68 74 74 70 3a 2f 2f 79 6f 75 72 2e 73 mp>http://your.s
2480: 65 72 76 65 72 2e 68 65 72 65 2f 63 67 69 2d 62 erver.here/cgi-b
2490: 69 6e 2f 70 2f 3c 70 72 6f 6a 65 63 74 20 6e 61 in/p/<project na
24a0: 6d 65 3e 3c 2f 73 61 6d 70 3e 2c 20 74 68 65 6e me></samp>, then
24b0: 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 the correspondi
24c0: 6e 67 20 72 65 70 6f 73 69 74 6f 72 79 20 77 69 ng repository wi
24d0: 6c 6c 20 62 65 20 73 65 6c 65 63 74 65 64 20 74 ll be selected t
24e0: 6f 20 77 6f 72 6b 20 77 69 74 68 2e 0d 0a 0d 0a o work with.....
24f0: 54 68 65 20 6c 69 6e 65 73 20 35 20 2d 20 38 20 The lines 5 - 8
2500: 69 6e 20 74 68 65 20 73 63 72 69 70 74 20 62 65 in the script be
2510: 6c 6f 77 20 61 6c 6c 6f 77 20 63 6f 6e 66 69 67 low allow config
2520: 75 72 61 74 69 6f 6e 20 66 6f 72 20 79 6f 75 20 uration for you
2530: 6e 65 65 64 73 2e 20 59 6f 75 20 68 61 76 65 20 needs. You have
2540: 74 6f 20 63 68 6f 73 65 2c 20 77 68 61 74 20 66 to chose, what f
2550: 6f 73 73 69 6c 20 62 69 6e 61 72 79 20 74 6f 20 ossil binary to
2560: 75 73 65 2c 20 77 68 61 74 20 65 78 74 65 6e 73 use, what extens
2570: 69 6f 6e 20 79 6f 75 72 20 72 65 70 6f 73 69 74 ion your reposit
2580: 6f 72 79 20 64 61 74 61 62 61 73 65 73 20 68 61 ory databases ha
2590: 76 65 20 61 6e 64 20 77 68 65 72 65 20 61 6c 6c ve and where all
25a0: 20 79 6f 75 72 20 64 61 74 61 62 61 73 65 73 20 your databases
25b0: 61 72 65 20 6c 6f 63 61 74 65 64 2e 0d 0a 0d 0a are located.....
25c0: 3c 6e 6f 77 69 6b 69 3e 0d 0a 3c 66 6f 6e 74 20 <nowiki>..<font
25d0: 66 61 63 65 3d 22 6d 6f 6e 6f 73 70 61 63 65 22 face="monospace"
25e0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
25f0: 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 31 #a52a2a"> 1
2600: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
2610: 6c 6f 72 3d 22 23 30 30 30 30 66 66 22 3e 23 21 lor="#0000ff">#!
2620: 2f 62 69 6e 2f 73 68 3c 2f 66 6f 6e 74 3e 3c 62 /bin/sh</font><b
2630: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
2640: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
2650: 32 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 2 </font><br>..<
2660: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
2670: 61 32 61 22 3e 26 6e 62 73 70 3b 33 20 3c 2f 66 a2a"> 3 </f
2680: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2690: 22 23 30 30 30 30 66 66 22 3e 23 23 23 20 43 6f "#0000ff">### Co
26a0: 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 65 63 74 nfiguration sect
26b0: 69 6f 6e 20 23 23 23 3c 2f 66 6f 6e 74 3e 3c 62 ion ###</font><b
26c0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
26d0: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
26e0: 34 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 4 </font><br>..<
26f0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
2700: 61 32 61 22 3e 26 6e 62 73 70 3b 35 20 3c 2f 66 a2a"> 5 </f
2710: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2720: 22 23 30 30 38 62 38 62 22 3e 54 49 54 4c 45 3c "#008b8b">TITLE<
2730: 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c /font>=<font col
2740: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
2750: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
2760: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
2770: 66 30 30 66 66 22 3e 26 6c 74 3b 68 32 26 67 74 f00ff"><h2>
2780: 3b 46 6f 73 73 69 6c 20 72 65 70 6f 73 69 74 6f ;Fossil reposito
2790: 72 69 65 73 26 6c 74 3b 2f 68 32 26 67 74 3b 3c ries</h2><
27a0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
27b0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
27c0: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
27d0: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
27e0: 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 r="#a52a2a">&nbs
27f0: 70 3b 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 p;6 </font><font
2800: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
2810: 3e 46 4f 53 53 49 4c 3c 2f 66 6f 6e 74 3e 3d 2f >FOSSIL</font>=/
2820: 75 73 72 2f 6c 6f 63 61 6c 2f 62 69 6e 2f 66 6f usr/local/bin/fo
2830: 73 73 69 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ssil<br>..<font
2840: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2850: 26 6e 62 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 3c 7 </font><
2860: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
2870: 62 38 62 22 3e 52 45 50 4f 53 52 4f 4f 54 3c 2f b8b">REPOSROOT</
2880: 66 6f 6e 74 3e 3d 2f 68 6f 6d 65 2f 72 65 70 6f font>=/home/repo
2890: 73 2f 66 6f 73 73 69 6c 3c 62 72 3e 0d 0a 3c 66 s/fossil<br>..<f
28a0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
28b0: 32 61 22 3e 26 6e 62 73 70 3b 38 20 3c 2f 66 6f 2a"> 8 </fo
28c0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
28d0: 23 30 30 38 62 38 62 22 3e 52 45 50 4f 53 45 58 #008b8b">REPOSEX
28e0: 54 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 T</font>=<font c
28f0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
2900: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
2910: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
2920: 23 66 66 30 30 66 66 22 3e 2e 66 73 6c 3c 2f 66 #ff00ff">.fsl</f
2930: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2940: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
2950: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 ot;</b></font><b
2960: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
2970: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
2980: 39 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 9 </font><br>..<
2990: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
29a0: 61 32 61 22 3e 31 30 20 3c 2f 66 6f 6e 74 3e 3c a2a">10 </font><
29b0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 font color="#000
29c0: 30 66 66 22 3e 23 23 23 20 50 72 6f 63 65 73 73 0ff">### Process
29d0: 69 6e 67 20 73 65 63 74 69 6f 6e 20 2d 2d 20 6e ing section -- n
29e0: 6f 74 68 69 6e 67 20 74 6f 20 63 6f 6e 66 69 67 othing to config
29f0: 75 72 65 20 68 65 72 65 21 20 23 23 23 3c 2f 66 ure here! ###</f
2a00: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
2a10: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2a20: 31 31 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 11 </font><br>..
2a30: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
2a40: 32 61 32 61 22 3e 31 32 20 3c 2f 66 6f 6e 74 3e 2a2a">12 </font>
2a50: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
2a60: 32 61 32 61 22 3e 3c 62 3e 73 65 74 3c 2f 62 3e 2a2a"><b>set</b>
2a70: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
2a80: 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 26 6e 62 or="#008b8b">&nb
2a90: 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 sp;</font><font
2aa0: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
2ab0: 2d 66 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 -f</font><font c
2ac0: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 26 olor="#008b8b">&
2ad0: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
2ae0: 3b 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3b 20 ; </font>;
2af0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 <font color="#00
2b00: 30 30 66 66 22 3e 23 20 64 69 73 61 62 6c 65 20 00ff"># disable
2b10: 66 69 6c 65 6e 61 6d 65 20 67 6c 6f 62 62 69 6e filename globbin
2b20: 67 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 g</font><br>..<f
2b30: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
2b40: 32 61 22 3e 31 33 20 3c 2f 66 6f 6e 74 3e 3c 62 2a">13 </font><b
2b50: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
2b60: 22 23 61 35 32 61 32 61 22 3e 31 34 20 3c 2f 66 "#a52a2a">14 </f
2b70: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2b80: 22 23 30 30 30 30 66 66 22 3e 23 23 20 53 6f 6d "#0000ff">## Som
2b90: 65 20 68 65 6c 70 65 72 20 66 75 6e 63 74 69 6f e helper functio
2ba0: 6e 73 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c ns</font><br>..<
2bb0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
2bc0: 61 32 61 22 3e 31 35 20 3c 2f 66 6f 6e 74 3e 3c a2a">15 </font><
2bd0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
2be0: 3d 22 23 61 35 32 61 32 61 22 3e 31 36 20 3c 2f ="#a52a2a">16 </
2bf0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
2c00: 3d 22 23 30 30 38 62 38 62 22 3e 48 65 61 64 65 ="#008b8b">Heade
2c10: 72 54 65 78 74 20 28 29 20 7b 3c 2f 66 6f 6e 74 rText () {</font
2c20: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
2c30: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 37 20 or="#a52a2a">17
2c40: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
2c50: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
2c60: 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 66 20 3c #a52a2a"><b>if <
2c70: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
2c80: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2c90: 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 <b>[</b></font>&
2ca0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
2cb0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 2d 7a ="#a52a2a"><b>-z
2cc0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
2cd0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
2ce0: 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 52a2a"><b>"
2cf0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
2d00: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
2d10: 3e 24 68 65 61 64 65 72 57 72 69 74 74 65 6e 3c >$headerWritten<
2d20: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
2d30: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
2d40: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
2d50: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
2d60: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 5d r="#a52a2a"><b>]
2d70: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
2d80: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
2d90: 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e ><b>;</b></font>
2da0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
2db0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 74 r="#a52a2a"><b>t
2dc0: 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 hen</b></font><b
2dd0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
2de0: 22 23 61 35 32 61 32 61 22 3e 31 38 20 3c 2f 66 "#a52a2a">18 </f
2df0: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
2e00: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e <fon
2e10: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
2e20: 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 "><b>echo</b></f
2e30: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2e40: 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b "#ff00ff">
2e50: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
2e60: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
2e70: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
2e80: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
2e90: 66 30 30 66 66 22 3e 43 6f 6e 74 65 6e 74 2d 74 f00ff">Content-t
2ea0: 79 70 65 3a 20 74 65 78 74 2f 70 6c 61 69 6e 3b ype: text/plain;
2eb0: 20 63 68 61 72 73 65 74 3d 69 73 6f 2d 38 38 35 charset=iso-885
2ec0: 39 2d 31 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 9-1</font><font
2ed0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2ee0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
2ef0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
2f00: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2f10: 31 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 19 </font>
2f20: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
2f30: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
2f40: 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c a52a2a"><b>echo<
2f50: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a /b></font><br>..
2f60: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
2f70: 32 61 32 61 22 3e 32 30 20 3c 2f 66 6f 6e 74 3e 2a2a">20 </font>
2f80: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
2f90: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
2fa0: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 68 65 lor="#008b8b">he
2fb0: 61 64 65 72 57 72 69 74 74 65 6e 3c 2f 66 6f 6e aderWritten</fon
2fc0: 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t>=<font color="
2fd0: 23 66 66 30 30 66 66 22 3e 31 3c 2f 66 6f 6e 74 #ff00ff">1</font
2fe0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
2ff0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 31 20 or="#a52a2a">21
3000: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
3010: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
3020: 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 69 3c 2f #a52a2a"><b>fi</
3030: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
3040: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3050: 61 32 61 22 3e 32 32 20 3c 2f 66 6f 6e 74 3e 3c a2a">22 </font><
3060: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
3070: 62 38 62 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 b8b">}</font><br
3080: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
3090: 23 61 35 32 61 32 61 22 3e 32 33 20 3c 2f 66 6f #a52a2a">23 </fo
30a0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
30b0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 olor="#a52a2a">2
30c0: 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 4 </font><font c
30d0: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 48 olor="#008b8b">H
30e0: 65 61 64 65 72 48 54 4d 4c 20 28 29 20 7b 3c 2f eaderHTML () {</
30f0: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3100: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3110: 3e 32 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >25 </font> 
3120: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
3130: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3140: 69 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 if </b></font><f
3150: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3160: 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 6f 2a"><b>[</b></fo
3170: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
3180: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
3190: 62 3e 2d 7a 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 b>-z</b></font>&
31a0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
31b0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
31c0: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
31d0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
31e0: 30 66 30 22 3e 24 68 65 61 64 65 72 57 72 69 74 0f0">$headerWrit
31f0: 74 65 6e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ten</font><font
3200: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3210: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
3220: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
3230: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3240: 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c <b>]</b></font><
3250: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3260: 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 a2a"><b>;</b></f
3270: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
3280: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3290: 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e <b>then</b></fon
32a0: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
32b0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 36 lor="#a52a2a">26
32c0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
32d0: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
32e0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
32f0: 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 2a2a"><b>echo</b
3300: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
3310: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e lor="#ff00ff">&n
3320: 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 bsp;</font><font
3330: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3340: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
3350: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3360: 3d 22 23 66 66 30 30 66 66 22 3e 43 6f 6e 74 65 ="#ff00ff">Conte
3370: 6e 74 2d 74 79 70 65 3a 20 74 65 78 74 2f 68 74 nt-type: text/ht
3380: 6d 6c 3b 20 63 68 61 72 73 65 74 3d 69 73 6f 2d ml; charset=iso-
3390: 38 38 35 39 2d 31 3c 2f 66 6f 6e 74 3e 3c 66 6f 8859-1</font><fo
33a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
33b0: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
33c0: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
33d0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
33e0: 61 22 3e 32 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">27 </font>&nb
33f0: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 sp; &
3400: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
3410: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 ="#a52a2a"><b>ec
3420: 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 ho</b></font><br
3430: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
3440: 23 61 35 32 61 32 61 22 3e 32 38 20 3c 2f 66 6f #a52a2a">28 </fo
3450: 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 nt> &
3460: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
3470: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
3480: 3e 68 65 61 64 65 72 57 72 69 74 74 65 6e 3c 2f >headerWritten</
3490: 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f font>=<font colo
34a0: 72 3d 22 23 66 66 30 30 66 66 22 3e 31 3c 2f 66 r="#ff00ff">1</f
34b0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
34c0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
34d0: 32 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 29 </font>
34e0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
34f0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 r="#a52a2a"><b>f
3500: 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e i</b></font><br>
3510: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
3520: 61 35 32 61 32 61 22 3e 33 30 20 3c 2f 66 6f 6e a52a2a">30 </fon
3530: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3540: 30 30 38 62 38 62 22 3e 7d 3c 2f 66 6f 6e 74 3e 008b8b">}</font>
3550: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
3560: 72 3d 22 23 61 35 32 61 32 61 22 3e 33 31 20 3c r="#a52a2a">31 <
3570: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3580: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3590: 22 3e 33 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">32 </font><fon
35a0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
35b0: 22 3e 45 72 72 6f 72 20 28 29 20 7b 3c 2f 66 6f ">Error () {</fo
35c0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
35d0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 olor="#a52a2a">3
35e0: 33 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 3 </font> &
35f0: 6e 62 73 70 3b 48 65 61 64 65 72 48 54 4d 4c 3c nbsp;HeaderHTML<
3600: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
3610: 3d 22 23 61 35 32 61 32 61 22 3e 33 34 20 3c 2f ="#a52a2a">34 </
3620: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
3630: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
3640: 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 52a2a"><b>echo</
3650: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
3660: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 olor="#ff00ff">&
3670: 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e nbsp;</font><fon
3680: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3690: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
36a0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
36b0: 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b r="#ff00ff"><
36c0: 70 26 67 74 3b 26 6c 74 3b 66 6f 6e 74 20 63 6f p><font co
36d0: 6c 6f 72 3d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 lor=</font><font
36e0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
36f0: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
3700: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3710: 3d 22 23 66 66 30 30 66 66 22 3e 72 65 64 3c 2f ="#ff00ff">red</
3720: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3730: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
3740: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
3750: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
3760: 30 66 66 22 3e 26 67 74 3b 45 52 52 4f 52 3a 20 0ff">>ERROR:
3770: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
3780: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 31 3c or="#a020f0">$1<
3790: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
37a0: 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b r="#ff00ff"><
37b0: 2f 66 6f 6e 74 26 67 74 3b 26 6c 74 3b 2f 70 26 /font></p&
37c0: 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 gt;</font><font
37d0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
37e0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
37f0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
3800: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3810: 33 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 35 </font>
3820: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
3830: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 r="#a52a2a"><b>e
3840: 78 69 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e xit</b></font>&n
3850: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
3860: 22 23 66 66 30 30 66 66 22 3e 31 3c 2f 66 6f 6e "#ff00ff">1</fon
3870: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
3880: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 36 lor="#a52a2a">36
3890: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
38a0: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 7d 3c lor="#008b8b">}<
38b0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
38c0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
38d0: 22 3e 33 37 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e ">37 </font><br>
38e0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
38f0: 61 35 32 61 32 61 22 3e 33 38 20 3c 2f 66 6f 6e a52a2a">38 </fon
3900: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3910: 30 30 38 62 38 62 22 3e 50 20 28 29 20 7b 3c 2f 008b8b">P () {</
3920: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3930: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3940: 3e 33 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >39 </font> 
3950: 3b 26 6e 62 73 70 3b 48 65 61 64 65 72 54 65 78 ; HeaderTex
3960: 74 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c t<br>..<font col
3970: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 34 30 20 or="#a52a2a">40
3980: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
3990: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
39a0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 6f 72 20 #a52a2a"><b>for
39b0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 76 61 72 20 3c </b></font>var <
39c0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
39d0: 61 32 61 22 3e 3c 62 3e 69 6e 3c 2f 62 3e 3c 2f a2a"><b>in</b></
39e0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
39f0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
3a00: 3e 24 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 >$*</font><font
3a10: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3a20: 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 <b>;</b></font>&
3a30: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
3a40: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 64 6f ="#a52a2a"><b>do
3a50: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
3a60: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
3a70: 35 32 61 32 61 22 3e 34 31 20 3c 2f 66 6f 6e 74 52a2a">41 </font
3a80: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 > &nb
3a90: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
3aa0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
3ab0: 62 3e 65 76 61 6c 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>eval</b></font
3ac0: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
3ad0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3ae0: 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c echo</b></font><
3af0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
3b00: 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 0ff"> </fon
3b10: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3b20: 61 30 32 30 66 30 22 3e 24 76 61 72 3c 2f 66 6f a020f0">$var</fo
3b30: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3b40: 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3d #ff00ff"> =
3b50: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
3b60: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
3b70: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
3b80: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3b90: 36 61 35 61 63 64 22 3e 5c 24 3c 2f 66 6f 6e 74 6a5acd">\$</font
3ba0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
3bb0: 30 32 30 66 30 22 3e 24 76 61 72 3c 2f 66 6f 6e 020f0">$var</fon
3bc0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3bd0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
3be0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e ;</b></font><br>
3bf0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
3c00: 61 35 32 61 32 61 22 3e 34 32 20 3c 2f 66 6f 6e a52a2a">42 </fon
3c10: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
3c20: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3c30: 32 61 22 3e 3c 62 3e 64 6f 6e 65 3c 2f 62 3e 3c 2a"><b>done</b><
3c40: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3c50: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3c60: 22 3e 34 33 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">43 </font><fon
3c70: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
3c80: 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a ">}</font><br>..
3c90: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3ca0: 32 61 32 61 22 3e 34 34 20 3c 2f 66 6f 6e 74 3e 2a2a">44 </font>
3cb0: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
3cc0: 72 3d 22 23 61 35 32 61 32 61 22 3e 34 35 20 3c r="#a52a2a">45 <
3cd0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3ce0: 72 3d 22 23 30 30 30 30 66 66 22 3e 23 23 20 44 r="#0000ff">## D
3cf0: 6f 20 74 68 65 20 72 65 61 6c 20 77 6f 72 6b 20 o the real work
3d00: 68 65 72 65 20 2e 2e 2e 3c 2f 66 6f 6e 74 3e 3c here ...</font><
3d10: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
3d20: 3d 22 23 61 35 32 61 32 61 22 3e 34 36 20 3c 2f ="#a52a2a">46 </
3d30: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3d40: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3d50: 3e 34 37 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 >47 </font><font
3d60: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
3d70: 3e 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3d >project</font>=
3d80: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 <font color="#6a
3d90: 35 61 63 64 22 3e 60 65 63 68 6f 20 3c 2f 66 6f 5acd">`echo </fo
3da0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3db0: 23 61 30 32 30 66 30 22 3e 24 50 41 54 48 5f 49 #a020f0">$PATH_I
3dc0: 4e 46 4f 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 NFO</font><font
3dd0: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
3de0: 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f </font><fo
3df0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3e00: 61 22 3e 3c 62 3e 7c 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>|</b></fon
3e10: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3e20: 36 61 35 61 63 64 22 3e 26 6e 62 73 70 3b 73 65 6a5acd"> se
3e30: 64 20 2d 65 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e d -e </font><fon
3e40: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3e50: 22 3e 3c 62 3e 27 3c 2f 62 3e 3c 2f 66 6f 6e 74 "><b>'</b></font
3e60: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
3e70: 66 30 30 66 66 22 3e 73 21 2f 3c 2f 66 6f 6e 74 f00ff">s!/</font
3e80: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 ><font color="#6
3e90: 61 35 61 63 64 22 3e 5c 28 3c 2f 66 6f 6e 74 3e a5acd">\(</font>
3ea0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
3eb0: 30 30 66 66 22 3e 5b 5e 2f 5d 2a 3c 2f 66 6f 6e 00ff">[^/]*</fon
3ec0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3ed0: 36 61 35 61 63 64 22 3e 5c 29 3c 2f 66 6f 6e 74 6a5acd">\)</font
3ee0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
3ef0: 66 30 30 66 66 22 3e 2e 2a 21 5c 31 21 3c 2f 66 f00ff">.*!\1!</f
3f00: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
3f10: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 27 7c 3c "#a52a2a"><b>'|<
3f20: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
3f30: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
3f40: 26 6e 62 73 70 3b 74 72 20 3c 2f 66 6f 6e 74 3e tr </font>
3f50: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3f60: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
3f70: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
3f80: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
3f90: 5b 41 2d 5a 5d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e [A-Z]</font><fon
3fa0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3fb0: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
3fc0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3fd0: 72 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 73 r="#6a5acd">&nbs
3fe0: 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 p;</font><font c
3ff0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4000: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4010: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4020: 23 66 66 30 30 66 66 22 3e 5b 61 2d 7a 5d 3c 2f #ff00ff">[a-z]</
4030: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
4040: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
4050: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
4060: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 font color="#6a5
4070: 61 63 64 22 3e 60 3c 2f 66 6f 6e 74 3e 3c 62 72 acd">`</font><br
4080: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
4090: 23 61 35 32 61 32 61 22 3e 34 38 20 3c 2f 66 6f #a52a2a">48 </fo
40a0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
40b0: 23 30 30 38 62 38 62 22 3e 72 65 70 6f 73 3c 2f #008b8b">repos</
40c0: 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f font>=<font colo
40d0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
40e0: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
40f0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4100: 32 30 66 30 22 3e 24 52 45 50 4f 53 52 4f 4f 54 20f0">$REPOSROOT
4110: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4120: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 2f 3c 2f or="#ff00ff">/</
4130: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
4140: 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a ="#a020f0">$proj
4150: 65 63 74 24 52 45 50 4f 53 45 58 54 3c 2f 66 6f ect$REPOSEXT</fo
4160: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4170: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
4180: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 t;</b></font><br
4190: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
41a0: 23 61 35 32 61 32 61 22 3e 34 39 20 3c 2f 66 6f #a52a2a">49 </fo
41b0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
41c0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 olor="#a52a2a">5
41d0: 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 0 </font><font c
41e0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
41f0: 62 3e 69 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e b>if </b></font>
4200: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4210: 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 2a2a"><b>[</b></
4220: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
4230: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4240: 3e 3c 62 3e 2d 72 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>-r</b></font
4250: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
4260: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4270: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
4280: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4290: 30 32 30 66 30 22 3e 24 72 65 70 6f 73 3c 2f 66 020f0">$repos</f
42a0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
42b0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
42c0: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e ot;</b></font>&n
42d0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
42e0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 5d 3c 2f "#a52a2a"><b>]</
42f0: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
4300: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4310: 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e b>;</b></font>&n
4320: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
4330: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 74 68 65 "#a52a2a"><b>the
4340: 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e n</b></font><br>
4350: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
4360: 61 35 32 61 32 61 22 3e 35 31 20 3c 2f 66 6f 6e a52a2a">51 </fon
4370: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
4380: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 ont color="#008b
4390: 38 62 22 3e 50 41 54 48 5f 49 4e 46 4f 3c 2f 66 8b">PATH_INFO</f
43a0: 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 ont>=<font color
43b0: 3d 22 23 36 61 35 61 63 64 22 3e 60 65 63 68 6f ="#6a5acd">`echo
43c0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
43d0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 52 lor="#a020f0">$R
43e0: 45 51 55 45 53 54 5f 55 52 49 3c 2f 66 6f 6e 74 EQUEST_URI</font
43f0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 ><font color="#6
4400: 61 35 61 63 64 22 3e 26 6e 62 73 70 3b 3c 2f 66 a5acd"> </f
4410: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4420: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 7c 3c 2f "#a52a2a"><b>|</
4430: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
4440: 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 26 olor="#6a5acd">&
4450: 6e 62 73 70 3b 73 65 64 20 2d 65 20 3c 2f 66 6f nbsp;sed -e </fo
4460: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4470: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
4480: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f t;</b></font><fo
4490: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
44a0: 66 22 3e 73 21 5e 3c 2f 66 6f 6e 74 3e 3c 66 6f f">s!^</font><fo
44b0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
44c0: 30 22 3e 24 53 43 52 49 50 54 5f 4e 41 4d 45 3c 0">$SCRIPT_NAME<
44d0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
44e0: 72 3d 22 23 66 66 30 30 66 66 22 3e 2f 3c 2f 66 r="#ff00ff">/</f
44f0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4500: 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 "#a020f0">$proje
4510: 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 ct</font><font c
4520: 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 5c olor="#6a5acd">\
4530: 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f \</font><font co
4540: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 28 5b lor="#ff00ff">([
4550: 5e 3f 5d 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 ^?]*</font><font
4560: 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 color="#6a5acd"
4570: 3e 5c 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 >\\</font><font
4580: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
4590: 29 2e 2a 21 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 ).*!</font><font
45a0: 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 color="#6a5acd"
45b0: 3e 5c 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 >\\</font><font
45c0: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
45d0: 31 21 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 1!</font><font c
45e0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
45f0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4600: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4610: 23 36 61 35 61 63 64 22 3e 60 3c 2f 66 6f 6e 74 #6a5acd">`</font
4620: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
4630: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 32 20 or="#a52a2a">52
4640: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4650: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4660: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3a 3c 2f 62 :</b
4670: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
4680: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
4690: 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 3e 3c 66 6f f0">${</font><fo
46a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
46b0: 30 22 3e 50 41 54 48 5f 49 4e 46 4f 3c 2f 66 6f 0">PATH_INFO</fo
46c0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
46d0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 3a 3d 3c 2f #a52a2a"><b>:=</
46e0: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
46f0: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 2f olor="#ff00ff">/
4700: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4710: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 7d 3c 2f or="#a020f0">}</
4720: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
4730: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4740: 3e 35 33 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >53 </font> 
4750: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
4760: 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 53 43 52 or="#008b8b">SCR
4770: 49 50 54 5f 4e 41 4d 45 3c 2f 66 6f 6e 74 3e 3d IPT_NAME</font>=
4780: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4790: 32 30 66 30 22 3e 24 53 43 52 49 50 54 5f 4e 41 20f0">$SCRIPT_NA
47a0: 4d 45 3c 2f 66 6f 6e 74 3e 2f 3c 66 6f 6e 74 20 ME</font>/<font
47b0: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
47c0: 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c $project</font><
47d0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
47e0: 3d 22 23 61 35 32 61 32 61 22 3e 35 34 20 3c 2f ="#a52a2a">54 </
47f0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
4800: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ;<font color="#0
4810: 30 38 62 38 62 22 3e 54 45 4d 50 46 49 4c 45 3c 08b8b">TEMPFILE<
4820: 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c /font>=<font col
4830: 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 60 6d 6b or="#6a5acd">`mk
4840: 74 65 6d 70 20 2f 74 6d 70 2f 66 6f 73 73 69 6c temp /tmp/fossil
4850: 2d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f -</font><font co
4860: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 lor="#a020f0">$p
4870: 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f roject</font><fo
4880: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
4890: 64 22 3e 2e 58 58 58 58 58 58 60 3c 2f 66 6f 6e d">.XXXXXX`</fon
48a0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
48b0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
48c0: 3e 7c 7c 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e >||</b></font>&n
48d0: 62 73 70 3b 45 72 72 6f 72 20 3c 66 6f 6e 74 20 bsp;Error <font
48e0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
48f0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
4900: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4910: 22 23 66 66 30 30 66 66 22 3e 43 6f 75 6c 64 6e "#ff00ff">Couldn
4920: 27 74 20 63 72 65 61 74 65 20 74 65 6d 70 66 69 't create tempfi
4930: 6c 65 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 le</font><font c
4940: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4950: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4960: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
4970: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 olor="#a52a2a">5
4980: 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 5 </font> &
4990: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
49a0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 74 72 ="#a52a2a"><b>tr
49b0: 61 70 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 ap</b></font>&nb
49c0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
49d0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
49e0: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f t;</b></font><fo
49f0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4a00: 66 22 3e 72 6d 20 2d 66 20 3c 2f 66 6f 6e 74 3e f">rm -f </font>
4a10: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4a20: 32 30 66 30 22 3e 24 54 45 4d 50 46 49 4c 45 3c 20f0">$TEMPFILE<
4a30: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4a40: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
4a50: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
4a60: 26 6e 62 73 70 3b 45 58 49 54 20 51 55 49 54 20 EXIT QUIT
4a70: 49 4e 54 20 54 45 52 4d 3c 62 72 3e 0d 0a 3c 66 INT TERM<br>..<f
4a80: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
4a90: 32 61 22 3e 35 36 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">56 </font>&n
4aa0: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
4ab0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
4ac0: 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e <b>echo</b></fon
4ad0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
4ae0: 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 72 65 ff00ff"> re
4af0: 70 6f 73 69 74 6f 72 79 3a 20 3c 2f 66 6f 6e 74 pository: </font
4b00: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4b10: 30 32 30 66 30 22 3e 24 72 65 70 6f 73 3c 2f 66 020f0">$repos</f
4b20: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4b30: 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b "#ff00ff">
4b40: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4b50: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4b60: 26 67 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 ></b></font>&
4b70: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
4b80: 3d 22 23 61 30 32 30 66 30 22 3e 24 54 45 4d 50 ="#a020f0">$TEMP
4b90: 46 49 4c 45 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d FILE</font><br>.
4ba0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
4bb0: 35 32 61 32 61 22 3e 35 37 20 3c 2f 66 6f 6e 74 52a2a">57 </font
4bc0: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f > <fo
4bd0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
4be0: 30 22 3e 24 46 4f 53 53 49 4c 3c 2f 66 6f 6e 74 0">$FOSSIL</font
4bf0: 3e 26 6e 62 73 70 3b 63 67 69 20 3c 66 6f 6e 74 > cgi <font
4c00: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
4c10: 3e 24 54 45 4d 50 46 49 4c 45 3c 2f 66 6f 6e 74 >$TEMPFILE</font
4c20: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
4c30: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 38 20 or="#a52a2a">58
4c40: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4c50: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4c60: 65 6c 69 66 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 elif</b></font>&
4c70: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
4c80: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 5b 3c ="#a52a2a"><b>[<
4c90: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
4ca0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4cb0: 32 61 32 61 22 3e 3c 62 3e 2d 7a 3c 2f 62 3e 3c 2a2a"><b>-z</b><
4cc0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
4cd0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4ce0: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
4cf0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4d00: 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f r="#a020f0">$pro
4d10: 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 ject</font><font
4d20: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4d30: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
4d40: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
4d50: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4d60: 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e ><b>]</b></font>
4d70: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4d80: 32 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 2a2a"><b>;</b></
4d90: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
4da0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4db0: 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f ><b>then</b></fo
4dc0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
4dd0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 olor="#a52a2a">5
4de0: 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 9 </font> &
4df0: 6e 62 73 70 3b 48 65 61 64 65 72 48 54 4d 4c 3c nbsp;HeaderHTML<
4e00: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
4e10: 3d 22 23 61 35 32 61 32 61 22 3e 36 30 20 3c 2f ="#a52a2a">60 </
4e20: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
4e30: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
4e40: 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 52a2a"><b>echo</
4e50: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
4e60: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 olor="#ff00ff">&
4e70: 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e nbsp;</font><fon
4e80: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4e90: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
4ea0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4eb0: 72 3d 22 23 61 30 32 30 66 30 22 3e 24 54 49 54 r="#a020f0">$TIT
4ec0: 4c 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 LE</font><font c
4ed0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4ee0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4ef0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
4f00: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 olor="#a52a2a">6
4f10: 31 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 1 </font> &
4f20: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
4f30: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 ="#a52a2a"><b>ec
4f40: 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f ho</b></font><fo
4f50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4f60: 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e f"> </font>
4f70: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4f80: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
4f90: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
4fa0: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
4fb0: 26 6c 74 3b 75 6c 26 67 74 3b 3c 2f 66 6f 6e 74 <ul></font
4fc0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4fd0: 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 52a2a"><b>"
4fe0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
4ff0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
5000: 35 32 61 32 61 22 3e 36 32 20 3c 2f 66 6f 6e 74 52a2a">62 </font
5010: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 66 69 6e > fin
5020: 64 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 d <font color="#
5030: 61 30 32 30 66 30 22 3e 24 52 45 50 4f 53 52 4f a020f0">$REPOSRO
5040: 4f 54 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2d OT</font> -
5050: 6e 61 6d 65 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 name <font color
5060: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
5070: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
5080: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
5090: 30 66 66 22 3e 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f 0ff">*</font><fo
50a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
50b0: 30 22 3e 24 52 45 50 4f 53 45 58 54 3c 2f 66 6f 0">$REPOSEXT</fo
50c0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
50d0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
50e0: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 t;</b></font>&nb
50f0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
5100: 23 61 35 32 61 32 61 22 3e 3c 62 3e 7c 3c 2f 62 #a52a2a"><b>|</b
5110: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 5c 3c ></font> \<
5120: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
5130: 3d 22 23 61 35 32 61 32 61 22 3e 36 33 20 3c 2f ="#a52a2a">63 </
5140: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
5150: 3b 77 68 69 6c 65 20 3c 66 6f 6e 74 20 63 6f 6c ;while <font col
5160: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
5170: 72 65 61 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 read</b></font>&
5180: 6e 62 73 70 3b 72 65 70 6f 73 3c 66 6f 6e 74 20 nbsp;repos<font
5190: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
51a0: 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 <b>;</b></font>&
51b0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
51c0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 64 6f ="#a52a2a"><b>do
51d0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
51e0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
51f0: 35 32 61 32 61 22 3e 36 34 20 3c 2f 66 6f 6e 74 52a2a">64 </font
5200: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 > &nb
5210: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
5220: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 70 olor="#008b8b">p
5230: 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3d 3c 66 roject</font>=<f
5240: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
5250: 63 64 22 3e 60 62 61 73 65 6e 61 6d 65 20 3c 2f cd">`basename </
5260: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
5270: 3d 22 23 61 30 32 30 66 30 22 3e 24 72 65 70 6f ="#a020f0">$repo
5280: 73 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f s</font><font co
5290: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 26 6e lor="#6a5acd">&n
52a0: 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 bsp;</font><font
52b0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
52c0: 3e 24 52 45 50 4f 53 45 58 54 3c 2f 66 6f 6e 74 >$REPOSEXT</font
52d0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 ><font color="#6
52e0: 61 35 61 63 64 22 3e 60 3c 2f 66 6f 6e 74 3e 3c a5acd">`</font><
52f0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
5300: 3d 22 23 61 35 32 61 32 61 22 3e 36 35 20 3c 2f ="#a52a2a">65 </
5310: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
5320: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
5330: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5340: 61 22 3e 3c 62 3e 69 66 20 3c 2f 62 3e 3c 2f 66 a"><b>if </b></f
5350: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
5360: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f "#a52a2a"><b>[</
5370: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c b></font> <
5380: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
5390: 61 32 61 22 3e 3c 62 3e 2d 66 3c 2f 62 3e 3c 2f a2a"><b>-f</b></
53a0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
53b0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
53c0: 3e 24 72 65 70 6f 73 3c 2f 66 6f 6e 74 3e 26 6e >$repos</font>&n
53d0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
53e0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 2d 61 3c "#a52a2a"><b>-a<
53f0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
5400: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5410: 32 61 32 61 22 3e 3c 62 3e 21 3c 2f 62 3e 3c 2f 2a2a"><b>!</b></
5420: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
5430: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
5440: 3e 3c 62 3e 2d 65 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>-e</b></font
5450: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
5460: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 52 45 or="#a020f0">$RE
5470: 50 4f 53 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 2f 2e POSROOT</font>/.
5480: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
5490: 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 3c 2f 20f0">$project</
54a0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
54b0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
54c0: 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e ><b>]</b></font>
54d0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
54e0: 32 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 2a2a"><b>;</b></
54f0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
5500: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
5510: 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f ><b>then</b></fo
5520: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
5530: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 olor="#a52a2a">6
5540: 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6 </font> &
5550: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
5560: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
5570: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5580: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
5590: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
55a0: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
55b0: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
55c0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
55d0: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
55e0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
55f0: 66 66 30 30 66 66 22 3e 26 6c 74 3b 6c 69 26 67 ff00ff"><li&g
5600: 74 3b 26 6c 74 3b 61 20 68 72 65 66 3d 27 3c 2f t;<a href='</
5610: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
5620: 3d 22 23 61 30 32 30 66 30 22 3e 24 7b 3c 2f 66 ="#a020f0">${</f
5630: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
5640: 22 23 61 30 32 30 66 30 22 3e 52 45 51 55 45 53 "#a020f0">REQUES
5650: 54 5f 55 52 49 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e T_URI</font><fon
5660: 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 t color="#a020f0
5670: 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ">}</font><font
5680: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
5690: 2f 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f /</font><font co
56a0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 lor="#a020f0">$p
56b0: 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f roject</font><fo
56c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
56d0: 66 22 3e 27 26 67 74 3b 3c 2f 66 6f 6e 74 3e 3c f">'></font><
56e0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
56f0: 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 0f0">$project</f
5700: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
5710: 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 2f 61 "#ff00ff"></a
5720: 26 67 74 3b 26 6c 74 3b 2f 6c 69 26 67 74 3b 3c ></li><
5730: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5740: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
5750: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
5760: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
5770: 72 3d 22 23 61 35 32 61 32 61 22 3e 36 37 20 3c r="#a52a2a">67 <
5780: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
5790: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
57a0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
57b0: 32 61 22 3e 3c 62 3e 66 69 3c 2f 62 3e 3c 2f 66 2a"><b>fi</b></f
57c0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
57d0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
57e0: 36 38 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 68 </font>
57f0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
5800: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 64 r="#a52a2a"><b>d
5810: 6f 6e 65 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 one</b></font><b
5820: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
5830: 22 23 61 35 32 61 32 61 22 3e 36 39 20 3c 2f 66 "#a52a2a">69 </f
5840: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
5850: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5860: 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 2a2a"><b>echo</b
5870: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
5880: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e lor="#ff00ff">&n
5890: 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 bsp;</font><font
58a0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
58b0: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
58c0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
58d0: 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 2f ="#ff00ff"></
58e0: 75 6c 26 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f ul></font><fo
58f0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5900: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
5910: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
5920: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5930: 61 22 3e 37 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f a">70 </font><fo
5940: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5950: 61 22 3e 3c 62 3e 65 6c 73 65 3c 2f 62 3e 3c 2f a"><b>else</b></
5960: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
5970: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
5980: 3e 37 31 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >71 </font> 
5990: 3b 26 6e 62 73 70 3b 45 72 72 6f 72 20 3c 66 6f ; Error <fo
59a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
59b0: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
59c0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
59d0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 4e 6f 20 or="#ff00ff">No
59e0: 73 75 63 68 20 70 72 6f 6a 65 63 74 3a 20 3c 2f such project: </
59f0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
5a00: 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a ="#a020f0">$proj
5a10: 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ect</font><font
5a20: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
5a30: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
5a40: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
5a50: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
5a60: 37 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 72 </font><font
5a70: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
5a80: 3c 62 3e 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e <b>fi</b></font>
5a90: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
5aa0: 72 3d 22 23 61 35 32 61 32 61 22 3e 37 33 20 3c r="#a52a2a">73 <
5ab0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
5ac0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
5ad0: 22 3e 37 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">74 </font><fon
5ae0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
5af0: 22 3e 3c 62 3e 65 78 69 74 3c 2f 62 3e 3c 2f 66 "><b>exit</b></f
5b00: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
5b10: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
5b20: 30 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 2f 0</font><br>..</
5b30: 66 6f 6e 74 3e 0d 0a 3c 2f 6e 6f 77 69 6b 69 3e font>..</nowiki>
5b40: 0d 0a 0d 0a 3c 68 34 3e 57 69 6e 64 6f 77 73 3c ....<h4>Windows<
5b50: 2f 68 34 3e 0d 0a 3c 70 3e 57 68 69 6c 65 20 69 /h4>..<p>While i
5b60: 74 20 69 73 20 66 61 72 20 66 72 6f 6d 20 61 20 t is far from a
5b70: 70 65 72 66 65 63 74 20 73 65 74 20 6f 66 20 69 perfect set of i
5b80: 6e 73 74 72 75 63 74 69 6f 6e 73 2e 2e 20 68 65 nstructions.. he
5b90: 72 65 20 61 72 65 20 73 6f 6d 65 20 71 75 69 63 re are some quic
5ba0: 6b 20 6e 6f 74 65 73 20 74 68 61 74 20 73 68 6f k notes that sho
5bb0: 75 6c 64 20 68 65 6c 70 20 77 69 6e 64 6f 77 73 uld help windows
5bc0: 20 75 73 65 72 73 20 61 6c 6f 6e 67 20 74 68 65 users along the
5bd0: 20 77 61 79 2e 2e 2e 3c 2f 70 3e 0d 0a 3c 75 6c way...</p>..<ul
5be0: 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 6e 65 65 64 20 >..<li>you need
5bf0: 66 6f 73 73 69 6c 2e 65 78 65 20 61 63 63 65 73 fossil.exe acces
5c00: 73 69 62 6c 65 20 62 79 20 79 6f 75 72 20 77 65 sible by your we
5c10: 62 20 73 65 72 76 65 72 20 6f 72 20 6f 6e 20 79 b server or on y
5c20: 6f 75 72 20 70 61 74 68 2e 2e 20 65 61 73 69 65 our path.. easie
5c30: 73 74 20 69 73 20 74 6f 20 6a 75 73 74 20 63 68 st is to just ch
5c40: 75 63 6b 20 69 74 20 69 6e 20 5c 25 53 59 53 54 uck it in \%SYST
5c50: 45 4d 5f 52 4f 4f 54 25 5c 20 28 75 73 75 61 6c EM_ROOT%\ (usual
5c60: 6c 79 20 63 3a 5c 77 69 6e 64 6f 77 73 5c 29 20 ly c:\windows\)
5c70: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 73 73 75 6d </li>..<li>assum
5c80: 69 6e 67 20 79 6f 75 20 61 72 65 20 72 75 6e 6e ing you are runn
5c90: 69 6e 67 20 61 70 61 63 68 65 2c 20 79 6f 75 20 ing apache, you
5ca0: 6e 65 65 64 20 74 6f 20 65 69 74 68 65 72 20 61 need to either a
5cb0: 64 64 20 74 68 65 20 45 78 65 63 43 47 49 20 74 dd the ExecCGI t
5cc0: 6f 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 6f 6e o the options on
5cd0: 20 79 6f 75 72 20 44 6f 63 75 6d 65 6e 74 52 6f your DocumentRo
5ce0: 6f 74 2c 20 6f 72 20 6d 61 6b 65 20 73 75 72 65 ot, or make sure
5cf0: 20 74 68 65 20 53 63 72 69 70 74 41 6c 69 61 73 the ScriptAlias
5d00: 20 64 69 72 65 63 74 69 76 65 20 69 73 20 73 65 directive is se
5d10: 74 20 61 6e 64 20 70 75 74 20 79 6f 75 72 20 2e t and put your .
5d20: 63 67 69 20 66 69 6c 65 73 20 69 6e 20 74 68 61 cgi files in tha
5d30: 74 20 66 6f 6c 64 65 72 2e 2e 3c 2f 6c 69 3e 0d t folder..</li>.
5d40: 0a 3c 6c 69 3e 74 68 65 20 63 6f 6e 74 65 6e 74 .<li>the content
5d50: 73 20 6f 66 20 79 6f 75 72 20 63 67 69 20 66 69 s of your cgi fi
5d60: 6c 65 20 6e 65 65 64 73 20 74 6f 20 65 73 73 65 le needs to esse
5d70: 6e 74 69 61 6c 6c 79 20 74 68 65 20 73 61 6d 65 ntially the same
5d80: 20 61 73 20 61 62 6f 76 65 2e 2e 20 68 6f 77 65 as above.. howe
5d90: 76 65 72 20 70 61 74 68 73 20 6e 65 65 64 73 20 ver paths needs
5da0: 74 6f 20 62 65 20 77 69 6e 64 6f 77 73 20 66 72 to be windows fr
5db0: 69 65 6e 64 6c 79 2e 2e 20 69 20 68 61 76 65 20 iendly.. i have
5dc0: 6d 61 64 65 20 73 75 72 65 20 74 68 61 74 20 61 made sure that a
5dd0: 6c 6c 20 66 6f 6c 64 65 72 73 20 6f 6e 20 6d 79 ll folders on my
5de0: 20 74 65 73 74 20 62 6f 78 20 61 72 65 20 66 72 test box are fr
5df0: 65 65 20 6f 66 20 73 70 61 63 65 73 2c 20 61 6e ee of spaces, an
5e00: 64 20 61 73 20 73 75 63 68 20 74 68 69 73 20 66 d as such this f
5e10: 69 6c 65 20 77 6f 72 6b 73 20 66 6f 72 20 6d 65 ile works for me
5e20: 20 28 6f 62 76 69 6f 75 73 6c 79 20 79 6f 75 72 (obviously your
5e30: 20 70 61 74 68 73 20 6d 61 79 20 64 69 66 66 65 paths may diffe
5e40: 72 29 0d 0a 3c 70 72 65 3e 0d 0a 23 21 20 66 6f r)..<pre>..#! fo
5e50: 73 73 69 6c 2e 65 78 65 0d 0a 72 65 70 6f 73 69 ssil.exe..reposi
5e60: 74 6f 72 79 3a 20 63 3a 2f 77 61 6d 70 2f 77 77 tory: c:/wamp/ww
5e70: 77 2f 64 65 76 2f 61 63 63 6f 75 6e 74 73 2e 66 w/dev/accounts.f
5e80: 6f 73 73 69 6c 0d 0a 3c 2f 70 72 65 3e 0d 0a 49 ossil..</pre>..I
5e90: 20 73 75 70 70 6f 73 65 20 79 6f 75 20 63 6f 75 suppose you cou
5ea0: 6c 64 20 70 75 74 20 66 6f 73 73 69 6c 2e 65 78 ld put fossil.ex
5eb0: 65 20 73 6f 6d 65 77 68 65 72 65 20 6d 6f 72 65 e somewhere more
5ec0: 20 73 70 65 63 69 66 69 63 20 61 6e 64 20 73 65 specific and se
5ed0: 74 20 74 68 65 20 70 61 74 68 20 74 6f 20 69 74 t the path to it
5ee0: 20 61 73 20 77 65 6c 6c 2c 20 62 75 74 20 73 69 as well, but si
5ef0: 6e 63 65 20 79 6f 75 20 61 72 65 20 70 72 6f 62 nce you are prob
5f00: 61 62 6c 79 20 75 73 69 6e 67 20 74 68 65 20 73 ably using the s
5f10: 61 6d 65 20 65 78 65 63 75 74 61 62 6c 65 20 66 ame executable f
5f20: 6f 72 20 63 6d 64 6c 69 6e 65 20 61 6e 64 20 63 or cmdline and c
5f30: 67 69 20 69 74 20 6b 69 6e 64 20 6f 66 20 6a 75 gi it kind of ju
5f40: 73 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 20 74 st makes sense t
5f50: 6f 20 70 75 74 20 69 74 20 73 6f 6d 65 77 68 65 o put it somewhe
5f60: 72 65 20 6d 6f 72 65 20 61 63 63 65 73 73 69 62 re more accessib
5f70: 6c 65 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 41 73 20 le</li>..<li>As
5f80: 77 69 74 68 20 6d 6f 73 74 20 57 69 6e 64 6f 77 with most Window
5f90: 73 20 62 61 73 65 64 20 77 65 62 20 69 6e 73 74 s based web inst
5fa0: 72 75 63 74 69 6f 6e 73 2c 20 70 65 72 6d 69 73 ructions, permis
5fb0: 73 69 6f 6e 20 61 72 65 20 6e 6f 74 20 61 73 20 sion are not as
5fc0: 69 6d 70 6f 72 74 61 6e 74 2c 20 68 6f 77 65 76 important, howev
5fd0: 65 72 20 61 74 20 74 68 65 20 6c 65 61 73 74 2c er at the least,
5fe0: 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 6d 61 6b you need to mak
5ff0: 65 20 73 75 72 65 20 74 68 61 74 20 79 6f 75 72 e sure that your
6000: 20 72 65 70 6f 73 69 74 6f 72 79 20 69 73 20 6e repository is n
6010: 6f 74 20 66 6c 61 67 67 65 64 20 72 65 61 64 2d ot flagged read-
6020: 6f 6e 6c 79 2c 20 61 73 20 79 6f 75 20 77 69 6c only, as you wil
6030: 6c 20 65 6e 63 6f 75 6e 74 65 72 20 64 61 74 61 l encounter data
6040: 62 61 73 65 20 65 72 72 6f 72 73 20 69 66 20 69 base errors if i
6050: 74 20 69 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c t is.</li>..</ul
6060: 3e 0d 0a 0d 0a 3c 68 33 3e 44 69 73 63 75 73 73 >....<h3>Discuss
6070: 69 6f 6e 3c 2f 68 33 3e 0d 0a 55 73 69 6e 67 20 ion</h3>..Using
6080: 74 68 65 20 43 47 49 20 73 65 72 76 65 72 20 69 the CGI server i
6090: 73 20 74 68 65 20 62 65 73 74 20 73 6f 6c 75 74 s the best solut
60a0: 69 6f 6e 20 63 6f 6d 62 69 6e 69 6e 67 20 61 6e ion combining an
60b0: 20 65 78 69 73 74 69 6e 67 20 77 65 62 20 69 6e existing web in
60c0: 66 72 61 73 74 72 75 63 74 75 72 65 20 61 6e 64 frastructure and
60d0: 20 74 68 65 20 73 68 61 72 69 6e 67 20 6f 66 20 the sharing of
60e0: 6d 61 6e 79 20 3c 63 69 74 65 3e 46 6f 73 73 69 many <cite>Fossi
60f0: 6c 3c 2f 63 69 74 65 3e 20 72 65 70 6f 73 69 74 l</cite> reposit
6100: 6f 72 69 65 73 2e 20 20 55 6e 6c 69 6b 65 20 74 ories. Unlike t
6110: 68 65 20 61 64 2d 68 6f 63 20 73 6f 6c 75 74 69 he ad-hoc soluti
6120: 6f 6e 20 77 68 69 63 68 20 72 65 71 75 69 72 65 on which require
6130: 73 2c 20 69 6e 20 65 66 66 65 63 74 2c 20 61 20 s, in effect, a
6140: 73 65 70 61 72 61 74 65 20 70 6f 72 74 20 66 6f separate port fo
6150: 72 20 65 61 63 68 20 73 69 6d 75 6c 74 61 6e 65 r each simultane
6160: 6f 75 73 6c 79 2d 73 68 61 72 65 64 20 72 65 70 ously-shared rep
6170: 6f 73 69 74 6f 72 79 2c 20 61 6e 64 20 77 68 69 ository, and whi
6180: 63 68 20 72 65 71 75 69 72 65 73 20 73 65 76 65 ch requires seve
6190: 72 61 6c 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 ral instances of
61a0: 20 66 6f 73 73 69 6c 20 72 75 6e 6e 69 6e 67 20 fossil running
61b0: 2d 2d 20 6f 6e 65 20 66 6f 72 20 65 61 63 68 20 -- one for each
61c0: 73 68 61 72 65 64 20 72 65 70 6f 73 69 74 6f 72 shared repositor
61d0: 79 20 2d 2d 20 74 68 65 20 43 47 49 20 61 70 70 y -- the CGI app
61e0: 72 6f 61 63 68 20 75 73 65 73 20 55 52 4c 73 20 roach uses URLs
61f0: 74 6f 20 64 69 73 74 69 6e 67 75 69 73 68 20 62 to distinguish b
6200: 65 74 77 65 65 6e 20 72 65 70 6f 73 69 74 6f 72 etween repositor
6210: 69 65 73 20 61 6e 64 20 6f 6e 6c 79 20 28 62 72 ies and only (br
6220: 69 65 66 6c 79 29 20 72 75 6e 73 20 61 20 63 6f iefly) runs a co
6230: 70 79 20 6f 66 20 66 6f 73 73 69 6c 20 77 68 65 py of fossil whe
6240: 6e 20 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 n the repository
6250: 20 69 73 20 61 63 74 75 61 6c 6c 79 20 61 63 63 is actually acc
6260: 65 73 73 65 64 2e 0d 0a 0d 0a 53 68 61 72 69 6e essed.....Sharin
6270: 67 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 77 g repositories w
6280: 69 74 68 20 43 47 49 20 69 73 20 72 65 61 6c 6c ith CGI is reall
6290: 79 20 6f 6e 6c 79 20 77 6f 72 74 68 20 74 68 65 y only worth the
62a0: 20 65 66 66 6f 72 74 20 69 66 20 6d 6f 72 65 20 effort if more
62b0: 74 68 61 6e 20 6f 6e 65 20 72 65 70 6f 73 69 74 than one reposit
62c0: 6f 72 79 20 69 73 20 62 65 69 6e 67 20 73 68 61 ory is being sha
62d0: 72 65 64 2c 20 68 6f 77 65 76 65 72 2e 20 20 57 red, however. W
62e0: 69 74 68 20 6f 6e 6c 79 20 6f 6e 65 20 62 65 69 ith only one bei
62f0: 6e 67 20 73 68 61 72 65 64 2c 20 3c 63 6f 64 65 ng shared, <code
6300: 3e 66 6f 73 73 69 6c 20 73 65 72 76 65 72 3c 2f >fossil server</
6310: 63 6f 64 65 3e 20 69 73 20 6c 69 6b 65 6c 79 20 code> is likely
6320: 6d 6f 72 65 20 74 68 61 6e 20 61 64 65 71 75 61 more than adequa
6330: 74 65 20 6f 72 20 74 68 65 20 75 73 65 20 6f 66 te or the use of
6340: 20 28 78 29 69 6e 65 74 64 20 6d 61 79 20 62 65 (x)inetd may be
6350: 20 69 6e 64 69 63 61 74 65 64 2e 20 20 49 66 2c indicated. If,
6360: 20 68 6f 77 65 76 65 72 2c 20 74 68 65 72 65 20 however, there
6370: 69 73 20 61 6c 72 65 61 64 79 20 61 6e 20 65 78 is already an ex
6380: 69 73 74 69 6e 67 20 77 65 62 20 69 6e 66 72 61 isting web infra
6390: 73 74 72 75 63 74 75 72 65 20 69 6e 20 70 6c 61 structure in pla
63a0: 63 65 2c 20 43 47 49 20 73 74 69 6c 6c 20 6d 61 ce, CGI still ma
63b0: 79 20 62 65 20 70 72 65 66 65 72 72 65 64 20 69 y be preferred i
63c0: 66 20 6f 6e 6c 79 20 66 6f 72 20 63 6f 6e 73 69 f only for consi
63d0: 73 74 65 6e 63 79 20 61 6e 64 20 6d 61 69 6e 74 stency and maint
63e0: 61 69 6e 61 62 69 6c 69 74 79 20 6f 66 20 74 68 ainability of th
63f0: 65 20 73 79 73 74 65 6d 20 61 73 20 61 20 77 68 e system as a wh
6400: 6f 6c 65 2e 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e ole.....<h2><a n
6410: 61 6d 65 3d 22 65 6e 76 22 3e 55 73 69 6e 67 20 ame="env">Using
6420: 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 Environment vari
6430: 61 62 6c 65 73 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a ables</a></h2>..
6440: 3c 68 33 3e 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f <h3>Motivation</
6450: 68 33 3e 0d 0a 20 20 2a 20 20 57 61 6e 74 20 74 h3>.. * Want t
6460: 6f 20 75 73 65 20 61 20 64 69 66 66 65 72 65 6e o use a differen
6470: 74 20 65 64 69 74 6f 72 20 66 6f 72 20 63 68 65 t editor for che
6480: 63 6b 69 6e 73 20 28 55 6e 69 78 2f 57 69 6e 64 ckins (Unix/Wind
6490: 6f 77 73 29 0d 0a 20 20 2a 20 20 55 73 65 20 61 ows).. * Use a
64a0: 20 70 72 6f 78 79 20 69 66 20 79 6f 75 20 61 72 proxy if you ar
64b0: 65 20 62 65 68 69 6e 64 20 61 20 66 69 72 65 77 e behind a firew
64c0: 61 6c 6c 0d 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 all....<h3>Solut
64d0: 69 6f 6e 3c 2f 68 33 3e 0d 0a 45 6e 76 69 72 6f ion</h3>..Enviro
64e0: 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 20 nment variables
64f0: 61 72 65 20 75 73 65 64 20 74 6f 20 63 75 73 74 are used to cust
6500: 6f 6d 69 7a 65 20 73 6f 6d 65 20 70 72 6f 67 72 omize some progr
6510: 61 6d 6d 65 20 62 65 68 61 76 69 6f 75 72 2e 20 amme behaviour.
6520: 4f 6e 20 4c 69 6e 75 78 2f 55 6e 69 78 20 74 68 On Linux/Unix th
6530: 65 79 20 63 61 6e 20 62 65 20 73 65 74 20 69 6e ey can be set in
6540: 20 79 6f 75 20 7e 2f 2e 62 61 73 68 72 63 20 6f you ~/.bashrc o
6550: 72 20 65 76 65 6e 20 6f 6e 20 63 6f 6d 6d 61 6e r even on comman
6560: 64 20 6c 69 6e 65 2e 20 4f 6e 20 57 69 6e 64 6f d line. On Windo
6570: 77 73 20 74 68 65 79 20 63 61 6e 20 62 65 20 73 ws they can be s
6580: 65 74 20 69 6e 20 74 68 65 20 73 79 73 74 65 6d et in the system
6590: 20 73 65 74 74 69 6e 67 73 2e 0d 0a 0d 0a 3c 63 settings.....<c
65a0: 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 69 74 65 ite>Fossil</cite
65b0: 3e 20 63 68 65 63 6b 73 20 74 68 65 20 66 6f 6c > checks the fol
65c0: 6c 6f 77 69 6e 67 20 65 6e 76 69 72 6f 6e 6d 65 lowing environme
65d0: 6e 74 20 76 61 72 69 61 62 6c 65 73 3a 0d 0a 20 nt variables:..
65e0: 20 2a 20 20 56 49 53 55 41 4c 2f 45 44 49 54 4f * VISUAL/EDITO
65f0: 52 0d 0a 20 20 2a 20 20 68 74 74 70 5f 70 72 6f R.. * http_pro
6600: 78 79 0d 0a 20 20 2a 20 20 54 4d 50 5f 44 49 52 xy.. * TMP_DIR
6610: 0d 0a 20 20 2a 20 20 47 41 54 45 57 41 59 5f 49 .. * GATEWAY_I
6620: 4e 54 45 52 46 41 43 45 0d 0a 20 20 2a 20 20 53 NTERFACE.. * S
6630: 51 4c 49 54 45 5f 46 4f 52 43 45 5f 50 52 4f 58 QLITE_FORCE_PROX
6640: 59 5f 4c 4f 43 4b 49 4e 47 0d 0a 20 20 2a 20 20 Y_LOCKING.. *
6650: 55 53 45 52 0d 0a 20 20 2a 20 20 55 53 45 52 4e USER.. * USERN
6660: 41 4d 45 0d 0a 0d 0a 3c 62 3e 56 49 53 55 41 4c AME....<b>VISUAL
6670: 2f 45 44 49 54 4f 52 3c 2f 62 3e 20 63 6f 6e 74 /EDITOR</b> cont
6680: 61 69 6e 20 74 68 65 20 65 64 69 74 6f 72 20 6f ain the editor o
6690: 66 20 79 6f 75 72 20 63 68 6f 69 63 65 20 74 68 f your choice th
66a0: 61 74 20 69 73 20 75 73 65 64 20 74 6f 20 77 72 at is used to wr
66b0: 69 74 65 20 74 68 65 20 63 6f 6d 6d 69 74 20 66 ite the commit f
66c0: 69 6c 65 2e 0d 0a 0d 0a 3c 62 3e 54 4d 50 5f 44 ile.....<b>TMP_D
66d0: 49 52 3c 2f 62 3e 20 73 70 65 63 69 66 69 65 73 IR</b> specifies
66e0: 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 66 the directory f
66f0: 6f 72 20 74 65 6d 70 6f 72 61 72 79 20 66 69 6c or temporary fil
6700: 65 73 2e 0d 0a 0d 0a 3c 62 3e 47 41 54 45 57 41 es.....<b>GATEWA
6710: 59 5f 49 4e 54 45 52 46 41 43 45 3c 2f 62 3e 20 Y_INTERFACE</b>
6720: 3f 3f 3f 0d 0a 0d 0a 3c 62 3e 53 51 4c 49 54 45 ???....<b>SQLITE
6730: 5f 46 4f 52 43 45 5f 50 52 4f 58 59 5f 4c 4f 43 _FORCE_PROXY_LOC
6740: 4b 49 4e 47 3c 2f 62 3e 20 3f 3f 3f 0d 0a 0d 0a KING</b> ???....
6750: 3c 62 3e 55 53 45 52 3c 2f 62 3e 0d 0a 0d 0a 3c <b>USER</b>....<
6760: 62 3e 55 53 45 52 4e 41 4d 45 3c 2f 62 3e 0d 0a b>USERNAME</b>..
6770: 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d ....<h2><a name=
6780: 22 63 73 73 22 3e 45 78 61 6d 70 6c 65 20 43 53 "css">Example CS
6790: 53 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e S</a></h2>..<h3>
67a0: 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d Motivation</h3>.
67b0: 0a 54 68 65 20 64 65 66 61 75 6c 74 20 55 49 20 .The default UI
67c0: 6d 61 79 20 6e 6f 74 20 62 65 20 73 74 79 6c 69 may not be styli
67d0: 73 68 20 69 6e 20 65 76 65 72 79 6f 6e 65 73 20 sh in everyones
67e0: 65 79 65 73 2e 0d 0a 49 74 20 69 73 20 75 70 20 eyes...It is up
67f0: 74 6f 20 79 6f 75 20 74 6f 20 63 68 61 6e 67 65 to you to change
6800: 20 69 74 2e 20 53 65 65 20 74 68 65 20 43 53 53 it. See the CSS
6810: 20 63 6f 64 65 20 62 65 6c 6f 77 20 66 72 6f 6d code below from
6820: 20 74 68 69 73 20 73 69 74 65 20 5b 68 74 74 70 this site [http
6830: 3a 2f 2f 66 6f 73 73 69 6c 2e 77 61 6e 64 65 72 ://fossil.wander
6840: 69 6e 67 68 6f 72 73 65 2e 6e 65 74 2f 69 6e 64 inghorse.net/ind
6850: 65 78 2e 63 67 69 2f 69 6e 64 65 78 7c 57 61 6e ex.cgi/index|Wan
6860: 64 65 72 69 6e 67 20 48 6f 72 73 65 5d 0d 0a 0d dering Horse]...
6870: 0a 3c 6e 6f 77 69 6b 69 3e 0d 0a 3c 70 72 65 3e .<nowiki>..<pre>
6880: 0d 0a 2f 2a 20 47 65 6e 65 72 61 6c 20 73 65 74 ../* General set
6890: 74 69 6e 67 73 20 66 6f 72 20 74 68 65 20 65 6e tings for the en
68a0: 74 69 72 65 20 70 61 67 65 20 2a 2f 0d 0a 62 6f tire page */..bo
68b0: 64 79 20 7b 0d 0a 20 20 6d 61 72 67 69 6e 3a 20 dy {.. margin:
68c0: 30 65 78 20 31 65 78 3b 0d 0a 20 20 70 61 64 64 0ex 1ex;.. padd
68d0: 69 6e 67 3a 20 30 70 78 3b 0d 0a 20 20 62 61 63 ing: 0px;.. bac
68e0: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 77 kground-color: w
68f0: 68 69 74 65 3b 0d 0a 20 20 66 6f 6e 74 2d 66 61 hite;.. font-fa
6900: 6d 69 6c 79 3a 20 22 73 61 6e 73 20 73 65 72 69 mily: "sans seri
6910: 66 22 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 4d 61 6b f";..}..../* Mak
6920: 65 20 74 68 65 20 6c 69 6e 6b 73 20 69 6e 20 74 e the links in t
6930: 68 65 20 66 6f 6f 74 65 72 20 6c 65 73 73 20 75 he footer less u
6940: 67 6c 79 2e 2e 2e 20 2a 2f 0d 0a 61 20 7b 20 63 gly... */..a { c
6950: 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 7d olor: #000f6a; }
6960: 0d 0a 61 3a 6c 69 6e 6b 20 7b 20 63 6f 6c 6f 72 ..a:link { color
6970: 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a 61 3a : #000f6a; }..a:
6980: 76 69 73 69 74 65 64 20 7b 20 63 6f 6c 6f 72 3a visited { color:
6990: 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a 61 3a 68 #000f6a; }..a:h
69a0: 6f 76 65 72 20 7b 20 62 61 63 6b 67 72 6f 75 6e over { backgroun
69b0: 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 33 65 33 d-color: #e3e3e3
69c0: 3b 20 7d 0d 0a 0d 0a 0d 0a 68 72 20 7b 0d 0a 20 ; }......hr {..
69d0: 20 68 65 69 67 68 74 3a 20 33 70 78 3b 0d 0a 20 height: 3px;..
69e0: 20 62 6f 72 64 65 72 2d 74 6f 70 3a 20 6e 6f 6e border-top: non
69f0: 65 3b 20 2f 2a 31 70 78 20 64 61 73 68 65 64 20 e; /*1px dashed
6a00: 23 30 30 35 3b 2a 2f 0d 0a 20 20 62 6f 72 64 65 #005;*/.. borde
6a10: 72 2d 62 6f 74 74 6f 6d 3a 20 31 70 78 20 64 61 r-bottom: 1px da
6a20: 73 68 65 64 20 23 30 30 35 3b 0d 0a 20 20 62 6f shed #005;.. bo
6a30: 72 64 65 72 2d 6c 65 66 74 3a 20 6e 6f 6e 65 3b rder-left: none;
6a40: 0d 0a 20 20 62 6f 72 64 65 72 2d 72 69 67 68 74 .. border-right
6a50: 3a 20 6e 6f 6e 65 3b 0d 0a 7d 0d 0a 2f 2a 20 54 : none;..}../* T
6a60: 68 65 20 70 72 6f 6a 65 63 74 20 6c 6f 67 6f 20 he project logo
6a70: 69 6e 20 74 68 65 20 75 70 70 65 72 20 6c 65 66 in the upper lef
6a80: 74 2d 68 61 6e 64 20 63 6f 72 6e 65 72 20 6f 66 t-hand corner of
6a90: 20 65 61 63 68 20 70 61 67 65 20 2a 2f 0d 0a 64 each page */..d
6aa0: 69 76 2e 6c 6f 67 6f 20 7b 0d 0a 20 20 64 69 73 iv.logo {.. dis
6ab0: 70 6c 61 79 3a 20 74 61 62 6c 65 2d 63 65 6c 6c play: table-cell
6ac0: 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a ;.. text-align:
6ad0: 20 63 65 6e 74 65 72 3b 0d 0a 20 20 76 65 72 74 center;.. vert
6ae0: 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f 74 74 ical-align: bott
6af0: 6f 6d 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 om;.. color: #0
6b00: 30 30 66 36 61 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 00f6a;..}..../*
6b10: 54 68 65 20 70 61 67 65 20 74 69 74 6c 65 20 63 The page title c
6b20: 65 6e 74 65 72 65 64 20 61 74 20 74 68 65 20 74 entered at the t
6b30: 6f 70 20 6f 66 20 65 61 63 68 20 70 61 67 65 20 op of each page
6b40: 2a 2f 0d 0a 64 69 76 2e 74 69 74 6c 65 20 7b 0d */..div.title {.
6b50: 0a 20 20 64 69 73 70 6c 61 79 3a 20 74 61 62 6c . display: tabl
6b60: 65 2d 63 65 6c 6c 3b 0d 0a 20 20 66 6f 6e 74 2d e-cell;.. font-
6b70: 73 69 7a 65 3a 20 32 65 6d 3b 0d 0a 20 20 66 6f size: 2em;.. fo
6b80: 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b nt-weight: bold;
6b90: 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 .. text-align:
6ba0: 63 65 6e 74 65 72 3b 0d 0a 20 20 63 6f 6c 6f 72 center;.. color
6bb0: 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 20 76 65 : #000f6a;.. ve
6bc0: 72 74 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f rtical-align: bo
6bd0: 74 74 6f 6d 3b 0d 0a 20 20 77 69 64 74 68 3a 20 ttom;.. width:
6be0: 31 30 30 25 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 100%;..}..../* T
6bf0: 68 65 20 6c 6f 67 69 6e 20 73 74 61 74 75 73 20 he login status
6c00: 6d 65 73 73 61 67 65 20 69 6e 20 74 68 65 20 74 message in the t
6c10: 6f 70 20 72 69 67 68 74 2d 68 61 6e 64 20 63 6f op right-hand co
6c20: 72 6e 65 72 20 2a 2f 0d 0a 64 69 76 2e 73 74 61 rner */..div.sta
6c30: 74 75 73 20 7b 0d 0a 20 20 64 69 73 70 6c 61 79 tus {.. display
6c40: 3a 20 74 61 62 6c 65 2d 63 65 6c 6c 3b 0d 0a 20 : table-cell;..
6c50: 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 72 69 67 text-align: rig
6c60: 68 74 3b 0d 0a 20 20 76 65 72 74 69 63 61 6c 2d ht;.. vertical-
6c70: 61 6c 69 67 6e 3a 20 62 6f 74 74 6f 6d 3b 0d 0a align: bottom;..
6c80: 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 color: #000f6a
6c90: 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 ;.. font-size:
6ca0: 30 2e 38 65 6d 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 0.8em;..}..../*
6cb0: 54 68 65 20 68 65 61 64 65 72 20 61 63 72 6f 73 The header acros
6cc0: 73 20 74 68 65 20 74 6f 70 20 6f 66 20 74 68 65 s the top of the
6cd0: 20 70 61 67 65 20 2a 2f 0d 0a 64 69 76 2e 68 65 page */..div.he
6ce0: 61 64 65 72 20 7b 0d 0a 20 20 64 69 73 70 6c 61 ader {.. displa
6cf0: 79 3a 20 74 61 62 6c 65 3b 0d 0a 20 20 77 69 64 y: table;.. wid
6d00: 74 68 3a 20 31 30 30 25 3b 0d 0a 20 20 74 65 78 th: 100%;.. tex
6d10: 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 65 72 3b t-align: center;
6d20: 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 6d 61 ..}..../* The ma
6d30: 69 6e 20 6d 65 6e 75 20 62 61 72 20 74 68 61 74 in menu bar that
6d40: 20 61 70 70 65 61 72 73 20 61 74 20 74 68 65 20 appears at the
6d50: 74 6f 70 20 6f 66 20 74 68 65 20 70 61 67 65 20 top of the page
6d60: 62 65 6e 65 61 74 68 0d 0a 2a 2a 20 74 68 65 20 beneath..** the
6d70: 68 65 61 64 65 72 20 2a 2f 0d 0a 64 69 76 2e 6d header */..div.m
6d80: 61 69 6e 6d 65 6e 75 20 7b 0d 0a 20 20 70 61 64 ainmenu {.. pad
6d90: 64 69 6e 67 3a 20 32 70 78 20 35 70 78 20 32 70 ding: 2px 5px 2p
6da0: 78 20 35 70 78 3b 0d 0a 20 20 66 6f 6e 74 2d 73 x 5px;.. font-s
6db0: 69 7a 65 3a 20 30 2e 39 65 6d 3b 0d 0a 20 20 74 ize: 0.9em;.. t
6dc0: 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 65 ext-align: cente
6dd0: 72 3b 0d 0a 20 20 6c 65 74 74 65 72 2d 73 70 61 r;.. letter-spa
6de0: 63 69 6e 67 3a 20 31 70 78 3b 0d 0a 20 20 62 61 cing: 1px;.. ba
6df0: 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 ckground-color:
6e00: 23 65 33 65 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f #e3e3e3;.. colo
6e10: 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 20 62 r: #000f6a;.. b
6e20: 6f 72 64 65 72 3a 20 31 70 78 20 69 6e 73 65 74 order: 1px inset
6e30: 20 62 6c 61 63 6b 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a black;..}..../*
6e40: 20 54 68 65 20 73 75 62 6d 65 6e 75 20 62 61 72 The submenu bar
6e50: 20 74 68 61 74 20 2a 73 6f 6d 65 74 69 6d 65 73 that *sometimes
6e60: 2a 20 61 70 70 65 61 72 73 20 62 65 6c 6f 77 20 * appears below
6e70: 74 68 65 20 6d 61 69 6e 20 6d 65 6e 75 20 2a 2f the main menu */
6e80: 0d 0a 64 69 76 2e 73 75 62 6d 65 6e 75 20 7b 0d ..div.submenu {.
6e90: 0a 20 20 70 61 64 64 69 6e 67 3a 20 32 70 78 20 . padding: 2px
6ea0: 35 70 78 20 32 70 78 20 35 70 78 3b 0d 0a 20 20 5px 2px 5px;..
6eb0: 66 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e 39 65 6d font-size: 0.9em
6ec0: 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a ;.. text-align:
6ed0: 20 63 65 6e 74 65 72 3b 0d 0a 20 20 62 61 63 6b center;.. back
6ee0: 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 ground-color: #e
6ef0: 33 65 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 3e3e3;.. color:
6f00: 20 23 30 30 30 66 36 61 3b 0d 0a 7d 0d 0a 64 69 #000f6a;..}..di
6f10: 76 2e 6d 61 69 6e 6d 65 6e 75 20 61 2c 20 64 69 v.mainmenu a, di
6f20: 76 2e 6d 61 69 6e 6d 65 6e 75 20 61 3a 76 69 73 v.mainmenu a:vis
6f30: 69 74 65 64 2c 20 64 69 76 2e 73 75 62 6d 65 6e ited, div.submen
6f40: 75 20 61 2c 20 64 69 76 2e 73 75 62 6d 65 6e 75 u a, div.submenu
6f50: 20 61 3a 76 69 73 69 74 65 64 20 7b 0d 0a 20 20 a:visited {..
6f60: 70 61 64 64 69 6e 67 3a 20 32 70 78 20 31 30 70 padding: 2px 10p
6f70: 78 20 32 70 78 20 31 30 70 78 3b 0d 0a 20 20 63 x 2px 10px;.. c
6f80: 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a olor: #000f6a;..
6f90: 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c background-col
6fa0: 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 or: #e3e3e3;..
6fb0: 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a text-decoration:
6fc0: 20 6e 6f 6e 65 3b 0d 0a 7d 0d 0a 64 69 76 2e 6d none;..}..div.m
6fd0: 61 69 6e 6d 65 6e 75 20 61 3a 68 6f 76 65 72 2c ainmenu a:hover,
6fe0: 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 61 3a 68 div.submenu a:h
6ff0: 6f 76 65 72 20 7b 0d 0a 20 20 63 6f 6c 6f 72 3a over {.. color:
7000: 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 62 61 63 #e3e3e3;.. bac
7010: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 kground-color: #
7020: 30 30 30 66 36 61 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 000f6a;..}..../*
7030: 20 41 6c 6c 20 70 61 67 65 20 63 6f 6e 74 65 6e All page conten
7040: 74 20 66 72 6f 6d 20 74 68 65 20 62 6f 74 74 6f t from the botto
7050: 6d 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 6f 72 m of the menu or
7060: 20 73 75 62 6d 65 6e 75 20 64 6f 77 6e 20 74 6f submenu down to
7070: 0d 0a 2a 2a 20 74 68 65 20 66 6f 6f 74 65 72 20 ..** the footer
7080: 2a 2f 0d 0a 64 69 76 2e 63 6f 6e 74 65 6e 74 20 */..div.content
7090: 7b 0d 0a 20 20 70 61 64 64 69 6e 67 3a 20 30 65 {.. padding: 0e
70a0: 78 20 31 65 78 20 30 65 78 20 32 65 78 3b 0d 0a x 1ex 0ex 2ex;..
70b0: 7d 0d 0a 0d 0a 2f 2a 20 53 6f 6d 65 20 70 61 67 }..../* Some pag
70c0: 65 73 20 68 61 76 65 20 73 65 63 74 69 6f 6e 20 es have section
70d0: 64 69 76 69 64 65 72 73 20 2a 2f 0d 0a 64 69 76 dividers */..div
70e0: 2e 73 65 63 74 69 6f 6e 20 7b 0d 0a 20 20 6d 61 .section {.. ma
70f0: 72 67 69 6e 2d 62 6f 74 74 6f 6d 3a 20 30 70 78 rgin-bottom: 0px
7100: 3b 0d 0a 20 20 6d 61 72 67 69 6e 2d 74 6f 70 3a ;.. margin-top:
7110: 20 31 65 6d 3b 0d 0a 20 20 70 61 64 64 69 6e 67 1em;.. padding
7120: 3a 20 31 70 78 20 31 70 78 20 31 70 78 20 31 70 : 1px 1px 1px 1p
7130: 78 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a x;.. font-size:
7140: 20 31 2e 32 65 6d 3b 0d 0a 20 20 66 6f 6e 74 2d 1.2em;.. font-
7150: 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0d 0a 20 weight: bold;..
7160: 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f background-colo
7170: 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 63 r: #e3e3e3;.. c
7180: 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a olor: #000f6a;..
7190: 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 22 44 61 74 }..../* The "Dat
71a0: 65 22 20 74 68 61 74 20 6f 63 63 75 72 73 20 6f e" that occurs o
71b0: 6e 20 74 68 65 20 6c 65 66 74 20 68 61 6e 64 20 n the left hand
71c0: 73 69 64 65 20 6f 66 20 74 69 6d 65 6c 69 6e 65 side of timeline
71d0: 73 20 2a 2f 0d 0a 64 69 76 2e 64 69 76 69 64 65 s */..div.divide
71e0: 72 20 7b 0d 0a 20 20 62 61 63 6b 67 72 6f 75 6e r {.. backgroun
71f0: 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 33 65 33 d-color: #e3e3e3
7200: 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 ;.. color: #000
7210: 66 36 61 3b 0d 0a 20 20 62 6f 72 64 65 72 3a 20 f6a;.. border:
7220: 31 70 78 20 23 62 62 62 62 66 66 20 73 6f 6c 69 1px #bbbbff soli
7230: 64 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a d;.. font-size:
7240: 20 31 65 6d 3b 20 66 6f 6e 74 2d 77 65 69 67 68 1em; font-weigh
7250: 74 3a 20 6e 6f 72 6d 61 6c 3b 0d 0a 20 20 70 61 t: normal;.. pa
7260: 64 64 69 6e 67 3a 20 2e 32 35 65 6d 3b 0d 0a 20 dding: .25em;..
7270: 20 6d 61 72 67 69 6e 3a 20 2e 32 65 6d 20 30 20 margin: .2em 0
7280: 2e 32 65 6d 20 30 3b 0d 0a 20 20 66 6c 6f 61 74 .2em 0;.. float
7290: 3a 20 6c 65 66 74 3b 0d 0a 20 20 63 6c 65 61 72 : left;.. clear
72a0: 3a 20 6c 65 66 74 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a : left;..}..../*
72b0: 20 54 68 65 20 66 6f 6f 74 65 72 20 61 74 20 74 The footer at t
72c0: 68 65 20 76 65 72 79 20 62 6f 74 74 6f 6d 20 6f he very bottom o
72d0: 66 20 74 68 65 20 70 61 67 65 20 2a 2f 0d 0a 64 f the page */..d
72e0: 69 76 2e 66 6f 6f 74 65 72 20 7b 0d 0a 20 20 66 iv.footer {.. f
72f0: 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e 38 65 6d 3b ont-size: 0.8em;
7300: 0d 0a 20 20 70 61 64 64 69 6e 67 3a 20 32 70 78 .. padding: 2px
7310: 20 35 70 78 20 32 70 78 20 35 70 78 3b 0d 0a 20 5px 2px 5px;..
7320: 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e text-align: cen
7330: 74 65 72 3b 0d 0a 20 20 6c 65 74 74 65 72 2d 73 ter;.. letter-s
7340: 70 61 63 69 6e 67 3a 20 31 70 78 3b 0d 0a 20 20 pacing: 1px;..
7350: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 background-color
7360: 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 63 6f : #e3e3e3;.. co
7370: 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 lor: #000f6a;..
7380: 20 62 6f 72 64 65 72 3a 20 31 70 78 20 69 6e 73 border: 1px ins
7390: 65 74 20 62 6c 61 63 6b 3b 0d 0a 7d 0d 0a 0d 0a et black;..}....
73a0: 2f 2a 20 4d 61 6b 65 20 74 68 65 20 6c 69 6e 6b /* Make the link
73b0: 73 20 69 6e 20 74 68 65 20 66 6f 6f 74 65 72 20 s in the footer
73c0: 6c 65 73 73 20 75 67 6c 79 2e 2e 2e 20 2a 2f 0d less ugly... */.
73d0: 0a 64 69 76 2e 66 6f 6f 74 65 72 20 61 20 7b 20 .div.footer a {
73e0: 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 color: #000f6a;
73f0: 7d 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 20 61 3a }..div.footer a:
7400: 6c 69 6e 6b 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 link { color: #0
7410: 30 30 66 36 61 3b 20 7d 0d 0a 64 69 76 2e 66 6f 00f6a; }..div.fo
7420: 6f 74 65 72 20 61 3a 76 69 73 69 74 65 64 20 7b oter a:visited {
7430: 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b color: #000f6a;
7440: 20 7d 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 20 61 }..div.footer a
7450: 3a 68 6f 76 65 72 20 7b 20 62 61 63 6b 67 72 6f :hover { backgro
7460: 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 30 30 30 66 und-color: #000f
7470: 36 61 3b 20 63 6f 6c 6f 72 3a 20 23 65 33 65 33 6a; color: #e3e3
7480: 65 33 3b 20 7d 0d 0a 0d 0a 2f 2a 20 76 65 72 62 e3; }..../* verb
7490: 61 74 69 6d 20 62 6c 6f 63 6b 73 20 2a 2f 0d 0a atim blocks */..
74a0: 70 72 65 2e 76 65 72 62 61 74 69 6d 20 7b 0d 0a pre.verbatim {..
74b0: 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f background-co
74c0: 6c 6f 72 3a 20 23 66 35 66 35 66 35 3b 0d 0a 20 lor: #f5f5f5;..
74d0: 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d padding: 0.5em
74e0: 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 6c ;..}..../* The l
74f0: 61 62 65 6c 2f 76 61 6c 75 65 20 70 61 69 72 73 abel/value pairs
7500: 20 6f 6e 20 28 66 6f 72 20 65 78 61 6d 70 6c 65 on (for example
7510: 29 20 74 68 65 20 76 69 6e 66 6f 20 70 61 67 65 ) the vinfo page
7520: 20 2a 2f 0d 0a 74 61 62 6c 65 2e 6c 61 62 65 6c */..table.label
7530: 2d 76 61 6c 75 65 20 74 68 20 7b 0d 0a 20 20 76 -value th {.. v
7540: 65 72 74 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 74 ertical-align: t
7550: 6f 70 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 op;.. text-alig
7560: 6e 3a 20 72 69 67 68 74 3b 0d 0a 20 20 70 61 64 n: right;.. pad
7570: 64 69 6e 67 3a 20 30 2e 32 65 78 20 32 65 78 3b ding: 0.2ex 2ex;
7580: 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 46 6f 72 20 6d 61 ..}..../* For ma
7590: 72 6b 69 6e 67 20 69 6d 70 6f 72 74 61 6e 74 20 rking important
75a0: 55 49 20 65 6c 65 6d 65 6e 74 73 20 77 68 69 63 UI elements whic
75b0: 68 20 73 68 6f 75 6c 64 6e 27 74 20 62 65 0d 0a h shouldn't be..
75c0: 20 20 20 6c 69 67 68 74 6c 79 20 64 69 73 6d 69 lightly dismi
75d0: 73 73 65 64 2e 20 49 20 6d 61 69 6e 6c 79 20 75 ssed. I mainly u
75e0: 73 65 20 69 74 20 74 6f 20 6d 61 72 6b 20 22 6e se it to mark "n
75f0: 6f 74 20 79 65 74 0d 0a 20 20 20 69 6d 70 6c 65 ot yet.. imple
7600: 6d 65 6e 74 65 64 22 20 70 61 72 74 73 20 6f 66 mented" parts of
7610: 20 61 20 70 61 67 65 2e 20 57 68 65 74 68 65 72 a page. Whether
7620: 20 6f 72 20 6e 6f 74 20 74 6f 20 68 61 76 65 0d or not to have.
7630: 0a 20 20 20 61 20 27 62 6f 72 64 65 72 27 20 61 . a 'border' a
7640: 74 74 72 69 62 75 74 65 20 73 65 74 20 69 73 20 ttribute set is
7650: 61 72 67 75 61 62 6c 65 2e 20 2a 2f 0d 0a 2e 61 arguable. */...a
7660: 63 68 74 75 6e 67 20 7b 0d 0a 20 20 63 6f 6c 6f chtung {.. colo
7670: 72 3a 20 23 66 66 30 30 30 30 3b 0d 0a 20 20 62 r: #ff0000;.. b
7680: 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 66 66 66 ackground: #ffff
7690: 30 30 3b 0d 0a 20 20 62 6f 72 64 65 72 3a 20 31 00;.. border: 1
76a0: 70 78 20 73 6f 6c 69 64 20 23 66 66 30 30 30 30 px solid #ff0000
76b0: 3b 0d 0a 7d 0d 0a 0d 0a 74 61 62 6c 65 2e 66 6f ;..}....table.fo
76c0: 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f ssil_db_generic_
76d0: 71 75 65 72 79 5f 76 69 65 77 20 7b 0d 0a 20 20 query_view {..
76e0: 62 6f 72 64 65 72 2d 73 70 61 63 69 6e 67 3a 20 border-spacing:
76f0: 30 70 78 3b 0d 0a 20 20 62 6f 72 64 65 72 3a 20 0px;.. border:
7700: 31 70 78 20 73 6f 6c 69 64 20 62 6c 61 63 6b 3b 1px solid black;
7710: 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 66 6f 73 73 69 ..}..table.fossi
7720: 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f 71 75 65 l_db_generic_que
7730: 72 79 5f 76 69 65 77 20 74 64 20 7b 0d 0a 20 20 ry_view td {..
7740: 70 61 64 64 69 6e 67 3a 20 32 70 78 20 31 65 6d padding: 2px 1em
7750: 20 32 70 78 20 31 65 6d 3b 0d 0a 7d 0d 0a 74 61 2px 1em;..}..ta
7760: 62 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 65 ble.fossil_db_ge
7770: 6e 65 72 69 63 5f 71 75 65 72 79 5f 76 69 65 77 neric_query_view
7780: 20 74 72 20 7b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e tr {..}..table.
7790: 66 6f 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 69 fossil_db_generi
77a0: 63 5f 71 75 65 72 79 5f 76 69 65 77 20 74 72 2e c_query_view tr.
77b0: 65 76 65 6e 20 7b 0d 0a 20 20 62 61 63 6b 67 72 even {.. backgr
77c0: 6f 75 6e 64 3a 20 23 66 66 66 66 66 66 3b 0d 0a ound: #ffffff;..
77d0: 7d 0d 0a 74 61 62 6c 65 2e 66 6f 73 73 69 6c 5f }..table.fossil_
77e0: 64 62 5f 67 65 6e 65 72 69 63 5f 71 75 65 72 79 db_generic_query
77f0: 5f 76 69 65 77 20 74 72 2e 6f 64 64 20 7b 0d 0a _view tr.odd {..
7800: 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 65 background: #e
7810: 35 65 35 65 35 3b 0d 0a 7d 0d 0a 74 61 62 6c 65 5e5e5;..}..table
7820: 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 .fossil_db_gener
7830: 69 63 5f 71 75 65 72 79 5f 76 69 65 77 20 74 72 ic_query_view tr
7840: 2e 68 65 61 64 65 72 20 7b 0d 0a 20 20 62 61 63 .header {.. bac
7850: 6b 67 72 6f 75 6e 64 3a 20 23 35 35 38 31 39 35 kground: #558195
7860: 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 ;.. font-size:
7870: 31 2e 35 65 6d 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 1.5em;.. color:
7880: 20 23 66 66 66 66 66 66 3b 0d 0a 7d 0d 0a 3c 2f #ffffff;..}..</
7890: 70 72 65 3e 0d 0a 3c 2f 6e 6f 77 69 6b 69 3e 0d pre>..</nowiki>.
78a0: 0a 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 73 6f .<h2><a name="so
78b0: 75 72 63 65 2d 68 69 6c 69 67 68 74 22 3e 53 6f urce-hilight">So
78c0: 75 72 63 65 20 68 69 67 68 6c 69 67 68 74 69 6e urce highlightin
78d0: 67 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e g</a></h2>..<h3>
78e0: 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d Motivation</h3>.
78f0: 0a 20 20 2a 20 20 59 6f 75 20 77 61 6e 74 20 74 . * You want t
7900: 6f 20 68 61 76 65 20 73 6f 75 72 63 65 20 63 6f o have source co
7910: 64 65 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 de highlighting
7920: 66 6f 72 20 74 68 65 20 66 69 6c 65 73 20 69 6e for the files in
7930: 20 79 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 79 your repository
7940: 0d 0a 0d 0a 3c 68 33 3e 50 72 6f 62 6c 65 6d 3c ....<h3>Problem<
7950: 2f 68 33 3e 0d 0a 54 68 65 20 6d 61 69 6e 20 70 /h3>..The main p
7960: 75 72 70 6f 73 65 20 6f 66 20 46 6f 73 73 69 6c urpose of Fossil
7970: 20 69 73 20 74 6f 20 64 6f 20 76 65 72 73 69 6f is to do versio
7980: 6e 69 6e 67 20 74 68 65 20 73 6f 75 72 63 65 20 ning the source
7990: 63 6f 64 65 2e 20 41 6c 74 68 6f 75 67 68 20 69 code. Although i
79a0: 74 20 70 72 6f 76 69 64 65 73 20 61 20 73 74 61 t provides a sta
79b0: 6e 64 61 6c 6f 6e 65 20 73 65 72 76 65 72 20 61 ndalone server a
79c0: 6e 64 20 6c 65 74 73 20 79 6f 75 20 6e 61 76 69 nd lets you navi
79d0: 67 61 74 65 20 74 68 72 6f 75 67 68 20 74 68 65 gate through the
79e0: 20 72 65 70 6f 73 69 74 6f 72 79 20 66 69 6c 65 repository file
79f0: 73 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 65 61 s additional fea
7a00: 74 75 72 65 73 20 6c 69 6b 65 20 73 6f 75 72 63 tures like sourc
7a10: 65 20 63 6f 64 65 20 68 69 67 68 6c 69 67 68 74 e code highlight
7a20: 69 6e 67 20 66 72 6f 6d 20 6d 79 20 70 65 72 73 ing from my pers
7a30: 70 65 63 74 69 76 65 20 28 49 20 61 6d 20 6e 6f pective (I am no
7a40: 74 20 61 20 64 65 76 65 6c 6f 70 65 72 20 6f 66 t a developer of
7a50: 20 46 6f 73 73 69 6c 29 20 69 73 20 6f 75 74 20 Fossil) is out
7a60: 6f 66 20 73 63 6f 70 65 20 66 6f 72 20 61 6e 20 of scope for an
7a70: 53 43 4d 2e 20 4a 75 73 74 20 6b 65 65 70 20 74 SCM. Just keep t
7a80: 68 65 20 55 6e 69 78 20 70 72 69 6e 63 69 70 6c he Unix principl
7a90: 65 3a 20 73 6d 61 6c 6c 20 6c 69 74 74 6c 65 20 e: small little
7aa0: 70 72 6f 67 72 61 6d 73 20 74 68 61 74 20 64 6f programs that do
7ab0: 20 74 68 65 69 72 20 74 61 73 6b 20 61 6e 64 20 their task and
7ac0: 64 6f 20 69 74 20 77 65 6c 6c 2e 0d 0a 0d 0a 48 do it well.....H
7ad0: 6f 77 65 76 65 72 20 74 6f 20 68 61 76 65 20 61 owever to have a
7ae0: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 68 69 67 source code hig
7af0: 68 6c 69 67 68 74 69 6e 67 20 69 6e 20 74 68 65 hlighting in the
7b00: 20 70 72 65 73 65 6e 74 65 64 20 77 65 62 20 70 presented web p
7b10: 61 67 65 73 20 77 6f 75 6c 64 20 73 74 69 6c 6c ages would still
7b20: 20 62 65 20 64 65 73 69 72 61 62 6c 65 2e 0d 0a be desirable...
7b30: 0d 0a 3c 68 33 3e 53 6f 6c 75 74 69 6f 6e 3c 2f ..<h3>Solution</
7b40: 68 33 3e 0d 0a 54 68 65 72 65 20 61 72 65 20 74 h3>..There are t
7b50: 77 6f 20 73 63 65 6e 61 72 69 6f 73 20 68 6f 77 wo scenarios how
7b60: 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 73 75 to implement su
7b70: 63 68 20 61 20 66 65 61 74 75 72 65 3a 0d 0a 20 ch a feature:..
7b80: 20 20 2a 20 20 46 6f 73 73 69 6c 20 70 69 70 65 * Fossil pipe
7b90: 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 s the source cod
7ba0: 65 20 74 68 72 6f 75 67 68 20 61 20 66 69 6c 74 e through a filt
7bb0: 65 72 20 62 65 66 6f 72 65 20 73 65 6e 64 69 6e er before sendin
7bc0: 67 20 69 74 20 74 6f 20 74 68 65 20 62 72 6f 77 g it to the brow
7bd0: 73 65 72 2e 20 54 68 65 20 66 69 6c 74 65 72 20 ser. The filter
7be0: 63 6f 75 6c 64 20 62 65 20 64 65 66 69 6e 65 64 could be defined
7bf0: 20 61 73 20 61 20 63 6f 6e 66 69 67 75 72 61 74 as a configurat
7c00: 69 6f 6e 20 6f 70 74 69 6f 6e 20 74 6f 20 46 6f ion option to Fo
7c10: 73 73 69 6c 2e 20 4f 6e 65 20 73 6f 6c 75 74 69 ssil. One soluti
7c20: 6f 6e 20 66 6f 72 20 74 68 69 73 20 6d 69 67 68 on for this migh
7c30: 74 20 62 65 20 74 68 65 20 3c 61 20 68 72 65 66 t be the <a href
7c40: 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 ="http://www.gnu
7c50: 2e 6f 72 67 2f 73 6f 66 74 77 61 72 65 2f 73 72 .org/software/sr
7c60: 63 2d 68 69 67 68 6c 69 74 65 22 3e 47 4e 55 20 c-highlite">GNU
7c70: 53 6f 75 72 63 65 20 63 6f 64 65 20 48 69 67 68 Source code High
7c80: 6c 69 67 68 74 69 6e 67 3c 2f 61 3e 20 70 72 6f lighting</a> pro
7c90: 67 72 61 6d 2e 0d 0a 20 20 20 2a 20 20 55 73 65 gram... * Use
7ca0: 20 61 20 4a 61 76 61 73 63 72 69 70 74 20 6c 69 a Javascript li
7cb0: 62 72 61 72 79 20 74 68 61 74 20 72 65 6e 64 65 brary that rende
7cc0: 72 73 20 74 68 65 20 63 6f 64 65 20 77 69 74 68 rs the code with
7cd0: 69 6e 20 79 6f 75 72 20 62 72 6f 77 73 65 72 2e in your browser.
7ce0: 20 4f 6e 65 20 73 6f 6c 75 74 69 6f 6e 20 66 6f One solution fo
7cf0: 72 20 74 68 69 73 20 6d 69 67 68 74 20 62 65 20 r this might be
7d00: 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f <a href="http://
7d10: 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f code.google.com/
7d20: 70 2f 73 79 6e 74 61 78 68 69 67 68 6c 69 67 68 p/syntaxhighligh
7d30: 74 65 72 22 3e 47 6f 6f 67 6c 65 20 53 79 6e 74 ter">Google Synt
7d40: 61 78 20 48 69 67 68 6c 69 67 68 74 65 72 3c 2f ax Highlighter</
7d50: 61 3e 0d 0a 0d 0a 49 20 65 73 74 69 6d 61 74 65 a>....I estimate
7d60: 20 74 68 61 74 20 74 68 65 20 3c 69 3e 70 69 70 that the <i>pip
7d70: 65 3c 2f 69 3e 20 73 6f 6c 75 74 69 6f 6e 20 6e e</i> solution n
7d80: 65 65 64 73 20 73 6f 6d 65 20 6d 6f 72 65 20 77 eeds some more w
7d90: 6f 72 6b 2f 20 63 6f 64 65 20 63 68 61 6e 67 65 ork/ code change
7da0: 73 2e 20 54 68 75 73 20 49 20 61 6d 20 73 6f 6c s. Thus I am sol
7db0: 65 6c 79 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 ely looking at t
7dc0: 68 65 20 4a 61 76 61 73 63 72 69 70 74 20 73 6f he Javascript so
7dd0: 6c 75 74 69 6f 6e 2e 0d 0a 0d 0a 54 68 65 20 53 lution.....The S
7de0: 79 6e 74 61 78 48 69 67 68 6c 69 67 68 74 65 72 yntaxHighlighter
7df0: 20 69 73 20 61 20 6c 69 62 72 61 72 79 20 6f 66 is a library of
7e00: 20 73 6f 6d 65 20 4a 61 76 61 73 63 72 69 70 74 some Javascript
7e10: 20 66 69 6c 65 73 2c 20 61 20 6c 69 74 74 6c 65 files, a little
7e20: 20 46 6c 61 73 68 20 61 70 70 6c 69 63 61 74 69 Flash applicati
7e30: 6f 6e 20 61 6e 64 20 61 20 43 53 53 20 66 69 6c on and a CSS fil
7e40: 65 2e 20 54 68 65 20 46 6c 61 73 68 20 61 70 70 e. The Flash app
7e50: 6c 69 63 61 74 69 6f 6e 20 69 73 20 66 6f 72 20 lication is for
7e60: 63 6f 70 79 69 6e 67 20 74 6f 20 63 6c 69 70 62 copying to clipb
7e70: 6f 61 72 64 2c 20 70 72 69 6e 74 20 61 6e 64 20 oard, print and
7e80: 76 69 65 77 20 73 6f 75 72 63 65 2e 20 59 6f 75 view source. You
7e90: 20 68 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e have the option
7ea0: 20 74 6f 20 69 6e 63 6c 75 64 65 20 61 6c 6c 20 to include all
7eb0: 74 68 65 20 66 69 6c 65 73 20 69 6e 74 6f 20 79 the files into y
7ec0: 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 79 20 6f our repository o
7ed0: 72 20 75 73 65 20 74 68 65 20 66 69 6c 65 73 20 r use the files
7ee0: 68 6f 73 74 65 64 20 61 74 20 47 6f 6f 67 6c 65 hosted at Google
7ef0: 2e 20 54 68 65 20 6c 61 74 74 65 72 20 6d 61 79 . The latter may
7f00: 20 6f 6e 6c 79 20 62 65 20 61 6e 20 6f 70 74 69 only be an opti
7f10: 6f 6e 20 69 66 20 79 6f 75 20 61 72 65 20 63 6f on if you are co
7f20: 6e 6e 65 63 74 65 64 20 74 6f 20 69 6e 74 65 72 nnected to inter
7f30: 6e 65 74 20 61 6c 6c 20 74 68 65 20 74 69 6d 65 net all the time
7f40: 2e 0d 0a 0d 0a 46 6f 72 20 73 79 6e 74 61 78 20 .....For syntax
7f50: 68 69 67 68 6c 69 67 68 74 69 6e 67 20 74 6f 20 highlighting to
7f60: 77 6f 72 6b 20 74 68 65 20 48 65 61 64 65 72 20 work the Header
7f70: 61 6e 64 20 46 6f 6f 74 65 72 20 74 65 6d 70 6c and Footer templ
7f80: 61 74 65 73 20 6e 65 65 64 20 74 6f 20 62 65 20 ates need to be
7f90: 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 61 20 6c modified and a l
7fa0: 69 74 74 6c 65 20 63 6f 64 65 20 63 68 61 6e 67 ittle code chang
7fb0: 65 20 68 61 73 20 74 6f 20 62 65 20 61 70 70 6c e has to be appl
7fc0: 69 65 64 20 74 6f 20 74 68 65 20 46 6f 73 73 69 ied to the Fossi
7fd0: 6c 20 73 6f 75 72 63 65 73 2e 0d 0a 54 68 65 20 l sources...The
7fe0: 65 78 61 6d 70 6c 65 73 20 62 65 6c 6f 77 20 61 examples below a
7ff0: 73 73 75 6d 65 20 79 6f 75 20 68 61 76 65 20 61 ssume you have a
8000: 64 64 65 64 20 74 68 65 20 73 79 6e 74 61 78 20 dded the syntax
8010: 68 69 67 68 6c 69 67 68 74 69 6e 67 20 6c 69 62 highlighting lib
8020: 72 61 72 79 20 74 6f 20 79 6f 75 72 20 72 65 70 rary to your rep
8030: 6f 73 69 74 6f 72 79 20 69 6e 74 6f 20 61 20 64 ository into a d
8040: 69 72 65 63 74 6f 72 79 20 77 77 77 2f 73 63 72 irectory www/scr
8050: 69 70 74 73 2e 0d 0a 3c 70 3e 0d 0a 3c 62 3e 48 ipts...<p>..<b>H
8060: 65 61 64 65 72 3c 2f 62 3e 0d 0a 3c 70 72 65 3e eader</b>..<pre>
8070: 0d 0a 26 6c 74 3b 68 74 6d 6c 26 67 74 3b 0d 0a ..<html>..
8080: 20 26 6c 74 3b 68 65 61 64 26 67 74 3b 0d 0a 20 <head>..
8090: 26 6c 74 3b 74 69 74 6c 65 26 67 74 3b 24 26 6c <title>$&l
80a0: 74 3b 70 72 6f 6a 65 63 74 5f 6e 61 6d 65 26 67 t;project_name&g
80b0: 74 3b 3a 20 24 26 6c 74 3b 74 69 74 6c 65 26 67 t;: $<title&g
80c0: 74 3b 26 6c 74 3b 2f 74 69 74 6c 65 26 67 74 3b t;</title>
80d0: 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 65 6c 3d .. <link rel=
80e0: 22 61 6c 74 65 72 6e 61 74 65 22 20 74 79 70 65 "alternate" type
80f0: 3d 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 72 73 ="application/rs
8100: 73 2b 78 6d 6c 22 20 74 69 74 6c 65 3d 22 52 53 s+xml" title="RS
8110: 53 20 46 65 65 64 22 0d 0a 20 20 20 20 20 20 20 S Feed"..
8120: 68 72 65 66 3d 22 24 62 61 73 65 75 72 6c 2f 74 href="$baseurl/t
8130: 69 6d 65 6c 69 6e 65 2e 72 73 73 22 26 67 74 3b imeline.rss">
8140: 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 65 6c 3d .. <link rel=
8150: 22 73 74 79 6c 65 73 68 65 65 74 22 20 68 72 65 "stylesheet" hre
8160: 66 3d 22 24 62 61 73 65 75 72 6c 2f 73 74 79 6c f="$baseurl/styl
8170: 65 2e 63 73 73 22 20 74 79 70 65 3d 22 74 65 78 e.css" type="tex
8180: 74 2f 63 73 73 22 0d 0a 20 20 20 20 20 20 20 6d t/css".. m
8190: 65 64 69 61 3d 22 73 63 72 65 65 6e 22 26 67 74 edia="screen">
81a0: 3b 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 65 6c ;.. <link rel
81b0: 3d 22 73 74 79 6c 65 73 68 65 65 74 22 20 68 72 ="stylesheet" hr
81c0: 65 66 3d 22 24 62 61 73 65 75 72 6c 2f 64 6f 63 ef="$baseurl/doc
81d0: 2f 74 69 70 2f 77 77 77 2f 53 79 6e 74 61 78 48 /tip/www/SyntaxH
81e0: 69 67 68 6c 69 67 68 74 65 72 2e 63 73 73 22 20 ighlighter.css"
81f0: 74 79 70 65 3d 22 74 65 78 74 2f 63 73 73 22 0d type="text/css".
8200: 0a 20 20 20 20 20 20 20 6d 65 64 69 61 3d 22 73 . media="s
8210: 63 72 65 65 6e 22 26 67 74 3b 0d 0a 20 26 6c 74 creen">.. <
8220: 3b 2f 68 65 61 64 26 67 74 3b 0d 0a 0d 0a 2e 20 ;/head>.....
8230: 2e 20 2e 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 70 . ...</pre>..</p
8240: 3e 3c 70 3e 0d 0a 3c 62 3e 46 6f 6f 74 65 72 3c ><p>..<b>Footer<
8250: 2f 62 3e 0d 0a 3c 70 72 65 3e 0d 0a 26 6c 74 3b /b>..<pre>..<
8260: 2f 64 69 76 26 67 74 3b 0d 0a 26 6c 74 3b 64 69 /div>..<di
8270: 76 20 63 6c 61 73 73 3d 22 66 6f 6f 74 65 72 22 v class="footer"
8280: 26 67 74 3b 0d 0a 46 6f 73 73 69 6c 20 76 65 72 >..Fossil ver
8290: 73 69 6f 6e 20 24 6d 61 6e 69 66 65 73 74 5f 76 sion $manifest_v
82a0: 65 72 73 69 6f 6e 20 24 6d 61 6e 69 66 65 73 74 ersion $manifest
82b0: 5f 64 61 74 65 0d 0a 26 6c 74 3b 2f 64 69 76 26 _date..</div&
82c0: 67 74 3b 0d 0a 26 6c 74 3b 73 63 72 69 70 74 20 gt;..<script
82d0: 6c 61 6e 67 75 61 67 65 3d 22 6a 61 76 61 73 63 language="javasc
82e0: 72 69 70 74 22 20 73 72 63 3d 22 24 62 61 73 65 ript" src="$base
82f0: 75 72 6c 2f 64 6f 63 2f 74 69 70 2f 77 77 77 2f url/doc/tip/www/
8300: 73 63 72 69 70 74 73 2f 73 68 43 6f 72 65 2e 6a scripts/shCore.j
8310: 73 22 26 67 74 3b 26 6c 74 3b 2f 73 63 72 69 70 s"></scrip
8320: 74 26 67 74 3b 0d 0a 26 6c 74 3b 73 63 72 69 70 t>..<scrip
8330: 74 20 6c 61 6e 67 75 61 67 65 3d 22 6a 61 76 61 t language="java
8340: 73 63 72 69 70 74 22 20 73 72 63 3d 22 24 62 61 script" src="$ba
8350: 73 65 75 72 6c 2f 64 6f 63 2f 74 69 70 2f 77 77 seurl/doc/tip/ww
8360: 77 2f 73 63 72 69 70 74 73 2f 73 68 42 72 75 73 w/scripts/shBrus
8370: 68 43 70 70 2e 6a 73 22 26 67 74 3b 26 6c 74 3b hCpp.js"><
8380: 2f 73 63 72 69 70 74 26 67 74 3b 0d 0a 26 6c 74 /script>..<
8390: 3b 73 63 72 69 70 74 20 6c 61 6e 67 75 61 67 65 ;script language
83a0: 3d 22 6a 61 76 61 73 63 72 69 70 74 22 26 67 74 ="javascript">
83b0: 3b 0d 0a 64 70 2e 53 79 6e 74 61 78 48 69 67 68 ;..dp.SyntaxHigh
83c0: 6c 69 67 68 74 65 72 2e 43 6c 69 70 62 6f 61 72 lighter.Clipboar
83d0: 64 53 77 66 20 3d 20 27 24 62 61 73 65 75 72 6c dSwf = '$baseurl
83e0: 2f 64 6f 63 2f 74 69 70 2f 77 77 77 2f 73 63 72 /doc/tip/www/scr
83f0: 69 70 74 73 2f 63 6c 69 70 62 6f 61 72 64 2e 73 ipts/clipboard.s
8400: 77 66 27 3b 0d 0a 64 70 2e 53 79 6e 74 61 78 48 wf';..dp.SyntaxH
8410: 69 67 68 6c 69 67 68 74 65 72 2e 48 69 67 68 6c ighlighter.Highl
8420: 69 67 68 74 41 6c 6c 28 27 63 6f 64 65 27 29 3b ightAll('code');
8430: 0d 0a 26 6c 74 3b 2f 73 63 72 69 70 74 26 67 74 ..</script>
8440: 3b 0d 0a 26 6c 74 3b 2f 62 6f 64 79 26 67 74 3b ;..</body>
8450: 26 6c 74 3b 2f 68 74 6d 6c 26 67 74 3b 0d 0a 3c </html>..<
8460: 2f 70 72 65 3e 0d 0a 3c 2f 70 3e 3c 70 3e 0d 0a /pre>..</p><p>..
8470: 3c 62 3e 46 6f 73 73 69 6c 2f 73 72 63 2f 69 6e <b>Fossil/src/in
8480: 66 6f 2e 63 3c 2f 62 3e 20 66 75 6e 63 74 69 6f fo.c</b> functio
8490: 6e 20 61 72 74 69 66 61 63 74 5f 70 61 67 65 0d n artifact_page.
84a0: 0a 3c 70 72 65 3e 0d 0a 69 66 28 20 7a 4d 69 6d .<pre>..if( zMim
84b0: 65 3d 3d 30 20 29 7b 0d 0a 20 20 20 20 40 20 26 e==0 ){.. @ &
84c0: 6c 74 3b 70 72 65 20 6e 61 6d 65 3d 22 63 6f 64 lt;pre name="cod
84d0: 65 22 20 63 6c 61 73 73 3d 22 63 22 26 67 74 3b e" class="c">
84e0: 0d 0a 20 20 20 20 40 20 25 68 28 62 6c 6f 62 5f .. @ %h(blob_
84f0: 73 74 72 28 26 63 6f 6e 74 65 6e 74 29 29 0d 0a str(&content))..
8500: 20 20 20 20 40 20 26 6c 74 3b 2f 70 72 65 26 67 @ </pre&g
8510: 74 3b 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 70 3e t;..</pre>..</p>
8520: 0d 0a 3c 68 33 3e 44 69 73 63 75 73 73 69 6f 6e ..<h3>Discussion
8530: 3c 2f 68 33 3e 0d 0a 54 68 65 20 4a 61 76 61 73 </h3>..The Javas
8540: 63 72 69 70 74 20 73 6f 6c 75 74 69 6f 6e 20 72 cript solution r
8550: 65 71 75 69 72 65 73 20 61 20 6d 69 6e 69 6d 75 equires a minimu
8560: 6d 20 74 6f 20 62 65 20 66 75 6c 6c 79 20 73 75 m to be fully su
8570: 70 70 6f 72 74 65 64 20 62 79 20 46 6f 73 73 69 pported by Fossi
8580: 6c 2e 20 4f 66 20 63 6f 75 72 73 65 20 6d 79 20 l. Of course my
8590: 6c 69 74 74 65 20 63 68 61 6e 67 65 20 6f 6e 6c litte change onl
85a0: 79 20 61 70 70 6c 69 65 73 20 66 6f 72 20 43 2f y applies for C/
85b0: 43 2b 2b 20 66 69 6c 65 73 2e 20 42 75 74 20 6f C++ files. But o
85c0: 6e 6c 79 20 6c 69 74 74 6c 65 20 6d 6f 72 65 20 nly little more
85d0: 77 6f 72 6b 20 6e 65 65 64 73 20 74 6f 20 62 65 work needs to be
85e0: 20 64 6f 6e 65 20 74 6f 20 67 65 74 20 74 68 65 done to get the
85f0: 20 65 78 74 65 6e 73 69 6f 6e 20 6f 66 20 74 68 extension of th
8600: 65 20 66 69 6c 65 20 61 20 67 75 65 73 73 20 74 e file a guess t
8610: 68 65 20 66 69 6c 65 20 74 79 70 65 2e 0d 0a 0d he file type....
8620: 0a 54 68 65 20 70 69 70 65 20 73 6f 6c 75 74 69 .The pipe soluti
8630: 6f 6e 20 77 6f 75 6c 64 20 61 6c 73 6f 20 62 65 on would also be
8640: 20 6e 69 63 65 20 62 75 74 20 77 6f 75 6c 64 20 nice but would
8650: 70 72 6f 62 61 62 6c 79 20 6e 65 65 64 20 73 6f probably need so
8660: 6d 65 20 6d 6f 72 65 20 77 6f 72 6b 20 74 68 61 me more work tha
8670: 6e 20 74 68 69 73 20 6c 69 74 74 6c 65 20 70 61 n this little pa
8680: 74 63 68 2e 0d 0a 0d 0a 3c 68 33 3e 20 3c 61 20 tch.....<h3> <a
8690: 6e 61 6d 65 3d 22 77 69 6e 33 32 64 65 76 22 3e name="win32dev">
86a0: 48 6f 77 20 74 6f 20 70 72 65 70 61 72 65 20 79 How to prepare y
86b0: 6f 75 72 20 57 69 6e 64 6f 77 73 20 58 50 20 46 our Windows XP F
86c0: 6f 73 73 69 6c 20 64 65 76 65 6c 6f 70 6d 65 6e ossil developmen
86d0: 74 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 3c 2f 68 t Environment</h
86e0: 33 3e 0d 0a 3c 68 34 3e 4d 69 6e 47 57 2b 4e 53 3>..<h4>MinGW+NS
86f0: 49 53 2f 57 69 58 3c 2f 68 34 3e 0d 0a 3c 68 35 IS/WiX</h4>..<h5
8700: 3e 53 65 74 75 70 20 4d 69 6e 47 57 3c 2f 68 35 >Setup MinGW</h5
8710: 3e 0d 0a 3c 68 35 3e 47 65 74 74 69 6e 67 20 4e >..<h5>Getting N
8720: 53 49 53 20 57 69 6e 64 6f 77 73 20 70 61 63 6b SIS Windows pack
8730: 61 67 69 6e 67 20 74 6f 6f 6c 20 3c 2f 68 35 3e aging tool </h5>
8740: 0d 0a 3c 68 35 3e 47 65 74 74 69 6e 67 20 46 6f ..<h5>Getting Fo
8750: 73 73 69 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 ssil source code
8760: 3c 2f 68 35 3e 0d 0a 3c 68 35 3e 42 75 69 6c 64 </h5>..<h5>Build
8770: 20 74 68 65 20 63 6f 64 65 20 77 69 74 68 20 4d the code with M
8780: 61 6b 65 66 69 6c 65 2e 77 69 6e 33 32 20 3c 2f akefile.win32 </
8790: 68 35 3e 0d 0a 0d 0a 3c 68 34 3e 56 69 73 75 61 h5>....<h4>Visua
87a0: 6c 20 53 74 75 64 69 6f 20 45 78 70 72 65 73 73 l Studio Express
87b0: 20 32 30 30 38 2b 57 69 58 3c 2f 68 34 3e 0d 0a 2008+WiX</h4>..
87c0: 3c 68 35 3e 53 65 74 75 70 20 4d 69 6e 47 57 3c <h5>Setup MinGW<
87d0: 2f 68 35 3e 0d 0a 3c 68 35 3e 47 65 74 74 69 6e /h5>..<h5>Gettin
87e0: 67 20 4e 53 49 53 20 57 69 6e 64 6f 77 73 20 70 g NSIS Windows p
87f0: 61 63 6b 61 67 69 6e 67 20 74 6f 6f 6c 20 3c 2f ackaging tool </
8800: 68 35 3e 0d 0a 3c 68 35 3e 47 65 74 74 69 6e 67 h5>..<h5>Getting
8810: 20 46 6f 73 73 69 6c 20 73 6f 75 72 63 65 20 63 Fossil source c
8820: 6f 64 65 3c 2f 68 35 3e 0d 0a 3c 68 35 3e 42 75 ode</h5>..<h5>Bu
8830: 69 6c 64 20 74 68 65 20 63 6f 64 65 20 77 69 74 ild the code wit
8840: 68 20 4d 61 6b 65 66 69 6c 65 2e 77 69 6e 33 32 h Makefile.win32
8850: 20 3c 2f 68 35 3e 0d 0a 0a 5a 20 64 35 34 64 63 </h5>...Z d54dc
8860: 33 32 64 63 32 31 32 37 64 39 63 35 31 34 34 34 32dc2127d9c51444
8870: 65 37 62 36 35 66 64 32 32 66 39 0a e7b65fd22f9.