Artifact
acad70114a66c6a66cc594ec6d879e7ff9ef5c30:
Wiki page
[
Cookbook] by
chi
2009-05-22 13:30:49.
0000: 44 20 32 30 30 39 2d 30 35 2d 32 32 54 31 33 3a D 2009-05-22T13:
0010: 33 30 3a 34 39 0a 4c 20 43 6f 6f 6b 62 6f 6f 6b 30:49.L Cookbook
0020: 0a 50 20 32 62 65 35 61 30 34 34 35 62 37 37 31 .P 2be5a0445b771
0030: 38 62 39 36 63 32 64 64 65 30 33 39 64 34 32 30 8b96c2dde039d420
0040: 65 65 37 34 62 61 65 33 31 62 30 0a 55 20 63 68 ee74bae31b0.U ch
0050: 69 0a 57 20 33 34 32 32 33 0a 3c 68 31 3e 46 6f i.W 34223.<h1>Fo
0060: 73 73 69 6c 20 43 6f 6f 6b 62 6f 6f 6b 3c 2f 68 ssil Cookbook</h
0070: 31 3e 0d 0a 54 68 65 20 3c 63 69 74 65 3e 46 6f 1>..The <cite>Fo
0080: 73 73 69 6c 3c 2f 63 69 74 65 3e 20 43 6f 6f 6b ssil</cite> Cook
0090: 62 6f 6f 6b 20 69 73 20 61 20 63 6f 6c 6c 65 63 book is a collec
00a0: 74 69 6f 6e 20 6f 66 20 74 61 73 6b 2d 6f 72 69 tion of task-ori
00b0: 65 6e 74 65 64 20 69 6e 73 74 72 75 63 74 69 6f ented instructio
00c0: 6e 73 20 66 6f 72 20 69 6e 74 65 72 6d 65 64 69 ns for intermedi
00d0: 61 74 65 20 75 73 65 72 73 20 77 68 6f 20 77 69 ate users who wi
00e0: 73 68 20 74 6f 20 64 6f 20 6d 6f 72 65 20 74 68 sh to do more th
00f0: 61 6e 20 62 61 73 69 63 20 6f 70 65 72 61 74 69 an basic operati
0100: 6f 6e 73 20 77 69 74 68 20 74 68 65 69 72 20 3c ons with their <
0110: 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 69 74 cite>Fossil</cit
0120: 65 3e 20 72 65 70 6f 73 69 74 6f 72 69 65 73 2e e> repositories.
0130: 20 20 54 68 65 20 5b 54 75 74 6f 72 69 61 6c 7c The [Tutorial|
0140: 74 75 74 6f 72 69 61 6c 5d 20 69 73 20 61 20 6d tutorial] is a m
0150: 6f 72 65 20 73 75 69 74 61 62 6c 65 20 70 6c 61 ore suitable pla
0160: 63 65 20 66 6f 72 20 6e 65 77 63 6f 6d 65 72 73 ce for newcomers
0170: 20 74 72 79 69 6e 67 20 74 6f 20 6c 65 61 72 6e trying to learn
0180: 20 74 68 65 20 62 61 73 69 63 20 63 6f 6e 63 65 the basic conce
0190: 70 74 73 20 74 6f 20 67 6f 20 66 69 72 73 74 20 pts to go first
01a0: 62 65 66 6f 72 65 20 74 61 63 6b 6c 69 6e 67 20 before tackling
01b0: 74 68 65 73 65 20 72 65 63 69 70 65 73 2e 0d 0a these recipes...
01c0: 0d 0a 3c 68 32 3e 49 6e 64 65 78 3c 2f 68 32 3e ..<h2>Index</h2>
01d0: 0d 0a 3c 75 6c 3e 0d 0a 20 20 3c 6c 69 3e 20 53 ..<ul>.. <li> S
01e0: 65 72 76 65 72 20 72 65 63 69 70 65 73 3a 0d 0a erver recipes:..
01f0: 20 20 20 20 3c 75 6c 3e 0d 0a 20 20 20 20 20 20 <ul>..
0200: 3c 6c 69 3e 20 20 3c 61 20 68 72 65 66 3d 22 23 <li> <a href="#
0210: 43 47 49 22 3e 55 73 69 6e 67 20 3c 63 69 74 65 CGI">Using <cite
0220: 3e 46 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 27 73 >Fossil</cite>'s
0230: 20 42 75 69 6c 74 2d 49 6e 20 43 47 49 3c 2f 61 Built-In CGI</a
0240: 3e 0d 0a 20 20 20 20 3c 2f 75 6c 3e 0d 0a 20 20 >.. </ul>..
0250: 3c 6c 69 3e 20 3c 61 20 68 72 65 66 3d 22 23 65 <li> <a href="#e
0260: 6e 76 22 3e 55 73 69 6e 67 20 45 6e 76 69 72 6f nv">Using Enviro
0270: 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 3c nment variables<
0280: 2f 61 3e 0d 0a 20 20 3c 6c 69 3e 20 3c 61 20 68 /a>.. <li> <a h
0290: 72 65 66 3d 22 23 63 73 73 22 3e 45 78 61 6d 70 ref="#css">Examp
02a0: 6c 65 20 43 53 53 3c 2f 61 3e 0d 0a 20 20 3c 6c le CSS</a>.. <l
02b0: 69 3e 20 3c 61 20 68 72 65 66 3d 22 23 73 6f 75 i> <a href="#sou
02c0: 72 63 65 2d 68 69 6c 69 67 68 74 22 3e 53 6f 75 rce-hilight">Sou
02d0: 72 63 65 20 68 69 67 68 6c 69 67 68 74 69 6e 67 rce highlighting
02e0: 3c 2f 61 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 0d 0a 3c </a>..</ul>....<
02f0: 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 43 47 49 22 h2><a name="CGI"
0300: 3e 55 73 69 6e 67 20 3c 63 69 74 65 3e 46 6f 73 >Using <cite>Fos
0310: 73 69 6c 3c 2f 63 69 74 65 3e 27 73 20 42 75 69 sil</cite>'s Bui
0320: 6c 74 2d 49 6e 20 43 47 49 3c 2f 61 3e 3c 2f 68 lt-In CGI</a></h
0330: 32 3e 0d 0a 3c 68 33 3e 4d 6f 74 69 76 61 74 69 2>..<h3>Motivati
0340: 6f 6e 3c 2f 68 33 3e 0d 0a 20 20 2a 20 20 59 6f on</h3>.. * Yo
0350: 75 20 77 61 6e 74 20 74 6f 20 73 68 61 72 65 20 u want to share
0360: 61 20 72 65 70 6f 73 69 74 6f 72 79 20 74 68 72 a repository thr
0370: 6f 75 67 68 20 79 6f 75 72 20 65 78 69 73 74 69 ough your existi
0380: 6e 67 20 77 65 62 20 69 6e 66 72 61 73 74 72 75 ng web infrastru
0390: 63 74 75 72 65 2e 0d 0a 20 20 2a 20 20 59 6f 75 cture... * You
03a0: 20 77 61 6e 74 20 74 6f 20 73 68 61 72 65 20 6d want to share m
03b0: 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 72 65 70 ore than one rep
03c0: 6f 73 69 74 6f 72 79 20 61 74 20 74 68 65 20 73 ository at the s
03d0: 61 6d 65 20 74 69 6d 65 2e 0d 0a 0d 0a 3c 68 33 ame time.....<h3
03e0: 3e 50 72 6f 62 6c 65 6d 3c 2f 68 33 3e 0d 0a 55 >Problem</h3>..U
03f0: 6e 6c 69 6b 65 20 73 6f 6d 65 20 6f 74 68 65 72 nlike some other
0400: 20 64 69 73 74 72 69 62 75 74 65 64 20 53 43 4d distributed SCM
0410: 73 2c 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c s, <cite>Fossil<
0420: 2f 63 69 74 65 3e 20 63 61 6e 20 6f 6e 6c 79 20 /cite> can only
0430: 63 6c 6f 6e 65 2c 20 70 75 73 68 2c 20 70 75 6c clone, push, pul
0440: 6c 20 61 6e 64 20 61 6e 64 20 6f 74 68 65 72 77 l and and otherw
0450: 69 73 65 20 69 6e 74 65 72 61 63 74 20 74 68 72 ise interact thr
0460: 6f 75 67 68 20 72 65 70 6f 73 69 74 6f 72 69 65 ough repositorie
0470: 73 20 6f 76 65 72 20 48 54 54 50 2e 20 20 54 68 s over HTTP. Th
0480: 69 73 20 63 61 6e 20 62 65 20 73 69 6d 70 6c 79 is can be simply
0490: 20 61 6e 64 20 65 61 73 69 6c 79 20 6d 61 6e 61 and easily mana
04a0: 67 65 64 20 74 68 72 6f 75 67 68 20 75 73 65 20 ged through use
04b0: 6f 66 20 74 68 65 20 3c 63 6f 64 65 3e 66 6f 73 of the <code>fos
04c0: 73 69 6c 20 73 65 72 76 65 72 3c 2f 63 6f 64 65 sil server</code
04d0: 3e 20 61 6e 64 2f 6f 72 20 3c 63 6f 64 65 3e 66 > and/or <code>f
04e0: 6f 73 73 69 6c 20 75 69 3c 2f 63 6f 64 65 3e 20 ossil ui</code>
04f0: 63 6f 6d 6d 61 6e 64 73 2c 20 6f 66 20 63 6f 75 commands, of cou
0500: 72 73 65 2c 20 62 75 74 20 74 68 69 73 20 69 73 rse, but this is
0510: 20 72 65 61 6c 6c 79 20 6f 6e 6c 79 20 61 64 65 really only ade
0520: 71 75 61 74 65 20 66 6f 72 20 61 64 2d 68 6f 63 quate for ad-hoc
0530: 20 72 65 70 6f 73 69 74 6f 72 79 20 73 68 61 72 repository shar
0540: 69 6e 67 2e 20 20 43 6f 6e 73 69 64 65 72 2c 20 ing. Consider,
0550: 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 73 68 61 for example, sha
0560: 72 69 6e 67 20 74 65 6e 20 72 65 70 6f 73 69 74 ring ten reposit
0570: 6f 72 69 65 73 2e 20 20 55 73 69 6e 67 20 74 68 ories. Using th
0580: 65 20 62 75 69 6c 74 2d 69 6e 20 73 65 72 76 65 e built-in serve
0590: 72 20 77 6f 75 6c 64 20 72 65 71 75 69 72 65 20 r would require
05a0: 79 6f 75 20 74 6f 20 6f 70 65 6e 20 74 65 6e 20 you to open ten
05b0: 70 6f 72 74 73 20 69 6e 20 79 6f 75 72 20 66 69 ports in your fi
05c0: 72 65 77 61 6c 6c 20 74 6f 20 70 65 72 6d 69 74 rewall to permit
05d0: 20 61 63 63 65 73 73 2e 20 20 41 6e 79 20 73 65 access. Any se
05e0: 72 69 6f 75 73 20 73 68 61 72 69 6e 67 20 77 69 rious sharing wi
05f0: 6c 6c 20 72 65 71 75 69 72 65 20 73 6f 6d 65 74 ll require somet
0600: 68 69 6e 67 20 6d 6f 72 65 20 72 6f 62 75 73 74 hing more robust
0610: 20 61 6e 64 20 70 65 72 6d 61 6e 65 6e 74 2e 0d and permanent..
0620: 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 69 6f 6e 3c ...<h3>Solution<
0630: 2f 68 33 3e 0d 0a 3c 63 69 74 65 3e 46 6f 73 73 /h3>..<cite>Foss
0640: 69 6c 3c 2f 63 69 74 65 3e 20 73 75 70 70 6f 72 il</cite> suppor
0650: 74 73 20 74 68 72 65 65 20 64 69 66 66 65 72 65 ts three differe
0660: 6e 74 20 77 61 79 73 20 74 6f 20 73 68 61 72 65 nt ways to share
0670: 20 72 65 70 6f 73 69 74 6f 72 69 65 73 2e 20 20 repositories.
0680: 46 6f 72 20 61 64 2d 68 6f 63 20 73 68 61 72 69 For ad-hoc shari
0690: 6e 67 20 3c 63 6f 64 65 3e 66 6f 73 73 69 6c 20 ng <code>fossil
06a0: 73 65 72 76 65 72 2f 75 69 3c 2f 63 6f 64 65 3e server/ui</code>
06b0: 20 69 73 20 6d 6f 72 65 20 74 68 61 6e 20 61 64 is more than ad
06c0: 65 71 75 61 74 65 2e 20 20 46 6f 72 20 6d 6f 72 equate. For mor
06d0: 65 20 72 6f 62 75 73 74 20 73 6f 6c 75 74 69 6f e robust solutio
06e0: 6e 73 2c 20 68 6f 77 65 76 65 72 2c 20 74 68 65 ns, however, the
06f0: 20 75 73 65 20 6f 66 20 3c 63 69 74 65 3e 28 78 use of <cite>(x
0700: 29 69 6e 65 74 64 3c 2f 63 69 74 65 3e 20 6f 72 )inetd</cite> or
0710: 20 43 47 49 20 73 75 70 70 6f 72 74 20 69 73 20 CGI support is
0720: 69 6e 64 69 63 61 74 65 64 2e 0d 0a 0d 0a 53 65 indicated.....Se
0730: 74 74 69 6e 67 20 75 70 20 66 6f 73 73 69 6c 20 tting up fossil
0740: 66 6f 72 20 43 47 49 20 73 75 70 70 6f 72 74 20 for CGI support
0750: 69 73 20 73 69 6d 70 6c 65 2e 20 20 28 53 65 74 is simple. (Set
0760: 74 69 6e 67 20 75 70 20 79 6f 75 72 20 77 65 62 ting up your web
0770: 20 73 65 72 76 65 72 20 66 6f 72 20 43 47 49 20 server for CGI
0780: 73 75 70 70 6f 72 74 20 6d 61 79 20 6f 72 20 6d support may or m
0790: 61 79 20 6e 6f 74 20 62 65 20 73 69 6d 70 6c 65 ay not be simple
07a0: 2c 20 62 75 74 20 69 74 20 69 73 20 6f 75 74 20 , but it is out
07b0: 6f 66 20 73 63 6f 70 65 20 6f 66 20 74 68 69 73 of scope of this
07c0: 20 72 65 63 69 70 65 2e 20 20 43 6f 6e 73 75 6c recipe. Consul
07d0: 74 20 79 6f 75 72 20 77 65 62 20 73 65 72 76 65 t your web serve
07e0: 72 2f 73 65 72 76 69 63 65 20 70 72 6f 76 69 64 r/service provid
07f0: 65 72 27 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 er's documentati
0800: 6f 6e 20 66 6f 72 20 74 68 69 73 2e 29 0d 0a 0d on for this.)...
0810: 0a 3c 68 34 3e 55 4e 49 58 3c 2f 68 34 3e 0d 0a .<h4>UNIX</h4>..
0820: 20 20 31 2e 20 20 46 69 6e 64 20 79 6f 75 72 20 1. Find your
0830: 43 47 49 20 73 63 72 69 70 74 73 20 64 69 72 65 CGI scripts dire
0840: 63 74 6f 72 79 20 28 69 66 20 61 70 70 6c 69 63 ctory (if applic
0850: 61 62 6c 65 29 2e 20 20 54 68 69 73 20 69 73 20 able). This is
0860: 63 6f 6d 6d 6f 6e 6c 79 20 73 6f 6d 65 74 68 69 commonly somethi
0870: 6e 67 20 6c 69 6b 65 20 3c 62 61 73 65 3e 2f 63 ng like <base>/c
0880: 67 69 2d 62 69 6e 2f 2c 20 62 75 74 20 64 6f 65 gi-bin/, but doe
0890: 73 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 62 65 s not have to be
08a0: 2e 0d 0a 20 20 32 2e 20 20 49 6e 73 69 64 65 20 ... 2. Inside
08b0: 74 68 61 74 20 64 69 72 65 63 74 6f 72 79 20 62 that directory b
08c0: 75 69 6c 64 20 61 20 73 63 72 69 70 74 20 66 69 uild a script fi
08d0: 6c 65 20 77 68 69 63 68 20 6c 6f 6f 6b 73 20 6c le which looks l
08e0: 69 6b 65 20 74 68 69 73 3a 3c 62 72 3e 3c 63 6f ike this:<br><co
08f0: 64 65 3e 3c 70 72 65 3e 20 20 23 21 20 2f 75 73 de><pre> #! /us
0900: 72 2f 62 69 6e 2f 65 6e 76 20 66 6f 73 73 69 6c r/bin/env fossil
0910: 3c 62 72 3e 20 20 72 65 70 6f 73 69 74 6f 72 79 <br> repository
0920: 3a 20 2f 66 75 6c 6c 2f 70 61 74 68 2f 74 6f 2f : /full/path/to/
0930: 72 65 70 6f 73 69 74 6f 72 79 2f 66 69 6c 65 2e repository/file.
0940: 66 73 6c 3c 2f 70 72 65 3e 3c 2f 63 6f 64 65 3e fsl</pre></code>
0950: 0d 0a 20 20 33 2e 20 20 45 6e 73 75 72 65 20 74 .. 3. Ensure t
0960: 68 61 74 20 74 68 65 20 73 63 72 69 70 74 20 66 hat the script f
0970: 69 6c 65 20 73 6f 20 67 65 6e 65 72 61 74 65 64 ile so generated
0980: 20 69 73 20 73 65 74 20 65 78 65 63 75 74 61 62 is set executab
0990: 6c 65 20 66 6f 72 20 74 68 65 20 43 47 49 20 75 le for the CGI u
09a0: 73 65 72 20 61 63 63 6f 75 6e 74 2e 0d 0a 20 20 ser account...
09b0: 34 2e 20 20 45 6e 73 75 72 65 20 74 68 61 74 20 4. Ensure that
09c0: 65 76 65 72 79 20 64 69 72 65 63 74 6f 72 79 20 every directory
09d0: 69 6e 20 74 68 65 20 70 61 74 68 20 6c 65 61 64 in the path lead
09e0: 69 6e 67 20 74 6f 20 74 68 65 20 72 65 70 6f 73 ing to the repos
09f0: 69 74 6f 72 79 20 69 73 20 20 62 72 6f 77 73 65 itory is browse
0a00: 61 62 6c 65 20 28 63 68 6d 6f 64 20 2b 78 29 20 able (chmod +x)
0a10: 74 6f 20 74 68 65 20 43 47 49 20 75 73 65 72 20 to the CGI user
0a20: 61 63 63 6f 75 6e 74 2e 0d 0a 20 20 35 2e 20 20 account... 5.
0a30: 45 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 Ensure that the
0a40: 72 65 70 6f 73 69 74 6f 72 79 20 66 69 6c 65 20 repository file
0a50: 69 73 20 72 65 61 64 61 62 6c 65 20 3c 65 6d 3e is readable <em>
0a60: 61 6e 64 3c 2f 65 6d 3e 20 77 72 69 74 61 62 6c and</em> writabl
0a70: 65 20 74 6f 20 74 68 65 20 43 47 49 20 75 73 65 e to the CGI use
0a80: 72 20 61 63 63 6f 75 6e 74 2e 0d 0a 0d 0a 54 68 r account.....Th
0a90: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 3c 63 69 74 e following <cit
0aa0: 65 3e 62 61 73 68 3c 2f 63 69 74 65 3e 20 73 63 e>bash</cite> sc
0ab0: 72 69 70 74 20 63 61 6e 20 62 65 20 72 75 6e 20 ript can be run
0ac0: 66 72 6f 6d 20 77 69 74 68 69 6e 20 74 68 65 20 from within the
0ad0: 64 69 72 65 63 74 6f 72 79 20 63 6f 6e 74 61 69 directory contai
0ae0: 6e 69 6e 67 20 74 68 65 20 3c 63 69 74 65 3e 46 ning the <cite>F
0af0: 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 20 72 65 70 ossil</cite> rep
0b00: 6f 73 69 74 6f 72 69 65 73 20 74 6f 20 62 65 20 ositories to be
0b10: 73 68 61 72 65 64 20 28 61 6e 64 2c 20 6f 66 20 shared (and, of
0b20: 63 6f 75 72 73 65 2c 20 61 6c 74 65 72 65 64 20 course, altered
0b30: 66 6f 72 20 79 6f 75 72 20 73 65 74 75 70 29 20 for your setup)
0b40: 74 6f 20 73 65 74 20 73 6f 6d 65 20 6f 66 20 74 to set some of t
0b50: 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 he constraints a
0b60: 62 6f 76 65 20 75 70 20 61 75 74 6f 6d 61 74 69 bove up automati
0b70: 63 61 6c 6c 79 3a 0d 0a 0d 0a 3c 6e 6f 77 69 6b cally:....<nowik
0b80: 69 3e 3c 66 6f 6e 74 20 66 61 63 65 3d 22 6d 6f i><font face="mo
0b90: 6e 6f 73 70 61 63 65 22 3e 0d 0a 3c 66 6f 6e 74 nospace">..<font
0ba0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
0bb0: 3e 26 6e 62 73 70 3b 31 20 3c 2f 66 6f 6e 74 3e > 1 </font>
0bc0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 <font color="#00
0bd0: 30 30 66 66 22 3e 23 21 20 2f 75 73 72 2f 62 69 00ff">#! /usr/bi
0be0: 6e 2f 65 6e 76 20 62 61 73 68 3c 2f 66 6f 6e 74 n/env bash</font
0bf0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
0c00: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0c10: 73 70 3b 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;2 </font><fon
0c20: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
0c30: 22 3e 43 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 ">CGI_ROOT</font
0c40: 3e 3d 2f 75 73 72 2f 6c 69 62 2f 66 6f 73 73 69 >=/usr/lib/fossi
0c50: 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c l<br>..<font col
0c60: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0c70: 73 70 3b 33 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;3 </font><fon
0c80: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
0c90: 22 3e 52 45 50 4f 53 49 54 4f 52 59 5f 4f 57 4e ">REPOSITORY_OWN
0ca0: 45 52 3c 2f 66 6f 6e 74 3e 3d 6d 69 63 68 61 65 ER</font>=michae
0cb0: 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c l<br>..<font col
0cc0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0cd0: 73 70 3b 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;4 </font><fon
0ce0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
0cf0: 22 3e 43 47 49 5f 47 52 4f 55 50 3c 2f 66 6f 6e ">CGI_GROUP</fon
0d00: 74 3e 3d 77 77 77 2d 64 61 74 61 3c 62 72 3e 0d t>=www-data<br>.
0d10: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
0d20: 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 35 20 3c 52a2a"> 5 <
0d30: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
0d40: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 r="#a52a2a"><b>i
0d50: 66 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 f</b></font>&nbs
0d60: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
0d70: 61 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e a52a2a"><b>[</b>
0d80: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
0d90: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
0da0: 64 22 3e 60 77 68 6f 61 6d 69 60 3c 2f 66 6f 6e d">`whoami`</fon
0db0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
0dc0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
0dd0: 3e 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 >=</b></font>&nb
0de0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
0df0: 23 66 66 30 30 66 66 22 3e 27 72 6f 6f 74 27 3c #ff00ff">'root'<
0e00: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
0e10: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
0e20: 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 "><b>]</b></font
0e30: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
0e40: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0e50: 73 70 3b 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;6 </font><fon
0e60: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
0e70: 22 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 "><b>then</b></f
0e80: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
0e90: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
0ea0: 26 6e 62 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 26 7 </font>&
0eb0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
0ec0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
0ed0: 3e 3c 62 3e 66 6f 72 3c 2f 62 3e 3c 2f 66 6f 6e ><b>for</b></fon
0ee0: 74 3e 26 6e 62 73 70 3b 72 65 70 6f 73 69 74 6f t> reposito
0ef0: 72 79 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 ry <font color="
0f00: 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 6e 3c 2f #a52a2a"><b>in</
0f10: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2a b></font> *
0f20: 2e 66 73 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 .fsl<br>..<font
0f30: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
0f40: 26 6e 62 73 70 3b 38 20 3c 2f 66 6f 6e 74 3e 26 8 </font>&
0f50: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
0f60: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
0f70: 3e 3c 62 3e 64 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>do</b></font
0f80: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
0f90: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
0fa0: 73 70 3b 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 sp;9 </font>&nbs
0fb0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
0fc0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
0fd0: 22 23 30 30 38 62 38 62 22 3e 53 4f 55 52 43 45 "#008b8b">SOURCE
0fe0: 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f </font>=<font co
0ff0: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 60 3c lor="#6a5acd">`<
1000: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
1010: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 70 r="#a52a2a"><b>p
1020: 77 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f wd</b></font><fo
1030: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
1040: 64 22 3e 60 3c 2f 66 6f 6e 74 3e 2f 3c 66 6f 6e d">`</font>/<fon
1050: 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 t color="#a020f0
1060: 22 3e 24 72 65 70 6f 73 69 74 6f 72 79 3c 2f 66 ">$repository</f
1070: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
1080: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
1090: 31 30 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 10 </font>
10a0: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
10b0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
10c0: 30 30 38 62 38 62 22 3e 44 45 53 54 49 4e 41 54 008b8b">DESTINAT
10d0: 49 4f 4e 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 ION</font>=<font
10e0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
10f0: 3e 24 43 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 >$CGI_ROOT</font
1100: 3e 2f 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 >/<font color="#
1110: 61 30 32 30 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 a020f0">${</font
1120: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
1130: 30 32 30 66 30 22 3e 72 65 70 6f 73 69 74 6f 72 020f0">repositor
1140: 79 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f y</font><font co
1150: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
1160: 3e 25 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 2e 66 73 >%</b></font>.fs
1170: 6c 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 l<font color="#a
1180: 30 32 30 66 30 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 020f0">}</font><
1190: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
11a0: 3d 22 23 61 35 32 61 32 61 22 3e 31 31 20 3c 2f ="#a52a2a">11 </
11b0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
11c0: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
11d0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
11e0: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
11f0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1200: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
1210: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
1220: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
1230: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
1240: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
1250: 66 66 30 30 66 66 22 3e 23 21 20 2f 75 73 72 2f ff00ff">#! /usr/
1260: 62 69 6e 2f 65 6e 76 20 66 6f 73 73 69 6c 3c 2f bin/env fossil</
1270: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1280: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
1290: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
12a0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
12b0: 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 0ff"> </fon
12c0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
12d0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 67 74 3b 3c a52a2a"><b>><
12e0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
12f0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
1300: 32 30 66 30 22 3e 24 44 45 53 54 49 4e 41 54 49 20f0">$DESTINATI
1310: 4f 4e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c ON</font><br>..<
1320: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1330: 61 32 61 22 3e 31 32 20 3c 2f 66 6f 6e 74 3e 26 a2a">12 </font>&
1340: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
1350: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
1360: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
1370: 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c echo</b></font><
1380: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
1390: 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 0ff"> </fon
13a0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
13b0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
13c0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
13d0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
13e0: 22 3e 72 65 70 6f 73 69 74 6f 72 79 3a 20 3c 2f ">repository: </
13f0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1400: 3d 22 23 61 30 32 30 66 30 22 3e 24 53 4f 55 52 ="#a020f0">$SOUR
1410: 43 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 CE</font><font c
1420: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
1430: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
1440: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
1450: 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c #ff00ff"> <
1460: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
1470: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
1480: 67 74 3b 26 67 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e gt;></b></fon
1490: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
14a0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 44 lor="#a020f0">$D
14b0: 45 53 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 ESTINATION</font
14c0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
14d0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 33 20 or="#a52a2a">13
14e0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
14f0: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 63 sp; c
1500: 68 6f 77 6e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 hown <font color
1510: 3d 22 23 61 30 32 30 66 30 22 3e 24 52 45 50 4f ="#a020f0">$REPO
1520: 53 49 54 4f 52 59 5f 4f 57 4e 45 52 3c 2f 66 6f SITORY_OWNER</fo
1530: 6e 74 3e 3a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d nt>:<font color=
1540: 22 23 61 30 32 30 66 30 22 3e 24 43 47 49 5f 47 "#a020f0">$CGI_G
1550: 52 4f 55 50 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 ROUP</font> 
1560: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
1570: 30 32 30 66 30 22 3e 24 53 4f 55 52 43 45 3c 2f 020f0">$SOURCE</
1580: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
1590: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
15a0: 3e 31 34 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >14 </font> 
15b0: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 ; &nb
15c0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
15d0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 63 68 6d 6f #a52a2a"><b>chmo
15e0: 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 d</b></font>&nbs
15f0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
1600: 66 66 30 30 66 66 22 3e 36 36 34 3c 2f 66 6f 6e ff00ff">664</fon
1610: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
1620: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 53 lor="#a020f0">$S
1630: 4f 55 52 43 45 3c 2f 66 6f 6e 74 3e 3c 62 72 3e OURCE</font><br>
1640: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
1650: 61 35 32 61 32 61 22 3e 31 35 20 3c 2f 66 6f 6e a52a2a">15 </fon
1660: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
1670: 62 73 70 3b 26 6e 62 73 70 3b 63 68 6f 77 6e 20 bsp; chown
1680: 72 6f 6f 74 3a 72 6f 6f 74 20 3c 66 6f 6e 74 20 root:root <font
1690: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
16a0: 24 44 45 53 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f $DESTINATION</fo
16b0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
16c0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 olor="#a52a2a">1
16d0: 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6 </font> &
16e0: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
16f0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
1700: 35 32 61 32 61 22 3e 3c 62 3e 63 68 6d 6f 64 3c 52a2a"><b>chmod<
1710: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
1720: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
1730: 30 30 66 66 22 3e 37 35 35 3c 2f 66 6f 6e 74 3e 00ff">755</font>
1740: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
1750: 72 3d 22 23 61 30 32 30 66 30 22 3e 24 44 45 53 r="#a020f0">$DES
1760: 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 3e 3c TINATION</font><
1770: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
1780: 3d 22 23 61 35 32 61 32 61 22 3e 31 37 20 3c 2f ="#a52a2a">17 </
1790: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
17a0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
17b0: 35 32 61 32 61 22 3e 3c 62 3e 64 6f 6e 65 3c 2f 52a2a"><b>done</
17c0: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
17d0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
17e0: 61 32 61 22 3e 31 38 20 3c 2f 66 6f 6e 74 3e 3c a2a">18 </font><
17f0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1800: 61 32 61 22 3e 3c 62 3e 65 6c 73 65 3c 2f 62 3e a2a"><b>else</b>
1810: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
1820: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
1830: 61 22 3e 31 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">19 </font>&nb
1840: 73 70 3b 26 6e 62 73 70 3b 73 75 64 6f 20 3c 66 sp; sudo <f
1850: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
1860: 66 30 22 3e 24 30 3c 2f 66 6f 6e 74 3e 26 6e 62 f0">$0</font>&nb
1870: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
1880: 23 61 30 32 30 66 30 22 3e 24 2a 3c 2f 66 6f 6e #a020f0">$*</fon
1890: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
18a0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 30 lor="#a52a2a">20
18b0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
18c0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
18d0: 3e 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 >fi</b></font><b
18e0: 72 3e 0d 0a 3c 2f 66 6f 6e 74 3e 3c 2f 6e 6f 77 r>..</font></now
18f0: 69 6b 69 3e 0d 0a 0d 0a 48 65 72 65 20 69 73 20 iki>....Here is
1900: 61 20 6c 69 74 74 6c 65 20 70 65 72 6c 20 73 63 a little perl sc
1910: 72 69 70 74 20 74 6f 20 70 75 74 20 69 6e 20 79 ript to put in y
1920: 6f 75 72 20 63 67 69 2d 62 69 6e 20 74 6f 20 6c our cgi-bin to l
1930: 69 73 74 20 61 6c 6c 20 74 68 65 20 66 6f 73 73 ist all the foss
1940: 69 6c 73 20 79 6f 75 20 61 72 65 20 70 75 62 6c ils you are publ
1950: 69 73 68 69 6e 67 3a 0d 0a 0d 0a 3c 6e 6f 77 69 ishing:....<nowi
1960: 6b 69 3e 3c 70 72 65 3e 0d 0a 23 21 2f 75 73 72 ki><pre>..#!/usr
1970: 2f 62 69 6e 2f 70 65 72 6c 20 2d 77 0d 0a 6d 79 /bin/perl -w..my
1980: 20 24 43 47 49 5f 42 49 4e 20 3d 20 27 2f 4c 69 $CGI_BIN = '/Li
1990: 62 72 61 72 79 2f 57 65 62 53 65 72 76 65 72 2f brary/WebServer/
19a0: 43 47 49 2d 45 78 65 63 75 74 61 62 6c 65 73 27 CGI-Executables'
19b0: 3b 0d 0a 6d 79 20 40 66 69 6c 65 73 20 3d 20 60 ;..my @files = `
19c0: 67 72 65 70 20 2d 6c 20 72 65 70 6f 73 69 74 6f grep -l reposito
19d0: 72 79 3a 20 20 24 43 47 49 5f 42 49 4e 2f 2a 20 ry: $CGI_BIN/*
19e0: 60 3b 0d 0a 70 72 69 6e 74 20 26 6c 74 3b 26 6c `;..print <&l
19f0: 74 3b 45 4f 4d 3b 0d 0a 43 6f 6e 74 65 6e 74 2d t;EOM;..Content-
1a00: 54 79 70 65 3a 20 74 65 78 74 2f 68 74 6d 6c 0d Type: text/html.
1a10: 0a 0d 0a 46 6f 73 73 69 6c 73 20 66 6f 72 20 74 ...Fossils for t
1a20: 68 69 73 20 73 65 72 76 65 72 0d 0a 26 6c 74 3b his server..<
1a30: 75 6c 3e 0d 0a 45 4f 4d 0d 0a 0d 0a 66 6f 72 20 ul>..EOM....for
1a40: 28 40 66 69 6c 65 73 29 20 7b 0d 0a 20 20 73 7b (@files) {.. s{
1a50: 2e 2a 2f 7d 7b 7d 3b 0d 0a 20 20 6e 65 78 74 20 .*/}{};.. next
1a60: 69 66 20 2f 7e 24 2f 3b 0d 0a 20 20 70 72 69 6e if /~$/;.. prin
1a70: 74 20 22 26 6c 74 3b 6c 69 3e 26 6c 74 3b 61 20 t "<li><a
1a80: 68 72 65 66 3d 27 24 5f 27 3e 24 5f 26 6c 74 3b href='$_'>$_<
1a90: 2f 61 3e 26 6c 74 3b 2f 6c 69 3e 5c 6e 22 3b 0d /a></li>\n";.
1aa0: 0a 7d 0d 0a 70 72 69 6e 74 20 22 26 6c 74 3b 2f .}..print "</
1ab0: 75 6c 3e 5c 6e 22 3b 3c 2f 70 72 65 3e 0d 0a 3c ul>\n";</pre>..<
1ac0: 2f 6e 6f 77 69 6b 69 3e 0d 0a 0d 0a 54 68 65 20 /nowiki>....The
1ad0: 66 6f 6c 6c 6f 77 69 6e 67 20 3c 63 69 74 65 3e following <cite>
1ae0: 61 70 61 63 68 65 32 3c 2f 63 69 74 65 3e 20 63 apache2</cite> c
1af0: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 63 61 6e onfiguration can
1b00: 20 62 65 20 75 73 65 64 20 74 6f 20 72 75 6e 20 be used to run
1b10: 74 68 65 20 72 6f 6f 74 20 6f 66 20 61 20 77 65 the root of a we
1b20: 62 20 73 69 74 65 20 77 69 74 68 20 66 6f 73 73 b site with foss
1b30: 69 6c 2c 20 62 75 74 20 73 74 69 6c 6c 20 61 6c il, but still al
1b40: 6c 6f 77 20 6f 74 68 65 72 20 73 65 72 76 69 63 low other servic
1b50: 65 73 20 2f 20 64 6f 63 75 6d 65 6e 74 73 20 74 es / documents t
1b60: 6f 20 62 65 20 72 65 61 63 68 65 64 20 76 69 61 o be reached via
1b70: 20 73 70 65 63 69 66 69 63 20 55 52 4c 73 2e 20 specific URLs.
1b80: 52 65 70 6c 61 63 65 20 22 63 6f 64 65 2e 61 75 Replace "code.au
1b90: 74 6f 6e 6f 6d 6f 2e 75 73 22 20 77 69 74 68 20 tonomo.us" with
1ba0: 79 6f 75 72 20 73 69 74 65 27 73 20 6e 61 6d 65 your site's name
1bb0: 20 61 6e 64 20 22 64 63 6c 61 72 6b 40 70 6f 62 and "dclark@pob
1bc0: 6f 78 2e 63 6f 6d 22 20 77 69 74 68 20 79 6f 75 ox.com" with you
1bd0: 72 20 65 6d 61 69 6c 2e 0d 0a 0d 0a 3c 76 65 72 r email.....<ver
1be0: 62 61 74 69 6d 3e 0d 0a 4e 61 6d 65 56 69 72 74 batim>..NameVirt
1bf0: 75 61 6c 48 6f 73 74 20 2a 3a 38 30 0d 0a 3c 56 ualHost *:80..<V
1c00: 69 72 74 75 61 6c 48 6f 73 74 20 2a 3a 38 30 3e irtualHost *:80>
1c10: 0d 0a 20 20 20 20 53 65 72 76 65 72 4e 61 6d 65 .. ServerName
1c20: 20 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 code.autonomo.u
1c30: 73 0d 0a 20 20 20 20 53 65 72 76 65 72 41 64 6d s.. ServerAdm
1c40: 69 6e 20 64 63 6c 61 72 6b 40 70 6f 62 6f 78 2e in dclark@pobox.
1c50: 63 6f 6d 0d 0a 20 20 20 20 45 72 72 6f 72 4c 6f com.. ErrorLo
1c60: 67 20 2f 76 61 72 2f 6c 6f 67 2f 61 70 61 63 68 g /var/log/apach
1c70: 65 32 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f e2/code.autonomo
1c80: 2e 75 73 2d 65 72 72 6f 72 2e 6c 6f 67 0d 0a 20 .us-error.log..
1c90: 20 20 20 4c 6f 67 4c 65 76 65 6c 20 77 61 72 6e LogLevel warn
1ca0: 0d 0a 20 20 20 20 43 75 73 74 6f 6d 4c 6f 67 20 .. CustomLog
1cb0: 2f 76 61 72 2f 6c 6f 67 2f 61 70 61 63 68 65 32 /var/log/apache2
1cc0: 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 /code.autonomo.u
1cd0: 73 2d 61 63 63 65 73 73 2e 6c 6f 67 20 63 6f 6d s-access.log com
1ce0: 62 69 6e 65 64 0d 0a 20 20 20 20 53 65 72 76 65 bined.. Serve
1cf0: 72 53 69 67 6e 61 74 75 72 65 20 4f 6e 0d 0a 0d rSignature On...
1d00: 0a 20 20 20 20 44 6f 63 75 6d 65 6e 74 52 6f 6f . DocumentRoo
1d10: 74 20 2f 76 61 72 2f 77 77 77 2f 0d 0a 0d 0a 20 t /var/www/....
1d20: 20 20 20 53 63 72 69 70 74 41 6c 69 61 73 20 2f ScriptAlias /
1d30: 63 67 69 2d 62 69 6e 2f 20 2f 75 73 72 2f 6c 69 cgi-bin/ /usr/li
1d40: 62 2f 63 67 69 2d 62 69 6e 2f 0d 0a 20 20 20 20 b/cgi-bin/..
1d50: 3c 44 69 72 65 63 74 6f 72 79 20 22 2f 75 73 72 <Directory "/usr
1d60: 2f 6c 69 62 2f 63 67 69 2d 62 69 6e 22 3e 0d 0a /lib/cgi-bin">..
1d70: 20 20 20 20 20 20 20 20 41 6c 6c 6f 77 4f 76 65 AllowOve
1d80: 72 72 69 64 65 20 4e 6f 6e 65 0d 0a 20 20 20 20 rride None..
1d90: 20 20 20 20 4f 70 74 69 6f 6e 73 20 2b 45 78 65 Options +Exe
1da0: 63 43 47 49 20 2d 4d 75 6c 74 69 56 69 65 77 73 cCGI -MultiViews
1db0: 20 2b 53 79 6d 4c 69 6e 6b 73 49 66 4f 77 6e 65 +SymLinksIfOwne
1dc0: 72 4d 61 74 63 68 0d 0a 20 20 20 20 20 20 20 20 rMatch..
1dd0: 4f 72 64 65 72 20 61 6c 6c 6f 77 2c 64 65 6e 79 Order allow,deny
1de0: 0d 0a 20 20 20 20 20 20 20 20 41 6c 6c 6f 77 20 .. Allow
1df0: 66 72 6f 6d 20 61 6c 6c 0d 0a 20 20 20 20 3c 2f from all.. </
1e00: 44 69 72 65 63 74 6f 72 79 3e 0d 0a 0d 0a 20 20 Directory>....
1e10: 20 20 23 20 46 6f 73 73 69 6c 20 53 43 4d 20 61 # Fossil SCM a
1e20: 74 20 72 6f 6f 74 20 6f 66 20 77 65 62 20 73 69 t root of web si
1e30: 74 65 20 28 68 74 74 70 3a 2f 2f 65 78 61 6d 70 te (http://examp
1e40: 6c 65 2e 63 6f 6d 29 20 63 6f 6e 66 69 67 75 72 le.com) configur
1e50: 61 74 69 6f 6e 2e 2e 2e 0d 0a 20 20 20 20 52 65 ation..... Re
1e60: 77 72 69 74 65 45 6e 67 69 6e 65 20 4f 6e 0d 0a writeEngine On..
1e70: 20 20 20 20 23 20 52 65 77 72 69 74 65 43 6f 6e # RewriteCon
1e80: 64 20 2d 20 4f 6e 65 20 66 6f 72 20 65 76 65 72 d - One for ever
1e90: 79 20 55 52 4c 20 77 65 20 64 6f 6e 27 74 20 77 y URL we don't w
1ea0: 61 6e 74 20 46 6f 73 73 69 6c 20 53 43 4d 20 74 ant Fossil SCM t
1eb0: 6f 20 73 65 72 76 65 2e 20 49 6e 20 74 68 65 0d o serve. In the.
1ec0: 0a 20 20 20 20 23 20 20 20 20 20 20 20 20 20 20 . #
1ed0: 20 20 20 20 20 65 78 61 6d 70 6c 65 2c 20 72 65 example, re
1ee0: 71 75 65 73 74 73 20 74 68 61 74 20 67 6f 20 74 quests that go t
1ef0: 6f 20 74 68 65 20 2f 76 61 72 2f 77 77 77 2f 74 o the /var/www/t
1f00: 6d 70 20 64 69 72 65 63 74 6f 72 79 20 61 6e 64 mp directory and
1f10: 20 0d 0a 20 20 20 20 23 20 20 20 20 20 20 20 20 .. #
1f20: 20 20 20 20 20 20 20 74 68 65 20 2f 75 73 72 2f the /usr/
1f30: 6c 69 62 2f 63 67 69 2d 62 69 6e 20 64 69 72 65 lib/cgi-bin dire
1f40: 63 74 6f 74 79 20 61 72 65 20 69 67 6e 6f 72 65 ctoty are ignore
1f50: 64 20 62 79 20 46 6f 73 73 69 6c 20 53 43 4d 2e d by Fossil SCM.
1f60: 0d 0a 20 20 20 20 52 65 77 72 69 74 65 43 6f 6e .. RewriteCon
1f70: 64 20 25 7b 52 45 51 55 45 53 54 5f 55 52 49 7d d %{REQUEST_URI}
1f80: 20 21 5e 2f 74 6d 70 2f 2e 2a 24 0d 0a 20 20 20 !^/tmp/.*$..
1f90: 20 52 65 77 72 69 74 65 43 6f 6e 64 20 25 7b 52 RewriteCond %{R
1fa0: 45 51 55 45 53 54 5f 55 52 49 7d 20 21 5e 2f 63 EQUEST_URI} !^/c
1fb0: 67 69 2d 62 69 6e 2f 2e 2a 24 0d 0a 20 20 20 20 gi-bin/.*$..
1fc0: 52 65 77 72 69 74 65 52 75 6c 65 20 5e 28 2e 2a RewriteRule ^(.*
1fd0: 29 24 20 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d )$ /usr/lib/cgi-
1fe0: 62 69 6e 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d bin/code.autonom
1ff0: 6f 2e 75 73 2f 24 31 20 5b 54 3d 61 70 70 6c 69 o.us/$1 [T=appli
2000: 63 61 74 69 6f 6e 2f 78 2d 68 74 74 70 64 2d 63 cation/x-httpd-c
2010: 67 69 5d 0d 0a 3c 2f 56 69 72 74 75 61 6c 48 6f gi]..</VirtualHo
2020: 73 74 3e 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e st>..</verbatim>
2030: 0d 0a 0d 0a 2f 75 73 72 2f 6c 69 62 2f 63 67 69 ..../usr/lib/cgi
2040: 2d 62 69 6e 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f -bin/code.autono
2050: 6d 6f 2e 75 73 20 69 73 20 6a 75 73 74 20 61 20 mo.us is just a
2060: 73 74 61 6e 64 61 72 64 20 66 6f 73 73 69 6c 20 standard fossil
2070: 43 47 49 20 66 69 6c 65 3b 20 69 74 20 6c 6f 6f CGI file; it loo
2080: 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0d 0a 0d ks like this:...
2090: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 23 21 2f .<verbatim>..#!/
20a0: 75 73 72 2f 62 69 6e 2f 66 6f 73 73 69 6c 0d 0a usr/bin/fossil..
20b0: 72 65 70 6f 73 69 74 6f 72 79 3a 20 2f 73 72 76 repository: /srv
20c0: 2f 66 6f 73 73 69 6c 2d 73 63 6d 2f 63 6f 64 65 /fossil-scm/code
20d0: 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 2e 66 6f 73 .autonomo.us.fos
20e0: 73 69 6c 2d 73 63 6d 0d 0a 3c 2f 76 65 72 62 61 sil-scm..</verba
20f0: 74 69 6d 3e 0d 0a 0d 0a 3c 68 33 3e 41 6e 6f 74 tim>....<h3>Anot
2100: 68 65 72 20 73 6f 6c 75 74 69 6f 6e 20 74 6f 20 her solution to
2110: 3c 69 3e 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 <i>automatically
2120: 3c 2f 69 3e 20 73 65 72 76 65 20 6d 75 6c 74 69 </i> serve multi
2130: 70 6c 65 20 72 65 70 6f 73 69 74 6f 72 69 65 73 ple repositories
2140: 3c 2f 68 33 3e 0d 0a 0d 0a 57 69 74 68 20 74 68 </h3>....With th
2150: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 43 47 49 20 e following CGI
2160: 73 63 72 69 70 74 20 28 49 20 68 61 76 65 20 6e script (I have n
2170: 61 6d 65 64 20 69 74 20 3c 73 61 6d 70 3e 70 3c amed it <samp>p<
2180: 2f 73 61 6d 70 3e 20 73 69 6d 70 6c 79 29 20 69 /samp> simply) i
2190: 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 74 6f t is possible to
21a0: 20 64 65 66 69 6e 65 20 61 20 6c 6f 63 61 74 69 define a locati
21b0: 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 74 68 65 on where all the
21c0: 20 79 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 69 your repositori
21d0: 65 73 20 73 68 6f 75 6c 64 20 62 65 20 6c 6f 63 es should be loc
21e0: 61 74 65 64 20 28 69 6e 20 74 68 69 73 20 65 78 ated (in this ex
21f0: 61 6d 70 6c 65 3a 20 3c 73 61 6d 70 3e 2f 68 6f ample: <samp>/ho
2200: 6d 65 2f 72 65 70 6f 73 2f 66 6f 73 73 69 6c 3c me/repos/fossil<
2210: 2f 73 61 6d 70 3e 29 2e 20 41 6c 6c 20 74 68 65 /samp>). All the
2220: 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 72 repositories ar
2230: 65 20 6e 61 6d 65 64 20 61 63 63 6f 72 64 69 6e e named accordin
2240: 67 20 74 68 65 20 73 63 68 65 6d 65 20 3c 73 61 g the scheme <sa
2250: 6d 70 3e 3c 70 72 6f 6a 65 63 74 20 6e 61 6d 65 mp><project name
2260: 3e 2e 66 73 6c 3c 2f 73 61 6d 70 3e 20 66 6f 72 >.fsl</samp> for
2270: 20 73 61 6b 65 20 6f 66 20 74 68 69 73 20 65 78 sake of this ex
2280: 61 6d 70 6c 65 2e 0d 0a 0d 0a 49 66 20 74 68 69 ample.....If thi
2290: 73 20 73 63 72 69 70 74 20 69 73 20 63 61 6c 6c s script is call
22a0: 65 64 20 61 6c 6f 6e 65 20 28 6c 69 6b 65 20 65 ed alone (like e
22b0: 2e 67 2e 3a 20 3c 73 61 6d 70 3e 68 74 74 70 3a .g.: <samp>http:
22c0: 2f 2f 79 6f 75 72 2e 73 65 72 76 65 72 2e 68 65 //your.server.he
22d0: 72 65 2f 63 67 69 2d 62 69 6e 2f 70 3c 2f 73 61 re/cgi-bin/p</sa
22e0: 6d 70 3e 29 2c 20 69 74 20 77 69 6c 6c 20 6c 69 mp>), it will li
22f0: 73 74 20 61 6c 6c 20 72 65 70 6f 73 69 74 6f 72 st all repositor
2300: 69 65 73 20 6c 6f 63 61 74 65 64 20 75 6e 64 65 ies located unde
2310: 72 20 3c 73 61 6d 70 3e 24 52 45 50 4f 53 52 4f r <samp>$REPOSRO
2320: 4f 54 3c 2f 73 61 6d 70 3e 2c 20 3c 62 3e 69 66 OT</samp>, <b>if
2330: 3c 2f 62 3e 20 74 68 65 72 65 20 3c 62 3e 64 6f </b> there <b>do
2340: 65 73 20 6e 6f 74 3c 2f 62 3e 20 65 78 69 73 74 es not</b> exist
2350: 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 a corresponding
2360: 20 66 69 6c 65 20 3c 73 61 6d 70 3e 2e 3c 70 72 file <samp>.<pr
2370: 6f 6a 65 63 74 20 6e 61 6d 65 3e 3c 2f 73 61 6d oject name></sam
2380: 70 3e 20 28 74 68 61 74 20 6d 65 63 68 61 6e 69 p> (that mechani
2390: 73 6d 20 69 73 20 75 73 65 64 20 74 6f 20 3c 69 sm is used to <i
23a0: 3e 68 69 64 65 3c 2f 69 3e 20 73 6f 6d 65 20 72 >hide</i> some r
23b0: 65 70 6f 73 69 74 6f 72 79 20 69 6e 20 74 68 65 epository in the
23c0: 20 6c 69 73 74 69 6e 67 29 2e 0d 0a 0d 0a 49 66 listing).....If
23d0: 20 74 68 65 20 73 63 72 69 70 74 20 69 73 20 63 the script is c
23e0: 61 6c 6c 65 64 20 6c 69 6b 65 20 65 2e 67 2e 20 alled like e.g.
23f0: 3c 73 61 6d 70 3e 68 74 74 70 3a 2f 2f 79 6f 75 <samp>http://you
2400: 72 2e 73 65 72 76 65 72 2e 68 65 72 65 2f 63 67 r.server.here/cg
2410: 69 2d 62 69 6e 2f 70 2f 3c 70 72 6f 6a 65 63 74 i-bin/p/<project
2420: 20 6e 61 6d 65 3e 3c 2f 73 61 6d 70 3e 2c 20 74 name></samp>, t
2430: 68 65 6e 20 74 68 65 20 63 6f 72 72 65 73 70 6f hen the correspo
2440: 6e 64 69 6e 67 20 72 65 70 6f 73 69 74 6f 72 79 nding repository
2450: 20 77 69 6c 6c 20 62 65 20 73 65 6c 65 63 74 65 will be selecte
2460: 64 20 74 6f 20 77 6f 72 6b 20 77 69 74 68 2e 0d d to work with..
2470: 0a 0d 0a 54 68 65 20 6c 69 6e 65 73 20 35 20 2d ...The lines 5 -
2480: 20 38 20 69 6e 20 74 68 65 20 73 63 72 69 70 74 8 in the script
2490: 20 62 65 6c 6f 77 20 61 6c 6c 6f 77 20 63 6f 6e below allow con
24a0: 66 69 67 75 72 61 74 69 6f 6e 20 66 6f 72 20 79 figuration for y
24b0: 6f 75 20 6e 65 65 64 73 2e 20 59 6f 75 20 68 61 ou needs. You ha
24c0: 76 65 20 74 6f 20 63 68 6f 73 65 2c 20 77 68 61 ve to chose, wha
24d0: 74 20 66 6f 73 73 69 6c 20 62 69 6e 61 72 79 20 t fossil binary
24e0: 74 6f 20 75 73 65 2c 20 77 68 61 74 20 65 78 74 to use, what ext
24f0: 65 6e 73 69 6f 6e 20 79 6f 75 72 20 72 65 70 6f ension your repo
2500: 73 69 74 6f 72 79 20 64 61 74 61 62 61 73 65 73 sitory databases
2510: 20 68 61 76 65 20 61 6e 64 20 77 68 65 72 65 20 have and where
2520: 61 6c 6c 20 79 6f 75 72 20 64 61 74 61 62 61 73 all your databas
2530: 65 73 20 61 72 65 20 6c 6f 63 61 74 65 64 2e 0d es are located..
2540: 0a 0d 0a 3c 6e 6f 77 69 6b 69 3e 0d 0a 3c 66 6f ...<nowiki>..<fo
2550: 6e 74 20 66 61 63 65 3d 22 6d 6f 6e 6f 73 70 61 nt face="monospa
2560: 63 65 22 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f ce">..<font colo
2570: 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 r="#a52a2a">&nbs
2580: 70 3b 31 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 p;1 </font><font
2590: 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 66 66 22 color="#0000ff"
25a0: 3e 23 21 2f 62 69 6e 2f 73 68 3c 2f 66 6f 6e 74 >#!/bin/sh</font
25b0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
25c0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
25d0: 73 70 3b 32 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e sp;2 </font><br>
25e0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
25f0: 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 33 20 a52a2a"> 3
2600: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
2610: 6f 72 3d 22 23 30 30 30 30 66 66 22 3e 23 23 23 or="#0000ff">###
2620: 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 Configuration s
2630: 65 63 74 69 6f 6e 20 23 23 23 3c 2f 66 6f 6e 74 ection ###</font
2640: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
2650: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
2660: 73 70 3b 34 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e sp;4 </font><br>
2670: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
2680: 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 35 20 a52a2a"> 5
2690: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
26a0: 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 54 49 54 or="#008b8b">TIT
26b0: 4c 45 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 LE</font>=<font
26c0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
26d0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
26e0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
26f0: 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 68 32 "#ff00ff"><h2
2700: 26 67 74 3b 46 6f 73 73 69 6c 20 72 65 70 6f 73 >Fossil repos
2710: 69 74 6f 72 69 65 73 26 6c 74 3b 2f 68 32 26 67 itories</h2&g
2720: 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 t;</font><font c
2730: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
2740: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
2750: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
2760: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 olor="#a52a2a">&
2770: 6e 62 73 70 3b 36 20 3c 2f 66 6f 6e 74 3e 3c 66 nbsp;6 </font><f
2780: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 ont color="#008b
2790: 38 62 22 3e 46 4f 53 53 49 4c 3c 2f 66 6f 6e 74 8b">FOSSIL</font
27a0: 3e 3d 2f 75 73 72 2f 6c 6f 63 61 6c 2f 62 69 6e >=/usr/local/bin
27b0: 2f 66 6f 73 73 69 6c 3c 62 72 3e 0d 0a 3c 66 6f /fossil<br>..<fo
27c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
27d0: 61 22 3e 26 6e 62 73 70 3b 37 20 3c 2f 66 6f 6e a"> 7 </fon
27e0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
27f0: 30 30 38 62 38 62 22 3e 52 45 50 4f 53 52 4f 4f 008b8b">REPOSROO
2800: 54 3c 2f 66 6f 6e 74 3e 3d 2f 68 6f 6d 65 2f 72 T</font>=/home/r
2810: 65 70 6f 73 2f 66 6f 73 73 69 6c 3c 62 72 3e 0d epos/fossil<br>.
2820: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
2830: 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 38 20 3c 52a2a"> 8 <
2840: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
2850: 72 3d 22 23 30 30 38 62 38 62 22 3e 52 45 50 4f r="#008b8b">REPO
2860: 53 45 58 54 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e SEXT</font>=<fon
2870: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
2880: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
2890: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
28a0: 72 3d 22 23 66 66 30 30 66 66 22 3e 2e 66 73 6c r="#ff00ff">.fsl
28b0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
28c0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
28d0: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
28e0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
28f0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
2900: 73 70 3b 39 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e sp;9 </font><br>
2910: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
2920: 61 35 32 61 32 61 22 3e 31 30 20 3c 2f 66 6f 6e a52a2a">10 </fon
2930: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
2940: 30 30 30 30 66 66 22 3e 23 23 23 20 50 72 6f 63 0000ff">### Proc
2950: 65 73 73 69 6e 67 20 73 65 63 74 69 6f 6e 20 2d essing section -
2960: 2d 20 6e 6f 74 68 69 6e 67 20 74 6f 20 63 6f 6e - nothing to con
2970: 66 69 67 75 72 65 20 68 65 72 65 21 20 23 23 23 figure here! ###
2980: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
2990: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
29a0: 61 22 3e 31 31 20 3c 2f 66 6f 6e 74 3e 3c 62 72 a">11 </font><br
29b0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
29c0: 23 61 35 32 61 32 61 22 3e 31 32 20 3c 2f 66 6f #a52a2a">12 </fo
29d0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
29e0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 73 65 74 3c #a52a2a"><b>set<
29f0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
2a00: 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e color="#008b8b">
2a10: 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f </font><fo
2a20: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
2a30: 64 22 3e 2d 66 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e d">-f</font><fon
2a40: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
2a50: 22 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e "> &n
2a60: 62 73 70 3b 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 bsp; </font
2a70: 3e 3b 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >; <font color="
2a80: 23 30 30 30 30 66 66 22 3e 23 20 64 69 73 61 62 #0000ff"># disab
2a90: 6c 65 20 66 69 6c 65 6e 61 6d 65 20 67 6c 6f 62 le filename glob
2aa0: 62 69 6e 67 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d bing</font><br>.
2ab0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
2ac0: 35 32 61 32 61 22 3e 31 33 20 3c 2f 66 6f 6e 74 52a2a">13 </font
2ad0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
2ae0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 34 20 or="#a52a2a">14
2af0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
2b00: 6f 72 3d 22 23 30 30 30 30 66 66 22 3e 23 23 20 or="#0000ff">##
2b10: 53 6f 6d 65 20 68 65 6c 70 65 72 20 66 75 6e 63 Some helper func
2b20: 74 69 6f 6e 73 3c 2f 66 6f 6e 74 3e 3c 62 72 3e tions</font><br>
2b30: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
2b40: 61 35 32 61 32 61 22 3e 31 35 20 3c 2f 66 6f 6e a52a2a">15 </fon
2b50: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
2b60: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 36 lor="#a52a2a">16
2b70: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
2b80: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 48 65 lor="#008b8b">He
2b90: 61 64 65 72 54 65 78 74 20 28 29 20 7b 3c 2f 66 aderText () {</f
2ba0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
2bb0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2bc0: 31 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 17 </font>
2bd0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
2be0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 r="#a52a2a"><b>i
2bf0: 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f f </b></font><fo
2c00: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
2c10: 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>[</b></fon
2c20: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
2c30: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
2c40: 3e 2d 7a 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e >-z</b></font>&n
2c50: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
2c60: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
2c70: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 ot;</b></font><f
2c80: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
2c90: 66 30 22 3e 24 68 65 61 64 65 72 57 72 69 74 74 f0">$headerWritt
2ca0: 65 6e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 en</font><font c
2cb0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
2cc0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
2cd0: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
2ce0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
2cf0: 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 b>]</b></font><f
2d00: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
2d10: 32 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 2a"><b>;</b></fo
2d20: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
2d30: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
2d40: 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>then</b></font
2d50: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
2d60: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 38 20 or="#a52a2a">18
2d70: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
2d80: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c sp; <
2d90: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
2da0: 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e a2a"><b>echo</b>
2db0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
2dc0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 or="#ff00ff">&nb
2dd0: 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 sp;</font><font
2de0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2df0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
2e00: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
2e10: 22 23 66 66 30 30 66 66 22 3e 43 6f 6e 74 65 6e "#ff00ff">Conten
2e20: 74 2d 74 79 70 65 3a 20 74 65 78 74 2f 70 6c 61 t-type: text/pla
2e30: 69 6e 3b 20 63 68 61 72 73 65 74 3d 69 73 6f 2d in; charset=iso-
2e40: 38 38 35 39 2d 31 3c 2f 66 6f 6e 74 3e 3c 66 6f 8859-1</font><fo
2e50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
2e60: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
2e70: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
2e80: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
2e90: 61 22 3e 31 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">19 </font>&nb
2ea0: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 sp; &
2eb0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
2ec0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 ="#a52a2a"><b>ec
2ed0: 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 ho</b></font><br
2ee0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
2ef0: 23 61 35 32 61 32 61 22 3e 32 30 20 3c 2f 66 6f #a52a2a">20 </fo
2f00: 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 nt> &
2f10: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
2f20: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
2f30: 3e 68 65 61 64 65 72 57 72 69 74 74 65 6e 3c 2f >headerWritten</
2f40: 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f font>=<font colo
2f50: 72 3d 22 23 66 66 30 30 66 66 22 3e 31 3c 2f 66 r="#ff00ff">1</f
2f60: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
2f70: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
2f80: 32 31 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 21 </font>
2f90: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
2fa0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 r="#a52a2a"><b>f
2fb0: 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e i</b></font><br>
2fc0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
2fd0: 61 35 32 61 32 61 22 3e 32 32 20 3c 2f 66 6f 6e a52a2a">22 </fon
2fe0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
2ff0: 30 30 38 62 38 62 22 3e 7d 3c 2f 66 6f 6e 74 3e 008b8b">}</font>
3000: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
3010: 72 3d 22 23 61 35 32 61 32 61 22 3e 32 33 20 3c r="#a52a2a">23 <
3020: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3030: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3040: 22 3e 32 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">24 </font><fon
3050: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
3060: 22 3e 48 65 61 64 65 72 48 54 4d 4c 20 28 29 20 ">HeaderHTML ()
3070: 7b 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 {</font><br>..<f
3080: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3090: 32 61 22 3e 32 35 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">25 </font>&n
30a0: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
30b0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
30c0: 3c 62 3e 69 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 <b>if </b></font
30d0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
30e0: 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 52a2a"><b>[</b><
30f0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
3100: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3110: 22 3e 3c 62 3e 2d 7a 3c 2f 62 3e 3c 2f 66 6f 6e "><b>-z</b></fon
3120: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
3130: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
3140: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
3150: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3160: 61 30 32 30 66 30 22 3e 24 68 65 61 64 65 72 57 a020f0">$headerW
3170: 72 69 74 74 65 6e 3c 2f 66 6f 6e 74 3e 3c 66 6f ritten</font><fo
3180: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3190: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
31a0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
31b0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
31c0: 61 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>]</b></fon
31d0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
31e0: 61 35 32 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 3e a52a2a"><b>;</b>
31f0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
3200: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3210: 61 22 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f a"><b>then</b></
3220: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3230: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3240: 3e 32 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >26 </font> 
3250: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 ; &nb
3260: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
3270: 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f #a52a2a"><b>echo
3280: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
3290: 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 color="#ff00ff"
32a0: 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 > </font><f
32b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
32c0: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
32d0: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
32e0: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 43 6f lor="#ff00ff">Co
32f0: 6e 74 65 6e 74 2d 74 79 70 65 3a 20 74 65 78 74 ntent-type: text
3300: 2f 68 74 6d 6c 3b 20 63 68 61 72 73 65 74 3d 69 /html; charset=i
3310: 73 6f 2d 38 38 35 39 2d 31 3c 2f 66 6f 6e 74 3e so-8859-1</font>
3320: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3330: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
3340: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a /b></font><br>..
3350: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3360: 32 61 32 61 22 3e 32 37 20 3c 2f 66 6f 6e 74 3e 2a2a">27 </font>
3370: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
3380: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
3390: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
33a0: 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e >echo</b></font>
33b0: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
33c0: 72 3d 22 23 61 35 32 61 32 61 22 3e 32 38 20 3c r="#a52a2a">28 <
33d0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
33e0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
33f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 ont color="#008b
3400: 38 62 22 3e 68 65 61 64 65 72 57 72 69 74 74 65 8b">headerWritte
3410: 6e 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 n</font>=<font c
3420: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 31 olor="#ff00ff">1
3430: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
3440: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3450: 61 22 3e 32 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">29 </font>&nb
3460: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
3470: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
3480: 62 3e 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c b>fi</b></font><
3490: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
34a0: 3d 22 23 61 35 32 61 32 61 22 3e 33 30 20 3c 2f ="#a52a2a">30 </
34b0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
34c0: 3d 22 23 30 30 38 62 38 62 22 3e 7d 3c 2f 66 6f ="#008b8b">}</fo
34d0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
34e0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 olor="#a52a2a">3
34f0: 31 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 1 </font><br>..<
3500: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3510: 61 32 61 22 3e 33 32 20 3c 2f 66 6f 6e 74 3e 3c a2a">32 </font><
3520: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
3530: 62 38 62 22 3e 45 72 72 6f 72 20 28 29 20 7b 3c b8b">Error () {<
3540: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3550: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3560: 22 3e 33 33 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">33 </font>&nbs
3570: 70 3b 26 6e 62 73 70 3b 48 65 61 64 65 72 48 54 p; HeaderHT
3580: 4d 4c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f ML<br>..<font co
3590: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 34 lor="#a52a2a">34
35a0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
35b0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
35c0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 "#a52a2a"><b>ech
35d0: 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e o</b></font><fon
35e0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
35f0: 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c "> </font><
3600: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3610: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
3620: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
3630: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 olor="#ff00ff">&
3640: 6c 74 3b 70 26 67 74 3b 26 6c 74 3b 66 6f 6e 74 lt;p><font
3650: 20 63 6f 6c 6f 72 3d 3c 2f 66 6f 6e 74 3e 3c 66 color=</font><f
3660: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3670: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
3680: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
3690: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 72 65 lor="#ff00ff">re
36a0: 64 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f d</font><font co
36b0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
36c0: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
36d0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
36e0: 66 66 30 30 66 66 22 3e 26 67 74 3b 45 52 52 4f ff00ff">>ERRO
36f0: 52 3a 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 R: </font><font
3700: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
3710: 24 31 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 $1</font><font c
3720: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 olor="#ff00ff">&
3730: 6c 74 3b 2f 66 6f 6e 74 26 67 74 3b 26 6c 74 3b lt;/font><
3740: 2f 70 26 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f /p></font><fo
3750: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3760: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
3770: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
3780: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3790: 61 22 3e 33 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">35 </font>&nb
37a0: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
37b0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
37c0: 62 3e 65 78 69 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>exit</b></font
37d0: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
37e0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 31 3c 2f or="#ff00ff">1</
37f0: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3800: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3810: 3e 33 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 >36 </font><font
3820: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
3830: 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c >}</font><br>..<
3840: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3850: 61 32 61 22 3e 33 37 20 3c 2f 66 6f 6e 74 3e 3c a2a">37 </font><
3860: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
3870: 3d 22 23 61 35 32 61 32 61 22 3e 33 38 20 3c 2f ="#a52a2a">38 </
3880: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3890: 3d 22 23 30 30 38 62 38 62 22 3e 50 20 28 29 20 ="#008b8b">P ()
38a0: 7b 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 {</font><br>..<f
38b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
38c0: 32 61 22 3e 33 39 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">39 </font>&n
38d0: 62 73 70 3b 26 6e 62 73 70 3b 48 65 61 64 65 72 bsp; Header
38e0: 54 65 78 74 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 Text<br>..<font
38f0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3900: 34 30 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 40 </font>
3910: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
3920: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 r="#a52a2a"><b>f
3930: 6f 72 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 76 61 or </b></font>va
3940: 72 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 r <font color="#
3950: 61 35 32 61 32 61 22 3e 3c 62 3e 69 6e 3c 2f 62 a52a2a"><b>in</b
3960: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
3970: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
3980: 66 30 22 3e 24 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f f0">$*</font><fo
3990: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
39a0: 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>;</b></fon
39b0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
39c0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
39d0: 3e 64 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 >do</b></font><b
39e0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
39f0: 22 23 61 35 32 61 32 61 22 3e 34 31 20 3c 2f 66 "#a52a2a">41 </f
3a00: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
3a10: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e <fon
3a20: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3a30: 22 3e 3c 62 3e 65 76 61 6c 3c 2f 62 3e 3c 2f 66 "><b>eval</b></f
3a40: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
3a50: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3a60: 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e <b>echo</b></fon
3a70: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3a80: 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f ff00ff"> </
3a90: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3aa0: 3d 22 23 61 30 32 30 66 30 22 3e 24 76 61 72 3c ="#a020f0">$var<
3ab0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3ac0: 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 r="#ff00ff">&nbs
3ad0: 70 3b 3d 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 p;= </font><font
3ae0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3af0: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
3b00: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3b10: 3d 22 23 36 61 35 61 63 64 22 3e 5c 24 3c 2f 66 ="#6a5acd">\$</f
3b20: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
3b30: 22 23 61 30 32 30 66 30 22 3e 24 76 61 72 3c 2f "#a020f0">$var</
3b40: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3b50: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
3b60: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
3b70: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
3b80: 3d 22 23 61 35 32 61 32 61 22 3e 34 32 20 3c 2f ="#a52a2a">42 </
3b90: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
3ba0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
3bb0: 35 32 61 32 61 22 3e 3c 62 3e 64 6f 6e 65 3c 2f 52a2a"><b>done</
3bc0: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
3bd0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3be0: 61 32 61 22 3e 34 33 20 3c 2f 66 6f 6e 74 3e 3c a2a">43 </font><
3bf0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
3c00: 62 38 62 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 b8b">}</font><br
3c10: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
3c20: 23 61 35 32 61 32 61 22 3e 34 34 20 3c 2f 66 6f #a52a2a">44 </fo
3c30: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
3c40: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 34 olor="#a52a2a">4
3c50: 35 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 5 </font><font c
3c60: 6f 6c 6f 72 3d 22 23 30 30 30 30 66 66 22 3e 23 olor="#0000ff">#
3c70: 23 20 44 6f 20 74 68 65 20 72 65 61 6c 20 77 6f # Do the real wo
3c80: 72 6b 20 68 65 72 65 20 2e 2e 2e 3c 2f 66 6f 6e rk here ...</fon
3c90: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
3ca0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 34 36 lor="#a52a2a">46
3cb0: 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 </font><br>..<f
3cc0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3cd0: 32 61 22 3e 34 37 20 3c 2f 66 6f 6e 74 3e 3c 66 2a">47 </font><f
3ce0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 ont color="#008b
3cf0: 38 62 22 3e 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 8b">project</fon
3d00: 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t>=<font color="
3d10: 23 36 61 35 61 63 64 22 3e 60 65 63 68 6f 20 3c #6a5acd">`echo <
3d20: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3d30: 72 3d 22 23 61 30 32 30 66 30 22 3e 24 50 41 54 r="#a020f0">$PAT
3d40: 48 5f 49 4e 46 4f 3c 2f 66 6f 6e 74 3e 3c 66 6f H_INFO</font><fo
3d50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
3d60: 64 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e d"> </font>
3d70: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3d80: 32 61 32 61 22 3e 3c 62 3e 7c 3c 2f 62 3e 3c 2f 2a2a"><b>|</b></
3d90: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3da0: 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 73 70 ="#6a5acd"> 
3db0: 3b 73 65 64 20 2d 65 20 3c 2f 66 6f 6e 74 3e 3c ;sed -e </font><
3dc0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3dd0: 61 32 61 22 3e 3c 62 3e 27 3c 2f 62 3e 3c 2f 66 a2a"><b>'</b></f
3de0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
3df0: 22 23 66 66 30 30 66 66 22 3e 73 21 2f 3c 2f 66 "#ff00ff">s!/</f
3e00: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
3e10: 22 23 36 61 35 61 63 64 22 3e 5c 28 3c 2f 66 6f "#6a5acd">\(</fo
3e20: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3e30: 23 66 66 30 30 66 66 22 3e 5b 5e 2f 5d 2a 3c 2f #ff00ff">[^/]*</
3e40: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3e50: 3d 22 23 36 61 35 61 63 64 22 3e 5c 29 3c 2f 66 ="#6a5acd">\)</f
3e60: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
3e70: 22 23 66 66 30 30 66 66 22 3e 2e 2a 21 5c 31 21 "#ff00ff">.*!\1!
3e80: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
3e90: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3ea0: 27 7c 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f '|</b></font><fo
3eb0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
3ec0: 64 22 3e 26 6e 62 73 70 3b 74 72 20 3c 2f 66 6f d"> tr </fo
3ed0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3ee0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
3ef0: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f t;</b></font><fo
3f00: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
3f10: 66 22 3e 5b 41 2d 5a 5d 3c 2f 66 6f 6e 74 3e 3c f">[A-Z]</font><
3f20: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3f30: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
3f40: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
3f50: 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 26 olor="#6a5acd">&
3f60: 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e nbsp;</font><fon
3f70: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3f80: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
3f90: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3fa0: 72 3d 22 23 66 66 30 30 66 66 22 3e 5b 61 2d 7a r="#ff00ff">[a-z
3fb0: 5d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ]</font><font co
3fc0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
3fd0: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
3fe0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3ff0: 36 61 35 61 63 64 22 3e 60 3c 2f 66 6f 6e 74 3e 6a5acd">`</font>
4000: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
4010: 72 3d 22 23 61 35 32 61 32 61 22 3e 34 38 20 3c r="#a52a2a">48 <
4020: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4030: 72 3d 22 23 30 30 38 62 38 62 22 3e 72 65 70 6f r="#008b8b">repo
4040: 73 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 s</font>=<font c
4050: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4060: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4070: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4080: 23 61 30 32 30 66 30 22 3e 24 52 45 50 4f 53 52 #a020f0">$REPOSR
4090: 4f 4f 54 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 OOT</font><font
40a0: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
40b0: 2f 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f /</font><font co
40c0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 lor="#a020f0">$p
40d0: 72 6f 6a 65 63 74 24 52 45 50 4f 53 45 58 54 3c roject$REPOSEXT<
40e0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
40f0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
4100: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
4110: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
4120: 72 3d 22 23 61 35 32 61 32 61 22 3e 34 39 20 3c r="#a52a2a">49 <
4130: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
4140: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4150: 22 3e 35 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">50 </font><fon
4160: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4170: 22 3e 3c 62 3e 69 66 20 3c 2f 62 3e 3c 2f 66 6f "><b>if </b></fo
4180: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4190: 23 61 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 #a52a2a"><b>[</b
41a0: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
41b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
41c0: 32 61 22 3e 3c 62 3e 2d 72 3c 2f 62 3e 3c 2f 66 2a"><b>-r</b></f
41d0: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
41e0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
41f0: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
4200: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4210: 22 23 61 30 32 30 66 30 22 3e 24 72 65 70 6f 73 "#a020f0">$repos
4220: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4230: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4240: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</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: 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ]</b></font><fon
4280: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4290: 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "><b>;</b></font
42a0: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
42b0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
42c0: 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c then</b></font><
42d0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
42e0: 3d 22 23 61 35 32 61 32 61 22 3e 35 31 20 3c 2f ="#a52a2a">51 </
42f0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
4300: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ;<font color="#0
4310: 30 38 62 38 62 22 3e 50 41 54 48 5f 49 4e 46 4f 08b8b">PATH_INFO
4320: 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f </font>=<font co
4330: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 60 65 lor="#6a5acd">`e
4340: 63 68 6f 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 cho </font><font
4350: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
4360: 3e 24 52 45 51 55 45 53 54 5f 55 52 49 3c 2f 66 >$REQUEST_URI</f
4370: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4380: 22 23 36 61 35 61 63 64 22 3e 26 6e 62 73 70 3b "#6a5acd">
4390: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
43a0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
43b0: 7c 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e |</b></font><fon
43c0: 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 t color="#6a5acd
43d0: 22 3e 26 6e 62 73 70 3b 73 65 64 20 2d 65 20 3c "> sed -e <
43e0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
43f0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
4400: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
4410: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
4420: 30 30 66 66 22 3e 73 21 5e 3c 2f 66 6f 6e 74 3e 00ff">s!^</font>
4430: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4440: 32 30 66 30 22 3e 24 53 43 52 49 50 54 5f 4e 41 20f0">$SCRIPT_NA
4450: 4d 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 ME</font><font c
4460: 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 2f olor="#ff00ff">/
4470: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4480: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 or="#a020f0">$pr
4490: 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e oject</font><fon
44a0: 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 t color="#6a5acd
44b0: 22 3e 5c 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 ">\\</font><font
44c0: 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 color="#ff00ff"
44d0: 3e 28 5b 5e 3f 5d 2a 3c 2f 66 6f 6e 74 3e 3c 66 >([^?]*</font><f
44e0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
44f0: 63 64 22 3e 5c 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f cd">\\</font><fo
4500: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4510: 66 22 3e 29 2e 2a 21 3c 2f 66 6f 6e 74 3e 3c 66 f">).*!</font><f
4520: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
4530: 63 64 22 3e 5c 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f cd">\\</font><fo
4540: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4550: 66 22 3e 31 21 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e f">1!</font><fon
4560: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4570: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
4580: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4590: 72 3d 22 23 36 61 35 61 63 64 22 3e 60 3c 2f 66 r="#6a5acd">`</f
45a0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
45b0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
45c0: 35 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 52 </font><font
45d0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
45e0: 3c 62 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3a <b> :
45f0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
4600: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
4610: 30 32 30 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 3e 020f0">${</font>
4620: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4630: 32 30 66 30 22 3e 50 41 54 48 5f 49 4e 46 4f 3c 20f0">PATH_INFO<
4640: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4650: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 3a r="#a52a2a"><b>:
4660: 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e =</b></font><fon
4670: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
4680: 22 3e 2f 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ">/</font><font
4690: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
46a0: 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 }</font><br>..<f
46b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
46c0: 32 61 22 3e 35 33 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">53 </font>&n
46d0: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
46e0: 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e color="#008b8b">
46f0: 53 43 52 49 50 54 5f 4e 41 4d 45 3c 2f 66 6f 6e SCRIPT_NAME</fon
4700: 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t>=<font color="
4710: 23 61 30 32 30 66 30 22 3e 24 53 43 52 49 50 54 #a020f0">$SCRIPT
4720: 5f 4e 41 4d 45 3c 2f 66 6f 6e 74 3e 2f 3c 66 6f _NAME</font>/<fo
4730: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
4740: 30 22 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 0">$project</fon
4750: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
4760: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 34 lor="#a52a2a">54
4770: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
4780: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
4790: 22 23 30 30 38 62 38 62 22 3e 54 45 4d 50 46 49 "#008b8b">TEMPFI
47a0: 4c 45 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 LE</font>=<font
47b0: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
47c0: 60 6d 6b 74 65 6d 70 20 2f 74 6d 70 2f 66 6f 73 `mktemp /tmp/fos
47d0: 73 69 6c 2d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 sil-</font><font
47e0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
47f0: 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e >$project</font>
4800: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 <font color="#6a
4810: 35 61 63 64 22 3e 2e 58 58 58 58 58 58 60 3c 2f 5acd">.XXXXXX`</
4820: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
4830: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4840: 3e 3c 62 3e 7c 7c 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>||</b></font
4850: 3e 26 6e 62 73 70 3b 45 72 72 6f 72 20 3c 66 6f > Error <fo
4860: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
4870: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
4880: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4890: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 43 6f 75 or="#ff00ff">Cou
48a0: 6c 64 6e 27 74 20 63 72 65 61 74 65 20 74 65 6d ldn't create tem
48b0: 70 66 69 6c 65 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e pfile</font><fon
48c0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
48d0: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
48e0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
48f0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4900: 22 3e 35 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">55 </font>&nbs
4910: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
4920: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4930: 3e 74 72 61 70 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e >trap</b></font>
4940: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
4950: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
4960: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
4970: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
4980: 30 30 66 66 22 3e 72 6d 20 2d 66 20 3c 2f 66 6f 00ff">rm -f </fo
4990: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
49a0: 23 61 30 32 30 66 30 22 3e 24 54 45 4d 50 46 49 #a020f0">$TEMPFI
49b0: 4c 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 LE</font><font c
49c0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
49d0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
49e0: 6e 74 3e 26 6e 62 73 70 3b 45 58 49 54 20 51 55 nt> EXIT QU
49f0: 49 54 20 49 4e 54 20 54 45 52 4d 3c 62 72 3e 0d IT INT TERM<br>.
4a00: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
4a10: 35 32 61 32 61 22 3e 35 36 20 3c 2f 66 6f 6e 74 52a2a">56 </font
4a20: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f > <fo
4a30: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
4a40: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
4a50: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
4a60: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
4a70: 3b 72 65 70 6f 73 69 74 6f 72 79 3a 20 3c 2f 66 ;repository: </f
4a80: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4a90: 22 23 61 30 32 30 66 30 22 3e 24 72 65 70 6f 73 "#a020f0">$repos
4aa0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4ab0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 or="#ff00ff">&nb
4ac0: 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 sp;</font><font
4ad0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
4ae0: 3c 62 3e 26 67 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e <b>></b></fon
4af0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
4b00: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 54 lor="#a020f0">$T
4b10: 45 4d 50 46 49 4c 45 3c 2f 66 6f 6e 74 3e 3c 62 EMPFILE</font><b
4b20: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
4b30: 22 23 61 35 32 61 32 61 22 3e 35 37 20 3c 2f 66 "#a52a2a">57 </f
4b40: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
4b50: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4b60: 32 30 66 30 22 3e 24 46 4f 53 53 49 4c 3c 2f 66 20f0">$FOSSIL</f
4b70: 6f 6e 74 3e 26 6e 62 73 70 3b 63 67 69 20 3c 66 ont> cgi <f
4b80: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
4b90: 66 30 22 3e 24 54 45 4d 50 46 49 4c 45 3c 2f 66 f0">$TEMPFILE</f
4ba0: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
4bb0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
4bc0: 35 38 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 58 </font><font
4bd0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
4be0: 3c 62 3e 65 6c 69 66 3c 2f 62 3e 3c 2f 66 6f 6e <b>elif</b></fon
4bf0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
4c00: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4c10: 3e 5b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 >[</b></font>&nb
4c20: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
4c30: 23 61 35 32 61 32 61 22 3e 3c 62 3e 2d 7a 3c 2f #a52a2a"><b>-z</
4c40: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c b></font> <
4c50: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4c60: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
4c70: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
4c80: 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 olor="#a020f0">$
4c90: 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 project</font><f
4ca0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
4cb0: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
4cc0: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
4cd0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
4ce0: 32 61 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 2a"><b>]</b></fo
4cf0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4d00: 23 61 35 32 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 #a52a2a"><b>;</b
4d10: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
4d20: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
4d30: 32 61 22 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2a"><b>then</b><
4d40: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
4d50: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4d60: 22 3e 35 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">59 </font>&nbs
4d70: 70 3b 26 6e 62 73 70 3b 48 65 61 64 65 72 48 54 p; HeaderHT
4d80: 4d 4c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f ML<br>..<font co
4d90: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 30 lor="#a52a2a">60
4da0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
4db0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
4dc0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 "#a52a2a"><b>ech
4dd0: 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e o</b></font><fon
4de0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
4df0: 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c "> </font><
4e00: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4e10: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
4e20: 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 b></font><font c
4e30: 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 olor="#a020f0">$
4e40: 54 49 54 4c 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e TITLE</font><fon
4e50: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4e60: 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c "><b>"</b><
4e70: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
4e80: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4e90: 22 3e 36 31 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">61 </font>&nbs
4ea0: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
4eb0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4ec0: 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e >echo</b></font>
4ed0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
4ee0: 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 00ff"> </fo
4ef0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4f00: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
4f10: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f t;</b></font><fo
4f20: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4f30: 66 22 3e 26 6c 74 3b 75 6c 26 67 74 3b 3c 2f 66 f"><ul></f
4f40: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4f50: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
4f60: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 ot;</b></font><b
4f70: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
4f80: 22 23 61 35 32 61 32 61 22 3e 36 32 20 3c 2f 66 "#a52a2a">62 </f
4f90: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
4fa0: 66 69 6e 64 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 find <font color
4fb0: 3d 22 23 61 30 32 30 66 30 22 3e 24 52 45 50 4f ="#a020f0">$REPO
4fc0: 53 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 26 6e 62 73 SROOT</font>&nbs
4fd0: 70 3b 2d 6e 61 6d 65 20 3c 66 6f 6e 74 20 63 6f p;-name <font co
4fe0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4ff0: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
5000: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
5010: 66 66 30 30 66 66 22 3e 2a 3c 2f 66 6f 6e 74 3e ff00ff">*</font>
5020: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
5030: 32 30 66 30 22 3e 24 52 45 50 4f 53 45 58 54 3c 20f0">$REPOSEXT<
5040: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5050: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
5060: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
5070: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
5080: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 7c r="#a52a2a"><b>|
5090: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
50a0: 3b 5c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f ;\<br>..<font co
50b0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 33 lor="#a52a2a">63
50c0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
50d0: 62 73 70 3b 77 68 69 6c 65 20 3c 66 6f 6e 74 20 bsp;while <font
50e0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
50f0: 3c 62 3e 72 65 61 64 3c 2f 62 3e 3c 2f 66 6f 6e <b>read</b></fon
5100: 74 3e 26 6e 62 73 70 3b 72 65 70 6f 73 3c 66 6f t> repos<fo
5110: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5120: 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>;</b></fon
5130: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
5140: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5150: 3e 64 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 >do</b></font><b
5160: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
5170: 22 23 61 35 32 61 32 61 22 3e 36 34 20 3c 2f 66 "#a52a2a">64 </f
5180: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
5190: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e <fon
51a0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
51b0: 22 3e 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e ">project</font>
51c0: 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 =<font color="#6
51d0: 61 35 61 63 64 22 3e 60 62 61 73 65 6e 61 6d 65 a5acd">`basename
51e0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
51f0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 72 lor="#a020f0">$r
5200: 65 70 6f 73 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 epos</font><font
5210: 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 color="#6a5acd"
5220: 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 > </font><f
5230: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
5240: 66 30 22 3e 24 52 45 50 4f 53 45 58 54 3c 2f 66 f0">$REPOSEXT</f
5250: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
5260: 22 23 36 61 35 61 63 64 22 3e 60 3c 2f 66 6f 6e "#6a5acd">`</fon
5270: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
5280: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 35 lor="#a52a2a">65
5290: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
52a0: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
52b0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
52c0: 32 61 32 61 22 3e 3c 62 3e 69 66 20 3c 2f 62 3e 2a2a"><b>if </b>
52d0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
52e0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
52f0: 5b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 [</b></font>&nbs
5300: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
5310: 61 35 32 61 32 61 22 3e 3c 62 3e 2d 66 3c 2f 62 a52a2a"><b>-f</b
5320: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
5330: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
5340: 66 30 22 3e 24 72 65 70 6f 73 3c 2f 66 6f 6e 74 f0">$repos</font
5350: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
5360: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
5370: 2d 61 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 -a</b></font>&nb
5380: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
5390: 23 61 35 32 61 32 61 22 3e 3c 62 3e 21 3c 2f 62 #a52a2a"><b>!</b
53a0: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
53b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
53c0: 32 61 22 3e 3c 62 3e 2d 65 3c 2f 62 3e 3c 2f 66 2a"><b>-e</b></f
53d0: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
53e0: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
53f0: 24 52 45 50 4f 53 52 4f 4f 54 3c 2f 66 6f 6e 74 $REPOSROOT</font
5400: 3e 2f 2e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >/.<font color="
5410: 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 #a020f0">$projec
5420: 74 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 t</font> <f
5430: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5440: 32 61 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 2a"><b>]</b></fo
5450: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
5460: 23 61 35 32 61 32 61 22 3e 3c 62 3e 3b 3c 2f 62 #a52a2a"><b>;</b
5470: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
5480: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5490: 32 61 22 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2a"><b>then</b><
54a0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
54b0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
54c0: 22 3e 36 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">66 </font>&nbs
54d0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
54e0: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
54f0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5500: 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 2a2a"><b>echo</b
5510: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
5520: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e lor="#ff00ff">&n
5530: 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 bsp;</font><font
5540: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
5550: 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f ><b>"</b></
5560: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
5570: 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 6c ="#ff00ff"><l
5580: 69 26 67 74 3b 26 6c 74 3b 61 20 68 72 65 66 3d i><a href=
5590: 27 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f '</font><font co
55a0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 7b lor="#a020f0">${
55b0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
55c0: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 52 45 51 or="#a020f0">REQ
55d0: 55 45 53 54 5f 55 52 49 3c 2f 66 6f 6e 74 3e 3c UEST_URI</font><
55e0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
55f0: 30 66 30 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 66 6f 0f0">}</font><fo
5600: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
5610: 66 22 3e 2f 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 f">/</font><font
5620: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
5630: 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e >$project</font>
5640: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
5650: 30 30 66 66 22 3e 27 26 67 74 3b 3c 2f 66 6f 6e 00ff">'></fon
5660: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
5670: 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 a020f0">$project
5680: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
5690: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 or="#ff00ff"><
56a0: 3b 2f 61 26 67 74 3b 26 6c 74 3b 2f 6c 69 26 67 ;/a></li&g
56b0: 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 t;</font><font c
56c0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
56d0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
56e0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
56f0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 olor="#a52a2a">6
5700: 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 7 </font> &
5710: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
5720: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
5730: 35 32 61 32 61 22 3e 3c 62 3e 66 69 3c 2f 62 3e 52a2a"><b>fi</b>
5740: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
5750: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5760: 61 22 3e 36 38 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">68 </font>&nb
5770: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
5780: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
5790: 62 3e 64 6f 6e 65 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>done</b></font
57a0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
57b0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 39 20 or="#a52a2a">69
57c0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
57d0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
57e0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f #a52a2a"><b>echo
57f0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
5800: 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 color="#ff00ff"
5810: 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 > </font><f
5820: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5830: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
5840: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
5850: 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6c lor="#ff00ff">&l
5860: 74 3b 2f 75 6c 26 67 74 3b 3c 2f 66 6f 6e 74 3e t;/ul></font>
5870: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5880: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
5890: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a /b></font><br>..
58a0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
58b0: 32 61 32 61 22 3e 37 30 20 3c 2f 66 6f 6e 74 3e 2a2a">70 </font>
58c0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
58d0: 32 61 32 61 22 3e 3c 62 3e 65 6c 73 65 3c 2f 62 2a2a"><b>else</b
58e0: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 ></font><br>..<f
58f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5900: 32 61 22 3e 37 31 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">71 </font>&n
5910: 62 73 70 3b 26 6e 62 73 70 3b 45 72 72 6f 72 20 bsp; Error
5920: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5930: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
5940: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
5950: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
5960: 4e 6f 20 73 75 63 68 20 70 72 6f 6a 65 63 74 3a No such project:
5970: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
5980: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 lor="#a020f0">$p
5990: 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f roject</font><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 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
59d0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
59e0: 61 22 3e 37 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f a">72 </font><fo
59f0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5a00: 61 22 3e 3c 62 3e 66 69 3c 2f 62 3e 3c 2f 66 6f a"><b>fi</b></fo
5a10: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
5a20: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 37 olor="#a52a2a">7
5a30: 33 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 3 </font><br>..<
5a40: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
5a50: 61 32 61 22 3e 37 34 20 3c 2f 66 6f 6e 74 3e 3c a2a">74 </font><
5a60: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
5a70: 61 32 61 22 3e 3c 62 3e 65 78 69 74 3c 2f 62 3e a2a"><b>exit</b>
5a80: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
5a90: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
5aa0: 66 22 3e 30 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d f">0</font><br>.
5ab0: 0a 3c 2f 66 6f 6e 74 3e 0d 0a 3c 2f 6e 6f 77 69 .</font>..</nowi
5ac0: 6b 69 3e 0d 0a 0d 0a 3c 68 34 3e 57 69 6e 64 6f ki>....<h4>Windo
5ad0: 77 73 3c 2f 68 34 3e 0d 0a 3c 70 3e 57 68 69 6c ws</h4>..<p>Whil
5ae0: 65 20 69 74 20 69 73 20 66 61 72 20 66 72 6f 6d e it is far from
5af0: 20 61 20 70 65 72 66 65 63 74 20 73 65 74 20 6f a perfect set o
5b00: 66 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 2e f instructions..
5b10: 20 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 71 here are some q
5b20: 75 69 63 6b 20 6e 6f 74 65 73 20 74 68 61 74 20 uick notes that
5b30: 73 68 6f 75 6c 64 20 68 65 6c 70 20 77 69 6e 64 should help wind
5b40: 6f 77 73 20 75 73 65 72 73 20 61 6c 6f 6e 67 20 ows users along
5b50: 74 68 65 20 77 61 79 2e 2e 2e 3c 2f 70 3e 0d 0a the way...</p>..
5b60: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 79 6f 75 20 6e 65 <ul>..<li>you ne
5b70: 65 64 20 66 6f 73 73 69 6c 2e 65 78 65 20 61 63 ed fossil.exe ac
5b80: 63 65 73 73 69 62 6c 65 20 62 79 20 79 6f 75 72 cessible by your
5b90: 20 77 65 62 20 73 65 72 76 65 72 20 6f 72 20 6f web server or o
5ba0: 6e 20 79 6f 75 72 20 70 61 74 68 2e 2e 20 65 61 n your path.. ea
5bb0: 73 69 65 73 74 20 69 73 20 74 6f 20 6a 75 73 74 siest is to just
5bc0: 20 63 68 75 63 6b 20 69 74 20 69 6e 20 5c 25 53 chuck it in \%S
5bd0: 59 53 54 45 4d 5f 52 4f 4f 54 25 5c 20 28 75 73 YSTEM_ROOT%\ (us
5be0: 75 61 6c 6c 79 20 63 3a 5c 77 69 6e 64 6f 77 73 ually c:\windows
5bf0: 5c 29 20 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 73 \) </li>..<li>as
5c00: 73 75 6d 69 6e 67 20 79 6f 75 20 61 72 65 20 72 suming you are r
5c10: 75 6e 6e 69 6e 67 20 61 70 61 63 68 65 2c 20 79 unning apache, y
5c20: 6f 75 20 6e 65 65 64 20 74 6f 20 65 69 74 68 65 ou need to eithe
5c30: 72 20 61 64 64 20 74 68 65 20 45 78 65 63 43 47 r add the ExecCG
5c40: 49 20 74 6f 20 74 68 65 20 6f 70 74 69 6f 6e 73 I to the options
5c50: 20 6f 6e 20 79 6f 75 72 20 44 6f 63 75 6d 65 6e on your Documen
5c60: 74 52 6f 6f 74 2c 20 6f 72 20 6d 61 6b 65 20 73 tRoot, or make s
5c70: 75 72 65 20 74 68 65 20 53 63 72 69 70 74 41 6c ure the ScriptAl
5c80: 69 61 73 20 64 69 72 65 63 74 69 76 65 20 69 73 ias directive is
5c90: 20 73 65 74 20 61 6e 64 20 70 75 74 20 79 6f 75 set and put you
5ca0: 72 20 2e 63 67 69 20 66 69 6c 65 73 20 69 6e 20 r .cgi files in
5cb0: 74 68 61 74 20 66 6f 6c 64 65 72 2e 2e 3c 2f 6c that folder..</l
5cc0: 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 63 6f 6e 74 i>..<li>the cont
5cd0: 65 6e 74 73 20 6f 66 20 79 6f 75 72 20 63 67 69 ents of your cgi
5ce0: 20 66 69 6c 65 20 6e 65 65 64 73 20 74 6f 20 65 file needs to e
5cf0: 73 73 65 6e 74 69 61 6c 6c 79 20 74 68 65 20 73 ssentially the s
5d00: 61 6d 65 20 61 73 20 61 62 6f 76 65 2e 2e 20 68 ame as above.. h
5d10: 6f 77 65 76 65 72 20 70 61 74 68 73 20 6e 65 65 owever paths nee
5d20: 64 73 20 74 6f 20 62 65 20 77 69 6e 64 6f 77 73 ds to be windows
5d30: 20 66 72 69 65 6e 64 6c 79 2e 2e 20 69 20 68 61 friendly.. i ha
5d40: 76 65 20 6d 61 64 65 20 73 75 72 65 20 74 68 61 ve made sure tha
5d50: 74 20 61 6c 6c 20 66 6f 6c 64 65 72 73 20 6f 6e t all folders on
5d60: 20 6d 79 20 74 65 73 74 20 62 6f 78 20 61 72 65 my test box are
5d70: 20 66 72 65 65 20 6f 66 20 73 70 61 63 65 73 2c free of spaces,
5d80: 20 61 6e 64 20 61 73 20 73 75 63 68 20 74 68 69 and as such thi
5d90: 73 20 66 69 6c 65 20 77 6f 72 6b 73 20 66 6f 72 s file works for
5da0: 20 6d 65 20 28 6f 62 76 69 6f 75 73 6c 79 20 79 me (obviously y
5db0: 6f 75 72 20 70 61 74 68 73 20 6d 61 79 20 64 69 our paths may di
5dc0: 66 66 65 72 29 0d 0a 3c 70 72 65 3e 0d 0a 23 21 ffer)..<pre>..#!
5dd0: 20 66 6f 73 73 69 6c 2e 65 78 65 0d 0a 72 65 70 fossil.exe..rep
5de0: 6f 73 69 74 6f 72 79 3a 20 63 3a 2f 77 61 6d 70 ository: c:/wamp
5df0: 2f 77 77 77 2f 64 65 76 2f 61 63 63 6f 75 6e 74 /www/dev/account
5e00: 73 2e 66 6f 73 73 69 6c 0d 0a 3c 2f 70 72 65 3e s.fossil..</pre>
5e10: 0d 0a 49 20 73 75 70 70 6f 73 65 20 79 6f 75 20 ..I suppose you
5e20: 63 6f 75 6c 64 20 70 75 74 20 66 6f 73 73 69 6c could put fossil
5e30: 2e 65 78 65 20 73 6f 6d 65 77 68 65 72 65 20 6d .exe somewhere m
5e40: 6f 72 65 20 73 70 65 63 69 66 69 63 20 61 6e 64 ore specific and
5e50: 20 73 65 74 20 74 68 65 20 70 61 74 68 20 74 6f set the path to
5e60: 20 69 74 20 61 73 20 77 65 6c 6c 2c 20 62 75 74 it as well, but
5e70: 20 73 69 6e 63 65 20 79 6f 75 20 61 72 65 20 70 since you are p
5e80: 72 6f 62 61 62 6c 79 20 75 73 69 6e 67 20 74 68 robably using th
5e90: 65 20 73 61 6d 65 20 65 78 65 63 75 74 61 62 6c e same executabl
5ea0: 65 20 66 6f 72 20 63 6d 64 6c 69 6e 65 20 61 6e e for cmdline an
5eb0: 64 20 63 67 69 20 69 74 20 6b 69 6e 64 20 6f 66 d cgi it kind of
5ec0: 20 6a 75 73 74 20 6d 61 6b 65 73 20 73 65 6e 73 just makes sens
5ed0: 65 20 74 6f 20 70 75 74 20 69 74 20 73 6f 6d 65 e to put it some
5ee0: 77 68 65 72 65 20 6d 6f 72 65 20 61 63 63 65 73 where more acces
5ef0: 73 69 62 6c 65 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e sible</li>..<li>
5f00: 41 73 20 77 69 74 68 20 6d 6f 73 74 20 57 69 6e As with most Win
5f10: 64 6f 77 73 20 62 61 73 65 64 20 77 65 62 20 69 dows based web i
5f20: 6e 73 74 72 75 63 74 69 6f 6e 73 2c 20 70 65 72 nstructions, per
5f30: 6d 69 73 73 69 6f 6e 20 61 72 65 20 6e 6f 74 20 mission are not
5f40: 61 73 20 69 6d 70 6f 72 74 61 6e 74 2c 20 68 6f as important, ho
5f50: 77 65 76 65 72 20 61 74 20 74 68 65 20 6c 65 61 wever at the lea
5f60: 73 74 2c 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 st, you need to
5f70: 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 79 make sure that y
5f80: 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 79 20 69 our repository i
5f90: 73 20 6e 6f 74 20 66 6c 61 67 67 65 64 20 72 65 s not flagged re
5fa0: 61 64 2d 6f 6e 6c 79 2c 20 61 73 20 79 6f 75 20 ad-only, as you
5fb0: 77 69 6c 6c 20 65 6e 63 6f 75 6e 74 65 72 20 64 will encounter d
5fc0: 61 74 61 62 61 73 65 20 65 72 72 6f 72 73 20 69 atabase errors i
5fd0: 66 20 69 74 20 69 73 2e 3c 2f 6c 69 3e 0d 0a 3c f it is.</li>..<
5fe0: 2f 75 6c 3e 0d 0a 0d 0a 3c 68 33 3e 44 69 73 63 /ul>....<h3>Disc
5ff0: 75 73 73 69 6f 6e 3c 2f 68 33 3e 0d 0a 55 73 69 ussion</h3>..Usi
6000: 6e 67 20 74 68 65 20 43 47 49 20 73 65 72 76 65 ng the CGI serve
6010: 72 20 69 73 20 74 68 65 20 62 65 73 74 20 73 6f r is the best so
6020: 6c 75 74 69 6f 6e 20 63 6f 6d 62 69 6e 69 6e 67 lution combining
6030: 20 61 6e 20 65 78 69 73 74 69 6e 67 20 77 65 62 an existing web
6040: 20 69 6e 66 72 61 73 74 72 75 63 74 75 72 65 20 infrastructure
6050: 61 6e 64 20 74 68 65 20 73 68 61 72 69 6e 67 20 and the sharing
6060: 6f 66 20 6d 61 6e 79 20 3c 63 69 74 65 3e 46 6f of many <cite>Fo
6070: 73 73 69 6c 3c 2f 63 69 74 65 3e 20 72 65 70 6f ssil</cite> repo
6080: 73 69 74 6f 72 69 65 73 2e 20 20 55 6e 6c 69 6b sitories. Unlik
6090: 65 20 74 68 65 20 61 64 2d 68 6f 63 20 73 6f 6c e the ad-hoc sol
60a0: 75 74 69 6f 6e 20 77 68 69 63 68 20 72 65 71 75 ution which requ
60b0: 69 72 65 73 2c 20 69 6e 20 65 66 66 65 63 74 2c ires, in effect,
60c0: 20 61 20 73 65 70 61 72 61 74 65 20 70 6f 72 74 a separate port
60d0: 20 66 6f 72 20 65 61 63 68 20 73 69 6d 75 6c 74 for each simult
60e0: 61 6e 65 6f 75 73 6c 79 2d 73 68 61 72 65 64 20 aneously-shared
60f0: 72 65 70 6f 73 69 74 6f 72 79 2c 20 61 6e 64 20 repository, and
6100: 77 68 69 63 68 20 72 65 71 75 69 72 65 73 20 73 which requires s
6110: 65 76 65 72 61 6c 20 69 6e 73 74 61 6e 63 65 73 everal instances
6120: 20 6f 66 20 66 6f 73 73 69 6c 20 72 75 6e 6e 69 of fossil runni
6130: 6e 67 20 2d 2d 20 6f 6e 65 20 66 6f 72 20 65 61 ng -- one for ea
6140: 63 68 20 73 68 61 72 65 64 20 72 65 70 6f 73 69 ch shared reposi
6150: 74 6f 72 79 20 2d 2d 20 74 68 65 20 43 47 49 20 tory -- the CGI
6160: 61 70 70 72 6f 61 63 68 20 75 73 65 73 20 55 52 approach uses UR
6170: 4c 73 20 74 6f 20 64 69 73 74 69 6e 67 75 69 73 Ls to distinguis
6180: 68 20 62 65 74 77 65 65 6e 20 72 65 70 6f 73 69 h between reposi
6190: 74 6f 72 69 65 73 20 61 6e 64 20 6f 6e 6c 79 20 tories and only
61a0: 28 62 72 69 65 66 6c 79 29 20 72 75 6e 73 20 61 (briefly) runs a
61b0: 20 63 6f 70 79 20 6f 66 20 66 6f 73 73 69 6c 20 copy of fossil
61c0: 77 68 65 6e 20 74 68 65 20 72 65 70 6f 73 69 74 when the reposit
61d0: 6f 72 79 20 69 73 20 61 63 74 75 61 6c 6c 79 20 ory is actually
61e0: 61 63 63 65 73 73 65 64 2e 0d 0a 0d 0a 53 68 61 accessed.....Sha
61f0: 72 69 6e 67 20 72 65 70 6f 73 69 74 6f 72 69 65 ring repositorie
6200: 73 20 77 69 74 68 20 43 47 49 20 69 73 20 72 65 s with CGI is re
6210: 61 6c 6c 79 20 6f 6e 6c 79 20 77 6f 72 74 68 20 ally only worth
6220: 74 68 65 20 65 66 66 6f 72 74 20 69 66 20 6d 6f the effort if mo
6230: 72 65 20 74 68 61 6e 20 6f 6e 65 20 72 65 70 6f re than one repo
6240: 73 69 74 6f 72 79 20 69 73 20 62 65 69 6e 67 20 sitory is being
6250: 73 68 61 72 65 64 2c 20 68 6f 77 65 76 65 72 2e shared, however.
6260: 20 20 57 69 74 68 20 6f 6e 6c 79 20 6f 6e 65 20 With only one
6270: 62 65 69 6e 67 20 73 68 61 72 65 64 2c 20 3c 63 being shared, <c
6280: 6f 64 65 3e 66 6f 73 73 69 6c 20 73 65 72 76 65 ode>fossil serve
6290: 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 69 6b 65 r</code> is like
62a0: 6c 79 20 6d 6f 72 65 20 74 68 61 6e 20 61 64 65 ly more than ade
62b0: 71 75 61 74 65 20 6f 72 20 74 68 65 20 75 73 65 quate or the use
62c0: 20 6f 66 20 28 78 29 69 6e 65 74 64 20 6d 61 79 of (x)inetd may
62d0: 20 62 65 20 69 6e 64 69 63 61 74 65 64 2e 20 20 be indicated.
62e0: 49 66 2c 20 68 6f 77 65 76 65 72 2c 20 74 68 65 If, however, the
62f0: 72 65 20 69 73 20 61 6c 72 65 61 64 79 20 61 6e re is already an
6300: 20 65 78 69 73 74 69 6e 67 20 77 65 62 20 69 6e existing web in
6310: 66 72 61 73 74 72 75 63 74 75 72 65 20 69 6e 20 frastructure in
6320: 70 6c 61 63 65 2c 20 43 47 49 20 73 74 69 6c 6c place, CGI still
6330: 20 6d 61 79 20 62 65 20 70 72 65 66 65 72 72 65 may be preferre
6340: 64 20 69 66 20 6f 6e 6c 79 20 66 6f 72 20 63 6f d if only for co
6350: 6e 73 69 73 74 65 6e 63 79 20 61 6e 64 20 6d 61 nsistency and ma
6360: 69 6e 74 61 69 6e 61 62 69 6c 69 74 79 20 6f 66 intainability of
6370: 20 74 68 65 20 73 79 73 74 65 6d 20 61 73 20 61 the system as a
6380: 20 77 68 6f 6c 65 2e 0d 0a 0d 0a 3c 68 32 3e 3c whole.....<h2><
6390: 61 20 6e 61 6d 65 3d 22 65 6e 76 22 3e 55 73 69 a name="env">Usi
63a0: 6e 67 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 ng Environment v
63b0: 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 68 32 ariables</a></h2
63c0: 3e 0d 0a 3c 68 33 3e 4d 6f 74 69 76 61 74 69 6f >..<h3>Motivatio
63d0: 6e 3c 2f 68 33 3e 0d 0a 20 20 2a 20 20 57 61 6e n</h3>.. * Wan
63e0: 74 20 74 6f 20 75 73 65 20 61 20 64 69 66 66 65 t to use a diffe
63f0: 72 65 6e 74 20 65 64 69 74 6f 72 20 66 6f 72 20 rent editor for
6400: 63 68 65 63 6b 69 6e 73 20 28 55 6e 69 78 2f 57 checkins (Unix/W
6410: 69 6e 64 6f 77 73 29 0d 0a 20 20 2a 20 20 55 73 indows).. * Us
6420: 65 20 61 20 70 72 6f 78 79 20 69 66 20 79 6f 75 e a proxy if you
6430: 20 61 72 65 20 62 65 68 69 6e 64 20 61 20 66 69 are behind a fi
6440: 72 65 77 61 6c 6c 0d 0a 0d 0a 3c 68 33 3e 53 6f rewall....<h3>So
6450: 6c 75 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 45 6e 76 lution</h3>..Env
6460: 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c ironment variabl
6470: 65 73 20 61 72 65 20 75 73 65 64 20 74 6f 20 63 es are used to c
6480: 75 73 74 6f 6d 69 7a 65 20 73 6f 6d 65 20 70 72 ustomize some pr
6490: 6f 67 72 61 6d 6d 65 20 62 65 68 61 76 69 6f 75 ogramme behaviou
64a0: 72 2e 20 4f 6e 20 4c 69 6e 75 78 2f 55 6e 69 78 r. On Linux/Unix
64b0: 20 74 68 65 79 20 63 61 6e 20 62 65 20 73 65 74 they can be set
64c0: 20 69 6e 20 79 6f 75 20 7e 2f 2e 62 61 73 68 72 in you ~/.bashr
64d0: 63 20 6f 72 20 65 76 65 6e 20 6f 6e 20 63 6f 6d c or even on com
64e0: 6d 61 6e 64 20 6c 69 6e 65 2e 20 4f 6e 20 57 69 mand line. On Wi
64f0: 6e 64 6f 77 73 20 74 68 65 79 20 63 61 6e 20 62 ndows they can b
6500: 65 20 73 65 74 20 69 6e 20 74 68 65 20 73 79 73 e set in the sys
6510: 74 65 6d 20 73 65 74 74 69 6e 67 73 2e 0d 0a 0d tem settings....
6520: 0a 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 .<cite>Fossil</c
6530: 69 74 65 3e 20 63 68 65 63 6b 73 20 74 68 65 20 ite> checks the
6540: 66 6f 6c 6c 6f 77 69 6e 67 20 65 6e 76 69 72 6f following enviro
6550: 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 3a nment variables:
6560: 0d 0a 20 20 2a 20 20 56 49 53 55 41 4c 2f 45 44 .. * VISUAL/ED
6570: 49 54 4f 52 0d 0a 20 20 2a 20 20 68 74 74 70 5f ITOR.. * http_
6580: 70 72 6f 78 79 0d 0a 20 20 2a 20 20 54 4d 50 5f proxy.. * TMP_
6590: 44 49 52 0d 0a 20 20 2a 20 20 47 41 54 45 57 41 DIR.. * GATEWA
65a0: 59 5f 49 4e 54 45 52 46 41 43 45 0d 0a 20 20 2a Y_INTERFACE.. *
65b0: 20 20 53 51 4c 49 54 45 5f 46 4f 52 43 45 5f 50 SQLITE_FORCE_P
65c0: 52 4f 58 59 5f 4c 4f 43 4b 49 4e 47 0d 0a 20 20 ROXY_LOCKING..
65d0: 2a 20 20 55 53 45 52 0d 0a 20 20 2a 20 20 55 53 * USER.. * US
65e0: 45 52 4e 41 4d 45 0d 0a 0d 0a 3c 62 3e 56 49 53 ERNAME....<b>VIS
65f0: 55 41 4c 2f 45 44 49 54 4f 52 3c 2f 62 3e 20 63 UAL/EDITOR</b> c
6600: 6f 6e 74 61 69 6e 20 74 68 65 20 65 64 69 74 6f ontain the edito
6610: 72 20 6f 66 20 79 6f 75 72 20 63 68 6f 69 63 65 r of your choice
6620: 20 74 68 61 74 20 69 73 20 75 73 65 64 20 74 6f that is used to
6630: 20 77 72 69 74 65 20 74 68 65 20 63 6f 6d 6d 69 write the commi
6640: 74 20 66 69 6c 65 2e 0d 0a 0d 0a 3c 62 3e 54 4d t file.....<b>TM
6650: 50 5f 44 49 52 3c 2f 62 3e 20 73 70 65 63 69 66 P_DIR</b> specif
6660: 69 65 73 20 74 68 65 20 64 69 72 65 63 74 6f 72 ies the director
6670: 79 20 66 6f 72 20 74 65 6d 70 6f 72 61 72 79 20 y for temporary
6680: 66 69 6c 65 73 2e 0d 0a 0d 0a 3c 62 3e 47 41 54 files.....<b>GAT
6690: 45 57 41 59 5f 49 4e 54 45 52 46 41 43 45 3c 2f EWAY_INTERFACE</
66a0: 62 3e 20 3f 3f 3f 0d 0a 0d 0a 3c 62 3e 53 51 4c b> ???....<b>SQL
66b0: 49 54 45 5f 46 4f 52 43 45 5f 50 52 4f 58 59 5f ITE_FORCE_PROXY_
66c0: 4c 4f 43 4b 49 4e 47 3c 2f 62 3e 20 3f 3f 3f 0d LOCKING</b> ???.
66d0: 0a 0d 0a 3c 62 3e 55 53 45 52 3c 2f 62 3e 0d 0a ...<b>USER</b>..
66e0: 0d 0a 3c 62 3e 55 53 45 52 4e 41 4d 45 3c 2f 62 ..<b>USERNAME</b
66f0: 3e 0d 0a 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 >......<h2><a na
6700: 6d 65 3d 22 63 73 73 22 3e 3c 2f 61 3e 45 78 61 me="css"></a>Exa
6710: 6d 70 6c 65 20 43 53 53 3c 2f 68 32 3e 0d 0a 3c mple CSS</h2>..<
6720: 68 33 3e 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 h3>Motivation</h
6730: 33 3e 0d 0a 54 68 65 20 64 65 66 61 75 6c 74 20 3>..The default
6740: 55 49 20 6d 61 79 20 6e 6f 74 20 62 65 20 73 74 UI may not be st
6750: 79 6c 69 73 68 20 69 6e 20 65 76 65 72 79 6f 6e ylish in everyon
6760: 65 73 20 65 79 65 73 2e 0d 0a 49 74 20 69 73 20 es eyes...It is
6770: 75 70 20 74 6f 20 79 6f 75 20 74 6f 20 63 68 61 up to you to cha
6780: 6e 67 65 20 69 74 2e 20 53 65 65 20 74 68 65 20 nge it. See the
6790: 43 53 53 20 63 6f 64 65 20 62 65 6c 6f 77 20 66 CSS code below f
67a0: 72 6f 6d 20 74 68 69 73 20 73 69 74 65 20 5b 68 rom this site [h
67b0: 74 74 70 3a 2f 2f 66 6f 73 73 69 6c 2e 77 61 6e ttp://fossil.wan
67c0: 64 65 72 69 6e 67 68 6f 72 73 65 2e 6e 65 74 2f deringhorse.net/
67d0: 69 6e 64 65 78 2e 63 67 69 2f 69 6e 64 65 78 7c index.cgi/index|
67e0: 57 61 6e 64 65 72 69 6e 67 20 48 6f 72 73 65 5d Wandering Horse]
67f0: 0d 0a 0d 0a 3c 6e 6f 77 69 6b 69 3e 0d 0a 3c 70 ....<nowiki>..<p
6800: 72 65 3e 0d 0a 2f 2a 20 47 65 6e 65 72 61 6c 20 re>../* General
6810: 73 65 74 74 69 6e 67 73 20 66 6f 72 20 74 68 65 settings for the
6820: 20 65 6e 74 69 72 65 20 70 61 67 65 20 2a 2f 0d entire page */.
6830: 0a 62 6f 64 79 20 7b 0d 0a 20 20 6d 61 72 67 69 .body {.. margi
6840: 6e 3a 20 30 65 78 20 31 65 78 3b 0d 0a 20 20 70 n: 0ex 1ex;.. p
6850: 61 64 64 69 6e 67 3a 20 30 70 78 3b 0d 0a 20 20 adding: 0px;..
6860: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 background-color
6870: 3a 20 77 68 69 74 65 3b 0d 0a 20 20 66 6f 6e 74 : white;.. font
6880: 2d 66 61 6d 69 6c 79 3a 20 22 73 61 6e 73 20 73 -family: "sans s
6890: 65 72 69 66 22 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 erif";..}..../*
68a0: 4d 61 6b 65 20 74 68 65 20 6c 69 6e 6b 73 20 69 Make the links i
68b0: 6e 20 74 68 65 20 66 6f 6f 74 65 72 20 6c 65 73 n the footer les
68c0: 73 20 75 67 6c 79 2e 2e 2e 20 2a 2f 0d 0a 61 20 s ugly... */..a
68d0: 7b 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 { color: #000f6a
68e0: 3b 20 7d 0d 0a 61 3a 6c 69 6e 6b 20 7b 20 63 6f ; }..a:link { co
68f0: 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d lor: #000f6a; }.
6900: 0a 61 3a 76 69 73 69 74 65 64 20 7b 20 63 6f 6c .a:visited { col
6910: 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a or: #000f6a; }..
6920: 61 3a 68 6f 76 65 72 20 7b 20 62 61 63 6b 67 72 a:hover { backgr
6930: 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 ound-color: #e3e
6940: 33 65 33 3b 20 7d 0d 0a 0d 0a 0d 0a 68 72 20 7b 3e3; }......hr {
6950: 0d 0a 20 20 68 65 69 67 68 74 3a 20 33 70 78 3b .. height: 3px;
6960: 0d 0a 20 20 62 6f 72 64 65 72 2d 74 6f 70 3a 20 .. border-top:
6970: 6e 6f 6e 65 3b 20 2f 2a 31 70 78 20 64 61 73 68 none; /*1px dash
6980: 65 64 20 23 30 30 35 3b 2a 2f 0d 0a 20 20 62 6f ed #005;*/.. bo
6990: 72 64 65 72 2d 62 6f 74 74 6f 6d 3a 20 31 70 78 rder-bottom: 1px
69a0: 20 64 61 73 68 65 64 20 23 30 30 35 3b 0d 0a 20 dashed #005;..
69b0: 20 62 6f 72 64 65 72 2d 6c 65 66 74 3a 20 6e 6f border-left: no
69c0: 6e 65 3b 0d 0a 20 20 62 6f 72 64 65 72 2d 72 69 ne;.. border-ri
69d0: 67 68 74 3a 20 6e 6f 6e 65 3b 0d 0a 7d 0d 0a 2f ght: none;..}../
69e0: 2a 20 54 68 65 20 70 72 6f 6a 65 63 74 20 6c 6f * The project lo
69f0: 67 6f 20 69 6e 20 74 68 65 20 75 70 70 65 72 20 go in the upper
6a00: 6c 65 66 74 2d 68 61 6e 64 20 63 6f 72 6e 65 72 left-hand corner
6a10: 20 6f 66 20 65 61 63 68 20 70 61 67 65 20 2a 2f of each page */
6a20: 0d 0a 64 69 76 2e 6c 6f 67 6f 20 7b 0d 0a 20 20 ..div.logo {..
6a30: 64 69 73 70 6c 61 79 3a 20 74 61 62 6c 65 2d 63 display: table-c
6a40: 65 6c 6c 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 ell;.. text-ali
6a50: 67 6e 3a 20 63 65 6e 74 65 72 3b 0d 0a 20 20 76 gn: center;.. v
6a60: 65 72 74 69 63 61 6c 2d 61 6c 69 67 6e 3a 20 62 ertical-align: b
6a70: 6f 74 74 6f 6d 3b 0d 0a 20 20 63 6f 6c 6f 72 3a ottom;.. color:
6a80: 20 23 30 30 30 66 36 61 3b 0d 0a 7d 0d 0a 0d 0a #000f6a;..}....
6a90: 2f 2a 20 54 68 65 20 70 61 67 65 20 74 69 74 6c /* The page titl
6aa0: 65 20 63 65 6e 74 65 72 65 64 20 61 74 20 74 68 e centered at th
6ab0: 65 20 74 6f 70 20 6f 66 20 65 61 63 68 20 70 61 e top of each pa
6ac0: 67 65 20 2a 2f 0d 0a 64 69 76 2e 74 69 74 6c 65 ge */..div.title
6ad0: 20 7b 0d 0a 20 20 64 69 73 70 6c 61 79 3a 20 74 {.. display: t
6ae0: 61 62 6c 65 2d 63 65 6c 6c 3b 0d 0a 20 20 66 6f able-cell;.. fo
6af0: 6e 74 2d 73 69 7a 65 3a 20 32 65 6d 3b 0d 0a 20 nt-size: 2em;..
6b00: 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f font-weight: bo
6b10: 6c 64 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 ld;.. text-alig
6b20: 6e 3a 20 63 65 6e 74 65 72 3b 0d 0a 20 20 63 6f n: center;.. co
6b30: 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 lor: #000f6a;..
6b40: 20 76 65 72 74 69 63 61 6c 2d 61 6c 69 67 6e 3a vertical-align:
6b50: 20 62 6f 74 74 6f 6d 3b 0d 0a 20 20 77 69 64 74 bottom;.. widt
6b60: 68 3a 20 31 30 30 25 3b 0d 0a 7d 0d 0a 0d 0a 2f h: 100%;..}..../
6b70: 2a 20 54 68 65 20 6c 6f 67 69 6e 20 73 74 61 74 * The login stat
6b80: 75 73 20 6d 65 73 73 61 67 65 20 69 6e 20 74 68 us message in th
6b90: 65 20 74 6f 70 20 72 69 67 68 74 2d 68 61 6e 64 e top right-hand
6ba0: 20 63 6f 72 6e 65 72 20 2a 2f 0d 0a 64 69 76 2e corner */..div.
6bb0: 73 74 61 74 75 73 20 7b 0d 0a 20 20 64 69 73 70 status {.. disp
6bc0: 6c 61 79 3a 20 74 61 62 6c 65 2d 63 65 6c 6c 3b lay: table-cell;
6bd0: 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 .. text-align:
6be0: 72 69 67 68 74 3b 0d 0a 20 20 76 65 72 74 69 63 right;.. vertic
6bf0: 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f 74 74 6f 6d al-align: bottom
6c00: 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 ;.. color: #000
6c10: 66 36 61 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a f6a;.. font-siz
6c20: 65 3a 20 30 2e 38 65 6d 3b 0d 0a 7d 0d 0a 0d 0a e: 0.8em;..}....
6c30: 2f 2a 20 54 68 65 20 68 65 61 64 65 72 20 61 63 /* The header ac
6c40: 72 6f 73 73 20 74 68 65 20 74 6f 70 20 6f 66 20 ross the top of
6c50: 74 68 65 20 70 61 67 65 20 2a 2f 0d 0a 64 69 76 the page */..div
6c60: 2e 68 65 61 64 65 72 20 7b 0d 0a 20 20 64 69 73 .header {.. dis
6c70: 70 6c 61 79 3a 20 74 61 62 6c 65 3b 0d 0a 20 20 play: table;..
6c80: 77 69 64 74 68 3a 20 31 30 30 25 3b 0d 0a 20 20 width: 100%;..
6c90: 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 text-align: cent
6ca0: 65 72 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 er;..}..../* The
6cb0: 20 6d 61 69 6e 20 6d 65 6e 75 20 62 61 72 20 74 main menu bar t
6cc0: 68 61 74 20 61 70 70 65 61 72 73 20 61 74 20 74 hat appears at t
6cd0: 68 65 20 74 6f 70 20 6f 66 20 74 68 65 20 70 61 he top of the pa
6ce0: 67 65 20 62 65 6e 65 61 74 68 0d 0a 2a 2a 20 74 ge beneath..** t
6cf0: 68 65 20 68 65 61 64 65 72 20 2a 2f 0d 0a 64 69 he header */..di
6d00: 76 2e 6d 61 69 6e 6d 65 6e 75 20 7b 0d 0a 20 20 v.mainmenu {..
6d10: 70 61 64 64 69 6e 67 3a 20 32 70 78 20 35 70 78 padding: 2px 5px
6d20: 20 32 70 78 20 35 70 78 3b 0d 0a 20 20 66 6f 6e 2px 5px;.. fon
6d30: 74 2d 73 69 7a 65 3a 20 30 2e 39 65 6d 3b 0d 0a t-size: 0.9em;..
6d40: 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 text-align: ce
6d50: 6e 74 65 72 3b 0d 0a 20 20 6c 65 74 74 65 72 2d nter;.. letter-
6d60: 73 70 61 63 69 6e 67 3a 20 31 70 78 3b 0d 0a 20 spacing: 1px;..
6d70: 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f background-colo
6d80: 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 63 r: #e3e3e3;.. c
6d90: 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a olor: #000f6a;..
6da0: 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 69 6e border: 1px in
6db0: 73 65 74 20 62 6c 61 63 6b 3b 0d 0a 7d 0d 0a 0d set black;..}...
6dc0: 0a 2f 2a 20 54 68 65 20 73 75 62 6d 65 6e 75 20 ./* The submenu
6dd0: 62 61 72 20 74 68 61 74 20 2a 73 6f 6d 65 74 69 bar that *someti
6de0: 6d 65 73 2a 20 61 70 70 65 61 72 73 20 62 65 6c mes* appears bel
6df0: 6f 77 20 74 68 65 20 6d 61 69 6e 20 6d 65 6e 75 ow the main menu
6e00: 20 2a 2f 0d 0a 64 69 76 2e 73 75 62 6d 65 6e 75 */..div.submenu
6e10: 20 7b 0d 0a 20 20 70 61 64 64 69 6e 67 3a 20 32 {.. padding: 2
6e20: 70 78 20 35 70 78 20 32 70 78 20 35 70 78 3b 0d px 5px 2px 5px;.
6e30: 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e . font-size: 0.
6e40: 39 65 6d 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 69 9em;.. text-ali
6e50: 67 6e 3a 20 63 65 6e 74 65 72 3b 0d 0a 20 20 62 gn: center;.. b
6e60: 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a ackground-color:
6e70: 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 63 6f 6c #e3e3e3;.. col
6e80: 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a 7d 0d or: #000f6a;..}.
6e90: 0a 64 69 76 2e 6d 61 69 6e 6d 65 6e 75 20 61 2c .div.mainmenu a,
6ea0: 20 64 69 76 2e 6d 61 69 6e 6d 65 6e 75 20 61 3a div.mainmenu a:
6eb0: 76 69 73 69 74 65 64 2c 20 64 69 76 2e 73 75 62 visited, div.sub
6ec0: 6d 65 6e 75 20 61 2c 20 64 69 76 2e 73 75 62 6d menu a, div.subm
6ed0: 65 6e 75 20 61 3a 76 69 73 69 74 65 64 20 7b 0d enu a:visited {.
6ee0: 0a 20 20 70 61 64 64 69 6e 67 3a 20 32 70 78 20 . padding: 2px
6ef0: 31 30 70 78 20 32 70 78 20 31 30 70 78 3b 0d 0a 10px 2px 10px;..
6f00: 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 color: #000f6a
6f10: 3b 0d 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d ;.. background-
6f20: 63 6f 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d color: #e3e3e3;.
6f30: 0a 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 . text-decorati
6f40: 6f 6e 3a 20 6e 6f 6e 65 3b 0d 0a 7d 0d 0a 64 69 on: none;..}..di
6f50: 76 2e 6d 61 69 6e 6d 65 6e 75 20 61 3a 68 6f 76 v.mainmenu a:hov
6f60: 65 72 2c 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 er, div.submenu
6f70: 61 3a 68 6f 76 65 72 20 7b 0d 0a 20 20 63 6f 6c a:hover {.. col
6f80: 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 20 or: #e3e3e3;..
6f90: 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 background-color
6fa0: 3a 20 23 30 30 30 66 36 61 3b 0d 0a 7d 0d 0a 0d : #000f6a;..}...
6fb0: 0a 2f 2a 20 41 6c 6c 20 70 61 67 65 20 63 6f 6e ./* All page con
6fc0: 74 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 62 6f tent from the bo
6fd0: 74 74 6f 6d 20 6f 66 20 74 68 65 20 6d 65 6e 75 ttom of the menu
6fe0: 20 6f 72 20 73 75 62 6d 65 6e 75 20 64 6f 77 6e or submenu down
6ff0: 20 74 6f 0d 0a 2a 2a 20 74 68 65 20 66 6f 6f 74 to..** the foot
7000: 65 72 20 2a 2f 0d 0a 64 69 76 2e 63 6f 6e 74 65 er */..div.conte
7010: 6e 74 20 7b 0d 0a 20 20 70 61 64 64 69 6e 67 3a nt {.. padding:
7020: 20 30 65 78 20 31 65 78 20 30 65 78 20 32 65 78 0ex 1ex 0ex 2ex
7030: 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 53 6f 6d 65 20 ;..}..../* Some
7040: 70 61 67 65 73 20 68 61 76 65 20 73 65 63 74 69 pages have secti
7050: 6f 6e 20 64 69 76 69 64 65 72 73 20 2a 2f 0d 0a on dividers */..
7060: 64 69 76 2e 73 65 63 74 69 6f 6e 20 7b 0d 0a 20 div.section {..
7070: 20 6d 61 72 67 69 6e 2d 62 6f 74 74 6f 6d 3a 20 margin-bottom:
7080: 30 70 78 3b 0d 0a 20 20 6d 61 72 67 69 6e 2d 74 0px;.. margin-t
7090: 6f 70 3a 20 31 65 6d 3b 0d 0a 20 20 70 61 64 64 op: 1em;.. padd
70a0: 69 6e 67 3a 20 31 70 78 20 31 70 78 20 31 70 78 ing: 1px 1px 1px
70b0: 20 31 70 78 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 1px;.. font-si
70c0: 7a 65 3a 20 31 2e 32 65 6d 3b 0d 0a 20 20 66 6f ze: 1.2em;.. fo
70d0: 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b nt-weight: bold;
70e0: 0d 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 .. background-c
70f0: 6f 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a olor: #e3e3e3;..
7100: 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 color: #000f6a
7110: 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 22 ;..}..../* The "
7120: 44 61 74 65 22 20 74 68 61 74 20 6f 63 63 75 72 Date" that occur
7130: 73 20 6f 6e 20 74 68 65 20 6c 65 66 74 20 68 61 s on the left ha
7140: 6e 64 20 73 69 64 65 20 6f 66 20 74 69 6d 65 6c nd side of timel
7150: 69 6e 65 73 20 2a 2f 0d 0a 64 69 76 2e 64 69 76 ines */..div.div
7160: 69 64 65 72 20 7b 0d 0a 20 20 62 61 63 6b 67 72 ider {.. backgr
7170: 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 ound-color: #e3e
7180: 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 3e3;.. color: #
7190: 30 30 30 66 36 61 3b 0d 0a 20 20 62 6f 72 64 65 000f6a;.. borde
71a0: 72 3a 20 31 70 78 20 23 62 62 62 62 66 66 20 73 r: 1px #bbbbff s
71b0: 6f 6c 69 64 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 olid;.. font-si
71c0: 7a 65 3a 20 31 65 6d 3b 20 66 6f 6e 74 2d 77 65 ze: 1em; font-we
71d0: 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0d 0a 20 ight: normal;..
71e0: 20 70 61 64 64 69 6e 67 3a 20 2e 32 35 65 6d 3b padding: .25em;
71f0: 0d 0a 20 20 6d 61 72 67 69 6e 3a 20 2e 32 65 6d .. margin: .2em
7200: 20 30 20 2e 32 65 6d 20 30 3b 0d 0a 20 20 66 6c 0 .2em 0;.. fl
7210: 6f 61 74 3a 20 6c 65 66 74 3b 0d 0a 20 20 63 6c oat: left;.. cl
7220: 65 61 72 3a 20 6c 65 66 74 3b 0d 0a 7d 0d 0a 0d ear: left;..}...
7230: 0a 2f 2a 20 54 68 65 20 66 6f 6f 74 65 72 20 61 ./* The footer a
7240: 74 20 74 68 65 20 76 65 72 79 20 62 6f 74 74 6f t the very botto
7250: 6d 20 6f 66 20 74 68 65 20 70 61 67 65 20 2a 2f m of the page */
7260: 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 20 7b 0d 0a ..div.footer {..
7270: 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e 38 font-size: 0.8
7280: 65 6d 3b 0d 0a 20 20 70 61 64 64 69 6e 67 3a 20 em;.. padding:
7290: 32 70 78 20 35 70 78 20 32 70 78 20 35 70 78 3b 2px 5px 2px 5px;
72a0: 0d 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 .. text-align:
72b0: 63 65 6e 74 65 72 3b 0d 0a 20 20 6c 65 74 74 65 center;.. lette
72c0: 72 2d 73 70 61 63 69 6e 67 3a 20 31 70 78 3b 0d r-spacing: 1px;.
72d0: 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f . background-co
72e0: 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 lor: #e3e3e3;..
72f0: 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b color: #000f6a;
7300: 0d 0a 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 .. border: 1px
7310: 69 6e 73 65 74 20 62 6c 61 63 6b 3b 0d 0a 7d 0d inset black;..}.
7320: 0a 0d 0a 2f 2a 20 4d 61 6b 65 20 74 68 65 20 6c .../* Make the l
7330: 69 6e 6b 73 20 69 6e 20 74 68 65 20 66 6f 6f 74 inks in the foot
7340: 65 72 20 6c 65 73 73 20 75 67 6c 79 2e 2e 2e 20 er less ugly...
7350: 2a 2f 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 20 61 */..div.footer a
7360: 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 { color: #000f6
7370: 61 3b 20 7d 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 a; }..div.footer
7380: 20 61 3a 6c 69 6e 6b 20 7b 20 63 6f 6c 6f 72 3a a:link { color:
7390: 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a 64 69 76 #000f6a; }..div
73a0: 2e 66 6f 6f 74 65 72 20 61 3a 76 69 73 69 74 65 .footer a:visite
73b0: 64 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 d { color: #000f
73c0: 36 61 3b 20 7d 0d 0a 64 69 76 2e 66 6f 6f 74 65 6a; }..div.foote
73d0: 72 20 61 3a 68 6f 76 65 72 20 7b 20 62 61 63 6b r a:hover { back
73e0: 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 30 ground-color: #0
73f0: 30 30 66 36 61 3b 20 63 6f 6c 6f 72 3a 20 23 65 00f6a; color: #e
7400: 33 65 33 65 33 3b 20 7d 0d 0a 0d 0a 2f 2a 20 76 3e3e3; }..../* v
7410: 65 72 62 61 74 69 6d 20 62 6c 6f 63 6b 73 20 2a erbatim blocks *
7420: 2f 0d 0a 70 72 65 2e 76 65 72 62 61 74 69 6d 20 /..pre.verbatim
7430: 7b 0d 0a 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 {.. background
7440: 2d 63 6f 6c 6f 72 3a 20 23 66 35 66 35 66 35 3b -color: #f5f5f5;
7450: 0d 0a 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e .. padding: 0.
7460: 35 65 6d 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 5em;..}..../* Th
7470: 65 20 6c 61 62 65 6c 2f 76 61 6c 75 65 20 70 61 e label/value pa
7480: 69 72 73 20 6f 6e 20 28 66 6f 72 20 65 78 61 6d irs on (for exam
7490: 70 6c 65 29 20 74 68 65 20 76 69 6e 66 6f 20 70 ple) the vinfo p
74a0: 61 67 65 20 2a 2f 0d 0a 74 61 62 6c 65 2e 6c 61 age */..table.la
74b0: 62 65 6c 2d 76 61 6c 75 65 20 74 68 20 7b 0d 0a bel-value th {..
74c0: 20 20 76 65 72 74 69 63 61 6c 2d 61 6c 69 67 6e vertical-align
74d0: 3a 20 74 6f 70 3b 0d 0a 20 20 74 65 78 74 2d 61 : top;.. text-a
74e0: 6c 69 67 6e 3a 20 72 69 67 68 74 3b 0d 0a 20 20 lign: right;..
74f0: 70 61 64 64 69 6e 67 3a 20 30 2e 32 65 78 20 32 padding: 0.2ex 2
7500: 65 78 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 46 6f 72 ex;..}..../* For
7510: 20 6d 61 72 6b 69 6e 67 20 69 6d 70 6f 72 74 61 marking importa
7520: 6e 74 20 55 49 20 65 6c 65 6d 65 6e 74 73 20 77 nt UI elements w
7530: 68 69 63 68 20 73 68 6f 75 6c 64 6e 27 74 20 62 hich shouldn't b
7540: 65 0d 0a 20 20 20 6c 69 67 68 74 6c 79 20 64 69 e.. lightly di
7550: 73 6d 69 73 73 65 64 2e 20 49 20 6d 61 69 6e 6c smissed. I mainl
7560: 79 20 75 73 65 20 69 74 20 74 6f 20 6d 61 72 6b y use it to mark
7570: 20 22 6e 6f 74 20 79 65 74 0d 0a 20 20 20 69 6d "not yet.. im
7580: 70 6c 65 6d 65 6e 74 65 64 22 20 70 61 72 74 73 plemented" parts
7590: 20 6f 66 20 61 20 70 61 67 65 2e 20 57 68 65 74 of a page. Whet
75a0: 68 65 72 20 6f 72 20 6e 6f 74 20 74 6f 20 68 61 her or not to ha
75b0: 76 65 0d 0a 20 20 20 61 20 27 62 6f 72 64 65 72 ve.. a 'border
75c0: 27 20 61 74 74 72 69 62 75 74 65 20 73 65 74 20 ' attribute set
75d0: 69 73 20 61 72 67 75 61 62 6c 65 2e 20 2a 2f 0d is arguable. */.
75e0: 0a 2e 61 63 68 74 75 6e 67 20 7b 0d 0a 20 20 63 ..achtung {.. c
75f0: 6f 6c 6f 72 3a 20 23 66 66 30 30 30 30 3b 0d 0a olor: #ff0000;..
7600: 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 background: #f
7610: 66 66 66 30 30 3b 0d 0a 20 20 62 6f 72 64 65 72 fff00;.. border
7620: 3a 20 31 70 78 20 73 6f 6c 69 64 20 23 66 66 30 : 1px solid #ff0
7630: 30 30 30 3b 0d 0a 7d 0d 0a 0d 0a 74 61 62 6c 65 000;..}....table
7640: 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 .fossil_db_gener
7650: 69 63 5f 71 75 65 72 79 5f 76 69 65 77 20 7b 0d ic_query_view {.
7660: 0a 20 20 62 6f 72 64 65 72 2d 73 70 61 63 69 6e . border-spacin
7670: 67 3a 20 30 70 78 3b 0d 0a 20 20 62 6f 72 64 65 g: 0px;.. borde
7680: 72 3a 20 31 70 78 20 73 6f 6c 69 64 20 62 6c 61 r: 1px solid bla
7690: 63 6b 3b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 66 6f ck;..}..table.fo
76a0: 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f ssil_db_generic_
76b0: 71 75 65 72 79 5f 76 69 65 77 20 74 64 20 7b 0d query_view td {.
76c0: 0a 20 20 70 61 64 64 69 6e 67 3a 20 32 70 78 20 . padding: 2px
76d0: 31 65 6d 20 32 70 78 20 31 65 6d 3b 0d 0a 7d 0d 1em 2px 1em;..}.
76e0: 0a 74 61 62 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 .table.fossil_db
76f0: 5f 67 65 6e 65 72 69 63 5f 71 75 65 72 79 5f 76 _generic_query_v
7700: 69 65 77 20 74 72 20 7b 0d 0a 7d 0d 0a 74 61 62 iew tr {..}..tab
7710: 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 65 6e le.fossil_db_gen
7720: 65 72 69 63 5f 71 75 65 72 79 5f 76 69 65 77 20 eric_query_view
7730: 74 72 2e 65 76 65 6e 20 7b 0d 0a 20 20 62 61 63 tr.even {.. bac
7740: 6b 67 72 6f 75 6e 64 3a 20 23 66 66 66 66 66 66 kground: #ffffff
7750: 3b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 66 6f 73 73 ;..}..table.foss
7760: 69 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f 71 75 il_db_generic_qu
7770: 65 72 79 5f 76 69 65 77 20 74 72 2e 6f 64 64 20 ery_view tr.odd
7780: 7b 0d 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a {.. background:
7790: 20 23 65 35 65 35 65 35 3b 0d 0a 7d 0d 0a 74 61 #e5e5e5;..}..ta
77a0: 62 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 65 ble.fossil_db_ge
77b0: 6e 65 72 69 63 5f 71 75 65 72 79 5f 76 69 65 77 neric_query_view
77c0: 20 74 72 2e 68 65 61 64 65 72 20 7b 0d 0a 20 20 tr.header {..
77d0: 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 35 35 38 background: #558
77e0: 31 39 35 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 195;.. font-siz
77f0: 65 3a 20 31 2e 35 65 6d 3b 0d 0a 20 20 63 6f 6c e: 1.5em;.. col
7800: 6f 72 3a 20 23 66 66 66 66 66 66 3b 0d 0a 7d 0d or: #ffffff;..}.
7810: 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 6e 6f 77 69 6b .</pre>..</nowik
7820: 69 3e 0d 0a 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d i>..<h2><a name=
7830: 22 73 6f 75 72 63 65 2d 68 69 6c 69 67 68 74 22 "source-hilight"
7840: 3e 53 6f 75 72 63 65 20 68 69 67 68 6c 69 67 68 >Source highligh
7850: 74 69 6e 67 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c ting</a></h2>..<
7860: 68 33 3e 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 h3>Motivation</h
7870: 33 3e 0d 0a 20 20 2a 20 20 59 6f 75 20 77 61 6e 3>.. * You wan
7880: 74 20 74 6f 20 68 61 76 65 20 73 6f 75 72 63 65 t to have source
7890: 20 63 6f 64 65 20 68 69 67 68 6c 69 67 68 74 69 code highlighti
78a0: 6e 67 20 66 6f 72 20 74 68 65 20 66 69 6c 65 73 ng for the files
78b0: 20 69 6e 20 79 6f 75 72 20 72 65 70 6f 73 69 74 in your reposit
78c0: 6f 72 79 0d 0a 0d 0a 3c 68 33 3e 50 72 6f 62 6c ory....<h3>Probl
78d0: 65 6d 3c 2f 68 33 3e 0d 0a 54 68 65 20 6d 61 69 em</h3>..The mai
78e0: 6e 20 70 75 72 70 6f 73 65 20 6f 66 20 46 6f 73 n purpose of Fos
78f0: 73 69 6c 20 69 73 20 74 6f 20 64 6f 20 76 65 72 sil is to do ver
7900: 73 69 6f 6e 69 6e 67 20 74 68 65 20 73 6f 75 72 sioning the sour
7910: 63 65 20 63 6f 64 65 2e 20 41 6c 74 68 6f 75 67 ce code. Althoug
7920: 68 20 69 74 20 70 72 6f 76 69 64 65 73 20 61 20 h it provides a
7930: 73 74 61 6e 64 61 6c 6f 6e 65 20 73 65 72 76 65 standalone serve
7940: 72 20 61 6e 64 20 6c 65 74 73 20 79 6f 75 20 6e r and lets you n
7950: 61 76 69 67 61 74 65 20 74 68 72 6f 75 67 68 20 avigate through
7960: 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 66 the repository f
7970: 69 6c 65 73 20 61 64 64 69 74 69 6f 6e 61 6c 20 iles additional
7980: 66 65 61 74 75 72 65 73 20 6c 69 6b 65 20 73 6f features like so
7990: 75 72 63 65 20 63 6f 64 65 20 68 69 67 68 6c 69 urce code highli
79a0: 67 68 74 69 6e 67 20 66 72 6f 6d 20 6d 79 20 70 ghting from my p
79b0: 65 72 73 70 65 63 74 69 76 65 20 28 49 20 61 6d erspective (I am
79c0: 20 6e 6f 74 20 61 20 64 65 76 65 6c 6f 70 65 72 not a developer
79d0: 20 6f 66 20 46 6f 73 73 69 6c 29 20 69 73 20 6f of Fossil) is o
79e0: 75 74 20 6f 66 20 73 63 6f 70 65 20 66 6f 72 20 ut of scope for
79f0: 61 6e 20 53 43 4d 2e 20 4a 75 73 74 20 6b 65 65 an SCM. Just kee
7a00: 70 20 74 68 65 20 55 6e 69 78 20 70 72 69 6e 63 p the Unix princ
7a10: 69 70 6c 65 3a 20 73 6d 61 6c 6c 20 6c 69 74 74 iple: small litt
7a20: 6c 65 20 70 72 6f 67 72 61 6d 73 20 74 68 61 74 le programs that
7a30: 20 64 6f 20 74 68 65 69 72 20 74 61 73 6b 20 61 do their task a
7a40: 6e 64 20 64 6f 20 69 74 20 77 65 6c 6c 2e 0d 0a nd do it well...
7a50: 0d 0a 48 6f 77 65 76 65 72 20 74 6f 20 68 61 76 ..However to hav
7a60: 65 20 61 20 73 6f 75 72 63 65 20 63 6f 64 65 20 e a source code
7a70: 68 69 67 68 6c 69 67 68 74 69 6e 67 20 69 6e 20 highlighting in
7a80: 74 68 65 20 70 72 65 73 65 6e 74 65 64 20 77 65 the presented we
7a90: 62 20 70 61 67 65 73 20 77 6f 75 6c 64 20 73 74 b pages would st
7aa0: 69 6c 6c 20 62 65 20 64 65 73 69 72 61 62 6c 65 ill be desirable
7ab0: 2e 0d 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 69 6f .....<h3>Solutio
7ac0: 6e 3c 2f 68 33 3e 0d 0a 54 68 65 72 65 20 61 72 n</h3>..There ar
7ad0: 65 20 74 77 6f 20 73 63 65 6e 61 72 69 6f 73 20 e two scenarios
7ae0: 68 6f 77 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 how to implement
7af0: 20 73 75 63 68 20 61 20 66 65 61 74 75 72 65 3a such a feature:
7b00: 0d 0a 20 20 20 2a 20 20 46 6f 73 73 69 6c 20 70 .. * Fossil p
7b10: 69 70 65 73 20 74 68 65 20 73 6f 75 72 63 65 20 ipes the source
7b20: 63 6f 64 65 20 74 68 72 6f 75 67 68 20 61 20 66 code through a f
7b30: 69 6c 74 65 72 20 62 65 66 6f 72 65 20 73 65 6e ilter before sen
7b40: 64 69 6e 67 20 69 74 20 74 6f 20 74 68 65 20 62 ding it to the b
7b50: 72 6f 77 73 65 72 2e 20 54 68 65 20 66 69 6c 74 rowser. The filt
7b60: 65 72 20 63 6f 75 6c 64 20 62 65 20 64 65 66 69 er could be defi
7b70: 6e 65 64 20 61 73 20 61 20 63 6f 6e 66 69 67 75 ned as a configu
7b80: 72 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 20 74 6f ration option to
7b90: 20 46 6f 73 73 69 6c 2e 20 4f 6e 65 20 73 6f 6c Fossil. One sol
7ba0: 75 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 20 6d ution for this m
7bb0: 69 67 68 74 20 62 65 20 74 68 65 20 3c 61 20 68 ight be the <a h
7bc0: 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e ref="http://www.
7bd0: 67 6e 75 2e 6f 72 67 2f 73 6f 66 74 77 61 72 65 gnu.org/software
7be0: 2f 73 72 63 2d 68 69 67 68 6c 69 74 65 22 3e 47 /src-highlite">G
7bf0: 4e 55 20 53 6f 75 72 63 65 20 63 6f 64 65 20 48 NU Source code H
7c00: 69 67 68 6c 69 67 68 74 69 6e 67 3c 2f 61 3e 20 ighlighting</a>
7c10: 70 72 6f 67 72 61 6d 2e 0d 0a 20 20 20 2a 20 20 program... *
7c20: 55 73 65 20 61 20 4a 61 76 61 73 63 72 69 70 74 Use a Javascript
7c30: 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 72 65 library that re
7c40: 6e 64 65 72 73 20 74 68 65 20 63 6f 64 65 20 77 nders the code w
7c50: 69 74 68 69 6e 20 79 6f 75 72 20 62 72 6f 77 73 ithin your brows
7c60: 65 72 2e 20 4f 6e 65 20 73 6f 6c 75 74 69 6f 6e er. One solution
7c70: 20 66 6f 72 20 74 68 69 73 20 6d 69 67 68 74 20 for this might
7c80: 62 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 be <a href="http
7c90: 3a 2f 2f 63 6f 64 65 2e 67 6f 6f 67 6c 65 2e 63 ://code.google.c
7ca0: 6f 6d 2f 70 2f 73 79 6e 74 61 78 68 69 67 68 6c om/p/syntaxhighl
7cb0: 69 67 68 74 65 72 22 3e 47 6f 6f 67 6c 65 20 53 ighter">Google S
7cc0: 79 6e 74 61 78 20 48 69 67 68 6c 69 67 68 74 65 yntax Highlighte
7cd0: 72 3c 2f 61 3e 0d 0a 0d 0a 49 20 65 73 74 69 6d r</a>....I estim
7ce0: 61 74 65 20 74 68 61 74 20 74 68 65 20 3c 69 3e ate that the <i>
7cf0: 70 69 70 65 3c 2f 69 3e 20 73 6f 6c 75 74 69 6f pipe</i> solutio
7d00: 6e 20 6e 65 65 64 73 20 73 6f 6d 65 20 6d 6f 72 n needs some mor
7d10: 65 20 77 6f 72 6b 2f 20 63 6f 64 65 20 63 68 61 e work/ code cha
7d20: 6e 67 65 73 2e 20 54 68 75 73 20 49 20 61 6d 20 nges. Thus I am
7d30: 73 6f 6c 65 6c 79 20 6c 6f 6f 6b 69 6e 67 20 61 solely looking a
7d40: 74 20 74 68 65 20 4a 61 76 61 73 63 72 69 70 74 t the Javascript
7d50: 20 73 6f 6c 75 74 69 6f 6e 2e 0d 0a 0d 0a 54 68 solution.....Th
7d60: 65 20 53 79 6e 74 61 78 48 69 67 68 6c 69 67 68 e SyntaxHighligh
7d70: 74 65 72 20 69 73 20 61 20 6c 69 62 72 61 72 79 ter is a library
7d80: 20 6f 66 20 73 6f 6d 65 20 4a 61 76 61 73 63 72 of some Javascr
7d90: 69 70 74 20 66 69 6c 65 73 2c 20 61 20 6c 69 74 ipt files, a lit
7da0: 74 6c 65 20 46 6c 61 73 68 20 61 70 70 6c 69 63 tle Flash applic
7db0: 61 74 69 6f 6e 20 61 6e 64 20 61 20 43 53 53 20 ation and a CSS
7dc0: 66 69 6c 65 2e 20 54 68 65 20 46 6c 61 73 68 20 file. The Flash
7dd0: 61 70 70 6c 69 63 61 74 69 6f 6e 20 69 73 20 66 application is f
7de0: 6f 72 20 63 6f 70 79 69 6e 67 20 74 6f 20 63 6c or copying to cl
7df0: 69 70 62 6f 61 72 64 2c 20 70 72 69 6e 74 20 61 ipboard, print a
7e00: 6e 64 20 76 69 65 77 20 73 6f 75 72 63 65 2e 20 nd view source.
7e10: 59 6f 75 20 68 61 76 65 20 74 68 65 20 6f 70 74 You have the opt
7e20: 69 6f 6e 20 74 6f 20 69 6e 63 6c 75 64 65 20 61 ion to include a
7e30: 6c 6c 20 74 68 65 20 66 69 6c 65 73 20 69 6e 74 ll the files int
7e40: 6f 20 79 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 o your repositor
7e50: 79 20 6f 72 20 75 73 65 20 74 68 65 20 66 69 6c y or use the fil
7e60: 65 73 20 68 6f 73 74 65 64 20 61 74 20 47 6f 6f es hosted at Goo
7e70: 67 6c 65 2e 20 54 68 65 20 6c 61 74 74 65 72 20 gle. The latter
7e80: 6d 61 79 20 6f 6e 6c 79 20 62 65 20 61 6e 20 6f may only be an o
7e90: 70 74 69 6f 6e 20 69 66 20 79 6f 75 20 61 72 65 ption if you are
7ea0: 20 63 6f 6e 6e 65 63 74 65 64 20 74 6f 20 69 6e connected to in
7eb0: 74 65 72 6e 65 74 20 61 6c 6c 20 74 68 65 20 74 ternet all the t
7ec0: 69 6d 65 2e 0d 0a 0d 0a 46 6f 72 20 73 79 6e 74 ime.....For synt
7ed0: 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 ax highlighting
7ee0: 74 6f 20 77 6f 72 6b 20 74 68 65 20 48 65 61 64 to work the Head
7ef0: 65 72 20 61 6e 64 20 46 6f 6f 74 65 72 20 74 65 er and Footer te
7f00: 6d 70 6c 61 74 65 73 20 6e 65 65 64 20 74 6f 20 mplates need to
7f10: 62 65 20 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 be modified and
7f20: 61 20 6c 69 74 74 6c 65 20 63 6f 64 65 20 63 68 a little code ch
7f30: 61 6e 67 65 20 68 61 73 20 74 6f 20 62 65 20 61 ange has to be a
7f40: 70 70 6c 69 65 64 20 74 6f 20 74 68 65 20 46 6f pplied to the Fo
7f50: 73 73 69 6c 20 73 6f 75 72 63 65 73 2e 0d 0a 54 ssil sources...T
7f60: 68 65 20 65 78 61 6d 70 6c 65 73 20 62 65 6c 6f he examples belo
7f70: 77 20 61 73 73 75 6d 65 20 79 6f 75 20 68 61 76 w assume you hav
7f80: 65 20 61 64 64 65 64 20 74 68 65 20 73 79 6e 74 e added the synt
7f90: 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 ax highlighting
7fa0: 6c 69 62 72 61 72 79 20 74 6f 20 79 6f 75 72 20 library to your
7fb0: 72 65 70 6f 73 69 74 6f 72 79 20 69 6e 74 6f 20 repository into
7fc0: 61 20 64 69 72 65 63 74 6f 72 79 20 77 77 77 2f a directory www/
7fd0: 73 63 72 69 70 74 73 2e 0d 0a 3c 70 3e 0d 0a 3c scripts...<p>..<
7fe0: 62 3e 48 65 61 64 65 72 3c 2f 62 3e 0d 0a 3c 70 b>Header</b>..<p
7ff0: 72 65 3e 0d 0a 26 6c 74 3b 68 74 6d 6c 26 67 74 re>..<html>
8000: 3b 0d 0a 20 26 6c 74 3b 68 65 61 64 26 67 74 3b ;.. <head>
8010: 0d 0a 20 26 6c 74 3b 74 69 74 6c 65 26 67 74 3b .. <title>
8020: 24 26 6c 74 3b 70 72 6f 6a 65 63 74 5f 6e 61 6d $<project_nam
8030: 65 26 67 74 3b 3a 20 24 26 6c 74 3b 74 69 74 6c e>: $<titl
8040: 65 26 67 74 3b 26 6c 74 3b 2f 74 69 74 6c 65 26 e></title&
8050: 67 74 3b 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 gt;.. <link r
8060: 65 6c 3d 22 61 6c 74 65 72 6e 61 74 65 22 20 74 el="alternate" t
8070: 79 70 65 3d 22 61 70 70 6c 69 63 61 74 69 6f 6e ype="application
8080: 2f 72 73 73 2b 78 6d 6c 22 20 74 69 74 6c 65 3d /rss+xml" title=
8090: 22 52 53 53 20 46 65 65 64 22 0d 0a 20 20 20 20 "RSS Feed"..
80a0: 20 20 20 68 72 65 66 3d 22 24 62 61 73 65 75 72 href="$baseur
80b0: 6c 2f 74 69 6d 65 6c 69 6e 65 2e 72 73 73 22 26 l/timeline.rss"&
80c0: 67 74 3b 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 gt;.. <link r
80d0: 65 6c 3d 22 73 74 79 6c 65 73 68 65 65 74 22 20 el="stylesheet"
80e0: 68 72 65 66 3d 22 24 62 61 73 65 75 72 6c 2f 73 href="$baseurl/s
80f0: 74 79 6c 65 2e 63 73 73 22 20 74 79 70 65 3d 22 tyle.css" type="
8100: 74 65 78 74 2f 63 73 73 22 0d 0a 20 20 20 20 20 text/css"..
8110: 20 20 6d 65 64 69 61 3d 22 73 63 72 65 65 6e 22 media="screen"
8120: 26 67 74 3b 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 >.. <link
8130: 72 65 6c 3d 22 73 74 79 6c 65 73 68 65 65 74 22 rel="stylesheet"
8140: 20 68 72 65 66 3d 22 24 62 61 73 65 75 72 6c 2f href="$baseurl/
8150: 64 6f 63 2f 74 69 70 2f 77 77 77 2f 53 79 6e 74 doc/tip/www/Synt
8160: 61 78 48 69 67 68 6c 69 67 68 74 65 72 2e 63 73 axHighlighter.cs
8170: 73 22 20 74 79 70 65 3d 22 74 65 78 74 2f 63 73 s" type="text/cs
8180: 73 22 0d 0a 20 20 20 20 20 20 20 6d 65 64 69 61 s".. media
8190: 3d 22 73 63 72 65 65 6e 22 26 67 74 3b 0d 0a 20 ="screen">..
81a0: 26 6c 74 3b 2f 68 65 61 64 26 67 74 3b 0d 0a 0d </head>...
81b0: 0a 2e 20 2e 20 2e 0d 0a 3c 2f 70 72 65 3e 0d 0a .. . ...</pre>..
81c0: 3c 2f 70 3e 3c 70 3e 0d 0a 3c 62 3e 46 6f 6f 74 </p><p>..<b>Foot
81d0: 65 72 3c 2f 62 3e 0d 0a 3c 70 72 65 3e 0d 0a 26 er</b>..<pre>..&
81e0: 6c 74 3b 2f 64 69 76 26 67 74 3b 0d 0a 26 6c 74 lt;/div>..<
81f0: 3b 64 69 76 20 63 6c 61 73 73 3d 22 66 6f 6f 74 ;div class="foot
8200: 65 72 22 26 67 74 3b 0d 0a 46 6f 73 73 69 6c 20 er">..Fossil
8210: 76 65 72 73 69 6f 6e 20 24 6d 61 6e 69 66 65 73 version $manifes
8220: 74 5f 76 65 72 73 69 6f 6e 20 24 6d 61 6e 69 66 t_version $manif
8230: 65 73 74 5f 64 61 74 65 0d 0a 26 67 74 3b 2f 64 est_date..>/d
8240: 69 76 26 67 74 3b 0d 0a 26 6c 74 3b 73 63 72 69 iv>..<scri
8250: 70 74 20 6c 61 6e 67 75 61 67 65 3d 22 6a 61 76 pt language="jav
8260: 61 73 63 72 69 70 74 22 20 73 72 63 3d 22 24 62 ascript" src="$b
8270: 61 73 65 75 72 6c 2f 64 6f 63 2f 74 69 70 2f 77 aseurl/doc/tip/w
8280: 77 77 2f 73 63 72 69 70 74 73 2f 73 68 43 6f 72 ww/scripts/shCor
8290: 65 2e 6a 73 22 26 67 74 3b 26 6c 74 3b 2f 73 63 e.js"></sc
82a0: 72 69 70 74 26 67 74 3b 0d 0a 26 6c 74 3b 73 63 ript>..<sc
82b0: 72 69 70 74 20 6c 61 6e 67 75 61 67 65 3d 22 6a ript language="j
82c0: 61 76 61 73 63 72 69 70 74 22 20 73 72 63 3d 22 avascript" src="
82d0: 24 62 61 73 65 75 72 6c 2f 64 6f 63 2f 74 69 70 $baseurl/doc/tip
82e0: 2f 77 77 77 2f 73 63 72 69 70 74 73 2f 73 68 42 /www/scripts/shB
82f0: 72 75 73 68 43 70 70 2e 6a 73 22 26 67 74 3b 26 rushCpp.js">&
8300: 6c 74 3b 2f 73 63 72 69 70 74 26 67 74 3b 0d 0a lt;/script>..
8310: 26 6c 74 3b 73 63 72 69 70 74 20 6c 61 6e 67 75 <script langu
8320: 61 67 65 3d 22 6a 61 76 61 73 63 72 69 70 74 22 age="javascript"
8330: 26 67 74 3b 0d 0a 64 70 2e 53 79 6e 74 61 78 48 >..dp.SyntaxH
8340: 69 67 68 6c 69 67 68 74 65 72 2e 43 6c 69 70 62 ighlighter.Clipb
8350: 6f 61 72 64 53 77 66 20 3d 20 27 24 62 61 73 65 oardSwf = '$base
8360: 75 72 6c 2f 64 6f 63 2f 74 69 70 2f 77 77 77 2f url/doc/tip/www/
8370: 73 63 72 69 70 74 73 2f 63 6c 69 70 62 6f 61 72 scripts/clipboar
8380: 64 2e 73 77 66 27 3b 0d 0a 64 70 2e 53 79 6e 74 d.swf';..dp.Synt
8390: 61 78 48 69 67 68 6c 69 67 68 74 65 72 2e 48 69 axHighlighter.Hi
83a0: 67 68 6c 69 67 68 74 41 6c 6c 28 27 63 6f 64 65 ghlightAll('code
83b0: 27 29 3b 0d 0a 26 6c 74 3b 2f 73 63 72 69 70 74 ');..</script
83c0: 26 67 74 3b 0d 0a 26 6c 74 3b 2f 62 6f 64 79 26 >..</body&
83d0: 67 74 3b 26 6c 74 3b 2f 68 74 6d 6c 26 67 74 3b gt;</html>
83e0: 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 70 3e 3c 70 ..</pre>..</p><p
83f0: 3e 0d 0a 3c 62 3e 46 6f 73 73 69 6c 2f 73 72 63 >..<b>Fossil/src
8400: 2f 69 6e 66 6f 2e 63 3c 2f 62 3e 20 66 75 6e 63 /info.c</b> func
8410: 74 69 6f 6e 20 61 72 74 69 66 61 63 74 5f 70 61 tion artifact_pa
8420: 67 65 0d 0a 3c 70 72 65 3e 0d 0a 69 66 28 20 7a ge..<pre>..if( z
8430: 4d 69 6d 65 3d 3d 30 20 29 7b 0d 0a 20 20 20 20 Mime==0 ){..
8440: 40 20 26 6c 74 3b 70 72 65 20 6e 61 6d 65 3d 22 @ <pre name="
8450: 63 6f 64 65 22 20 63 6c 61 73 73 3d 22 63 22 26 code" class="c"&
8460: 67 74 3b 0d 0a 20 20 20 20 40 20 25 68 28 62 6c gt;.. @ %h(bl
8470: 6f 62 5f 73 74 72 28 26 63 6f 6e 74 65 6e 74 29 ob_str(&content)
8480: 29 0d 0a 20 20 20 20 40 20 26 6c 74 3b 2f 70 72 ).. @ </pr
8490: 65 26 67 74 3b 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c e>..</pre>..<
84a0: 2f 70 3e 0d 0a 3c 68 33 3e 44 69 73 63 75 73 73 /p>..<h3>Discuss
84b0: 69 6f 6e 3c 2f 68 33 3e 0d 0a 54 68 65 20 4a 61 ion</h3>..The Ja
84c0: 76 61 73 63 72 69 70 74 20 73 6f 6c 75 74 69 6f vascript solutio
84d0: 6e 20 72 65 71 75 69 72 65 73 20 61 20 6d 69 6e n requires a min
84e0: 69 6d 75 6d 20 74 6f 20 62 65 20 66 75 6c 6c 79 imum to be fully
84f0: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 46 6f supported by Fo
8500: 73 73 69 6c 2e 20 4f 66 20 63 6f 75 72 73 65 20 ssil. Of course
8510: 6d 79 20 6c 69 74 74 65 20 63 68 61 6e 67 65 20 my litte change
8520: 6f 6e 6c 79 20 61 70 70 6c 69 65 73 20 66 6f 72 only applies for
8530: 20 43 2f 43 2b 2b 20 66 69 6c 65 73 2e 20 42 75 C/C++ files. Bu
8540: 74 20 6f 6e 6c 79 20 6c 69 74 74 6c 65 20 6d 6f t only little mo
8550: 72 65 20 77 6f 72 6b 20 6e 65 65 64 73 20 74 6f re work needs to
8560: 20 62 65 20 64 6f 6e 65 20 74 6f 20 67 65 74 20 be done to get
8570: 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 66 the extension of
8580: 20 74 68 65 20 66 69 6c 65 20 61 20 67 75 65 73 the file a gues
8590: 73 20 74 68 65 20 66 69 6c 65 20 74 79 70 65 2e s the file type.
85a0: 0d 0a 0d 0a 54 68 65 20 70 69 70 65 20 73 6f 6c ....The pipe sol
85b0: 75 74 69 6f 6e 20 77 6f 75 6c 64 20 61 6c 73 6f ution would also
85c0: 20 62 65 20 6e 69 63 65 20 62 75 74 20 77 6f 75 be nice but wou
85d0: 6c 64 20 70 72 6f 62 61 62 6c 79 20 6e 65 65 64 ld probably need
85e0: 20 73 6f 6d 65 20 6d 6f 72 65 20 77 6f 72 6b 20 some more work
85f0: 74 68 61 6e 20 74 68 69 73 20 6c 69 74 74 6c 65 than this little
8600: 20 70 61 74 63 68 2e 0d 0a 0a 5a 20 65 66 36 30 patch....Z ef60
8610: 63 39 65 31 34 39 63 39 36 62 64 31 35 66 39 30 c9e149c96bd15f90
8620: 62 32 33 33 34 31 38 34 65 30 38 38 0a b2334184e088.