] by
anonymous
2012-11-23 18:48:39.
0000: 44 20 32 30 31 32 2d 31 31 2d 32 33 54 31 38 3a D 2012-11-23T18:
0010: 34 38 3a 33 39 2e 31 32 30 0a 4c 20 43 6f 6f 6b 48:39.120.L Cook
0020: 62 6f 6f 6b 0a 50 20 31 30 38 34 30 34 64 66 31 book.P 108404df1
0030: 32 32 36 64 62 39 32 61 34 66 62 65 65 61 65 31 226db92a4fbeeae1
0040: 37 33 36 31 33 64 36 63 34 61 34 34 36 39 39 0a 73613d6c4a44699.
0050: 55 20 61 6e 6f 6e 79 6d 6f 75 73 0a 57 20 37 34 U anonymous.W 74
0060: 34 39 36 0a 3c 68 31 3e 46 6f 73 73 69 6c 20 43 496.<h1>Fossil C
0070: 6f 6f 6b 62 6f 6f 6b 3c 2f 68 31 3e 0d 0a 54 68 ookbook</h1>..Th
0080: 65 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f e <cite>Fossil</
0090: 63 69 74 65 3e 20 43 6f 6f 6b 62 6f 6f 6b 20 69 cite> Cookbook i
00a0: 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f s a collection o
00b0: 66 20 74 61 73 6b 2d 6f 72 69 65 6e 74 65 64 20 f task-oriented
00c0: 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 66 6f 72 instructions for
00d0: 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 75 73 intermediate us
00e0: 65 72 73 20 77 68 6f 20 77 69 73 68 20 74 6f 20 ers who wish to
00f0: 64 6f 20 6d 6f 72 65 20 74 68 61 6e 20 62 61 73 do more than bas
0100: 69 63 20 6f 70 65 72 61 74 69 6f 6e 73 20 77 69 ic operations wi
0110: 74 68 20 74 68 65 69 72 20 3c 63 69 74 65 3e 46 th their <cite>F
0120: 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 20 72 65 70 ossil</cite> rep
0130: 6f 73 69 74 6f 72 69 65 73 2e 20 20 54 68 65 20 ositories. The
0140: 5b 54 75 74 6f 72 69 61 6c 7c 74 75 74 6f 72 69 [Tutorial|tutori
0150: 61 6c 5d 20 69 73 20 61 20 6d 6f 72 65 20 73 75 al] is a more su
0160: 69 74 61 62 6c 65 20 70 6c 61 63 65 20 66 6f 72 itable place for
0170: 20 6e 65 77 63 6f 6d 65 72 73 20 74 72 79 69 6e newcomers tryin
0180: 67 20 74 6f 20 6c 65 61 72 6e 20 74 68 65 20 62 g to learn the b
0190: 61 73 69 63 20 63 6f 6e 63 65 70 74 73 20 74 6f asic concepts to
01a0: 20 67 6f 20 66 69 72 73 74 20 62 65 66 6f 72 65 go first before
01b0: 20 74 61 63 6b 6c 69 6e 67 20 74 68 65 73 65 20 tackling these
01c0: 72 65 63 69 70 65 73 2e 0d 0a 0d 0a 3c 68 32 3e recipes.....<h2>
01d0: 49 6e 64 65 78 3c 2f 68 32 3e 0d 0a 3c 75 6c 3e Index</h2>..<ul>
01e0: 0d 0a 20 20 3c 6c 69 3e 53 65 72 76 65 72 20 72 .. <li>Server r
01f0: 65 63 69 70 65 73 3a 0d 0a 20 20 20 20 3c 75 6c ecipes:.. <ul
0200: 3e 0d 0a 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 >.. <li><a
0210: 68 72 65 66 3d 22 23 43 47 49 22 3e 55 73 69 6e href="#CGI">Usin
0220: 67 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f g <cite>Fossil</
0230: 63 69 74 65 3e 27 73 20 42 75 69 6c 74 2d 49 6e cite>'s Built-In
0240: 20 43 47 49 3c 2f 61 3e 0d 0a 20 20 20 20 3c 2f CGI</a>.. </
0250: 75 6c 3e 0d 0a 20 20 3c 2f 6c 69 3e 0d 0a 20 20 ul>.. </li>..
0260: 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e <li><a href="#en
0270: 76 22 3e 55 73 69 6e 67 20 45 6e 76 69 72 6f 6e v">Using Environ
0280: 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 73 3c 2f ment variables</
0290: 61 3e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 3c a></li>.. <li><
02a0: 61 20 68 72 65 66 3d 22 23 63 73 73 22 3e 45 78 a href="#css">Ex
02b0: 61 6d 70 6c 65 20 43 53 53 3c 2f 61 3e 3c 2f 6c ample CSS</a></l
02c0: 69 3e 0d 0a 20 20 3c 6c 69 3e 3c 61 20 68 72 65 i>.. <li><a hre
02d0: 66 3d 22 23 73 6f 75 72 63 65 2d 68 69 6c 69 67 f="#source-hilig
02e0: 68 74 22 3e 53 6f 75 72 63 65 20 68 69 67 68 6c ht">Source highl
02f0: 69 67 68 74 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e ighting</a></li>
0300: 0d 0a 20 20 3c 6c 69 3e 5b 73 68 6a 73 7c 20 48 .. <li>[shjs| H
0310: 6f 77 20 74 6f 20 61 64 64 20 53 79 6e 74 61 78 ow to add Syntax
0320: 20 48 69 67 68 6c 69 67 68 74 65 72 20 69 6e 20 Highlighter in
0330: 4a 61 76 61 53 63 72 69 70 74 20 28 53 48 4a 53 JavaScript (SHJS
0340: 29 5d 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 3c )]</li>.. <li><
0350: 61 20 68 72 65 66 3d 22 23 77 69 6e 33 32 64 65 a href="#win32de
0360: 76 22 3e 46 6f 73 73 69 6c 20 57 69 6e 33 32 20 v">Fossil Win32
0370: 44 65 76 65 6c 6f 70 6d 65 6e 74 20 4d 61 63 68 Development Mach
0380: 69 6e 65 20 73 65 74 75 70 3c 2f 61 3e 3c 2f 6c ine setup</a></l
0390: 69 3e 0d 0a 20 20 3c 6c 69 3e 5b 63 6f 6d 70 69 i>.. <li>[compi
03a0: 6c 6c 69 6e 67 4f 6e 57 69 6e 64 6f 77 73 7c 20 llingOnWindows|
03b0: 48 6f 77 20 74 6f 20 63 6f 6d 70 69 6c 65 20 6f How to compile o
03c0: 6e 20 77 69 6e 64 6f 77 73 5d 3c 2f 6c 69 3e 0d n windows]</li>.
03d0: 0a 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 . <li><a href="
03e0: 23 77 79 73 69 77 69 67 22 3e 4a 61 76 61 73 63 #wysiwig">Javasc
03f0: 72 69 70 74 20 48 54 4d 4c 20 57 59 53 49 57 59 ript HTML WYSIWY
0400: 47 20 65 64 69 74 6f 72 20 63 6f 6e 74 72 6f 6c G editor control
0410: 3c 2f 61 3e 0d 0a 20 20 20 20 3c 75 6c 3e 0d 0a </a>.. <ul>..
0420: 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 <li><a hre
0430: 66 3d 22 23 74 69 6e 79 6d 63 65 22 3e 54 69 6e f="#tinymce">Tin
0440: 79 4d 43 45 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 20 yMCE</a></li>..
0450: 20 20 20 20 20 3c 75 6c 3e 3c 6c 69 3e 3c 61 20 <ul><li><a
0460: 68 72 65 66 3d 27 23 6a 73 5f 6c 6f 63 61 6c 27 href='#js_local'
0470: 3e 4c 6f 63 61 6c 6c 79 20 69 6e 73 74 61 6c 6c >Locally install
0480: 65 64 20 6a 61 76 61 73 63 72 69 70 74 3c 2f 61 ed javascript</a
0490: 3e 3c 2f 6c 69 3e 3c 2f 75 6c 3e 0d 0a 20 20 20 ></li></ul>..
04a0: 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 <li><a href="
04b0: 23 6d 61 72 6b 69 74 75 70 22 3e 6d 61 72 6b 69 #markitup">marki
04c0: 74 75 70 21 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 20 tup!</a></li>..
04d0: 20 20 20 3c 2f 75 6c 3e 0d 0a 20 20 3c 2f 6c 69 </ul>.. </li
04e0: 3e 0d 0a 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 >.. <li><a href
04f0: 3d 22 23 74 69 63 6b 65 74 2d 63 68 65 63 6b 69 ="#ticket-checki
0500: 6e 2d 6c 69 6e 6b 73 22 3e 4c 69 6e 6b 20 74 69 n-links">Link ti
0510: 63 6b 65 74 73 20 74 6f 20 63 68 65 63 6b 69 6e ckets to checkin
0520: 73 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c s</a></li>.. <l
0530: 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 68 31 2d i><a href="#th1-
0540: 75 73 61 67 65 22 3e 46 6f 73 73 69 6c 20 61 6e usage">Fossil an
0550: 64 20 54 68 31 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a d Th1</a></li>..
0560: 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 <li><a href="#
0570: 76 65 72 73 69 6f 6e 43 6f 6d 70 72 65 73 73 65 versionCompresse
0580: 64 22 3e 56 65 72 73 69 6f 6e 69 6e 67 20 63 6f d">Versioning co
0590: 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 3c 2f mpressed files</
05a0: 61 3e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 3c a></li>.. <li><
05b0: 61 20 68 72 65 66 3d 22 23 43 6f 6c 6f 72 50 69 a href="#ColorPi
05c0: 63 6b 65 72 22 3e 43 6f 6c 6f 72 20 73 65 6c 65 cker">Color sele
05d0: 63 74 6f 72 20 69 6e 20 63 68 65 63 6b 2d 69 6e ctor in check-in
05e0: 20 70 72 6f 70 65 72 74 69 65 73 3c 2f 61 3e 3c properties</a><
05f0: 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 3c 61 20 68 /li>.. <li><a h
0600: 72 65 66 3d 22 23 53 65 61 72 63 68 57 69 6b 69 ref="#SearchWiki
0610: 22 3e 53 65 61 72 63 68 69 6e 67 20 77 69 6b 69 ">Searching wiki
0620: 20 74 65 78 74 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a text</a></li>..
0630: 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 <li><a href="#
0640: 48 69 67 68 6c 69 67 68 74 44 69 66 66 22 3e 48 HighlightDiff">H
0650: 69 67 68 6c 69 67 68 74 20 64 69 66 66 27 73 3c ighlight diff's<
0660: 2f 61 3e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e /a></li>.. <li>
0670: 3c 61 20 68 72 65 66 3d 22 23 4d 65 72 63 75 72 <a href="#Mercur
0680: 69 61 6c 22 3e 49 6d 70 6f 72 74 69 6e 67 20 66 ial">Importing f
0690: 72 6f 6d 20 4d 65 72 63 75 72 69 61 6c 3c 2f 61 rom Mercurial</a
06a0: 3e 3c 2f 6c 69 3e 0d 0a 20 20 3c 6c 69 3e 3c 61 ></li>.. <li><a
06b0: 20 68 72 65 66 3d 22 23 53 56 4e 22 3e 49 6d 70 href="#SVN">Imp
06c0: 6f 72 74 69 6e 67 20 66 72 6f 6d 20 53 56 4e 3c orting from SVN<
06d0: 2f 61 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d /a></li>..</ul>.
06e0: 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 ...<h2><a name="
06f0: 43 47 49 22 3e 55 73 69 6e 67 20 3c 63 69 74 65 CGI">Using <cite
0700: 3e 46 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 27 73 >Fossil</cite>'s
0710: 20 42 75 69 6c 74 2d 49 6e 20 43 47 49 3c 2f 61 Built-In CGI</a
0720: 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e 4d 6f 74 69 ></h2>..<h3>Moti
0730: 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 20 20 2a vation</h3>.. *
0740: 20 20 59 6f 75 20 77 61 6e 74 20 74 6f 20 73 68 You want to sh
0750: 61 72 65 20 61 20 72 65 70 6f 73 69 74 6f 72 79 are a repository
0760: 20 74 68 72 6f 75 67 68 20 79 6f 75 72 20 65 78 through your ex
0770: 69 73 74 69 6e 67 20 77 65 62 20 69 6e 66 72 61 isting web infra
0780: 73 74 72 75 63 74 75 72 65 2e 0d 0a 20 20 2a 20 structure... *
0790: 20 59 6f 75 20 77 61 6e 74 20 74 6f 20 73 68 61 You want to sha
07a0: 72 65 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 re more than one
07b0: 20 72 65 70 6f 73 69 74 6f 72 79 20 61 74 20 74 repository at t
07c0: 68 65 20 73 61 6d 65 20 74 69 6d 65 2e 0d 0a 0d he same time....
07d0: 0a 3c 68 33 3e 50 72 6f 62 6c 65 6d 3c 2f 68 33 .<h3>Problem</h3
07e0: 3e 0d 0a 55 6e 6c 69 6b 65 20 73 6f 6d 65 20 6f >..Unlike some o
07f0: 74 68 65 72 20 64 69 73 74 72 69 62 75 74 65 64 ther distributed
0800: 20 53 43 4d 73 2c 20 3c 63 69 74 65 3e 46 6f 73 SCMs, <cite>Fos
0810: 73 69 6c 3c 2f 63 69 74 65 3e 20 63 61 6e 20 6f sil</cite> can o
0820: 6e 6c 79 20 63 6c 6f 6e 65 2c 20 70 75 73 68 2c nly clone, push,
0830: 20 70 75 6c 6c 20 61 6e 64 20 61 6e 64 20 6f 74 pull and and ot
0840: 68 65 72 77 69 73 65 20 69 6e 74 65 72 61 63 74 herwise interact
0850: 20 74 68 72 6f 75 67 68 20 72 65 70 6f 73 69 74 through reposit
0860: 6f 72 69 65 73 20 6f 76 65 72 20 48 54 54 50 2e ories over HTTP.
0870: 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 73 69 This can be si
0880: 6d 70 6c 79 20 61 6e 64 20 65 61 73 69 6c 79 20 mply and easily
0890: 6d 61 6e 61 67 65 64 20 74 68 72 6f 75 67 68 20 managed through
08a0: 75 73 65 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 use of the <code
08b0: 3e 66 6f 73 73 69 6c 20 73 65 72 76 65 72 3c 2f >fossil server</
08c0: 63 6f 64 65 3e 20 61 6e 64 2f 6f 72 20 3c 63 6f code> and/or <co
08d0: 64 65 3e 66 6f 73 73 69 6c 20 75 69 3c 2f 63 6f de>fossil ui</co
08e0: 64 65 3e 20 63 6f 6d 6d 61 6e 64 73 2c 20 6f 66 de> commands, of
08f0: 20 63 6f 75 72 73 65 2c 20 62 75 74 20 74 68 69 course, but thi
0900: 73 20 69 73 20 72 65 61 6c 6c 79 20 6f 6e 6c 79 s is really only
0910: 20 61 64 65 71 75 61 74 65 20 66 6f 72 20 61 64 adequate for ad
0920: 2d 68 6f 63 20 72 65 70 6f 73 69 74 6f 72 79 20 -hoc repository
0930: 73 68 61 72 69 6e 67 2e 20 20 43 6f 6e 73 69 64 sharing. Consid
0940: 65 72 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c er, for example,
0950: 20 73 68 61 72 69 6e 67 20 74 65 6e 20 72 65 70 sharing ten rep
0960: 6f 73 69 74 6f 72 69 65 73 2e 20 20 55 73 69 6e ositories. Usin
0970: 67 20 74 68 65 20 62 75 69 6c 74 2d 69 6e 20 73 g the built-in s
0980: 65 72 76 65 72 20 77 6f 75 6c 64 20 72 65 71 75 erver would requ
0990: 69 72 65 20 79 6f 75 20 74 6f 20 6f 70 65 6e 20 ire you to open
09a0: 74 65 6e 20 70 6f 72 74 73 20 69 6e 20 79 6f 75 ten ports in you
09b0: 72 20 66 69 72 65 77 61 6c 6c 20 74 6f 20 70 65 r firewall to pe
09c0: 72 6d 69 74 20 61 63 63 65 73 73 2e 20 20 41 6e rmit access. An
09d0: 79 20 73 65 72 69 6f 75 73 20 73 68 61 72 69 6e y serious sharin
09e0: 67 20 77 69 6c 6c 20 72 65 71 75 69 72 65 20 73 g will require s
09f0: 6f 6d 65 74 68 69 6e 67 20 6d 6f 72 65 20 72 6f omething more ro
0a00: 62 75 73 74 20 61 6e 64 20 70 65 72 6d 61 6e 65 bust and permane
0a10: 6e 74 2c 20 61 6e 64 20 73 6f 6c 75 74 69 6f 6e nt, and solution
0a20: 73 20 66 6f 72 20 64 6f 69 6e 67 20 73 6f 20 61 s for doing so a
0a30: 72 65 20 64 65 73 63 72 69 62 65 64 20 62 65 6c re described bel
0a40: 6f 77 2e 0d 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 ow.....<h3>Solut
0a50: 69 6f 6e 3c 2f 68 33 3e 0d 0a 3c 63 69 74 65 3e ion</h3>..<cite>
0a60: 46 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 20 73 75 Fossil</cite> su
0a70: 70 70 6f 72 74 73 20 74 68 72 65 65 20 64 69 66 pports three dif
0a80: 66 65 72 65 6e 74 20 77 61 79 73 20 74 6f 20 73 ferent ways to s
0a90: 68 61 72 65 20 72 65 70 6f 73 69 74 6f 72 69 65 hare repositorie
0aa0: 73 2e 20 20 46 6f 72 20 61 64 2d 68 6f 63 20 73 s. For ad-hoc s
0ab0: 68 61 72 69 6e 67 20 3c 63 6f 64 65 3e 66 6f 73 haring <code>fos
0ac0: 73 69 6c 20 73 65 72 76 65 72 2f 75 69 3c 2f 63 sil server/ui</c
0ad0: 6f 64 65 3e 20 69 73 20 6d 6f 72 65 20 74 68 61 ode> is more tha
0ae0: 6e 20 61 64 65 71 75 61 74 65 2e 20 20 46 6f 72 n adequate. For
0af0: 20 6d 6f 72 65 20 72 6f 62 75 73 74 20 73 6f 6c more robust sol
0b00: 75 74 69 6f 6e 73 2c 20 68 6f 77 65 76 65 72 2c utions, however,
0b10: 20 74 68 65 20 75 73 65 20 6f 66 20 3c 63 69 74 the use of <cit
0b20: 65 3e 28 78 29 69 6e 65 74 64 3c 2f 63 69 74 65 e>(x)inetd</cite
0b30: 3e 20 6f 72 20 43 47 49 20 73 75 70 70 6f 72 74 > or CGI support
0b40: 20 69 73 20 69 6e 64 69 63 61 74 65 64 2e 0d 0a is indicated...
0b50: 0d 0a 53 65 74 74 69 6e 67 20 75 70 20 66 6f 73 ..Setting up fos
0b60: 73 69 6c 20 66 6f 72 20 43 47 49 20 73 75 70 70 sil for CGI supp
0b70: 6f 72 74 20 69 73 20 73 69 6d 70 6c 65 2e 20 20 ort is simple.
0b80: 28 53 65 74 74 69 6e 67 20 75 70 20 79 6f 75 72 (Setting up your
0b90: 20 77 65 62 20 73 65 72 76 65 72 20 66 6f 72 20 web server for
0ba0: 43 47 49 20 73 75 70 70 6f 72 74 20 6d 61 79 20 CGI support may
0bb0: 6f 72 20 6d 61 79 20 6e 6f 74 20 62 65 20 73 69 or may not be si
0bc0: 6d 70 6c 65 2c 20 62 75 74 20 69 74 20 69 73 20 mple, but it is
0bd0: 6f 75 74 20 6f 66 20 73 63 6f 70 65 20 6f 66 20 out of scope of
0be0: 74 68 69 73 20 72 65 63 69 70 65 2e 20 20 43 6f this recipe. Co
0bf0: 6e 73 75 6c 74 20 79 6f 75 72 20 77 65 62 20 73 nsult your web s
0c00: 65 72 76 65 72 2f 73 65 72 76 69 63 65 20 70 72 erver/service pr
0c10: 6f 76 69 64 65 72 27 73 20 64 6f 63 75 6d 65 6e ovider's documen
0c20: 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 2e tation for this.
0c30: 29 0d 0a 0d 0a 3c 68 34 3e 55 4e 49 58 3c 2f 68 )....<h4>UNIX</h
0c40: 34 3e 0d 0a 20 20 31 2e 20 20 46 69 6e 64 20 79 4>.. 1. Find y
0c50: 6f 75 72 20 43 47 49 20 73 63 72 69 70 74 73 20 our CGI scripts
0c60: 64 69 72 65 63 74 6f 72 79 20 28 69 66 20 61 70 directory (if ap
0c70: 70 6c 69 63 61 62 6c 65 29 2e 20 20 54 68 69 73 plicable). This
0c80: 20 69 73 20 63 6f 6d 6d 6f 6e 6c 79 20 73 6f 6d is commonly som
0c90: 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 62 61 73 ething like <bas
0ca0: 65 3e 2f 63 67 69 2d 62 69 6e 2f 2c 20 62 75 74 e>/cgi-bin/, but
0cb0: 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 does not have t
0cc0: 6f 20 62 65 2e 0d 0a 20 20 32 2e 20 20 49 6e 73 o be... 2. Ins
0cd0: 69 64 65 20 74 68 61 74 20 64 69 72 65 63 74 6f ide that directo
0ce0: 72 79 20 62 75 69 6c 64 20 61 20 73 63 72 69 70 ry build a scrip
0cf0: 74 20 66 69 6c 65 20 77 68 69 63 68 20 6c 6f 6f t file which loo
0d00: 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 3c 62 72 ks like this:<br
0d10: 3e 3c 63 6f 64 65 3e 3c 70 72 65 3e 20 20 23 21 ><code><pre> #!
0d20: 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 66 6f /usr/bin/env fo
0d30: 73 73 69 6c 3c 62 72 3e 20 20 72 65 70 6f 73 69 ssil<br> reposi
0d40: 74 6f 72 79 3a 20 2f 66 75 6c 6c 2f 70 61 74 68 tory: /full/path
0d50: 2f 74 6f 2f 72 65 70 6f 73 69 74 6f 72 79 2f 66 /to/repository/f
0d60: 69 6c 65 2e 66 73 6c 3c 2f 70 72 65 3e 3c 2f 63 ile.fsl</pre></c
0d70: 6f 64 65 3e 0d 0a 20 20 33 2e 20 20 45 6e 73 75 ode>.. 3. Ensu
0d80: 72 65 20 74 68 61 74 20 74 68 65 20 73 63 72 69 re that the scri
0d90: 70 74 20 66 69 6c 65 20 73 6f 20 67 65 6e 65 72 pt file so gener
0da0: 61 74 65 64 20 69 73 20 73 65 74 20 65 78 65 63 ated is set exec
0db0: 75 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 43 utable for the C
0dc0: 47 49 20 75 73 65 72 20 61 63 63 6f 75 6e 74 2e GI user account.
0dd0: 0d 0a 20 20 34 2e 20 20 45 6e 73 75 72 65 20 74 .. 4. Ensure t
0de0: 68 61 74 20 65 76 65 72 79 20 64 69 72 65 63 74 hat every direct
0df0: 6f 72 79 20 69 6e 20 74 68 65 20 70 61 74 68 20 ory in the path
0e00: 6c 65 61 64 69 6e 67 20 74 6f 20 74 68 65 20 72 leading to the r
0e10: 65 70 6f 73 69 74 6f 72 79 20 69 73 20 20 62 72 epository is br
0e20: 6f 77 73 65 61 62 6c 65 20 28 63 68 6d 6f 64 20 owseable (chmod
0e30: 2b 78 29 20 74 6f 20 74 68 65 20 43 47 49 20 75 +x) to the CGI u
0e40: 73 65 72 20 61 63 63 6f 75 6e 74 2e 0d 0a 20 20 ser account...
0e50: 35 2e 20 20 45 6e 73 75 72 65 20 74 68 61 74 20 5. Ensure that
0e60: 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 66 the repository f
0e70: 69 6c 65 20 69 73 20 72 65 61 64 61 62 6c 65 20 ile is readable
0e80: 3c 65 6d 3e 61 6e 64 3c 2f 65 6d 3e 20 77 72 69 <em>and</em> wri
0e90: 74 61 62 6c 65 20 74 6f 20 74 68 65 20 43 47 49 table to the CGI
0ea0: 20 75 73 65 72 20 61 63 63 6f 75 6e 74 2e 0d 0a user account...
0eb0: 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 ..The following
0ec0: 73 68 65 6c 6c 20 73 63 72 69 70 74 20 63 61 6e shell script can
0ed0: 20 62 65 20 72 75 6e 20 66 72 6f 6d 20 77 69 74 be run from wit
0ee0: 68 69 6e 20 74 68 65 20 64 69 72 65 63 74 6f 72 hin the director
0ef0: 79 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 y containing the
0f00: 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 <cite>Fossil</c
0f10: 69 74 65 3e 20 72 65 70 6f 73 69 74 6f 72 69 65 ite> repositorie
0f20: 73 20 74 6f 20 62 65 20 73 68 61 72 65 64 20 28 s to be shared (
0f30: 61 6e 64 2c 20 6f 66 20 63 6f 75 72 73 65 2c 20 and, of course,
0f40: 61 6c 74 65 72 65 64 20 66 6f 72 20 79 6f 75 72 altered for your
0f50: 20 73 65 74 75 70 29 20 74 6f 20 73 65 74 20 73 setup) to set s
0f60: 6f 6d 65 20 6f 66 20 74 68 65 20 63 6f 6e 73 74 ome of the const
0f70: 72 61 69 6e 74 73 20 61 62 6f 76 65 20 75 70 20 raints above up
0f80: 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 3a 0d 0a automatically:..
0f90: 0d 0a 3c 6e 6f 77 69 6b 69 3e 3c 66 6f 6e 74 20 ..<nowiki><font
0fa0: 66 61 63 65 3d 22 6d 6f 6e 6f 73 70 61 63 65 22 face="monospace"
0fb0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
0fc0: 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 31 #a52a2a"> 1
0fd0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
0fe0: 6c 6f 72 3d 22 23 30 30 30 30 66 66 22 3e 23 21 lor="#0000ff">#!
0ff0: 20 2f 62 69 6e 2f 73 68 3c 2f 66 6f 6e 74 3e 3c /bin/sh</font><
1000: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
1010: 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 ="#a52a2a"> 
1020: 3b 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ;2 </font><font
1030: 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e color="#008b8b">
1040: 43 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 3d CGI_ROOT</font>=
1050: 2f 75 73 72 2f 6c 69 62 2f 66 6f 73 73 69 6c 3c /usr/lib/fossil<
1060: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
1070: 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 ="#a52a2a"> 
1080: 3b 33 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ;3 </font><font
1090: 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e color="#008b8b">
10a0: 52 45 50 4f 53 49 54 4f 52 59 5f 4f 57 4e 45 52 REPOSITORY_OWNER
10b0: 3c 2f 66 6f 6e 74 3e 3d 6d 69 63 68 61 65 6c 3c </font>=michael<
10c0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
10d0: 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 ="#a52a2a"> 
10e0: 3b 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ;4 </font><font
10f0: 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e color="#008b8b">
1100: 43 47 49 5f 47 52 4f 55 50 3c 2f 66 6f 6e 74 3e CGI_GROUP</font>
1110: 3d 77 77 77 2d 64 61 74 61 3c 62 72 3e 0d 0a 3c =www-data<br>..<
1120: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1130: 61 32 61 22 3e 26 6e 62 73 70 3b 35 20 3c 2f 66 a2a"> 5 </f
1140: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
1150: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 66 3c "#a52a2a"><b>if<
1160: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
1170: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
1180: 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 2a2a"><b>[</b></
1190: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
11a0: 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 color="#6a5acd"
11b0: 3e 22 60 69 64 20 2d 75 6e 60 22 3c 2f 66 6f 6e >"`id -un`"</fon
11c0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
11d0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
11e0: 3e 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 >=</b></font>&nb
11f0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
1200: 23 66 66 30 30 66 66 22 3e 27 72 6f 6f 74 27 3c #ff00ff">'root'<
1210: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
1220: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
1230: 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 "><b>]</b></font
1240: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
1250: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
1260: 73 70 3b 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;6 </font><fon
1270: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
1280: 22 3e 3c 62 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 "><b>then</b></f
1290: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
12a0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
12b0: 26 6e 62 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 26 7 </font>&
12c0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
12d0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
12e0: 3e 3c 62 3e 66 6f 72 3c 2f 62 3e 3c 2f 66 6f 6e ><b>for</b></fon
12f0: 74 3e 26 6e 62 73 70 3b 72 65 70 6f 73 69 74 6f t> reposito
1300: 72 79 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 ry <font color="
1310: 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 6e 3c 2f #a52a2a"><b>in</
1320: 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2a b></font> *
1330: 2e 66 73 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 .fsl<br>..<font
1340: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
1350: 26 6e 62 73 70 3b 38 20 3c 2f 66 6f 6e 74 3e 26 8 </font>&
1360: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
1370: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
1380: 3e 3c 62 3e 64 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>do</b></font
1390: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
13a0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
13b0: 73 70 3b 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 sp;9 </font>&nbs
13c0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
13d0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
13e0: 22 23 30 30 38 62 38 62 22 3e 53 4f 55 52 43 45 "#008b8b">SOURCE
13f0: 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f </font>=<font co
1400: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 60 3c lor="#6a5acd">`<
1410: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
1420: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 70 r="#a52a2a"><b>p
1430: 77 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f wd</b></font><fo
1440: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
1450: 64 22 3e 60 3c 2f 66 6f 6e 74 3e 2f 3c 66 6f 6e d">`</font>/<fon
1460: 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 t color="#a020f0
1470: 22 3e 24 72 65 70 6f 73 69 74 6f 72 79 3c 2f 66 ">$repository</f
1480: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
1490: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
14a0: 31 30 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 10 </font>
14b0: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
14c0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
14d0: 30 30 38 62 38 62 22 3e 44 45 53 54 49 4e 41 54 008b8b">DESTINAT
14e0: 49 4f 4e 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 ION</font>=<font
14f0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
1500: 3e 24 43 47 49 5f 52 4f 4f 54 3c 2f 66 6f 6e 74 >$CGI_ROOT</font
1510: 3e 2f 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 >/<font color="#
1520: 61 30 32 30 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 a020f0">${</font
1530: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
1540: 30 32 30 66 30 22 3e 72 65 70 6f 73 69 74 6f 72 020f0">repositor
1550: 79 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f y</font><font co
1560: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
1570: 3e 25 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 2e 66 73 >%</b></font>.fs
1580: 6c 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 l<font color="#a
1590: 30 32 30 66 30 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 020f0">}</font><
15a0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
15b0: 3d 22 23 61 35 32 61 32 61 22 3e 31 31 20 3c 2f ="#a52a2a">11 </
15c0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
15d0: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
15e0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
15f0: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
1600: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1610: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
1620: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
1630: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
1640: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
1650: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
1660: 66 66 30 30 66 66 22 3e 23 21 20 2f 75 73 72 2f ff00ff">#! /usr/
1670: 62 69 6e 2f 65 6e 76 20 66 6f 73 73 69 6c 3c 2f bin/env fossil</
1680: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1690: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
16a0: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
16b0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
16c0: 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 0ff"> </fon
16d0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
16e0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 67 74 3b 3c a52a2a"><b>><
16f0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
1700: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
1710: 32 30 66 30 22 3e 24 44 45 53 54 49 4e 41 54 49 20f0">$DESTINATI
1720: 4f 4e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c ON</font><br>..<
1730: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1740: 61 32 61 22 3e 31 32 20 3c 2f 66 6f 6e 74 3e 26 a2a">12 </font>&
1750: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
1760: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
1770: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
1780: 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c echo</b></font><
1790: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
17a0: 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 0ff"> </fon
17b0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
17c0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
17d0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
17e0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
17f0: 22 3e 72 65 70 6f 73 69 74 6f 72 79 3a 20 3c 2f ">repository: </
1800: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1810: 3d 22 23 61 30 32 30 66 30 22 3e 24 53 4f 55 52 ="#a020f0">$SOUR
1820: 43 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 CE</font><font c
1830: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
1840: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
1850: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
1860: 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c #ff00ff"> <
1870: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
1880: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
1890: 67 74 3b 26 67 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e gt;></b></fon
18a0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
18b0: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 44 lor="#a020f0">$D
18c0: 45 53 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 ESTINATION</font
18d0: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
18e0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 33 20 or="#a52a2a">13
18f0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
1900: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 63 sp; c
1910: 68 6f 77 6e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 hown <font color
1920: 3d 22 23 61 30 32 30 66 30 22 3e 24 52 45 50 4f ="#a020f0">$REPO
1930: 53 49 54 4f 52 59 5f 4f 57 4e 45 52 3c 2f 66 6f SITORY_OWNER</fo
1940: 6e 74 3e 3a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d nt>:<font color=
1950: 22 23 61 30 32 30 66 30 22 3e 24 43 47 49 5f 47 "#a020f0">$CGI_G
1960: 52 4f 55 50 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 ROUP</font> 
1970: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
1980: 30 32 30 66 30 22 3e 24 53 4f 55 52 43 45 3c 2f 020f0">$SOURCE</
1990: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
19a0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
19b0: 3e 31 34 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >14 </font> 
19c0: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 ; &nb
19d0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
19e0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 63 68 6d 6f #a52a2a"><b>chmo
19f0: 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 d</b></font>&nbs
1a00: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
1a10: 66 66 30 30 66 66 22 3e 36 36 34 3c 2f 66 6f 6e ff00ff">664</fon
1a20: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
1a30: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 53 lor="#a020f0">$S
1a40: 4f 55 52 43 45 3c 2f 66 6f 6e 74 3e 3c 62 72 3e OURCE</font><br>
1a50: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
1a60: 61 35 32 61 32 61 22 3e 31 35 20 3c 2f 66 6f 6e a52a2a">15 </fon
1a70: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
1a80: 62 73 70 3b 26 6e 62 73 70 3b 63 68 6f 77 6e 20 bsp; chown
1a90: 72 6f 6f 74 3a 72 6f 6f 74 20 3c 66 6f 6e 74 20 root:root <font
1aa0: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
1ab0: 24 44 45 53 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f $DESTINATION</fo
1ac0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
1ad0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 olor="#a52a2a">1
1ae0: 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6 </font> &
1af0: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
1b00: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
1b10: 35 32 61 32 61 22 3e 3c 62 3e 63 68 6d 6f 64 3c 52a2a"><b>chmod<
1b20: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
1b30: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
1b40: 30 30 66 66 22 3e 37 35 35 3c 2f 66 6f 6e 74 3e 00ff">755</font>
1b50: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
1b60: 72 3d 22 23 61 30 32 30 66 30 22 3e 24 44 45 53 r="#a020f0">$DES
1b70: 54 49 4e 41 54 49 4f 4e 3c 2f 66 6f 6e 74 3e 3c TINATION</font><
1b80: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
1b90: 3d 22 23 61 35 32 61 32 61 22 3e 31 37 20 3c 2f ="#a52a2a">17 </
1ba0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
1bb0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
1bc0: 35 32 61 32 61 22 3e 3c 62 3e 64 6f 6e 65 3c 2f 52a2a"><b>done</
1bd0: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
1be0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1bf0: 61 32 61 22 3e 31 38 20 3c 2f 66 6f 6e 74 3e 3c a2a">18 </font><
1c00: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
1c10: 61 32 61 22 3e 3c 62 3e 65 6c 73 65 3c 2f 62 3e a2a"><b>else</b>
1c20: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
1c30: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
1c40: 61 22 3e 31 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">19 </font>&nb
1c50: 73 70 3b 26 6e 62 73 70 3b 73 75 64 6f 20 3c 66 sp; sudo <f
1c60: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
1c70: 66 30 22 3e 24 30 3c 2f 66 6f 6e 74 3e 26 6e 62 f0">$0</font>&nb
1c80: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
1c90: 23 61 30 32 30 66 30 22 3e 24 2a 3c 2f 66 6f 6e #a020f0">$*</fon
1ca0: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
1cb0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 30 lor="#a52a2a">20
1cc0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
1cd0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
1ce0: 3e 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 >fi</b></font><b
1cf0: 72 3e 0d 0a 3c 2f 66 6f 6e 74 3e 3c 2f 6e 6f 77 r>..</font></now
1d00: 69 6b 69 3e 0d 0a 0d 0a 48 65 72 65 20 69 73 20 iki>....Here is
1d10: 61 20 6c 69 74 74 6c 65 20 70 65 72 6c 20 73 63 a little perl sc
1d20: 72 69 70 74 20 74 6f 20 70 75 74 20 69 6e 20 79 ript to put in y
1d30: 6f 75 72 20 63 67 69 2d 62 69 6e 20 74 6f 20 6c our cgi-bin to l
1d40: 69 73 74 20 61 6c 6c 20 74 68 65 20 66 6f 73 73 ist all the foss
1d50: 69 6c 73 20 79 6f 75 20 61 72 65 20 70 75 62 6c ils you are publ
1d60: 69 73 68 69 6e 67 3a 0d 0a 0d 0a 3c 6e 6f 77 69 ishing:....<nowi
1d70: 6b 69 3e 0d 0a 3c 70 72 65 3e 0d 0a 3c 66 6f 6e ki>..<pre>..<fon
1d80: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
1d90: 22 3e 26 6e 62 73 70 3b 31 20 3c 2f 66 6f 6e 74 "> 1 </font
1da0: 3e 20 23 21 2f 75 73 72 2f 62 69 6e 2f 70 65 72 > #!/usr/bin/per
1db0: 6c 20 2d 77 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f l -w..<font colo
1dc0: 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 r="#a52a2a">&nbs
1dd0: 70 3b 32 20 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e p;2 </font> <fon
1de0: 74 20 63 6f 6c 6f 72 3d 22 23 38 42 30 30 38 42 t color="#8B008B
1df0: 22 3e 3c 62 3e 6d 79 3c 2f 62 3e 3c 2f 66 6f 6e "><b>my</b></fon
1e00: 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t> <font color="
1e10: 23 30 30 36 38 38 42 22 3e 24 43 47 49 5f 42 49 #00688B">$CGI_BI
1e20: 4e 3c 2f 66 6f 6e 74 3e 20 3d 20 3c 66 6f 6e 74 N</font> = <font
1e30: 20 63 6f 6c 6f 72 3d 22 23 43 44 35 35 35 35 22 color="#CD5555"
1e40: 3e 26 23 33 39 3b 2f 4c 69 62 72 61 72 79 2f 57 >'/Library/W
1e50: 65 62 53 65 72 76 65 72 2f 43 47 49 2d 45 78 65 ebServer/CGI-Exe
1e60: 63 75 74 61 62 6c 65 73 26 23 33 39 3b 3c 2f 66 cutables'</f
1e70: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
1e80: 22 23 30 30 30 30 30 30 22 3e 3b 3c 2f 66 6f 6e "#000000">;</fon
1e90: 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d t>..<font color=
1ea0: 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b "#a52a2a">
1eb0: 33 20 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 3 </font> <font
1ec0: 63 6f 6c 6f 72 3d 22 23 38 42 30 30 38 42 22 3e color="#8B008B">
1ed0: 3c 62 3e 6d 79 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e <b>my</b></font>
1ee0: 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 <font color="#0
1ef0: 30 36 38 38 42 22 3e 40 66 69 6c 65 73 3c 2f 66 0688B">@files</f
1f00: 6f 6e 74 3e 20 3d 20 3c 66 6f 6e 74 20 63 6f 6c ont> = <font col
1f10: 6f 72 3d 22 23 43 44 35 35 35 35 22 3e 60 67 72 or="#CD5555">`gr
1f20: 65 70 20 2d 6c 20 72 65 70 6f 73 69 74 6f 72 79 ep -l repository
1f30: 3a 20 20 24 43 47 49 5f 42 49 4e 2f 2a 20 60 3c : $CGI_BIN/* `<
1f40: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
1f50: 72 3d 22 23 30 30 30 30 30 30 22 3e 3b 3c 2f 66 r="#000000">;</f
1f60: 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f ont>..<font colo
1f70: 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 r="#a52a2a">&nbs
1f80: 70 3b 34 20 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e p;4 </font> <fon
1f90: 74 20 63 6f 6c 6f 72 3d 22 23 38 42 30 30 38 42 t color="#8B008B
1fa0: 22 3e 3c 62 3e 70 72 69 6e 74 3c 2f 62 3e 3c 2f "><b>print</b></
1fb0: 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c 6f font> <font colo
1fc0: 72 3d 22 23 43 44 35 35 35 35 22 3e 3c 62 3e 26 r="#CD5555"><b>&
1fd0: 6c 74 3b 26 6c 74 3b 45 4f 4d 3c 2f 62 3e 3c 2f lt;<EOM</b></
1fe0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
1ff0: 3d 22 23 30 30 30 30 30 30 22 3e 3b 3c 2f 66 6f ="#000000">;</fo
2000: 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nt>..<font color
2010: 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 ="#a52a2a"> 
2020: 3b 35 20 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 ;5 </font> <font
2030: 20 63 6f 6c 6f 72 3d 22 23 43 44 35 35 35 35 22 color="#CD5555"
2040: 3e 3c 69 3e 43 6f 6e 74 65 6e 74 2d 54 79 70 65 ><i>Content-Type
2050: 3a 20 74 65 78 74 2f 68 74 6d 6c 3c 2f 69 3e 3c : text/html</i><
2060: 2f 66 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f /font>..<font co
2070: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e lor="#a52a2a">&n
2080: 62 73 70 3b 36 20 3c 2f 66 6f 6e 74 3e 0d 0a 3c bsp;6 </font>..<
2090: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
20a0: 61 32 61 22 3e 26 6e 62 73 70 3b 37 20 3c 2f 66 a2a"> 7 </f
20b0: 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 ont> <font color
20c0: 3d 22 23 43 44 35 35 35 35 22 3e 3c 69 3e 46 6f ="#CD5555"><i>Fo
20d0: 73 73 69 6c 73 20 66 6f 72 20 74 68 69 73 20 73 ssils for this s
20e0: 65 72 76 65 72 3c 2f 69 3e 3c 2f 66 6f 6e 74 3e erver</i></font>
20f0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
2100: 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 38 20 a52a2a"> 8
2110: 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f </font> <font co
2120: 6c 6f 72 3d 22 23 43 44 35 35 35 35 22 3e 3c 69 lor="#CD5555"><i
2130: 3e 26 6c 74 3b 75 6c 26 67 74 3b 3c 2f 69 3e 3c ><ul></i><
2140: 2f 66 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f /font>..<font co
2150: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e lor="#a52a2a">&n
2160: 62 73 70 3b 39 20 3c 2f 66 6f 6e 74 3e 20 3c 66 bsp;9 </font> <f
2170: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 43 44 35 35 ont color="#CD55
2180: 35 35 22 3e 3c 62 3e 45 4f 4d 3c 2f 62 3e 3c 2f 55"><b>EOM</b></
2190: 66 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c font>..<font col
21a0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
21b0: 73 70 3b 31 30 20 3c 2f 66 6f 6e 74 3e 0d 0a 3c sp;10 </font>..<
21c0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
21d0: 61 32 61 22 3e 26 6e 62 73 70 3b 31 31 20 3c 2f a2a"> 11 </
21e0: 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c 6f font> <font colo
21f0: 72 3d 22 23 38 42 30 30 38 42 22 3e 3c 62 3e 66 r="#8B008B"><b>f
2200: 6f 72 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 20 3c 66 or</b></font> <f
2210: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 ont color="#0000
2220: 30 30 22 3e 28 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 00">(</font><fon
2230: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 36 38 38 42 t color="#00688B
2240: 22 3e 40 66 69 6c 65 73 3c 2f 66 6f 6e 74 3e 3c ">@files</font><
2250: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 font color="#000
2260: 30 30 30 22 3e 29 3c 2f 66 6f 6e 74 3e 20 3c 66 000">)</font> <f
2270: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 ont color="#0000
2280: 30 30 22 3e 7b 3c 2f 66 6f 6e 74 3e 0d 0a 3c 66 00">{</font>..<f
2290: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
22a0: 32 61 22 3e 26 6e 62 73 70 3b 31 32 20 3c 2f 66 2a"> 12 </f
22b0: 6f 6e 74 3e 20 20 20 3c 66 6f 6e 74 20 63 6f 6c ont> <font col
22c0: 6f 72 3d 22 23 43 44 35 35 35 35 22 3e 73 7b 2e or="#CD5555">s{.
22d0: 2a 2f 7d 7b 7d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e */}{}</font><fon
22e0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 30 30 t color="#000000
22f0: 22 3e 3b 3c 2f 66 6f 6e 74 3e 0d 0a 3c 66 6f 6e ">;</font>..<fon
2300: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
2310: 22 3e 26 6e 62 73 70 3b 31 33 20 3c 2f 66 6f 6e "> 13 </fon
2320: 74 3e 20 20 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 t> <font color
2330: 3d 22 23 38 42 30 30 38 42 22 3e 3c 62 3e 6e 65 ="#8B008B"><b>ne
2340: 78 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 20 3c 66 xt</b></font> <f
2350: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 42 30 30 ont color="#8B00
2360: 38 42 22 3e 3c 62 3e 69 66 3c 2f 62 3e 3c 2f 66 8B"><b>if</b></f
2370: 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 ont> <font color
2380: 3d 22 23 43 44 35 35 35 35 22 3e 2f 7e 24 2f 3c ="#CD5555">/~$/<
2390: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
23a0: 72 3d 22 23 30 30 30 30 30 30 22 3e 3b 3c 2f 66 r="#000000">;</f
23b0: 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f ont>..<font colo
23c0: 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 73 r="#a52a2a">&nbs
23d0: 70 3b 31 34 20 3c 2f 66 6f 6e 74 3e 20 20 20 3c p;14 </font> <
23e0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 42 30 font color="#8B0
23f0: 30 38 42 22 3e 3c 62 3e 70 72 69 6e 74 3c 2f 62 08B"><b>print</b
2400: 3e 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 ></font> <font c
2410: 6f 6c 6f 72 3d 22 23 43 44 35 35 35 35 22 3e 26 olor="#CD5555">&
2420: 71 75 6f 74 3b 26 6c 74 3b 6c 69 26 67 74 3b 26 quot;<li>&
2430: 6c 74 3b 61 20 68 72 65 66 3d 26 23 33 39 3b 24 lt;a href='$
2440: 5f 26 23 33 39 3b 26 67 74 3b 24 5f 26 6c 74 3b _'>$_<
2450: 2f 61 26 67 74 3b 26 6c 74 3b 2f 6c 69 26 67 74 /a></li>
2460: 3b 5c 6e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e ;\n"</font>
2470: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 <font color="#00
2480: 30 30 30 30 22 3e 3b 3c 2f 66 6f 6e 74 3e 0d 0a 0000">;</font>..
2490: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
24a0: 32 61 32 61 22 3e 26 6e 62 73 70 3b 31 35 20 3c 2a2a"> 15 <
24b0: 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f 6c /font> <font col
24c0: 6f 72 3d 22 23 30 30 30 30 30 30 22 3e 7d 3c 2f or="#000000">}</
24d0: 66 6f 6e 74 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c font>..<font col
24e0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
24f0: 73 70 3b 31 36 20 3c 2f 66 6f 6e 74 3e 20 3c 66 sp;16 </font> <f
2500: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 42 30 30 ont color="#8B00
2510: 38 42 22 3e 3c 62 3e 70 72 69 6e 74 3c 2f 62 3e 8B"><b>print</b>
2520: 3c 2f 66 6f 6e 74 3e 20 3c 66 6f 6e 74 20 63 6f </font> <font co
2530: 6c 6f 72 3d 22 23 43 44 35 35 35 35 22 3e 26 71 lor="#CD5555">&q
2540: 75 6f 74 3b 26 6c 74 3b 2f 75 6c 26 67 74 3b 5c uot;</ul>\
2550: 6e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 n"</font><f
2560: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 ont color="#0000
2570: 30 30 22 3e 3b 3c 2f 66 6f 6e 74 3e 0d 0a 3c 2f 00">;</font>..</
2580: 70 72 65 3e 0d 0a 3c 2f 6e 6f 77 69 6b 69 3e 0d pre>..</nowiki>.
2590: 0a 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 ...The following
25a0: 20 3c 63 69 74 65 3e 61 70 61 63 68 65 32 3c 2f <cite>apache2</
25b0: 63 69 74 65 3e 20 63 6f 6e 66 69 67 75 72 61 74 cite> configurat
25c0: 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 ion can be used
25d0: 74 6f 20 72 75 6e 20 74 68 65 20 72 6f 6f 74 20 to run the root
25e0: 6f 66 20 61 20 77 65 62 20 73 69 74 65 20 77 69 of a web site wi
25f0: 74 68 20 66 6f 73 73 69 6c 2c 20 62 75 74 20 73 th fossil, but s
2600: 74 69 6c 6c 20 61 6c 6c 6f 77 20 6f 74 68 65 72 till allow other
2610: 20 73 65 72 76 69 63 65 73 20 2f 20 64 6f 63 75 services / docu
2620: 6d 65 6e 74 73 20 74 6f 20 62 65 20 72 65 61 63 ments to be reac
2630: 68 65 64 20 76 69 61 20 73 70 65 63 69 66 69 63 hed via specific
2640: 20 55 52 4c 73 2e 20 52 65 70 6c 61 63 65 20 22 URLs. Replace "
2650: 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 code.autonomo.us
2660: 22 20 77 69 74 68 20 79 6f 75 72 20 73 69 74 65 " with your site
2670: 27 73 20 6e 61 6d 65 20 61 6e 64 20 22 64 63 6c 's name and "dcl
2680: 61 72 6b 40 70 6f 62 6f 78 2e 63 6f 6d 22 20 77 ark@pobox.com" w
2690: 69 74 68 20 79 6f 75 72 20 65 6d 61 69 6c 2e 0d ith your email..
26a0: 0a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 4e ...<verbatim>..N
26b0: 61 6d 65 56 69 72 74 75 61 6c 48 6f 73 74 20 2a ameVirtualHost *
26c0: 3a 38 30 0d 0a 3c 56 69 72 74 75 61 6c 48 6f 73 :80..<VirtualHos
26d0: 74 20 2a 3a 38 30 3e 0d 0a 20 20 20 20 53 65 72 t *:80>.. Ser
26e0: 76 65 72 4e 61 6d 65 20 63 6f 64 65 2e 61 75 74 verName code.aut
26f0: 6f 6e 6f 6d 6f 2e 75 73 0d 0a 20 20 20 20 53 65 onomo.us.. Se
2700: 72 76 65 72 41 64 6d 69 6e 20 64 63 6c 61 72 6b rverAdmin dclark
2710: 40 70 6f 62 6f 78 2e 63 6f 6d 0d 0a 20 20 20 20 @pobox.com..
2720: 45 72 72 6f 72 4c 6f 67 20 2f 76 61 72 2f 6c 6f ErrorLog /var/lo
2730: 67 2f 61 70 61 63 68 65 32 2f 63 6f 64 65 2e 61 g/apache2/code.a
2740: 75 74 6f 6e 6f 6d 6f 2e 75 73 2d 65 72 72 6f 72 utonomo.us-error
2750: 2e 6c 6f 67 0d 0a 20 20 20 20 4c 6f 67 4c 65 76 .log.. LogLev
2760: 65 6c 20 77 61 72 6e 0d 0a 20 20 20 20 43 75 73 el warn.. Cus
2770: 74 6f 6d 4c 6f 67 20 2f 76 61 72 2f 6c 6f 67 2f tomLog /var/log/
2780: 61 70 61 63 68 65 32 2f 63 6f 64 65 2e 61 75 74 apache2/code.aut
2790: 6f 6e 6f 6d 6f 2e 75 73 2d 61 63 63 65 73 73 2e onomo.us-access.
27a0: 6c 6f 67 20 63 6f 6d 62 69 6e 65 64 0d 0a 20 20 log combined..
27b0: 20 20 53 65 72 76 65 72 53 69 67 6e 61 74 75 72 ServerSignatur
27c0: 65 20 4f 6e 0d 0a 0d 0a 20 20 20 20 44 6f 63 75 e On.... Docu
27d0: 6d 65 6e 74 52 6f 6f 74 20 2f 76 61 72 2f 77 77 mentRoot /var/ww
27e0: 77 2f 0d 0a 0d 0a 20 20 20 20 53 63 72 69 70 74 w/.... Script
27f0: 41 6c 69 61 73 20 2f 63 67 69 2d 62 69 6e 2f 20 Alias /cgi-bin/
2800: 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d 62 69 6e /usr/lib/cgi-bin
2810: 2f 0d 0a 20 20 20 20 3c 44 69 72 65 63 74 6f 72 /.. <Director
2820: 79 20 22 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d y "/usr/lib/cgi-
2830: 62 69 6e 22 3e 0d 0a 20 20 20 20 20 20 20 20 41 bin">.. A
2840: 6c 6c 6f 77 4f 76 65 72 72 69 64 65 20 4e 6f 6e llowOverride Non
2850: 65 0d 0a 20 20 20 20 20 20 20 20 4f 70 74 69 6f e.. Optio
2860: 6e 73 20 2b 45 78 65 63 43 47 49 20 2d 4d 75 6c ns +ExecCGI -Mul
2870: 74 69 56 69 65 77 73 20 2b 53 79 6d 4c 69 6e 6b tiViews +SymLink
2880: 73 49 66 4f 77 6e 65 72 4d 61 74 63 68 0d 0a 20 sIfOwnerMatch..
2890: 20 20 20 20 20 20 20 4f 72 64 65 72 20 61 6c 6c Order all
28a0: 6f 77 2c 64 65 6e 79 0d 0a 20 20 20 20 20 20 20 ow,deny..
28b0: 20 41 6c 6c 6f 77 20 66 72 6f 6d 20 61 6c 6c 0d Allow from all.
28c0: 0a 20 20 20 20 3c 2f 44 69 72 65 63 74 6f 72 79 . </Directory
28d0: 3e 0d 0a 0d 0a 20 20 20 20 23 20 46 6f 73 73 69 >.... # Fossi
28e0: 6c 20 53 43 4d 20 61 74 20 72 6f 6f 74 20 6f 66 l SCM at root of
28f0: 20 77 65 62 20 73 69 74 65 20 28 68 74 74 70 3a web site (http:
2900: 2f 2f 65 78 61 6d 70 6c 65 2e 63 6f 6d 29 20 63 //example.com) c
2910: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 2e 2e 0d onfiguration....
2920: 0a 20 20 20 20 52 65 77 72 69 74 65 45 6e 67 69 . RewriteEngi
2930: 6e 65 20 4f 6e 0d 0a 20 20 20 20 23 20 52 65 77 ne On.. # Rew
2940: 72 69 74 65 43 6f 6e 64 20 2d 20 4f 6e 65 20 66 riteCond - One f
2950: 6f 72 20 65 76 65 72 79 20 55 52 4c 20 77 65 20 or every URL we
2960: 64 6f 6e 27 74 20 77 61 6e 74 20 46 6f 73 73 69 don't want Fossi
2970: 6c 20 53 43 4d 20 74 6f 20 73 65 72 76 65 2e 20 l SCM to serve.
2980: 49 6e 20 74 68 65 0d 0a 20 20 20 20 23 20 20 20 In the.. #
2990: 20 20 20 20 20 20 20 20 20 20 20 20 65 78 61 6d exam
29a0: 70 6c 65 2c 20 72 65 71 75 65 73 74 73 20 74 68 ple, requests th
29b0: 61 74 20 67 6f 20 74 6f 20 74 68 65 20 2f 76 61 at go to the /va
29c0: 72 2f 77 77 77 2f 74 6d 70 20 64 69 72 65 63 74 r/www/tmp direct
29d0: 6f 72 79 20 61 6e 64 20 0d 0a 20 20 20 20 23 20 ory and .. #
29e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 th
29f0: 65 20 2f 75 73 72 2f 6c 69 62 2f 63 67 69 2d 62 e /usr/lib/cgi-b
2a00: 69 6e 20 64 69 72 65 63 74 6f 74 79 20 61 72 65 in directoty are
2a10: 20 69 67 6e 6f 72 65 64 20 62 79 20 46 6f 73 73 ignored by Foss
2a20: 69 6c 20 53 43 4d 2e 0d 0a 20 20 20 20 52 65 77 il SCM... Rew
2a30: 72 69 74 65 43 6f 6e 64 20 25 7b 52 45 51 55 45 riteCond %{REQUE
2a40: 53 54 5f 55 52 49 7d 20 21 5e 2f 74 6d 70 2f 2e ST_URI} !^/tmp/.
2a50: 2a 24 0d 0a 20 20 20 20 52 65 77 72 69 74 65 43 *$.. RewriteC
2a60: 6f 6e 64 20 25 7b 52 45 51 55 45 53 54 5f 55 52 ond %{REQUEST_UR
2a70: 49 7d 20 21 5e 2f 63 67 69 2d 62 69 6e 2f 2e 2a I} !^/cgi-bin/.*
2a80: 24 0d 0a 20 20 20 20 52 65 77 72 69 74 65 52 75 $.. RewriteRu
2a90: 6c 65 20 5e 28 2e 2a 29 24 20 2f 75 73 72 2f 6c le ^(.*)$ /usr/l
2aa0: 69 62 2f 63 67 69 2d 62 69 6e 2f 63 6f 64 65 2e ib/cgi-bin/code.
2ab0: 61 75 74 6f 6e 6f 6d 6f 2e 75 73 2f 24 31 20 5b autonomo.us/$1 [
2ac0: 54 3d 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d T=application/x-
2ad0: 68 74 74 70 64 2d 63 67 69 5d 0d 0a 3c 2f 56 69 httpd-cgi]..</Vi
2ae0: 72 74 75 61 6c 48 6f 73 74 3e 0d 0a 3c 2f 76 65 rtualHost>..</ve
2af0: 72 62 61 74 69 6d 3e 0d 0a 0d 0a 2f 75 73 72 2f rbatim>..../usr/
2b00: 6c 69 62 2f 63 67 69 2d 62 69 6e 2f 63 6f 64 65 lib/cgi-bin/code
2b10: 2e 61 75 74 6f 6e 6f 6d 6f 2e 75 73 20 69 73 20 .autonomo.us is
2b20: 6a 75 73 74 20 61 20 73 74 61 6e 64 61 72 64 20 just a standard
2b30: 66 6f 73 73 69 6c 20 43 47 49 20 66 69 6c 65 3b fossil CGI file;
2b40: 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 it looks like t
2b50: 68 69 73 3a 0d 0a 0d 0a 3c 76 65 72 62 61 74 69 his:....<verbati
2b60: 6d 3e 0d 0a 23 21 2f 75 73 72 2f 62 69 6e 2f 66 m>..#!/usr/bin/f
2b70: 6f 73 73 69 6c 0d 0a 72 65 70 6f 73 69 74 6f 72 ossil..repositor
2b80: 79 3a 20 2f 73 72 76 2f 66 6f 73 73 69 6c 2d 73 y: /srv/fossil-s
2b90: 63 6d 2f 63 6f 64 65 2e 61 75 74 6f 6e 6f 6d 6f cm/code.autonomo
2ba0: 2e 75 73 2e 66 6f 73 73 69 6c 2d 73 63 6d 0d 0a .us.fossil-scm..
2bb0: 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a 3c </verbatim>....<
2bc0: 68 33 3e 41 6e 6f 74 68 65 72 20 73 6f 6c 75 74 h3>Another solut
2bd0: 69 6f 6e 20 74 6f 20 3c 69 3e 61 75 74 6f 6d 61 ion to <i>automa
2be0: 74 69 63 61 6c 6c 79 3c 2f 69 3e 20 73 65 72 76 tically</i> serv
2bf0: 65 20 6d 75 6c 74 69 70 6c 65 20 72 65 70 6f 73 e multiple repos
2c00: 69 74 6f 72 69 65 73 3c 2f 68 33 3e 0d 0a 0d 0a itories</h3>....
2c10: 57 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 With the followi
2c20: 6e 67 20 43 47 49 20 73 63 72 69 70 74 20 28 49 ng CGI script (I
2c30: 20 68 61 76 65 20 6e 61 6d 65 64 20 69 74 20 3c have named it <
2c40: 73 61 6d 70 3e 70 3c 2f 73 61 6d 70 3e 20 73 69 samp>p</samp> si
2c50: 6d 70 6c 79 29 20 69 74 20 69 73 20 70 6f 73 73 mply) it is poss
2c60: 69 62 6c 65 20 74 6f 20 64 65 66 69 6e 65 20 61 ible to define a
2c70: 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 location where
2c80: 61 6c 6c 20 74 68 65 20 79 6f 75 72 20 72 65 70 all the your rep
2c90: 6f 73 69 74 6f 72 69 65 73 20 73 68 6f 75 6c 64 ositories should
2ca0: 20 62 65 20 6c 6f 63 61 74 65 64 20 28 69 6e 20 be located (in
2cb0: 74 68 69 73 20 65 78 61 6d 70 6c 65 3a 20 3c 73 this example: <s
2cc0: 61 6d 70 3e 2f 68 6f 6d 65 2f 72 65 70 6f 73 2f amp>/home/repos/
2cd0: 66 6f 73 73 69 6c 3c 2f 73 61 6d 70 3e 29 2e 20 fossil</samp>).
2ce0: 41 6c 6c 20 74 68 65 20 72 65 70 6f 73 69 74 6f All the reposito
2cf0: 72 69 65 73 20 61 72 65 20 6e 61 6d 65 64 20 61 ries are named a
2d00: 63 63 6f 72 64 69 6e 67 20 74 68 65 20 73 63 68 ccording the sch
2d10: 65 6d 65 20 3c 73 61 6d 70 3e 3c 70 72 6f 6a 65 eme <samp><proje
2d20: 63 74 20 6e 61 6d 65 3e 2e 66 73 6c 3c 2f 73 61 ct name>.fsl</sa
2d30: 6d 70 3e 20 66 6f 72 20 73 61 6b 65 20 6f 66 20 mp> for sake of
2d40: 74 68 69 73 20 65 78 61 6d 70 6c 65 2e 0d 0a 0d this example....
2d50: 0a 49 66 20 74 68 69 73 20 73 63 72 69 70 74 20 .If this script
2d60: 69 73 20 63 61 6c 6c 65 64 20 61 6c 6f 6e 65 20 is called alone
2d70: 28 6c 69 6b 65 20 65 2e 67 2e 3a 20 3c 73 61 6d (like e.g.: <sam
2d80: 70 3e 68 74 74 70 3a 2f 2f 79 6f 75 72 2e 73 65 p>http://your.se
2d90: 72 76 65 72 2e 68 65 72 65 2f 63 67 69 2d 62 69 rver.here/cgi-bi
2da0: 6e 2f 70 3c 2f 73 61 6d 70 3e 29 2c 20 69 74 20 n/p</samp>), it
2db0: 77 69 6c 6c 20 6c 69 73 74 20 61 6c 6c 20 72 65 will list all re
2dc0: 70 6f 73 69 74 6f 72 69 65 73 20 6c 6f 63 61 74 positories locat
2dd0: 65 64 20 75 6e 64 65 72 20 3c 73 61 6d 70 3e 24 ed under <samp>$
2de0: 52 45 50 4f 53 52 4f 4f 54 3c 2f 73 61 6d 70 3e REPOSROOT</samp>
2df0: 2c 20 3c 62 3e 69 66 3c 2f 62 3e 20 74 68 65 72 , <b>if</b> ther
2e00: 65 20 3c 62 3e 64 6f 65 73 20 6e 6f 74 3c 2f 62 e <b>does not</b
2e10: 3e 20 65 78 69 73 74 20 61 20 63 6f 72 72 65 73 > exist a corres
2e20: 70 6f 6e 64 69 6e 67 20 66 69 6c 65 20 3c 73 61 ponding file <sa
2e30: 6d 70 3e 2e 3c 70 72 6f 6a 65 63 74 20 6e 61 6d mp>.<project nam
2e40: 65 3e 3c 2f 73 61 6d 70 3e 20 28 74 68 61 74 20 e></samp> (that
2e50: 6d 65 63 68 61 6e 69 73 6d 20 69 73 20 75 73 65 mechanism is use
2e60: 64 20 74 6f 20 3c 69 3e 68 69 64 65 3c 2f 69 3e d to <i>hide</i>
2e70: 20 73 6f 6d 65 20 72 65 70 6f 73 69 74 6f 72 79 some repository
2e80: 20 69 6e 20 74 68 65 20 6c 69 73 74 69 6e 67 29 in the listing)
2e90: 2e 0d 0a 0d 0a 49 66 20 74 68 65 20 73 63 72 69 .....If the scri
2ea0: 70 74 20 69 73 20 63 61 6c 6c 65 64 20 6c 69 6b pt is called lik
2eb0: 65 20 65 2e 67 2e 20 3c 73 61 6d 70 3e 68 74 74 e e.g. <samp>htt
2ec0: 70 3a 2f 2f 79 6f 75 72 2e 73 65 72 76 65 72 2e p://your.server.
2ed0: 68 65 72 65 2f 63 67 69 2d 62 69 6e 2f 70 2f 3c here/cgi-bin/p/<
2ee0: 70 72 6f 6a 65 63 74 20 6e 61 6d 65 3e 3c 2f 73 project name></s
2ef0: 61 6d 70 3e 2c 20 74 68 65 6e 20 74 68 65 20 63 amp>, then the c
2f00: 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 72 65 70 orresponding rep
2f10: 6f 73 69 74 6f 72 79 20 77 69 6c 6c 20 62 65 20 ository will be
2f20: 73 65 6c 65 63 74 65 64 20 74 6f 20 77 6f 72 6b selected to work
2f30: 20 77 69 74 68 2e 0d 0a 0d 0a 54 68 65 20 6c 69 with.....The li
2f40: 6e 65 73 20 35 20 2d 20 38 20 69 6e 20 74 68 65 nes 5 - 8 in the
2f50: 20 73 63 72 69 70 74 20 62 65 6c 6f 77 20 61 6c script below al
2f60: 6c 6f 77 20 63 6f 6e 66 69 67 75 72 61 74 69 6f low configuratio
2f70: 6e 20 66 6f 72 20 79 6f 75 72 20 6e 65 65 64 73 n for your needs
2f80: 2e 20 59 6f 75 20 6d 75 73 74 20 63 6f 6e 66 69 . You must confi
2f90: 67 75 72 65 20 69 74 20 66 6f 72 3a 20 20 74 68 gure it for: th
2fa0: 65 20 66 6f 73 73 69 6c 20 62 69 6e 61 72 79 20 e fossil binary
2fb0: 74 6f 20 75 73 65 2c 20 74 68 65 20 6c 6f 63 61 to use, the loca
2fc0: 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 64 61 74 tion of your dat
2fd0: 61 62 61 73 65 73 2c 20 61 6e 64 20 74 68 65 20 abases, and the
2fe0: 65 78 74 65 6e 73 69 6f 6e 20 79 6f 75 72 20 72 extension your r
2ff0: 65 70 6f 73 69 74 6f 72 79 20 64 61 74 61 62 61 epository databa
3000: 73 65 73 20 68 61 76 65 2e 0d 0a 0d 0a 3c 6e 6f ses have.....<no
3010: 77 69 6b 69 3e 0d 0a 3c 66 6f 6e 74 20 66 61 63 wiki>..<font fac
3020: 65 3d 22 6d 6f 6e 6f 73 70 61 63 65 22 3e 0d 0a e="monospace">..
3030: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3040: 32 61 32 61 22 3e 26 6e 62 73 70 3b 31 20 3c 2f 2a2a"> 1 </
3050: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3060: 3d 22 23 30 30 30 30 66 66 22 3e 23 21 2f 62 69 ="#0000ff">#!/bi
3070: 6e 2f 73 68 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d n/sh</font><br>.
3080: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
3090: 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 32 20 3c 52a2a"> 2 <
30a0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
30b0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
30c0: 22 3e 26 6e 62 73 70 3b 33 20 3c 2f 66 6f 6e 74 "> 3 </font
30d0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ><font color="#0
30e0: 30 30 30 66 66 22 3e 23 23 23 20 43 6f 6e 66 69 000ff">### Confi
30f0: 67 75 72 61 74 69 6f 6e 20 73 65 63 74 69 6f 6e guration section
3100: 20 23 23 23 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d ###</font><br>.
3110: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
3120: 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 34 20 3c 52a2a"> 4 <
3130: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3140: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3150: 22 3e 26 6e 62 73 70 3b 35 20 3c 2f 66 6f 6e 74 "> 5 </font
3160: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ><font color="#0
3170: 30 38 62 38 62 22 3e 54 49 54 4c 45 3c 2f 66 6f 08b8b">TITLE</fo
3180: 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d nt>=<font color=
3190: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
31a0: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 ot;</b></font><f
31b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 ont color="#ff00
31c0: 66 66 22 3e 26 6c 74 3b 68 32 26 67 74 3b 46 6f ff"><h2>Fo
31d0: 73 73 69 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 ssil repositorie
31e0: 73 26 6c 74 3b 2f 68 32 26 67 74 3b 3c 2f 66 6f s</h2></fo
31f0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3200: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
3210: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 t;</b></font><br
3220: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
3230: 23 61 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 36 #a52a2a"> 6
3240: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
3250: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 46 4f lor="#008b8b">FO
3260: 53 53 49 4c 3c 2f 66 6f 6e 74 3e 3d 2f 75 73 72 SSIL</font>=/usr
3270: 2f 6c 6f 63 61 6c 2f 62 69 6e 2f 66 6f 73 73 69 /local/bin/fossi
3280: 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c l<br>..<font col
3290: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 26 6e 62 or="#a52a2a">&nb
32a0: 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e sp;7 </font><fon
32b0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
32c0: 22 3e 52 45 50 4f 53 52 4f 4f 54 3c 2f 66 6f 6e ">REPOSROOT</fon
32d0: 74 3e 3d 2f 68 6f 6d 65 2f 72 65 70 6f 73 2f 66 t>=/home/repos/f
32e0: 6f 73 73 69 6c 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 ossil<br>..<font
32f0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3300: 3e 26 6e 62 73 70 3b 38 20 3c 2f 66 6f 6e 74 3e > 8 </font>
3310: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 <font color="#00
3320: 38 62 38 62 22 3e 52 45 50 4f 53 45 58 54 3c 2f 8b8b">REPOSEXT</
3330: 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f font>=<font colo
3340: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
3350: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
3360: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
3370: 30 30 66 66 22 3e 2e 66 73 6c 3c 2f 66 6f 6e 74 00ff">.fsl</font
3380: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
3390: 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 52a2a"><b>"
33a0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
33b0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
33c0: 35 32 61 32 61 22 3e 26 6e 62 73 70 3b 39 20 3c 52a2a"> 9 <
33d0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
33e0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
33f0: 22 3e 31 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">10 </font><fon
3400: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 66 66 t color="#0000ff
3410: 22 3e 23 23 23 20 50 72 6f 63 65 73 73 69 6e 67 ">### Processing
3420: 20 73 65 63 74 69 6f 6e 20 2d 2d 20 6e 6f 74 68 section -- noth
3430: 69 6e 67 20 74 6f 20 63 6f 6e 66 69 67 75 72 65 ing to configure
3440: 20 68 65 72 65 21 20 23 23 23 3c 2f 66 6f 6e 74 here! ###</font
3450: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
3460: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 31 20 or="#a52a2a">11
3470: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
3480: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3490: 61 22 3e 31 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f a">12 </font><fo
34a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
34b0: 61 22 3e 3c 62 3e 73 65 74 3c 2f 62 3e 3c 2f 66 a"><b>set</b></f
34c0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
34d0: 22 23 30 30 38 62 38 62 22 3e 26 6e 62 73 70 3b "#008b8b">
34e0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
34f0: 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 2d 66 3c or="#6a5acd">-f<
3500: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3510: 72 3d 22 23 30 30 38 62 38 62 22 3e 26 6e 62 73 r="#008b8b">&nbs
3520: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
3530: 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3b 20 3c 66 6f bsp;</font>; <fo
3540: 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 30 30 66 nt color="#0000f
3550: 66 22 3e 23 20 64 69 73 61 62 6c 65 20 66 69 6c f"># disable fil
3560: 65 6e 61 6d 65 20 67 6c 6f 62 62 69 6e 67 3c 2f ename globbing</
3570: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 font><br>..<font
3580: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3590: 3e 31 33 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d >13 </font><br>.
35a0: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
35b0: 35 32 61 32 61 22 3e 31 34 20 3c 2f 66 6f 6e 74 52a2a">14 </font
35c0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 ><font color="#0
35d0: 30 30 30 66 66 22 3e 23 23 20 53 6f 6d 65 20 68 000ff">## Some h
35e0: 65 6c 70 65 72 20 66 75 6e 63 74 69 6f 6e 73 3c elper functions<
35f0: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3600: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3610: 22 3e 31 35 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e ">15 </font><br>
3620: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
3630: 61 35 32 61 32 61 22 3e 31 36 20 3c 2f 66 6f 6e a52a2a">16 </fon
3640: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3650: 30 30 38 62 38 62 22 3e 48 65 61 64 65 72 54 65 008b8b">HeaderTe
3660: 78 74 20 28 29 20 7b 3c 2f 66 6f 6e 74 3e 3c 62 xt () {</font><b
3670: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
3680: 22 23 61 35 32 61 32 61 22 3e 31 37 20 3c 2f 66 "#a52a2a">17 </f
3690: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
36a0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
36b0: 32 61 32 61 22 3e 3c 62 3e 69 66 20 3c 2f 62 3e 2a2a"><b>if </b>
36c0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
36d0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
36e0: 5b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 [</b></font>&nbs
36f0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
3700: 61 35 32 61 32 61 22 3e 3c 62 3e 2d 7a 3c 2f 62 a52a2a"><b>-z</b
3710: 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ></font> <f
3720: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
3730: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
3740: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
3750: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 68 lor="#a020f0">$h
3760: 65 61 64 65 72 57 72 69 74 74 65 6e 3c 2f 66 6f eaderWritten</fo
3770: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
3780: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
3790: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 t;</b></font>&nb
37a0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
37b0: 23 61 35 32 61 32 61 22 3e 3c 62 3e 5d 3c 2f 62 #a52a2a"><b>]</b
37c0: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
37d0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
37e0: 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 >;</b></font>&nb
37f0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
3800: 23 61 35 32 61 32 61 22 3e 3c 62 3e 74 68 65 6e #a52a2a"><b>then
3810: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
3820: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
3830: 35 32 61 32 61 22 3e 31 38 20 3c 2f 66 6f 6e 74 52a2a">18 </font
3840: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 > &nb
3850: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
3860: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
3870: 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>echo</b></font
3880: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
3890: 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 f00ff"> </f
38a0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
38b0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
38c0: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 ot;</b></font><f
38d0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 ont color="#ff00
38e0: 66 66 22 3e 43 6f 6e 74 65 6e 74 2d 74 79 70 65 ff">Content-type
38f0: 3a 20 74 65 78 74 2f 70 6c 61 69 6e 3b 20 63 68 : text/plain; ch
3900: 61 72 73 65 74 3d 69 73 6f 2d 38 38 35 39 2d 31 arset=iso-8859-1
3910: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
3920: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3930: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
3940: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
3950: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 31 39 20 or="#a52a2a">19
3960: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
3970: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c sp; <
3980: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3990: 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e a2a"><b>echo</b>
39a0: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
39b0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
39c0: 61 22 3e 32 30 20 3c 2f 66 6f 6e 74 3e 26 6e 62 a">20 </font>&nb
39d0: 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 sp; &
39e0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
39f0: 3d 22 23 30 30 38 62 38 62 22 3e 68 65 61 64 65 ="#008b8b">heade
3a00: 72 57 72 69 74 74 65 6e 3c 2f 66 6f 6e 74 3e 3d rWritten</font>=
3a10: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
3a20: 30 30 66 66 22 3e 31 3c 2f 66 6f 6e 74 3e 3c 62 00ff">1</font><b
3a30: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
3a40: 22 23 61 35 32 61 32 61 22 3e 32 31 20 3c 2f 66 "#a52a2a">21 </f
3a50: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
3a60: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3a70: 32 61 32 61 22 3e 3c 62 3e 66 69 3c 2f 62 3e 3c 2a2a"><b>fi</b><
3a80: 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e /font><br>..<fon
3a90: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3aa0: 22 3e 32 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">22 </font><fon
3ab0: 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 t color="#008b8b
3ac0: 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a ">}</font><br>..
3ad0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3ae0: 32 61 32 61 22 3e 32 33 20 3c 2f 66 6f 6e 74 3e 2a2a">23 </font>
3af0: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
3b00: 72 3d 22 23 61 35 32 61 32 61 22 3e 32 34 20 3c r="#a52a2a">24 <
3b10: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
3b20: 72 3d 22 23 30 30 38 62 38 62 22 3e 48 65 61 64 r="#008b8b">Head
3b30: 65 72 48 54 4d 4c 20 28 29 20 7b 3c 2f 66 6f 6e erHTML () {</fon
3b40: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
3b50: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 35 lor="#a52a2a">25
3b60: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
3b70: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
3b80: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 66 20 "#a52a2a"><b>if
3b90: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
3ba0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
3bb0: 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e ><b>[</b></font>
3bc0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
3bd0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 2d r="#a52a2a"><b>-
3be0: 7a 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 z</b></font>&nbs
3bf0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
3c00: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
3c10: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
3c20: 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 t color="#a020f0
3c30: 22 3e 24 68 65 61 64 65 72 57 72 69 74 74 65 6e ">$headerWritten
3c40: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
3c50: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3c60: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
3c70: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
3c80: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3c90: 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ]</b></font><fon
3ca0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
3cb0: 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "><b>;</b></font
3cc0: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
3cd0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
3ce0: 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c then</b></font><
3cf0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
3d00: 3d 22 23 61 35 32 61 32 61 22 3e 32 36 20 3c 2f ="#a52a2a">26 </
3d10: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
3d20: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
3d30: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
3d40: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
3d50: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
3d60: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
3d70: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
3d80: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
3d90: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
3da0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
3db0: 66 66 30 30 66 66 22 3e 43 6f 6e 74 65 6e 74 2d ff00ff">Content-
3dc0: 74 79 70 65 3a 20 74 65 78 74 2f 68 74 6d 6c 3b type: text/html;
3dd0: 20 63 68 61 72 73 65 74 3d 69 73 6f 2d 38 38 35 charset=iso-885
3de0: 39 2d 31 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 9-1</font><font
3df0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3e00: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
3e10: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
3e20: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
3e30: 32 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 27 </font>
3e40: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
3e50: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
3e60: 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c a52a2a"><b>echo<
3e70: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a /b></font><br>..
3e80: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
3e90: 32 61 32 61 22 3e 32 38 20 3c 2f 66 6f 6e 74 3e 2a2a">28 </font>
3ea0: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
3eb0: 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f p; <font co
3ec0: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 68 65 lor="#008b8b">he
3ed0: 61 64 65 72 57 72 69 74 74 65 6e 3c 2f 66 6f 6e aderWritten</fon
3ee0: 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t>=<font color="
3ef0: 23 66 66 30 30 66 66 22 3e 31 3c 2f 66 6f 6e 74 #ff00ff">1</font
3f00: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
3f10: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 32 39 20 or="#a52a2a">29
3f20: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
3f30: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
3f40: 23 61 35 32 61 32 61 22 3e 3c 62 3e 66 69 3c 2f #a52a2a"><b>fi</
3f50: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
3f60: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
3f70: 61 32 61 22 3e 33 30 20 3c 2f 66 6f 6e 74 3e 3c a2a">30 </font><
3f80: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
3f90: 62 38 62 22 3e 7d 3c 2f 66 6f 6e 74 3e 3c 62 72 b8b">}</font><br
3fa0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
3fb0: 23 61 35 32 61 32 61 22 3e 33 31 20 3c 2f 66 6f #a52a2a">31 </fo
3fc0: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
3fd0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 olor="#a52a2a">3
3fe0: 32 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 2 </font><font c
3ff0: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 45 olor="#008b8b">E
4000: 72 72 6f 72 20 28 29 20 7b 3c 2f 66 6f 6e 74 3e rror () {</font>
4010: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
4020: 72 3d 22 23 61 35 32 61 32 61 22 3e 33 33 20 3c r="#a52a2a">33 <
4030: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
4040: 70 3b 48 65 61 64 65 72 48 54 4d 4c 3c 62 72 3e p;HeaderHTML<br>
4050: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
4060: 61 35 32 61 32 61 22 3e 33 34 20 3c 2f 66 6f 6e a52a2a">34 </fon
4070: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
4080: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
4090: 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2a"><b>echo</b><
40a0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
40b0: 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 r="#ff00ff">&nbs
40c0: 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 p;</font><font c
40d0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
40e0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
40f0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4100: 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 70 26 67 #ff00ff"><p&g
4110: 74 3b 26 6c 74 3b 66 6f 6e 74 20 63 6f 6c 6f 72 t;<font color
4120: 3d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f =</font><font co
4130: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4140: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
4150: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
4160: 66 66 30 30 66 66 22 3e 72 65 64 3c 2f 66 6f 6e ff00ff">red</fon
4170: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
4180: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
4190: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
41a0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
41b0: 22 3e 26 67 74 3b 45 52 52 4f 52 3a 20 3c 2f 66 ">>ERROR: </f
41c0: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
41d0: 22 23 61 30 32 30 66 30 22 3e 24 31 3c 2f 66 6f "#a020f0">$1</fo
41e0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
41f0: 23 66 66 30 30 66 66 22 3e 26 6c 74 3b 2f 66 6f #ff00ff"></fo
4200: 6e 74 26 67 74 3b 26 6c 74 3b 2f 70 26 67 74 3b nt></p>
4210: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4220: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4230: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
4240: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
4250: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 35 20 or="#a52a2a">35
4260: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
4270: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
4280: 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 78 69 74 #a52a2a"><b>exit
4290: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
42a0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ;<font color="#f
42b0: 66 30 30 66 66 22 3e 31 3c 2f 66 6f 6e 74 3e 3c f00ff">1</font><
42c0: 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 br>..<font color
42d0: 3d 22 23 61 35 32 61 32 61 22 3e 33 36 20 3c 2f ="#a52a2a">36 </
42e0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
42f0: 3d 22 23 30 30 38 62 38 62 22 3e 7d 3c 2f 66 6f ="#008b8b">}</fo
4300: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
4310: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 olor="#a52a2a">3
4320: 37 20 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 7 </font><br>..<
4330: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4340: 61 32 61 22 3e 33 38 20 3c 2f 66 6f 6e 74 3e 3c a2a">38 </font><
4350: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 font color="#008
4360: 62 38 62 22 3e 50 20 28 29 20 7b 3c 2f 66 6f 6e b8b">P () {</fon
4370: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
4380: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 33 39 lor="#a52a2a">39
4390: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
43a0: 62 73 70 3b 48 65 61 64 65 72 54 65 78 74 3c 62 bsp;HeaderText<b
43b0: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
43c0: 22 23 61 35 32 61 32 61 22 3e 34 30 20 3c 2f 66 "#a52a2a">40 </f
43d0: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
43e0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
43f0: 32 61 32 61 22 3e 3c 62 3e 66 6f 72 20 3c 2f 62 2a2a"><b>for </b
4400: 3e 3c 2f 66 6f 6e 74 3e 76 61 72 20 3c 66 6f 6e ></font>var <fon
4410: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
4420: 22 3e 3c 62 3e 69 6e 3c 2f 62 3e 3c 2f 66 6f 6e "><b>in</b></fon
4430: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
4440: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 2a lor="#a020f0">$*
4450: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4460: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
4470: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ;</b></font>&nbs
4480: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
4490: 61 35 32 61 32 61 22 3e 3c 62 3e 64 6f 3c 2f 62 a52a2a"><b>do</b
44a0: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 ></font><br>..<f
44b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
44c0: 32 61 22 3e 34 31 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">41 </font>&n
44d0: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
44e0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
44f0: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 r="#a52a2a"><b>e
4500: 76 61 6c 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e val</b></font>&n
4510: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
4520: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 "#a52a2a"><b>ech
4530: 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e o</b></font><fon
4540: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
4550: 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c "> </font><
4560: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
4570: 30 66 30 22 3e 24 76 61 72 3c 2f 66 6f 6e 74 3e 0f0">$var</font>
4580: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
4590: 30 30 66 66 22 3e 26 6e 62 73 70 3b 3d 20 3c 2f 00ff"> = </
45a0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
45b0: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
45c0: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
45d0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 font color="#6a5
45e0: 61 63 64 22 3e 5c 24 3c 2f 66 6f 6e 74 3e 3c 66 acd">\$</font><f
45f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
4600: 66 30 22 3e 24 76 61 72 3c 2f 66 6f 6e 74 3e 3c f0">$var</font><
4610: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4620: 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f a2a"><b>"</
4630: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
4640: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4650: 61 32 61 22 3e 34 32 20 3c 2f 66 6f 6e 74 3e 26 a2a">42 </font>&
4660: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
4670: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
4680: 3e 3c 62 3e 64 6f 6e 65 3c 2f 62 3e 3c 2f 66 6f ><b>done</b></fo
4690: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
46a0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 34 olor="#a52a2a">4
46b0: 33 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 3 </font><font c
46c0: 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 7d olor="#008b8b">}
46d0: 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f </font><br>..<fo
46e0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
46f0: 61 22 3e 34 34 20 3c 2f 66 6f 6e 74 3e 3c 62 72 a">44 </font><br
4700: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
4710: 23 61 35 32 61 32 61 22 3e 34 35 20 3c 2f 66 6f #a52a2a">45 </fo
4720: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4730: 23 30 30 30 30 66 66 22 3e 23 23 20 44 6f 20 74 #0000ff">## Do t
4740: 68 65 20 72 65 61 6c 20 77 6f 72 6b 20 68 65 72 he real work her
4750: 65 20 2e 2e 2e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e e ...</font><br>
4760: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
4770: 61 35 32 61 32 61 22 3e 34 36 20 3c 2f 66 6f 6e a52a2a">46 </fon
4780: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
4790: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 34 37 lor="#a52a2a">47
47a0: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
47b0: 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 3e 70 72 lor="#008b8b">pr
47c0: 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f oject</font>=<fo
47d0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 nt color="#6a5ac
47e0: 64 22 3e 60 65 63 68 6f 20 3c 2f 66 6f 6e 74 3e d">`echo </font>
47f0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 <font color="#a0
4800: 32 30 66 30 22 3e 24 50 41 54 48 5f 49 4e 46 4f 20f0">$PATH_INFO
4810: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4820: 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 or="#6a5acd">&nb
4830: 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 sp;</font><font
4840: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
4850: 3c 62 3e 7c 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c <b>|</b></font><
4860: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 font color="#6a5
4870: 61 63 64 22 3e 26 6e 62 73 70 3b 73 65 64 20 2d acd"> sed -
4880: 65 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 e </font><font c
4890: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
48a0: 62 3e 27 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 b>'</b></font><f
48b0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 ont color="#ff00
48c0: 66 66 22 3e 73 21 2f 3c 2f 66 6f 6e 74 3e 3c 66 ff">s!/</font><f
48d0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
48e0: 63 64 22 3e 5c 28 3c 2f 66 6f 6e 74 3e 3c 66 6f cd">\(</font><fo
48f0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 nt color="#ff00f
4900: 66 22 3e 5b 5e 2f 5d 2a 3c 2f 66 6f 6e 74 3e 3c f">[^/]*</font><
4910: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 font color="#6a5
4920: 61 63 64 22 3e 5c 29 3c 2f 66 6f 6e 74 3e 3c 66 acd">\)</font><f
4930: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 ont color="#ff00
4940: 66 66 22 3e 2e 2a 21 5c 31 21 3c 2f 66 6f 6e 74 ff">.*!\1!</font
4950: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4960: 35 32 61 32 61 22 3e 3c 62 3e 27 7c 3c 2f 62 3e 52a2a"><b>'|</b>
4970: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4980: 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 or="#6a5acd">&nb
4990: 73 70 3b 74 72 20 3c 2f 66 6f 6e 74 3e 3c 66 6f sp;tr </font><fo
49a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
49b0: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
49c0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
49d0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 5b 41 2d or="#ff00ff">[A-
49e0: 5a 5d 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 Z]</font><font c
49f0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
4a00: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
4a10: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4a20: 23 36 61 35 61 63 64 22 3e 26 6e 62 73 70 3b 3c #6a5acd"> <
4a30: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4a40: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
4a50: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
4a60: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 <font color="#ff
4a70: 30 30 66 66 22 3e 5b 61 2d 7a 5d 3c 2f 66 6f 6e 00ff">[a-z]</fon
4a80: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
4a90: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
4aa0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
4ab0: 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 t color="#6a5acd
4ac0: 22 3e 60 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a ">`</font><br>..
4ad0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4ae0: 32 61 32 61 22 3e 34 38 20 3c 2f 66 6f 6e 74 3e 2a2a">48 </font>
4af0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 <font color="#00
4b00: 38 62 38 62 22 3e 72 65 70 6f 73 3c 2f 66 6f 6e 8b8b">repos</fon
4b10: 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 t>=<font color="
4b20: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
4b30: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f t;</b></font><fo
4b40: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
4b50: 30 22 3e 24 52 45 50 4f 53 52 4f 4f 54 3c 2f 66 0">$REPOSROOT</f
4b60: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
4b70: 22 23 66 66 30 30 66 66 22 3e 2f 3c 2f 66 6f 6e "#ff00ff">/</fon
4b80: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
4b90: 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 a020f0">$project
4ba0: 24 52 45 50 4f 53 45 58 54 3c 2f 66 6f 6e 74 3e $REPOSEXT</font>
4bb0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4bc0: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
4bd0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a /b></font><br>..
4be0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4bf0: 32 61 32 61 22 3e 34 39 20 3c 2f 66 6f 6e 74 3e 2a2a">49 </font>
4c00: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
4c10: 72 3d 22 23 61 35 32 61 32 61 22 3e 35 30 20 3c r="#a52a2a">50 <
4c20: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4c30: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 69 r="#a52a2a"><b>i
4c40: 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f f </b></font><fo
4c50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
4c60: 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>[</b></fon
4c70: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
4c80: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
4c90: 3e 2d 72 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e >-r</b></font>&n
4ca0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
4cb0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 "#a52a2a"><b>&qu
4cc0: 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 ot;</b></font><f
4cd0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
4ce0: 66 30 22 3e 24 72 65 70 6f 73 3c 2f 66 6f 6e 74 f0">$repos</font
4cf0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4d00: 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 52a2a"><b>"
4d10: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
4d20: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
4d30: 35 32 61 32 61 22 3e 3c 62 3e 5d 3c 2f 62 3e 3c 52a2a"><b>]</b><
4d40: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4d50: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 3b r="#a52a2a"><b>;
4d60: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
4d70: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
4d80: 35 32 61 32 61 22 3e 3c 62 3e 74 68 65 6e 3c 2f 52a2a"><b>then</
4d90: 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c b></font><br>..<
4da0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 font color="#a52
4db0: 61 32 61 22 3e 35 31 20 3c 2f 66 6f 6e 74 3e 26 a2a">51 </font>&
4dc0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
4dd0: 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 38 62 22 color="#008b8b"
4de0: 3e 50 41 54 48 5f 49 4e 46 4f 3c 2f 66 6f 6e 74 >PATH_INFO</font
4df0: 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 >=<font color="#
4e00: 36 61 35 61 63 64 22 3e 60 65 63 68 6f 20 3c 2f 6a5acd">`echo </
4e10: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
4e20: 3d 22 23 61 30 32 30 66 30 22 3e 24 52 45 51 55 ="#a020f0">$REQU
4e30: 45 53 54 5f 55 52 49 3c 2f 66 6f 6e 74 3e 3c 66 EST_URI</font><f
4e40: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
4e50: 63 64 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 cd"> </font
4e60: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4e70: 35 32 61 32 61 22 3e 3c 62 3e 7c 3c 2f 62 3e 3c 52a2a"><b>|</b><
4e80: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4e90: 72 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 73 r="#6a5acd">&nbs
4ea0: 70 3b 73 65 64 20 2d 65 20 3c 2f 66 6f 6e 74 3e p;sed -e </font>
4eb0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
4ec0: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
4ed0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
4ee0: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
4ef0: 73 21 5e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 s!^</font><font
4f00: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
4f10: 24 53 43 52 49 50 54 5f 4e 41 4d 45 3c 2f 66 6f $SCRIPT_NAME</fo
4f20: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
4f30: 23 66 66 30 30 66 66 22 3e 2f 3c 2f 66 6f 6e 74 #ff00ff">/</font
4f40: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
4f50: 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 3c 020f0">$project<
4f60: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
4f70: 72 3d 22 23 36 61 35 61 63 64 22 3e 5c 5c 3c 2f r="#6a5acd">\\</
4f80: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
4f90: 3d 22 23 66 66 30 30 66 66 22 3e 28 5b 5e 3f 5d ="#ff00ff">([^?]
4fa0: 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f *</font><font co
4fb0: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 5c 5c lor="#6a5acd">\\
4fc0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
4fd0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 29 2e 2a or="#ff00ff">).*
4fe0: 21 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f !</font><font co
4ff0: 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e 5c 5c lor="#6a5acd">\\
5000: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
5010: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 31 21 3c or="#ff00ff">1!<
5020: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5030: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
5040: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
5050: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 <font color="#6a
5060: 35 61 63 64 22 3e 60 3c 2f 66 6f 6e 74 3e 3c 62 5acd">`</font><b
5070: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
5080: 22 23 61 35 32 61 32 61 22 3e 35 32 20 3c 2f 66 "#a52a2a">52 </f
5090: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
50a0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 6e 62 "#a52a2a"><b>&nb
50b0: 73 70 3b 26 6e 62 73 70 3b 3a 3c 2f 62 3e 3c 2f sp; :</b></
50c0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 font> <font
50d0: 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 color="#a020f0"
50e0: 3e 24 7b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 >${</font><font
50f0: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
5100: 50 41 54 48 5f 49 4e 46 4f 3c 2f 66 6f 6e 74 3e PATH_INFO</font>
5110: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5120: 32 61 32 61 22 3e 3c 62 3e 3a 3d 3c 2f 62 3e 3c 2a2a"><b>:=</b><
5130: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5140: 72 3d 22 23 66 66 30 30 66 66 22 3e 2f 3c 2f 66 r="#ff00ff">/</f
5150: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
5160: 22 23 61 30 32 30 66 30 22 3e 7d 3c 2f 66 6f 6e "#a020f0">}</fon
5170: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
5180: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 35 33 lor="#a52a2a">53
5190: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
51a0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
51b0: 22 23 30 30 38 62 38 62 22 3e 53 43 52 49 50 54 "#008b8b">SCRIPT
51c0: 5f 4e 41 4d 45 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f _NAME</font>=<fo
51d0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
51e0: 30 22 3e 24 53 43 52 49 50 54 5f 4e 41 4d 45 3c 0">$SCRIPT_NAME<
51f0: 2f 66 6f 6e 74 3e 2f 3c 66 6f 6e 74 20 63 6f 6c /font>/<font col
5200: 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 or="#a020f0">$pr
5210: 6f 6a 65 63 74 3c 2f 66 6f 6e 74 3e 3c 62 72 3e oject</font><br>
5220: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
5230: 61 35 32 61 32 61 22 3e 35 34 20 3c 2f 66 6f 6e a52a2a">54 </fon
5240: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
5250: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 30 30 38 62 ont color="#008b
5260: 38 62 22 3e 54 45 4d 50 46 49 4c 45 3c 2f 66 6f 8b">TEMPFILE</fo
5270: 6e 74 3e 3d 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d nt>=<font color=
5280: 22 23 36 61 35 61 63 64 22 3e 60 6d 6b 74 65 6d "#6a5acd">`mktem
5290: 70 20 2f 74 6d 70 2f 66 6f 73 73 69 6c 2d 3c 2f p /tmp/fossil-</
52a0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
52b0: 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a ="#a020f0">$proj
52c0: 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ect</font><font
52d0: 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 3e color="#6a5acd">
52e0: 2e 58 58 58 58 58 58 60 3c 2f 66 6f 6e 74 3e 26 .XXXXXX`</font>&
52f0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
5300: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 7c 7c ="#a52a2a"><b>||
5310: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 </b></font> 
5320: 3b 45 72 72 6f 72 20 3c 66 6f 6e 74 20 63 6f 6c ;Error <font col
5330: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
5340: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
5350: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
5360: 66 30 30 66 66 22 3e 43 6f 75 6c 64 6e 27 74 20 f00ff">Couldn't
5370: 63 72 65 61 74 65 20 74 65 6d 70 66 69 6c 65 3c create tempfile<
5380: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5390: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
53a0: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
53b0: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
53c0: 72 3d 22 23 61 35 32 61 32 61 22 3e 35 35 20 3c r="#a52a2a">55 <
53d0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
53e0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
53f0: 61 35 32 61 32 61 22 3e 3c 62 3e 74 72 61 70 3c a52a2a"><b>trap<
5400: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
5410: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5420: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
5430: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
5440: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
5450: 72 6d 20 2d 66 20 3c 2f 66 6f 6e 74 3e 3c 66 6f rm -f </font><fo
5460: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
5470: 30 22 3e 24 54 45 4d 50 46 49 4c 45 3c 2f 66 6f 0">$TEMPFILE</fo
5480: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
5490: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
54a0: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 t;</b></font>&nb
54b0: 73 70 3b 45 58 49 54 20 51 55 49 54 20 49 4e 54 sp;EXIT QUIT INT
54c0: 20 54 45 52 4d 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 TERM<br>..<font
54d0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
54e0: 3e 35 36 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 >56 </font> 
54f0: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
5500: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
5510: 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c echo</b></font><
5520: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
5530: 30 66 66 22 3e 26 6e 62 73 70 3b 72 65 70 6f 73 0ff"> repos
5540: 69 74 6f 72 79 3a 20 3c 2f 66 6f 6e 74 3e 3c 66 itory: </font><f
5550: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 ont color="#a020
5560: 66 30 22 3e 24 72 65 70 6f 73 3c 2f 66 6f 6e 74 f0">$repos</font
5570: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
5580: 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f 66 f00ff"> </f
5590: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
55a0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 67 74 "#a52a2a"><b>>
55b0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ;</b></font>&nbs
55c0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
55d0: 61 30 32 30 66 30 22 3e 24 54 45 4d 50 46 49 4c a020f0">$TEMPFIL
55e0: 45 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 E</font><br>..<f
55f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5600: 32 61 22 3e 35 37 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">57 </font>&n
5610: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
5620: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
5630: 24 46 4f 53 53 49 4c 3c 2f 66 6f 6e 74 3e 26 6e $FOSSIL</font>&n
5640: 62 73 70 3b 63 67 69 20 3c 66 6f 6e 74 20 63 6f bsp;cgi <font co
5650: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 54 lor="#a020f0">$T
5660: 45 4d 50 46 49 4c 45 3c 2f 66 6f 6e 74 3e 3c 62 EMPFILE</font><b
5670: 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d r>..<font color=
5680: 22 23 61 35 32 61 32 61 22 3e 35 38 20 3c 2f 66 "#a52a2a">58 </f
5690: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
56a0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 65 6c 69 "#a52a2a"><b>eli
56b0: 66 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 f</b></font>&nbs
56c0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
56d0: 61 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e a52a2a"><b>[</b>
56e0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
56f0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5700: 61 22 3e 3c 62 3e 2d 7a 3c 2f 62 3e 3c 2f 66 6f a"><b>-z</b></fo
5710: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
5720: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
5730: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
5740: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
5750: 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 #a020f0">$projec
5760: 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f t</font><font co
5770: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5780: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
5790: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
57a0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
57b0: 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f >]</b></font><fo
57c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
57d0: 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>;</b></fon
57e0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
57f0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5800: 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e >then</b></font>
5810: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
5820: 72 3d 22 23 61 35 32 61 32 61 22 3e 35 39 20 3c r="#a52a2a">59 <
5830: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
5840: 70 3b 48 65 61 64 65 72 48 54 4d 4c 3c 62 72 3e p;HeaderHTML<br>
5850: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
5860: 61 35 32 61 32 61 22 3e 36 30 20 3c 2f 66 6f 6e a52a2a">60 </fon
5870: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
5880: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5890: 32 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2a"><b>echo</b><
58a0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
58b0: 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 r="#ff00ff">&nbs
58c0: 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 p;</font><font c
58d0: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
58e0: 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f b>"</b></fo
58f0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
5900: 23 61 30 32 30 66 30 22 3e 24 54 49 54 4c 45 3c #a020f0">$TITLE<
5910: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
5920: 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 r="#a52a2a"><b>&
5930: 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e quot;</b></font>
5940: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
5950: 72 3d 22 23 61 35 32 61 32 61 22 3e 36 31 20 3c r="#a52a2a">61 <
5960: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
5970: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
5980: 61 35 32 61 32 61 22 3e 3c 62 3e 65 63 68 6f 3c a52a2a"><b>echo<
5990: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
59a0: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
59b0: 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f </font><fo
59c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
59d0: 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e a"><b>"</b>
59e0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
59f0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 26 6c 74 or="#ff00ff"><
5a00: 3b 75 6c 26 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 ;ul></font><f
5a10: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5a20: 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 2a"><b>"</b
5a30: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 ></font><br>..<f
5a40: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5a50: 32 61 22 3e 36 32 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">62 </font>&n
5a60: 62 73 70 3b 26 6e 62 73 70 3b 66 69 6e 64 20 3c bsp; find <
5a70: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 font color="#a02
5a80: 30 66 30 22 3e 24 52 45 50 4f 53 52 4f 4f 54 3c 0f0">$REPOSROOT<
5a90: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2d 6e 61 6d /font> -nam
5aa0: 65 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 e <font color="#
5ab0: 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 a52a2a"><b>"
5ac0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ;</b></font><fon
5ad0: 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 t color="#ff00ff
5ae0: 22 3e 2a 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ">*</font><font
5af0: 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e color="#a020f0">
5b00: 24 52 45 50 4f 53 45 58 54 3c 2f 66 6f 6e 74 3e $REPOSEXT</font>
5b10: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5b20: 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f 74 3b 3c 2a2a"><b>"<
5b30: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
5b40: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 <font color="#a5
5b50: 32 61 32 61 22 3e 3c 62 3e 7c 3c 2f 62 3e 3c 2f 2a2a"><b>|</b></
5b60: 66 6f 6e 74 3e 26 6e 62 73 70 3b 5c 3c 62 72 3e font> \<br>
5b70: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
5b80: 61 35 32 61 32 61 22 3e 36 33 20 3c 2f 66 6f 6e a52a2a">63 </fon
5b90: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 77 68 t> wh
5ba0: 69 6c 65 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ile <font color=
5bb0: 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 72 65 61 "#a52a2a"><b>rea
5bc0: 64 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 d</b></font>&nbs
5bd0: 70 3b 72 65 70 6f 73 3c 66 6f 6e 74 20 63 6f 6c p;repos<font col
5be0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
5bf0: 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ;</b></font>&nbs
5c00: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
5c10: 61 35 32 61 32 61 22 3e 3c 62 3e 64 6f 3c 2f 62 a52a2a"><b>do</b
5c20: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 ></font><br>..<f
5c30: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 ont color="#a52a
5c40: 32 61 22 3e 36 34 20 3c 2f 66 6f 6e 74 3e 26 6e 2a">64 </font>&n
5c50: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
5c60: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
5c70: 72 3d 22 23 30 30 38 62 38 62 22 3e 70 72 6f 6a r="#008b8b">proj
5c80: 65 63 74 3c 2f 66 6f 6e 74 3e 3d 3c 66 6f 6e 74 ect</font>=<font
5c90: 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 63 64 22 color="#6a5acd"
5ca0: 3e 60 62 61 73 65 6e 61 6d 65 20 3c 2f 66 6f 6e >`basename </fon
5cb0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
5cc0: 61 30 32 30 66 30 22 3e 24 72 65 70 6f 73 3c 2f a020f0">$repos</
5cd0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
5ce0: 3d 22 23 36 61 35 61 63 64 22 3e 26 6e 62 73 70 ="#6a5acd"> 
5cf0: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
5d00: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 52 lor="#a020f0">$R
5d10: 45 50 4f 53 45 58 54 3c 2f 66 6f 6e 74 3e 3c 66 EPOSEXT</font><f
5d20: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 36 61 35 61 ont color="#6a5a
5d30: 63 64 22 3e 60 3c 2f 66 6f 6e 74 3e 3c 62 72 3e cd">`</font><br>
5d40: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
5d50: 61 35 32 61 32 61 22 3e 36 35 20 3c 2f 66 6f 6e a52a2a">65 </fon
5d60: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
5d70: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
5d80: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
5d90: 3c 62 3e 69 66 20 3c 2f 62 3e 3c 2f 66 6f 6e 74 <b>if </b></font
5da0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
5db0: 35 32 61 32 61 22 3e 3c 62 3e 5b 3c 2f 62 3e 3c 52a2a"><b>[</b><
5dc0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
5dd0: 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 t color="#a52a2a
5de0: 22 3e 3c 62 3e 2d 66 3c 2f 62 3e 3c 2f 66 6f 6e "><b>-f</b></fon
5df0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
5e00: 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 24 72 lor="#a020f0">$r
5e10: 65 70 6f 73 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 epos</font> 
5e20: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ;<font color="#a
5e30: 35 32 61 32 61 22 3e 3c 62 3e 2d 61 3c 2f 62 3e 52a2a"><b>-a</b>
5e40: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
5e50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5e60: 61 22 3e 3c 62 3e 21 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>!</b></fon
5e70: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
5e80: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5e90: 3e 2d 65 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e >-e</b></font>&n
5ea0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
5eb0: 22 23 61 30 32 30 66 30 22 3e 24 52 45 50 4f 53 "#a020f0">$REPOS
5ec0: 52 4f 4f 54 3c 2f 66 6f 6e 74 3e 2f 2e 3c 66 6f ROOT</font>/.<fo
5ed0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 nt color="#a020f
5ee0: 30 22 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 0">$project</fon
5ef0: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
5f00: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5f10: 3e 5d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f >]</b></font><fo
5f20: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
5f30: 61 22 3e 3c 62 3e 3b 3c 2f 62 3e 3c 2f 66 6f 6e a"><b>;</b></fon
5f40: 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f t> <font co
5f50: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
5f60: 3e 74 68 65 6e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e >then</b></font>
5f70: 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f <br>..<font colo
5f80: 72 3d 22 23 61 35 32 61 32 61 22 3e 36 36 20 3c r="#a52a2a">66 <
5f90: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
5fa0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e p; &n
5fb0: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
5fc0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
5fd0: 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f 66 6f 6e <b>echo</b></fon
5fe0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
5ff0: 66 66 30 30 66 66 22 3e 26 6e 62 73 70 3b 3c 2f ff00ff"> </
6000: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
6010: 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 ="#a52a2a"><b>&q
6020: 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c uot;</b></font><
6030: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 66 30 font color="#ff0
6040: 30 66 66 22 3e 26 6c 74 3b 6c 69 26 67 74 3b 26 0ff"><li>&
6050: 6c 74 3b 61 20 68 72 65 66 3d 27 3c 2f 66 6f 6e lt;a href='</fon
6060: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
6070: 61 30 32 30 66 30 22 3e 24 7b 3c 2f 66 6f 6e 74 a020f0">${</font
6080: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 ><font color="#a
6090: 30 32 30 66 30 22 3e 52 45 51 55 45 53 54 5f 55 020f0">REQUEST_U
60a0: 52 49 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 RI</font><font c
60b0: 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 22 3e 7d olor="#a020f0">}
60c0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
60d0: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 2f 3c 2f or="#ff00ff">/</
60e0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
60f0: 3d 22 23 61 30 32 30 66 30 22 3e 24 70 72 6f 6a ="#a020f0">$proj
6100: 65 63 74 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ect</font><font
6110: 63 6f 6c 6f 72 3d 22 23 66 66 30 30 66 66 22 3e color="#ff00ff">
6120: 27 26 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e '></font><fon
6130: 74 20 63 6f 6c 6f 72 3d 22 23 61 30 32 30 66 30 t color="#a020f0
6140: 22 3e 24 70 72 6f 6a 65 63 74 3c 2f 66 6f 6e 74 ">$project</font
6150: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 66 ><font color="#f
6160: 66 30 30 66 66 22 3e 26 6c 74 3b 2f 61 26 67 74 f00ff"></a>
6170: 3b 26 6c 74 3b 2f 6c 69 26 67 74 3b 3c 2f 66 6f ;</li></fo
6180: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
6190: 23 61 35 32 61 32 61 22 3e 3c 62 3e 26 71 75 6f #a52a2a"><b>&quo
61a0: 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 t;</b></font><br
61b0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
61c0: 23 61 35 32 61 32 61 22 3e 36 37 20 3c 2f 66 6f #a52a2a">67 </fo
61d0: 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 nt> &
61e0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
61f0: 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 color="#a52a2a"
6200: 3e 3c 62 3e 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 ><b>fi</b></font
6210: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
6220: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 36 38 20 or="#a52a2a">68
6230: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
6240: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
6250: 23 61 35 32 61 32 61 22 3e 3c 62 3e 64 6f 6e 65 #a52a2a"><b>done
6260: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 3e 0d </b></font><br>.
6270: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 .<font color="#a
6280: 35 32 61 32 61 22 3e 36 39 20 3c 2f 66 6f 6e 74 52a2a">69 </font
6290: 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f > <fo
62a0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 nt color="#a52a2
62b0: 61 22 3e 3c 62 3e 65 63 68 6f 3c 2f 62 3e 3c 2f a"><b>echo</b></
62c0: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
62d0: 3d 22 23 66 66 30 30 66 66 22 3e 26 6e 62 73 70 ="#ff00ff"> 
62e0: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
62f0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 lor="#a52a2a"><b
6300: 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e >"</b></fon
6310: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
6320: 66 66 30 30 66 66 22 3e 26 6c 74 3b 2f 75 6c 26 ff00ff"></ul&
6330: 67 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 gt;</font><font
6340: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
6350: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
6360: 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 ont><br>..<font
6370: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
6380: 37 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 70 </font><font
6390: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
63a0: 3c 62 3e 65 6c 73 65 3c 2f 62 3e 3c 2f 66 6f 6e <b>else</b></fon
63b0: 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f t><br>..<font co
63c0: 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 37 31 lor="#a52a2a">71
63d0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
63e0: 62 73 70 3b 45 72 72 6f 72 20 3c 66 6f 6e 74 20 bsp;Error <font
63f0: 63 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e color="#a52a2a">
6400: 3c 62 3e 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 <b>"</b></f
6410: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
6420: 22 23 66 66 30 30 66 66 22 3e 4e 6f 20 73 75 63 "#ff00ff">No suc
6430: 68 20 70 72 6f 6a 65 63 74 3a 20 3c 2f 66 6f 6e h project: </fon
6440: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
6450: 61 30 32 30 66 30 22 3e 24 70 72 6f 6a 65 63 74 a020f0">$project
6460: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
6470: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
6480: 26 71 75 6f 74 3b 3c 2f 62 3e 3c 2f 66 6f 6e 74 "</b></font
6490: 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c ><br>..<font col
64a0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 37 32 20 or="#a52a2a">72
64b0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
64c0: 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c 62 3e or="#a52a2a"><b>
64d0: 66 69 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 fi</b></font><br
64e0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
64f0: 23 61 35 32 61 32 61 22 3e 37 33 20 3c 2f 66 6f #a52a2a">73 </fo
6500: 6e 74 3e 3c 62 72 3e 0d 0a 3c 66 6f 6e 74 20 63 nt><br>..<font c
6510: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 37 olor="#a52a2a">7
6520: 34 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 4 </font><font c
6530: 6f 6c 6f 72 3d 22 23 61 35 32 61 32 61 22 3e 3c olor="#a52a2a"><
6540: 62 3e 65 78 69 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>exit</b></font
6550: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
6560: 6f 72 3d 22 23 66 66 30 30 66 66 22 3e 30 3c 2f or="#ff00ff">0</
6570: 66 6f 6e 74 3e 3c 62 72 3e 0d 0a 3c 2f 66 6f 6e font><br>..</fon
6580: 74 3e 0d 0a 3c 2f 6e 6f 77 69 6b 69 3e 0d 0a 0d t>..</nowiki>...
6590: 0a 3c 68 34 3e 57 69 6e 64 6f 77 73 3c 2f 68 34 .<h4>Windows</h4
65a0: 3e 0d 0a 3c 70 3e 57 68 69 6c 65 20 69 74 20 69 >..<p>While it i
65b0: 73 20 66 61 72 20 66 72 6f 6d 20 61 20 70 65 72 s far from a per
65c0: 66 65 63 74 20 73 65 74 20 6f 66 20 69 6e 73 74 fect set of inst
65d0: 72 75 63 74 69 6f 6e 73 2c 20 68 65 72 65 20 61 ructions, here a
65e0: 72 65 20 73 6f 6d 65 20 71 75 69 63 6b 20 6e 6f re some quick no
65f0: 74 65 73 20 74 68 61 74 20 73 68 6f 75 6c 64 20 tes that should
6600: 68 65 6c 70 20 77 69 6e 64 6f 77 73 20 75 73 65 help windows use
6610: 72 73 20 61 6c 6f 6e 67 20 74 68 65 20 77 61 79 rs along the way
6620: 2e 3c 2f 70 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 .</p>..<ul>..<li
6630: 3e 79 6f 75 20 6e 65 65 64 20 66 6f 73 73 69 6c >you need fossil
6640: 2e 65 78 65 20 61 63 63 65 73 73 69 62 6c 65 20 .exe accessible
6650: 62 79 20 79 6f 75 72 20 77 65 62 20 73 65 72 76 by your web serv
6660: 65 72 20 6f 72 20 6f 6e 20 79 6f 75 72 20 70 61 er or on your pa
6670: 74 68 20 2d 2d 20 65 61 73 69 65 73 74 20 69 73 th -- easiest is
6680: 20 74 6f 20 6a 75 73 74 20 63 68 75 63 6b 20 69 to just chuck i
6690: 74 20 69 6e 20 5c 25 53 59 53 54 45 4d 5f 52 4f t in \%SYSTEM_RO
66a0: 4f 54 25 5c 20 28 75 73 75 61 6c 6c 79 20 63 3a OT%\ (usually c:
66b0: 5c 77 69 6e 64 6f 77 73 5c 29 2e 20 3c 2f 6c 69 \windows\). </li
66c0: 3e 0d 0a 3c 6c 69 3e 61 73 73 75 6d 69 6e 67 20 >..<li>assuming
66d0: 79 6f 75 20 61 72 65 20 72 75 6e 6e 69 6e 67 20 you are running
66e0: 61 70 61 63 68 65 2c 20 79 6f 75 20 6e 65 65 64 apache, you need
66f0: 20 74 6f 20 65 69 74 68 65 72 20 61 64 64 20 74 to either add t
6700: 68 65 20 45 78 65 63 43 47 49 20 74 6f 20 74 68 he ExecCGI to th
6710: 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20 79 6f 75 e options on you
6720: 72 20 44 6f 63 75 6d 65 6e 74 52 6f 6f 74 2c 20 r DocumentRoot,
6730: 6f 72 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 or make sure the
6740: 20 53 63 72 69 70 74 41 6c 69 61 73 20 64 69 72 ScriptAlias dir
6750: 65 63 74 69 76 65 20 69 73 20 73 65 74 20 61 6e ective is set an
6760: 64 20 70 75 74 20 79 6f 75 72 20 2e 63 67 69 20 d put your .cgi
6770: 66 69 6c 65 73 20 69 6e 20 74 68 61 74 20 66 6f files in that fo
6780: 6c 64 65 72 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e lder.</li>..<li>
6790: 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 the contents of
67a0: 79 6f 75 72 20 63 67 69 20 66 69 6c 65 20 6e 65 your cgi file ne
67b0: 65 64 20 74 6f 20 62 65 20 65 73 73 65 6e 74 69 ed to be essenti
67c0: 61 6c 6c 79 20 74 68 65 20 73 61 6d 65 20 61 73 ally the same as
67d0: 20 61 62 6f 76 65 2c 20 74 68 6f 75 67 68 20 70 above, though p
67e0: 61 74 68 73 20 6e 65 65 64 20 74 6f 20 62 65 20 aths need to be
67f0: 77 69 6e 64 6f 77 73 2d 66 72 69 65 6e 64 6c 79 windows-friendly
6800: 2e 20 49 20 68 61 76 65 20 6d 61 64 65 20 73 75 . I have made su
6810: 72 65 20 74 68 61 74 20 61 6c 6c 20 66 6f 6c 64 re that all fold
6820: 65 72 73 20 6f 6e 20 6d 79 20 74 65 73 74 20 62 ers on my test b
6830: 6f 78 20 61 72 65 20 66 72 65 65 20 6f 66 20 73 ox are free of s
6840: 70 61 63 65 73 2c 20 61 6e 64 20 61 73 20 73 75 paces, and as su
6850: 63 68 20 74 68 69 73 20 66 69 6c 65 20 77 6f 72 ch this file wor
6860: 6b 73 20 66 6f 72 20 6d 65 20 28 6f 62 76 69 6f ks for me (obvio
6870: 75 73 6c 79 20 79 6f 75 72 20 70 61 74 68 73 20 usly your paths
6880: 6d 61 79 20 64 69 66 66 65 72 29 2e 0d 0a 3c 70 may differ)...<p
6890: 72 65 3e 0d 0a 23 21 20 66 6f 73 73 69 6c 2e 65 re>..#! fossil.e
68a0: 78 65 0d 0a 72 65 70 6f 73 69 74 6f 72 79 3a 20 xe..repository:
68b0: 63 3a 2f 77 61 6d 70 2f 77 77 77 2f 64 65 76 2f c:/wamp/www/dev/
68c0: 61 63 63 6f 75 6e 74 73 2e 66 6f 73 73 69 6c 0d accounts.fossil.
68d0: 0a 3c 2f 70 72 65 3e 0d 0a 49 20 73 75 70 70 6f .</pre>..I suppo
68e0: 73 65 20 79 6f 75 20 63 6f 75 6c 64 20 70 75 74 se you could put
68f0: 20 66 6f 73 73 69 6c 2e 65 78 65 20 73 6f 6d 65 fossil.exe some
6900: 77 68 65 72 65 20 6d 6f 72 65 20 73 70 65 63 69 where more speci
6910: 66 69 63 20 61 6e 64 20 73 65 74 20 74 68 65 20 fic and set the
6920: 70 61 74 68 20 74 6f 20 69 74 20 61 73 20 77 65 path to it as we
6930: 6c 6c 2c 20 62 75 74 20 73 69 6e 63 65 20 79 6f ll, but since yo
6940: 75 20 61 72 65 20 70 72 6f 62 61 62 6c 79 20 75 u are probably u
6950: 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 65 78 sing the same ex
6960: 65 63 75 74 61 62 6c 65 20 66 6f 72 20 63 6d 64 ecutable for cmd
6970: 6c 69 6e 65 20 61 6e 64 20 63 67 69 20 69 74 20 line and cgi it
6980: 6b 69 6e 64 20 6f 66 20 6a 75 73 74 20 6d 61 6b kind of just mak
6990: 65 73 20 73 65 6e 73 65 20 74 6f 20 70 75 74 20 es sense to put
69a0: 69 74 20 73 6f 6d 65 77 68 65 72 65 20 6d 6f 72 it somewhere mor
69b0: 65 20 61 63 63 65 73 73 69 62 6c 65 2e 3c 2f 6c e accessible.</l
69c0: 69 3e 0d 0a 3c 6c 69 3e 41 73 20 77 69 74 68 20 i>..<li>As with
69d0: 6d 6f 73 74 20 57 69 6e 64 6f 77 73 20 62 61 73 most Windows bas
69e0: 65 64 20 77 65 62 20 69 6e 73 74 72 75 63 74 69 ed web instructi
69f0: 6f 6e 73 2c 20 70 65 72 6d 69 73 73 69 6f 6e 73 ons, permissions
6a00: 20 61 72 65 20 6e 6f 74 20 61 73 20 69 6d 70 6f are not as impo
6a10: 72 74 61 6e 74 2c 20 68 6f 77 65 76 65 72 20 61 rtant, however a
6a20: 74 20 74 68 65 20 6c 65 61 73 74 2c 20 79 6f 75 t the least, you
6a30: 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 need to make su
6a40: 72 65 20 74 68 61 74 20 79 6f 75 72 20 72 65 70 re that your rep
6a50: 6f 73 69 74 6f 72 79 20 69 73 20 6e 6f 74 20 66 ository is not f
6a60: 6c 61 67 67 65 64 20 72 65 61 64 2d 6f 6e 6c 79 lagged read-only
6a70: 2c 20 61 73 20 79 6f 75 20 77 69 6c 6c 20 65 6e , as you will en
6a80: 63 6f 75 6e 74 65 72 20 64 61 74 61 62 61 73 65 counter database
6a90: 20 65 72 72 6f 72 73 20 69 66 20 69 74 20 69 73 errors if it is
6aa0: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 0d .</li>..</ul>...
6ab0: 0a 3c 68 33 3e 44 69 73 63 75 73 73 69 6f 6e 3c .<h3>Discussion<
6ac0: 2f 68 33 3e 0d 0a 55 73 69 6e 67 20 74 68 65 20 /h3>..Using the
6ad0: 43 47 49 20 73 65 72 76 65 72 20 69 73 20 74 68 CGI server is th
6ae0: 65 20 62 65 73 74 20 73 6f 6c 75 74 69 6f 6e 20 e best solution
6af0: 63 6f 6d 62 69 6e 69 6e 67 20 61 6e 20 65 78 69 combining an exi
6b00: 73 74 69 6e 67 20 77 65 62 20 69 6e 66 72 61 73 sting web infras
6b10: 74 72 75 63 74 75 72 65 20 61 6e 64 20 74 68 65 tructure and the
6b20: 20 73 68 61 72 69 6e 67 20 6f 66 20 6d 61 6e 79 sharing of many
6b30: 20 3c 63 69 74 65 3e 46 6f 73 73 69 6c 3c 2f 63 <cite>Fossil</c
6b40: 69 74 65 3e 20 72 65 70 6f 73 69 74 6f 72 69 65 ite> repositorie
6b50: 73 2e 20 20 55 6e 6c 69 6b 65 20 74 68 65 20 61 s. Unlike the a
6b60: 64 2d 68 6f 63 20 73 6f 6c 75 74 69 6f 6e 20 77 d-hoc solution w
6b70: 68 69 63 68 20 72 65 71 75 69 72 65 73 2c 20 69 hich requires, i
6b80: 6e 20 65 66 66 65 63 74 2c 20 61 20 73 65 70 61 n effect, a sepa
6b90: 72 61 74 65 20 70 6f 72 74 20 66 6f 72 20 65 61 rate port for ea
6ba0: 63 68 20 73 69 6d 75 6c 74 61 6e 65 6f 75 73 6c ch simultaneousl
6bb0: 79 2d 73 68 61 72 65 64 20 72 65 70 6f 73 69 74 y-shared reposit
6bc0: 6f 72 79 2c 20 61 6e 64 20 77 68 69 63 68 20 72 ory, and which r
6bd0: 65 71 75 69 72 65 73 20 73 65 76 65 72 61 6c 20 equires several
6be0: 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 66 6f 73 instances of fos
6bf0: 73 69 6c 20 72 75 6e 6e 69 6e 67 20 2d 2d 20 6f sil running -- o
6c00: 6e 65 20 66 6f 72 20 65 61 63 68 20 73 68 61 72 ne for each shar
6c10: 65 64 20 72 65 70 6f 73 69 74 6f 72 79 20 2d 2d ed repository --
6c20: 20 74 68 65 20 43 47 49 20 61 70 70 72 6f 61 63 the CGI approac
6c30: 68 20 75 73 65 73 20 55 52 4c 73 20 74 6f 20 64 h uses URLs to d
6c40: 69 73 74 69 6e 67 75 69 73 68 20 62 65 74 77 65 istinguish betwe
6c50: 65 6e 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 en repositories
6c60: 61 6e 64 20 6f 6e 6c 79 20 28 62 72 69 65 66 6c and only (briefl
6c70: 79 29 20 72 75 6e 73 20 61 20 63 6f 70 79 20 6f y) runs a copy o
6c80: 66 20 66 6f 73 73 69 6c 20 77 68 65 6e 20 74 68 f fossil when th
6c90: 65 20 72 65 70 6f 73 69 74 6f 72 79 20 69 73 20 e repository is
6ca0: 61 63 74 75 61 6c 6c 79 20 61 63 63 65 73 73 65 actually accesse
6cb0: 64 2e 0d 0a 0d 0a 53 68 61 72 69 6e 67 20 72 65 d.....Sharing re
6cc0: 70 6f 73 69 74 6f 72 69 65 73 20 77 69 74 68 20 positories with
6cd0: 43 47 49 20 69 73 20 72 65 61 6c 6c 79 20 6f 6e CGI is really on
6ce0: 6c 79 20 77 6f 72 74 68 20 74 68 65 20 65 66 66 ly worth the eff
6cf0: 6f 72 74 20 69 66 20 6d 6f 72 65 20 74 68 61 6e ort if more than
6d00: 20 6f 6e 65 20 72 65 70 6f 73 69 74 6f 72 79 20 one repository
6d10: 69 73 20 62 65 69 6e 67 20 73 68 61 72 65 64 2c is being shared,
6d20: 20 68 6f 77 65 76 65 72 2e 20 20 57 69 74 68 20 however. With
6d30: 6f 6e 6c 79 20 6f 6e 65 20 62 65 69 6e 67 20 73 only one being s
6d40: 68 61 72 65 64 2c 20 3c 63 6f 64 65 3e 66 6f 73 hared, <code>fos
6d50: 73 69 6c 20 73 65 72 76 65 72 3c 2f 63 6f 64 65 sil server</code
6d60: 3e 20 69 73 20 6c 69 6b 65 6c 79 20 6d 6f 72 65 > is likely more
6d70: 20 74 68 61 6e 20 61 64 65 71 75 61 74 65 20 6f than adequate o
6d80: 72 20 74 68 65 20 75 73 65 20 6f 66 20 28 78 29 r the use of (x)
6d90: 69 6e 65 74 64 20 6d 61 79 20 62 65 20 69 6e 64 inetd may be ind
6da0: 69 63 61 74 65 64 2e 20 20 49 66 2c 20 68 6f 77 icated. If, how
6db0: 65 76 65 72 2c 20 74 68 65 72 65 20 69 73 20 61 ever, there is a
6dc0: 6c 72 65 61 64 79 20 61 6e 20 65 78 69 73 74 69 lready an existi
6dd0: 6e 67 20 77 65 62 20 69 6e 66 72 61 73 74 72 75 ng web infrastru
6de0: 63 74 75 72 65 20 69 6e 20 70 6c 61 63 65 2c 20 cture in place,
6df0: 43 47 49 20 73 74 69 6c 6c 20 6d 61 79 20 62 65 CGI still may be
6e00: 20 70 72 65 66 65 72 72 65 64 20 69 66 20 6f 6e preferred if on
6e10: 6c 79 20 66 6f 72 20 63 6f 6e 73 69 73 74 65 6e ly for consisten
6e20: 63 79 20 61 6e 64 20 6d 61 69 6e 74 61 69 6e 61 cy and maintaina
6e30: 62 69 6c 69 74 79 20 6f 66 20 74 68 65 20 73 79 bility of the sy
6e40: 73 74 65 6d 20 61 73 20 61 20 77 68 6f 6c 65 2e stem as a whole.
6e50: 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d ....<h2><a name=
6e60: 22 65 6e 76 22 3e 55 73 69 6e 67 20 45 6e 76 69 "env">Using Envi
6e70: 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 ronment variable
6e80: 73 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e s</a></h2>..<h3>
6e90: 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d Motivation</h3>.
6ea0: 0a 20 20 2a 20 20 57 61 6e 74 20 74 6f 20 75 73 . * Want to us
6eb0: 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 65 64 e a different ed
6ec0: 69 74 6f 72 20 66 6f 72 20 63 68 65 63 6b 69 6e itor for checkin
6ed0: 73 20 28 55 6e 69 78 2f 57 69 6e 64 6f 77 73 29 s (Unix/Windows)
6ee0: 0d 0a 20 20 2a 20 20 55 73 65 20 61 20 70 72 6f .. * Use a pro
6ef0: 78 79 20 69 66 20 79 6f 75 20 61 72 65 20 62 65 xy if you are be
6f00: 68 69 6e 64 20 61 20 66 69 72 65 77 61 6c 6c 0d hind a firewall.
6f10: 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 69 6f 6e 3c ...<h3>Solution<
6f20: 2f 68 33 3e 0d 0a 45 6e 76 69 72 6f 6e 6d 65 6e /h3>..Environmen
6f30: 74 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 t variables are
6f40: 75 73 65 64 20 74 6f 20 63 75 73 74 6f 6d 69 7a used to customiz
6f50: 65 20 73 6f 6d 65 20 70 72 6f 67 72 61 6d 6d 65 e some programme
6f60: 20 62 65 68 61 76 69 6f 75 72 2e 20 4f 6e 20 4c behaviour. On L
6f70: 69 6e 75 78 2f 55 6e 69 78 20 74 68 65 79 20 63 inux/Unix they c
6f80: 61 6e 20 62 65 20 73 65 74 20 69 6e 20 79 6f 75 an be set in you
6f90: 20 7e 2f 2e 62 61 73 68 72 63 20 6f 72 20 65 76 ~/.bashrc or ev
6fa0: 65 6e 20 6f 6e 20 63 6f 6d 6d 61 6e 64 20 6c 69 en on command li
6fb0: 6e 65 2e 20 4f 6e 20 57 69 6e 64 6f 77 73 20 74 ne. On Windows t
6fc0: 68 65 79 20 63 61 6e 20 62 65 20 73 65 74 20 69 hey can be set i
6fd0: 6e 20 74 68 65 20 73 79 73 74 65 6d 20 73 65 74 n the system set
6fe0: 74 69 6e 67 73 2e 0d 0a 0d 0a 3c 63 69 74 65 3e tings.....<cite>
6ff0: 46 6f 73 73 69 6c 3c 2f 63 69 74 65 3e 20 63 68 Fossil</cite> ch
7000: 65 63 6b 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 ecks the followi
7010: 6e 67 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 ng environment v
7020: 61 72 69 61 62 6c 65 73 3a 0d 0a 20 20 2a 20 20 ariables:.. *
7030: 56 49 53 55 41 4c 2f 45 44 49 54 4f 52 0d 0a 20 VISUAL/EDITOR..
7040: 20 2a 20 20 68 74 74 70 5f 70 72 6f 78 79 0d 0a * http_proxy..
7050: 20 20 2a 20 20 54 4d 50 5f 44 49 52 0d 0a 20 20 * TMP_DIR..
7060: 2a 20 20 47 41 54 45 57 41 59 5f 49 4e 54 45 52 * GATEWAY_INTER
7070: 46 41 43 45 0d 0a 20 20 2a 20 20 53 51 4c 49 54 FACE.. * SQLIT
7080: 45 5f 46 4f 52 43 45 5f 50 52 4f 58 59 5f 4c 4f E_FORCE_PROXY_LO
7090: 43 4b 49 4e 47 0d 0a 20 20 2a 20 20 55 53 45 52 CKING.. * USER
70a0: 0d 0a 20 20 2a 20 20 55 53 45 52 4e 41 4d 45 0d .. * USERNAME.
70b0: 0a 0d 0a 3c 62 3e 56 49 53 55 41 4c 2f 45 44 49 ...<b>VISUAL/EDI
70c0: 54 4f 52 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e 20 TOR</b> contain
70d0: 74 68 65 20 65 64 69 74 6f 72 20 6f 66 20 79 6f the editor of yo
70e0: 75 72 20 63 68 6f 69 63 65 20 74 68 61 74 20 69 ur choice that i
70f0: 73 20 75 73 65 64 20 74 6f 20 77 72 69 74 65 20 s used to write
7100: 74 68 65 20 63 6f 6d 6d 69 74 20 66 69 6c 65 2e the commit file.
7110: 0d 0a 0d 0a 3c 62 3e 54 4d 50 5f 44 49 52 3c 2f ....<b>TMP_DIR</
7120: 62 3e 20 73 70 65 63 69 66 69 65 73 20 74 68 65 b> specifies the
7130: 20 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 74 directory for t
7140: 65 6d 70 6f 72 61 72 79 20 66 69 6c 65 73 2e 0d emporary files..
7150: 0a 0d 0a 3c 62 3e 47 41 54 45 57 41 59 5f 49 4e ...<b>GATEWAY_IN
7160: 54 45 52 46 41 43 45 3c 2f 62 3e 20 3f 3f 3f 0d TERFACE</b> ???.
7170: 0a 0d 0a 3c 62 3e 53 51 4c 49 54 45 5f 46 4f 52 ...<b>SQLITE_FOR
7180: 43 45 5f 50 52 4f 58 59 5f 4c 4f 43 4b 49 4e 47 CE_PROXY_LOCKING
7190: 3c 2f 62 3e 20 3f 3f 3f 0d 0a 0d 0a 3c 62 3e 55 </b> ???....<b>U
71a0: 53 45 52 3c 2f 62 3e 0d 0a 0d 0a 3c 62 3e 55 53 SER</b>....<b>US
71b0: 45 52 4e 41 4d 45 3c 2f 62 3e 0d 0a 0d 0a 0d 0a ERNAME</b>......
71c0: 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 63 73 73 <h2><a name="css
71d0: 22 3e 45 78 61 6d 70 6c 65 20 43 53 53 3c 2f 61 ">Example CSS</a
71e0: 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e 4d 6f 74 69 ></h2>..<h3>Moti
71f0: 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 54 68 65 vation</h3>..The
7200: 20 64 65 66 61 75 6c 74 20 55 49 20 6d 61 79 20 default UI may
7210: 6e 6f 74 20 62 65 20 73 74 79 6c 69 73 68 20 69 not be stylish i
7220: 6e 20 65 76 65 72 79 6f 6e 65 73 20 65 79 65 73 n everyones eyes
7230: 2e 0d 0a 49 74 20 69 73 20 75 70 20 74 6f 20 79 ...It is up to y
7240: 6f 75 20 74 6f 20 63 68 61 6e 67 65 20 69 74 2e ou to change it.
7250: 20 53 65 65 20 74 68 65 20 43 53 53 20 63 6f 64 See the CSS cod
7260: 65 20 62 65 6c 6f 77 20 66 72 6f 6d 20 74 68 69 e below from thi
7270: 73 20 73 69 74 65 20 5b 68 74 74 70 3a 2f 2f 66 s site [http://f
7280: 6f 73 73 69 6c 2e 77 61 6e 64 65 72 69 6e 67 68 ossil.wanderingh
7290: 6f 72 73 65 2e 6e 65 74 2f 69 6e 64 65 78 2e 63 orse.net/index.c
72a0: 67 69 2f 69 6e 64 65 78 7c 57 61 6e 64 65 72 69 gi/index|Wanderi
72b0: 6e 67 20 48 6f 72 73 65 5d 0d 0a 0d 0a 3c 6e 6f ng Horse]....<no
72c0: 77 69 6b 69 3e 0d 0a 3c 70 72 65 3e 0d 0a 2f 2a wiki>..<pre>../*
72d0: 20 47 65 6e 65 72 61 6c 20 73 65 74 74 69 6e 67 General setting
72e0: 73 20 66 6f 72 20 74 68 65 20 65 6e 74 69 72 65 s for the entire
72f0: 20 70 61 67 65 20 2a 2f 0d 0a 62 6f 64 79 20 7b page */..body {
7300: 0d 0a 20 20 6d 61 72 67 69 6e 3a 20 30 65 78 20 .. margin: 0ex
7310: 31 65 78 3b 0d 0a 20 20 70 61 64 64 69 6e 67 3a 1ex;.. padding:
7320: 20 30 70 78 3b 0d 0a 20 20 62 61 63 6b 67 72 6f 0px;.. backgro
7330: 75 6e 64 2d 63 6f 6c 6f 72 3a 20 77 68 69 74 65 und-color: white
7340: 3b 0d 0a 20 20 66 6f 6e 74 2d 66 61 6d 69 6c 79 ;.. font-family
7350: 3a 20 22 73 61 6e 73 20 73 65 72 69 66 22 3b 0d : "sans serif";.
7360: 0a 7d 0d 0a 0d 0a 2f 2a 20 4d 61 6b 65 20 74 68 .}..../* Make th
7370: 65 20 6c 69 6e 6b 73 20 69 6e 20 74 68 65 20 66 e links in the f
7380: 6f 6f 74 65 72 20 6c 65 73 73 20 75 67 6c 79 2e ooter less ugly.
7390: 2e 2e 20 2a 2f 0d 0a 61 20 7b 20 63 6f 6c 6f 72 .. */..a { color
73a0: 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a 61 3a : #000f6a; }..a:
73b0: 6c 69 6e 6b 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 link { color: #0
73c0: 30 30 66 36 61 3b 20 7d 0d 0a 61 3a 76 69 73 69 00f6a; }..a:visi
73d0: 74 65 64 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 30 ted { color: #00
73e0: 30 66 36 61 3b 20 7d 0d 0a 61 3a 68 6f 76 65 72 0f6a; }..a:hover
73f0: 20 7b 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f { background-co
7400: 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 20 7d 0d lor: #e3e3e3; }.
7410: 0a 0d 0a 0d 0a 68 72 20 7b 0d 0a 20 20 68 65 69 .....hr {.. hei
7420: 67 68 74 3a 20 33 70 78 3b 0d 0a 20 20 62 6f 72 ght: 3px;.. bor
7430: 64 65 72 2d 74 6f 70 3a 20 6e 6f 6e 65 3b 20 2f der-top: none; /
7440: 2a 31 70 78 20 64 61 73 68 65 64 20 23 30 30 35 *1px dashed #005
7450: 3b 2a 2f 0d 0a 20 20 62 6f 72 64 65 72 2d 62 6f ;*/.. border-bo
7460: 74 74 6f 6d 3a 20 31 70 78 20 64 61 73 68 65 64 ttom: 1px dashed
7470: 20 23 30 30 35 3b 0d 0a 20 20 62 6f 72 64 65 72 #005;.. border
7480: 2d 6c 65 66 74 3a 20 6e 6f 6e 65 3b 0d 0a 20 20 -left: none;..
7490: 62 6f 72 64 65 72 2d 72 69 67 68 74 3a 20 6e 6f border-right: no
74a0: 6e 65 3b 0d 0a 7d 0d 0a 2f 2a 20 54 68 65 20 70 ne;..}../* The p
74b0: 72 6f 6a 65 63 74 20 6c 6f 67 6f 20 69 6e 20 74 roject logo in t
74c0: 68 65 20 75 70 70 65 72 20 6c 65 66 74 2d 68 61 he upper left-ha
74d0: 6e 64 20 63 6f 72 6e 65 72 20 6f 66 20 65 61 63 nd corner of eac
74e0: 68 20 70 61 67 65 20 2a 2f 0d 0a 64 69 76 2e 6c h page */..div.l
74f0: 6f 67 6f 20 7b 0d 0a 20 20 64 69 73 70 6c 61 79 ogo {.. display
7500: 3a 20 74 61 62 6c 65 2d 63 65 6c 6c 3b 0d 0a 20 : table-cell;..
7510: 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e text-align: cen
7520: 74 65 72 3b 0d 0a 20 20 76 65 72 74 69 63 61 6c ter;.. vertical
7530: 2d 61 6c 69 67 6e 3a 20 62 6f 74 74 6f 6d 3b 0d -align: bottom;.
7540: 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 . color: #000f6
7550: 61 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 a;..}..../* The
7560: 70 61 67 65 20 74 69 74 6c 65 20 63 65 6e 74 65 page title cente
7570: 72 65 64 20 61 74 20 74 68 65 20 74 6f 70 20 6f red at the top o
7580: 66 20 65 61 63 68 20 70 61 67 65 20 2a 2f 0d 0a f each page */..
7590: 64 69 76 2e 74 69 74 6c 65 20 7b 0d 0a 20 20 64 div.title {.. d
75a0: 69 73 70 6c 61 79 3a 20 74 61 62 6c 65 2d 63 65 isplay: table-ce
75b0: 6c 6c 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 ll;.. font-size
75c0: 3a 20 32 65 6d 3b 0d 0a 20 20 66 6f 6e 74 2d 77 : 2em;.. font-w
75d0: 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0d 0a 20 20 eight: bold;..
75e0: 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 text-align: cent
75f0: 65 72 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 er;.. color: #0
7600: 30 30 66 36 61 3b 0d 0a 20 20 76 65 72 74 69 63 00f6a;.. vertic
7610: 61 6c 2d 61 6c 69 67 6e 3a 20 62 6f 74 74 6f 6d al-align: bottom
7620: 3b 0d 0a 20 20 77 69 64 74 68 3a 20 31 30 30 25 ;.. width: 100%
7630: 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 6c ;..}..../* The l
7640: 6f 67 69 6e 20 73 74 61 74 75 73 20 6d 65 73 73 ogin status mess
7650: 61 67 65 20 69 6e 20 74 68 65 20 74 6f 70 20 72 age in the top r
7660: 69 67 68 74 2d 68 61 6e 64 20 63 6f 72 6e 65 72 ight-hand corner
7670: 20 2a 2f 0d 0a 64 69 76 2e 73 74 61 74 75 73 20 */..div.status
7680: 7b 0d 0a 20 20 64 69 73 70 6c 61 79 3a 20 74 61 {.. display: ta
7690: 62 6c 65 2d 63 65 6c 6c 3b 0d 0a 20 20 74 65 78 ble-cell;.. tex
76a0: 74 2d 61 6c 69 67 6e 3a 20 72 69 67 68 74 3b 0d t-align: right;.
76b0: 0a 20 20 76 65 72 74 69 63 61 6c 2d 61 6c 69 67 . vertical-alig
76c0: 6e 3a 20 62 6f 74 74 6f 6d 3b 0d 0a 20 20 63 6f n: bottom;.. co
76d0: 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 lor: #000f6a;..
76e0: 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 30 2e 38 65 font-size: 0.8e
76f0: 6d 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 20 m;..}..../* The
7700: 68 65 61 64 65 72 20 61 63 72 6f 73 73 20 74 68 header across th
7710: 65 20 74 6f 70 20 6f 66 20 74 68 65 20 70 61 67 e top of the pag
7720: 65 20 2a 2f 0d 0a 64 69 76 2e 68 65 61 64 65 72 e */..div.header
7730: 20 7b 0d 0a 20 20 64 69 73 70 6c 61 79 3a 20 74 {.. display: t
7740: 61 62 6c 65 3b 0d 0a 20 20 77 69 64 74 68 3a 20 able;.. width:
7750: 31 30 30 25 3b 0d 0a 20 20 74 65 78 74 2d 61 6c 100%;.. text-al
7760: 69 67 6e 3a 20 63 65 6e 74 65 72 3b 0d 0a 7d 0d ign: center;..}.
7770: 0a 0d 0a 2f 2a 20 54 68 65 20 6d 61 69 6e 20 6d .../* The main m
7780: 65 6e 75 20 62 61 72 20 74 68 61 74 20 61 70 70 enu bar that app
7790: 65 61 72 73 20 61 74 20 74 68 65 20 74 6f 70 20 ears at the top
77a0: 6f 66 20 74 68 65 20 70 61 67 65 20 62 65 6e 65 of the page bene
77b0: 61 74 68 0d 0a 2a 2a 20 74 68 65 20 68 65 61 64 ath..** the head
77c0: 65 72 20 2a 2f 0d 0a 64 69 76 2e 6d 61 69 6e 6d er */..div.mainm
77d0: 65 6e 75 20 7b 0d 0a 20 20 70 61 64 64 69 6e 67 enu {.. padding
77e0: 3a 20 32 70 78 20 35 70 78 20 32 70 78 20 35 70 : 2px 5px 2px 5p
77f0: 78 3b 0d 0a 20 20 66 6f 6e 74 2d 73 69 7a 65 3a x;.. font-size:
7800: 20 30 2e 39 65 6d 3b 0d 0a 20 20 74 65 78 74 2d 0.9em;.. text-
7810: 61 6c 69 67 6e 3a 20 63 65 6e 74 65 72 3b 0d 0a align: center;..
7820: 20 20 6c 65 74 74 65 72 2d 73 70 61 63 69 6e 67 letter-spacing
7830: 3a 20 31 70 78 3b 0d 0a 20 20 62 61 63 6b 67 72 : 1px;.. backgr
7840: 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 ound-color: #e3e
7850: 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 3e3;.. color: #
7860: 30 30 30 66 36 61 3b 0d 0a 20 20 62 6f 72 64 65 000f6a;.. borde
7870: 72 3a 20 31 70 78 20 69 6e 73 65 74 20 62 6c 61 r: 1px inset bla
7880: 63 6b 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 ck;..}..../* The
7890: 20 73 75 62 6d 65 6e 75 20 62 61 72 20 74 68 61 submenu bar tha
78a0: 74 20 2a 73 6f 6d 65 74 69 6d 65 73 2a 20 61 70 t *sometimes* ap
78b0: 70 65 61 72 73 20 62 65 6c 6f 77 20 74 68 65 20 pears below the
78c0: 6d 61 69 6e 20 6d 65 6e 75 20 2a 2f 0d 0a 64 69 main menu */..di
78d0: 76 2e 73 75 62 6d 65 6e 75 20 7b 0d 0a 20 20 70 v.submenu {.. p
78e0: 61 64 64 69 6e 67 3a 20 32 70 78 20 35 70 78 20 adding: 2px 5px
78f0: 32 70 78 20 35 70 78 3b 0d 0a 20 20 66 6f 6e 74 2px 5px;.. font
7900: 2d 73 69 7a 65 3a 20 30 2e 39 65 6d 3b 0d 0a 20 -size: 0.9em;..
7910: 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 63 65 6e text-align: cen
7920: 74 65 72 3b 0d 0a 20 20 62 61 63 6b 67 72 6f 75 ter;.. backgrou
7930: 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 33 65 33 65 nd-color: #e3e3e
7940: 33 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 30 30 3;.. color: #00
7950: 30 66 36 61 3b 0d 0a 7d 0d 0a 64 69 76 2e 6d 61 0f6a;..}..div.ma
7960: 69 6e 6d 65 6e 75 20 61 2c 20 64 69 76 2e 6d 61 inmenu a, div.ma
7970: 69 6e 6d 65 6e 75 20 61 3a 76 69 73 69 74 65 64 inmenu a:visited
7980: 2c 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 61 2c , div.submenu a,
7990: 20 64 69 76 2e 73 75 62 6d 65 6e 75 20 61 3a 76 div.submenu a:v
79a0: 69 73 69 74 65 64 20 7b 0d 0a 20 20 70 61 64 64 isited {.. padd
79b0: 69 6e 67 3a 20 32 70 78 20 31 30 70 78 20 32 70 ing: 2px 10px 2p
79c0: 78 20 31 30 70 78 3b 0d 0a 20 20 63 6f 6c 6f 72 x 10px;.. color
79d0: 3a 20 23 30 30 30 66 36 61 3b 0d 0a 20 20 62 61 : #000f6a;.. ba
79e0: 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 ckground-color:
79f0: 23 65 33 65 33 65 33 3b 0d 0a 20 20 74 65 78 74 #e3e3e3;.. text
7a00: 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 20 6e 6f 6e -decoration: non
7a10: 65 3b 0d 0a 7d 0d 0a 64 69 76 2e 6d 61 69 6e 6d e;..}..div.mainm
7a20: 65 6e 75 20 61 3a 68 6f 76 65 72 2c 20 64 69 76 enu a:hover, div
7a30: 2e 73 75 62 6d 65 6e 75 20 61 3a 68 6f 76 65 72 .submenu a:hover
7a40: 20 7b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 65 33 {.. color: #e3
7a50: 65 33 65 33 3b 0d 0a 20 20 62 61 63 6b 67 72 6f e3e3;.. backgro
7a60: 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 30 30 30 66 und-color: #000f
7a70: 36 61 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 41 6c 6c 6a;..}..../* All
7a80: 20 70 61 67 65 20 63 6f 6e 74 65 6e 74 20 66 72 page content fr
7a90: 6f 6d 20 74 68 65 20 62 6f 74 74 6f 6d 20 6f 66 om the bottom of
7aa0: 20 74 68 65 20 6d 65 6e 75 20 6f 72 20 73 75 62 the menu or sub
7ab0: 6d 65 6e 75 20 64 6f 77 6e 20 74 6f 0d 0a 2a 2a menu down to..**
7ac0: 20 74 68 65 20 66 6f 6f 74 65 72 20 2a 2f 0d 0a the footer */..
7ad0: 64 69 76 2e 63 6f 6e 74 65 6e 74 20 7b 0d 0a 20 div.content {..
7ae0: 20 70 61 64 64 69 6e 67 3a 20 30 65 78 20 31 65 padding: 0ex 1e
7af0: 78 20 30 65 78 20 32 65 78 3b 0d 0a 7d 0d 0a 0d x 0ex 2ex;..}...
7b00: 0a 2f 2a 20 53 6f 6d 65 20 70 61 67 65 73 20 68 ./* Some pages h
7b10: 61 76 65 20 73 65 63 74 69 6f 6e 20 64 69 76 69 ave section divi
7b20: 64 65 72 73 20 2a 2f 0d 0a 64 69 76 2e 73 65 63 ders */..div.sec
7b30: 74 69 6f 6e 20 7b 0d 0a 20 20 6d 61 72 67 69 6e tion {.. margin
7b40: 2d 62 6f 74 74 6f 6d 3a 20 30 70 78 3b 0d 0a 20 -bottom: 0px;..
7b50: 20 6d 61 72 67 69 6e 2d 74 6f 70 3a 20 31 65 6d margin-top: 1em
7b60: 3b 0d 0a 20 20 70 61 64 64 69 6e 67 3a 20 31 70 ;.. padding: 1p
7b70: 78 20 31 70 78 20 31 70 78 20 31 70 78 3b 0d 0a x 1px 1px 1px;..
7b80: 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 31 2e 32 font-size: 1.2
7b90: 65 6d 3b 0d 0a 20 20 66 6f 6e 74 2d 77 65 69 67 em;.. font-weig
7ba0: 68 74 3a 20 62 6f 6c 64 3b 0d 0a 20 20 62 61 63 ht: bold;.. bac
7bb0: 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 kground-color: #
7bc0: 65 33 65 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f 72 e3e3e3;.. color
7bd0: 3a 20 23 30 30 30 66 36 61 3b 0d 0a 7d 0d 0a 0d : #000f6a;..}...
7be0: 0a 2f 2a 20 54 68 65 20 22 44 61 74 65 22 20 74 ./* The "Date" t
7bf0: 68 61 74 20 6f 63 63 75 72 73 20 6f 6e 20 74 68 hat occurs on th
7c00: 65 20 6c 65 66 74 20 68 61 6e 64 20 73 69 64 65 e left hand side
7c10: 20 6f 66 20 74 69 6d 65 6c 69 6e 65 73 20 2a 2f of timelines */
7c20: 0d 0a 64 69 76 2e 64 69 76 69 64 65 72 20 7b 0d ..div.divider {.
7c30: 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f . background-co
7c40: 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 0d 0a 20 lor: #e3e3e3;..
7c50: 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b color: #000f6a;
7c60: 0d 0a 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 .. border: 1px
7c70: 23 62 62 62 62 66 66 20 73 6f 6c 69 64 3b 0d 0a #bbbbff solid;..
7c80: 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 31 65 6d font-size: 1em
7c90: 3b 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 6e ; font-weight: n
7ca0: 6f 72 6d 61 6c 3b 0d 0a 20 20 70 61 64 64 69 6e ormal;.. paddin
7cb0: 67 3a 20 2e 32 35 65 6d 3b 0d 0a 20 20 6d 61 72 g: .25em;.. mar
7cc0: 67 69 6e 3a 20 2e 32 65 6d 20 30 20 2e 32 65 6d gin: .2em 0 .2em
7cd0: 20 30 3b 0d 0a 20 20 66 6c 6f 61 74 3a 20 6c 65 0;.. float: le
7ce0: 66 74 3b 0d 0a 20 20 63 6c 65 61 72 3a 20 6c 65 ft;.. clear: le
7cf0: 66 74 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 54 68 65 ft;..}..../* The
7d00: 20 66 6f 6f 74 65 72 20 61 74 20 74 68 65 20 76 footer at the v
7d10: 65 72 79 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 ery bottom of th
7d20: 65 20 70 61 67 65 20 2a 2f 0d 0a 64 69 76 2e 66 e page */..div.f
7d30: 6f 6f 74 65 72 20 7b 0d 0a 20 20 66 6f 6e 74 2d ooter {.. font-
7d40: 73 69 7a 65 3a 20 30 2e 38 65 6d 3b 0d 0a 20 20 size: 0.8em;..
7d50: 70 61 64 64 69 6e 67 3a 20 32 70 78 20 35 70 78 padding: 2px 5px
7d60: 20 32 70 78 20 35 70 78 3b 0d 0a 20 20 74 65 78 2px 5px;.. tex
7d70: 74 2d 61 6c 69 67 6e 3a 20 63 65 6e 74 65 72 3b t-align: center;
7d80: 0d 0a 20 20 6c 65 74 74 65 72 2d 73 70 61 63 69 .. letter-spaci
7d90: 6e 67 3a 20 31 70 78 3b 0d 0a 20 20 62 61 63 6b ng: 1px;.. back
7da0: 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 65 ground-color: #e
7db0: 33 65 33 65 33 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 3e3e3;.. color:
7dc0: 20 23 30 30 30 66 36 61 3b 0d 0a 20 20 62 6f 72 #000f6a;.. bor
7dd0: 64 65 72 3a 20 31 70 78 20 69 6e 73 65 74 20 62 der: 1px inset b
7de0: 6c 61 63 6b 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 4d lack;..}..../* M
7df0: 61 6b 65 20 74 68 65 20 6c 69 6e 6b 73 20 69 6e ake the links in
7e00: 20 74 68 65 20 66 6f 6f 74 65 72 20 6c 65 73 73 the footer less
7e10: 20 75 67 6c 79 2e 2e 2e 20 2a 2f 0d 0a 64 69 76 ugly... */..div
7e20: 2e 66 6f 6f 74 65 72 20 61 20 7b 20 63 6f 6c 6f .footer a { colo
7e30: 72 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a 64 r: #000f6a; }..d
7e40: 69 76 2e 66 6f 6f 74 65 72 20 61 3a 6c 69 6e 6b iv.footer a:link
7e50: 20 7b 20 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 { color: #000f6
7e60: 61 3b 20 7d 0d 0a 64 69 76 2e 66 6f 6f 74 65 72 a; }..div.footer
7e70: 20 61 3a 76 69 73 69 74 65 64 20 7b 20 63 6f 6c a:visited { col
7e80: 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 7d 0d 0a or: #000f6a; }..
7e90: 64 69 76 2e 66 6f 6f 74 65 72 20 61 3a 68 6f 76 div.footer a:hov
7ea0: 65 72 20 7b 20 62 61 63 6b 67 72 6f 75 6e 64 2d er { background-
7eb0: 63 6f 6c 6f 72 3a 20 23 30 30 30 66 36 61 3b 20 color: #000f6a;
7ec0: 63 6f 6c 6f 72 3a 20 23 65 33 65 33 65 33 3b 20 color: #e3e3e3;
7ed0: 7d 0d 0a 0d 0a 2f 2a 20 76 65 72 62 61 74 69 6d }..../* verbatim
7ee0: 20 62 6c 6f 63 6b 73 20 2a 2f 0d 0a 70 72 65 2e blocks */..pre.
7ef0: 76 65 72 62 61 74 69 6d 20 7b 0d 0a 20 20 20 62 verbatim {.. b
7f00: 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a ackground-color:
7f10: 20 23 66 35 66 35 66 35 3b 0d 0a 20 20 20 70 61 #f5f5f5;.. pa
7f20: 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0d 0a 7d dding: 0.5em;..}
7f30: 0d 0a 0d 0a 2f 2a 20 54 68 65 20 6c 61 62 65 6c ..../* The label
7f40: 2f 76 61 6c 75 65 20 70 61 69 72 73 20 6f 6e 20 /value pairs on
7f50: 28 66 6f 72 20 65 78 61 6d 70 6c 65 29 20 74 68 (for example) th
7f60: 65 20 76 69 6e 66 6f 20 70 61 67 65 20 2a 2f 0d e vinfo page */.
7f70: 0a 74 61 62 6c 65 2e 6c 61 62 65 6c 2d 76 61 6c .table.label-val
7f80: 75 65 20 74 68 20 7b 0d 0a 20 20 76 65 72 74 69 ue th {.. verti
7f90: 63 61 6c 2d 61 6c 69 67 6e 3a 20 74 6f 70 3b 0d cal-align: top;.
7fa0: 0a 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 72 . text-align: r
7fb0: 69 67 68 74 3b 0d 0a 20 20 70 61 64 64 69 6e 67 ight;.. padding
7fc0: 3a 20 30 2e 32 65 78 20 32 65 78 3b 0d 0a 7d 0d : 0.2ex 2ex;..}.
7fd0: 0a 0d 0a 2f 2a 20 46 6f 72 20 6d 61 72 6b 69 6e .../* For markin
7fe0: 67 20 69 6d 70 6f 72 74 61 6e 74 20 55 49 20 65 g important UI e
7ff0: 6c 65 6d 65 6e 74 73 20 77 68 69 63 68 20 73 68 lements which sh
8000: 6f 75 6c 64 6e 27 74 20 62 65 0d 0a 20 20 20 6c ouldn't be.. l
8010: 69 67 68 74 6c 79 20 64 69 73 6d 69 73 73 65 64 ightly dismissed
8020: 2e 20 49 20 6d 61 69 6e 6c 79 20 75 73 65 20 69 . I mainly use i
8030: 74 20 74 6f 20 6d 61 72 6b 20 22 6e 6f 74 20 79 t to mark "not y
8040: 65 74 0d 0a 20 20 20 69 6d 70 6c 65 6d 65 6e 74 et.. implement
8050: 65 64 22 20 70 61 72 74 73 20 6f 66 20 61 20 70 ed" parts of a p
8060: 61 67 65 2e 20 57 68 65 74 68 65 72 20 6f 72 20 age. Whether or
8070: 6e 6f 74 20 74 6f 20 68 61 76 65 0d 0a 20 20 20 not to have..
8080: 61 20 27 62 6f 72 64 65 72 27 20 61 74 74 72 69 a 'border' attri
8090: 62 75 74 65 20 73 65 74 20 69 73 20 61 72 67 75 bute set is argu
80a0: 61 62 6c 65 2e 20 2a 2f 0d 0a 2e 61 63 68 74 75 able. */...achtu
80b0: 6e 67 20 7b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 ng {.. color: #
80c0: 66 66 30 30 30 30 3b 0d 0a 20 20 62 61 63 6b 67 ff0000;.. backg
80d0: 72 6f 75 6e 64 3a 20 23 66 66 66 66 30 30 3b 0d round: #ffff00;.
80e0: 0a 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 73 . border: 1px s
80f0: 6f 6c 69 64 20 23 66 66 30 30 30 30 3b 0d 0a 7d olid #ff0000;..}
8100: 0d 0a 0d 0a 74 61 62 6c 65 2e 66 6f 73 73 69 6c ....table.fossil
8110: 5f 64 62 5f 67 65 6e 65 72 69 63 5f 71 75 65 72 _db_generic_quer
8120: 79 5f 76 69 65 77 20 7b 0d 0a 20 20 62 6f 72 64 y_view {.. bord
8130: 65 72 2d 73 70 61 63 69 6e 67 3a 20 30 70 78 3b er-spacing: 0px;
8140: 0d 0a 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 .. border: 1px
8150: 73 6f 6c 69 64 20 62 6c 61 63 6b 3b 0d 0a 7d 0d solid black;..}.
8160: 0a 74 61 62 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 .table.fossil_db
8170: 5f 67 65 6e 65 72 69 63 5f 71 75 65 72 79 5f 76 _generic_query_v
8180: 69 65 77 20 74 64 20 7b 0d 0a 20 20 70 61 64 64 iew td {.. padd
8190: 69 6e 67 3a 20 32 70 78 20 31 65 6d 20 32 70 78 ing: 2px 1em 2px
81a0: 20 31 65 6d 3b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 1em;..}..table.
81b0: 66 6f 73 73 69 6c 5f 64 62 5f 67 65 6e 65 72 69 fossil_db_generi
81c0: 63 5f 71 75 65 72 79 5f 76 69 65 77 20 74 72 20 c_query_view tr
81d0: 7b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 66 6f 73 73 {..}..table.foss
81e0: 69 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f 71 75 il_db_generic_qu
81f0: 65 72 79 5f 76 69 65 77 20 74 72 2e 65 76 65 6e ery_view tr.even
8200: 20 7b 0d 0a 20 20 62 61 63 6b 67 72 6f 75 6e 64 {.. background
8210: 3a 20 23 66 66 66 66 66 66 3b 0d 0a 7d 0d 0a 74 : #ffffff;..}..t
8220: 61 62 6c 65 2e 66 6f 73 73 69 6c 5f 64 62 5f 67 able.fossil_db_g
8230: 65 6e 65 72 69 63 5f 71 75 65 72 79 5f 76 69 65 eneric_query_vie
8240: 77 20 74 72 2e 6f 64 64 20 7b 0d 0a 20 20 62 61 w tr.odd {.. ba
8250: 63 6b 67 72 6f 75 6e 64 3a 20 23 65 35 65 35 65 ckground: #e5e5e
8260: 35 3b 0d 0a 7d 0d 0a 74 61 62 6c 65 2e 66 6f 73 5;..}..table.fos
8270: 73 69 6c 5f 64 62 5f 67 65 6e 65 72 69 63 5f 71 sil_db_generic_q
8280: 75 65 72 79 5f 76 69 65 77 20 74 72 2e 68 65 61 uery_view tr.hea
8290: 64 65 72 20 7b 0d 0a 20 20 62 61 63 6b 67 72 6f der {.. backgro
82a0: 75 6e 64 3a 20 23 35 35 38 31 39 35 3b 0d 0a 20 und: #558195;..
82b0: 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 31 2e 35 65 font-size: 1.5e
82c0: 6d 3b 0d 0a 20 20 63 6f 6c 6f 72 3a 20 23 66 66 m;.. color: #ff
82d0: 66 66 66 66 3b 0d 0a 7d 0d 0a 3c 2f 70 72 65 3e ffff;..}..</pre>
82e0: 0d 0a 3c 2f 6e 6f 77 69 6b 69 3e 0d 0a 3c 68 32 ..</nowiki>..<h2
82f0: 3e 3c 61 20 6e 61 6d 65 3d 22 73 6f 75 72 63 65 ><a name="source
8300: 2d 68 69 6c 69 67 68 74 22 3e 53 6f 75 72 63 65 -hilight">Source
8310: 20 68 69 67 68 6c 69 67 68 74 69 6e 67 3c 2f 61 highlighting</a
8320: 3e 3c 2f 68 32 3e 0d 0a 3c 68 33 3e 4d 6f 74 69 ></h2>..<h3>Moti
8330: 76 61 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 20 20 2a vation</h3>.. *
8340: 20 20 59 6f 75 20 77 61 6e 74 20 74 6f 20 68 61 You want to ha
8350: 76 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 68 ve source code h
8360: 69 67 68 6c 69 67 68 74 69 6e 67 20 66 6f 72 20 ighlighting for
8370: 74 68 65 20 66 69 6c 65 73 20 69 6e 20 79 6f 75 the files in you
8380: 72 20 72 65 70 6f 73 69 74 6f 72 79 0d 0a 0d 0a r repository....
8390: 3c 68 33 3e 50 72 6f 62 6c 65 6d 3c 2f 68 33 3e <h3>Problem</h3>
83a0: 0d 0a 54 68 65 20 6d 61 69 6e 20 70 75 72 70 6f ..The main purpo
83b0: 73 65 20 6f 66 20 46 6f 73 73 69 6c 20 69 73 20 se of Fossil is
83c0: 74 6f 20 64 6f 20 76 65 72 73 69 6f 6e 69 6e 67 to do versioning
83d0: 20 66 6f 72 20 73 6f 75 72 63 65 20 63 6f 64 65 for source code
83e0: 2e 20 41 6c 74 68 6f 75 67 68 20 69 74 20 70 72 . Although it pr
83f0: 6f 76 69 64 65 73 20 61 20 73 74 61 6e 64 61 6c ovides a standal
8400: 6f 6e 65 20 73 65 72 76 65 72 20 61 6e 64 20 6c one server and l
8410: 65 74 73 20 79 6f 75 20 6e 61 76 69 67 61 74 65 ets you navigate
8420: 20 74 68 72 6f 75 67 68 20 74 68 65 20 72 65 70 through the rep
8430: 6f 73 69 74 6f 72 79 20 66 69 6c 65 73 20 61 64 ository files ad
8440: 64 69 74 69 6f 6e 61 6c 20 66 65 61 74 75 72 65 ditional feature
8450: 73 20 6c 69 6b 65 20 73 6f 75 72 63 65 20 63 6f s like source co
8460: 64 65 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 de highlighting
8470: 66 72 6f 6d 20 6d 79 20 70 65 72 73 70 65 63 74 from my perspect
8480: 69 76 65 20 28 49 20 61 6d 20 6e 6f 74 20 61 20 ive (I am not a
8490: 64 65 76 65 6c 6f 70 65 72 20 6f 66 20 46 6f 73 developer of Fos
84a0: 73 69 6c 29 20 61 72 65 20 6f 75 74 20 6f 66 20 sil) are out of
84b0: 73 63 6f 70 65 20 66 6f 72 20 61 6e 20 53 43 4d scope for an SCM
84c0: 2e 20 4a 75 73 74 20 6b 65 65 70 20 74 68 65 20 . Just keep the
84d0: 55 6e 69 78 20 70 72 69 6e 63 69 70 6c 65 3a 20 Unix principle:
84e0: 73 6d 61 6c 6c 20 6c 69 74 74 6c 65 20 70 72 6f small little pro
84f0: 67 72 61 6d 73 20 74 68 61 74 20 64 6f 20 74 68 grams that do th
8500: 65 69 72 20 74 61 73 6b 20 61 6e 64 20 64 6f 20 eir task and do
8510: 69 74 20 77 65 6c 6c 2e 0d 0a 0d 0a 48 6f 77 65 it well.....Howe
8520: 76 65 72 20 74 6f 20 68 61 76 65 20 73 6f 75 72 ver to have sour
8530: 63 65 20 63 6f 64 65 20 68 69 67 68 6c 69 67 68 ce code highligh
8540: 74 65 64 20 69 6e 20 74 68 65 20 70 72 65 73 65 ted in the prese
8550: 6e 74 65 64 20 77 65 62 20 70 61 67 65 73 20 77 nted web pages w
8560: 6f 75 6c 64 20 73 74 69 6c 6c 20 62 65 20 64 65 ould still be de
8570: 73 69 72 61 62 6c 65 2e 0d 0a 0d 0a 3c 68 33 3e sirable.....<h3>
8580: 53 6f 6c 75 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 54 Solution</h3>..T
8590: 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 63 65 here are two sce
85a0: 6e 61 72 69 6f 73 20 68 6f 77 20 74 6f 20 69 6d narios how to im
85b0: 70 6c 65 6d 65 6e 74 20 73 75 63 68 20 61 20 66 plement such a f
85c0: 65 61 74 75 72 65 3a 0d 0a 20 20 20 2a 20 20 46 eature:.. * F
85d0: 6f 73 73 69 6c 20 70 69 70 65 73 20 74 68 65 20 ossil pipes the
85e0: 73 6f 75 72 63 65 20 63 6f 64 65 20 74 68 72 6f source code thro
85f0: 75 67 68 20 61 20 66 69 6c 74 65 72 20 62 65 66 ugh a filter bef
8600: 6f 72 65 20 73 65 6e 64 69 6e 67 20 69 74 20 74 ore sending it t
8610: 6f 20 74 68 65 20 62 72 6f 77 73 65 72 2e 20 54 o the browser. T
8620: 68 65 20 66 69 6c 74 65 72 20 63 6f 75 6c 64 20 he filter could
8630: 62 65 20 64 65 66 69 6e 65 64 20 61 73 20 61 20 be defined as a
8640: 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 configuration op
8650: 74 69 6f 6e 20 74 6f 20 46 6f 73 73 69 6c 2e 20 tion to Fossil.
8660: 4f 6e 65 20 73 6f 6c 75 74 69 6f 6e 20 66 6f 72 One solution for
8670: 20 74 68 69 73 20 6d 69 67 68 74 20 62 65 20 74 this might be t
8680: 68 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 he <a href="http
8690: 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 73 ://www.gnu.org/s
86a0: 6f 66 74 77 61 72 65 2f 73 72 63 2d 68 69 67 68 oftware/src-high
86b0: 6c 69 74 65 22 3e 47 4e 55 20 53 6f 75 72 63 65 lite">GNU Source
86c0: 20 63 6f 64 65 20 48 69 67 68 6c 69 67 68 74 69 code Highlighti
86d0: 6e 67 3c 2f 61 3e 20 70 72 6f 67 72 61 6d 2e 0d ng</a> program..
86e0: 0a 20 20 20 2a 20 20 55 73 65 20 61 20 4a 61 76 . * Use a Jav
86f0: 61 73 63 72 69 70 74 20 6c 69 62 72 61 72 79 20 ascript library
8700: 74 68 61 74 20 72 65 6e 64 65 72 73 20 74 68 65 that renders the
8710: 20 63 6f 64 65 20 77 69 74 68 69 6e 20 79 6f 75 code within you
8720: 72 20 62 72 6f 77 73 65 72 2e 20 4f 6e 65 20 73 r browser. One s
8730: 6f 6c 75 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 olution for this
8740: 20 6d 69 67 68 74 20 62 65 20 3c 61 20 68 72 65 might be <a hre
8750: 66 3d 22 68 74 74 70 3a 2f 2f 61 6c 65 78 67 6f f="http://alexgo
8760: 72 62 61 74 63 68 65 76 2e 63 6f 6d 2f 53 79 6e rbatchev.com/Syn
8770: 74 61 78 48 69 67 68 6c 69 67 68 74 65 72 22 3e taxHighlighter">
8780: 41 6c 65 78 20 47 6f 72 62 61 74 63 68 65 76 27 Alex Gorbatchev'
8790: 73 20 53 79 6e 74 61 78 20 48 69 67 68 6c 69 67 s Syntax Highlig
87a0: 68 74 65 72 3c 2f 61 3e 0d 0a 0d 0a 49 20 65 73 hter</a>....I es
87b0: 74 69 6d 61 74 65 20 74 68 61 74 20 74 68 65 20 timate that the
87c0: 3c 69 3e 70 69 70 65 3c 2f 69 3e 20 73 6f 6c 75 <i>pipe</i> solu
87d0: 74 69 6f 6e 20 6e 65 65 64 73 20 73 6f 6d 65 20 tion needs some
87e0: 6d 6f 72 65 20 77 6f 72 6b 2f 20 63 6f 64 65 20 more work/ code
87f0: 63 68 61 6e 67 65 73 2e 20 54 68 75 73 20 49 20 changes. Thus I
8800: 61 6d 20 73 6f 6c 65 6c 79 20 6c 6f 6f 6b 69 6e am solely lookin
8810: 67 20 61 74 20 74 68 65 20 4a 61 76 61 73 63 72 g at the Javascr
8820: 69 70 74 20 73 6f 6c 75 74 69 6f 6e 2e 0d 0a 0d ipt solution....
8830: 0a 54 68 65 20 53 79 6e 74 61 78 48 69 67 68 6c .The SyntaxHighl
8840: 69 67 68 74 65 72 20 69 73 20 61 20 6c 69 62 72 ighter is a libr
8850: 61 72 79 20 6f 66 20 73 6f 6d 65 20 4a 61 76 61 ary of some Java
8860: 73 63 72 69 70 74 20 66 69 6c 65 73 20 61 6e 64 script files and
8870: 20 61 20 43 53 53 20 66 69 6c 65 2e 20 59 6f 75 a CSS file. You
8880: 20 68 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e have the option
8890: 20 74 6f 20 69 6e 63 6c 75 64 65 20 61 6c 6c 20 to include all
88a0: 74 68 65 20 66 69 6c 65 73 20 69 6e 74 6f 20 79 the files into y
88b0: 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 our repository,
88c0: 70 75 74 20 74 68 65 6d 20 6f 6e 20 61 20 73 65 put them on a se
88d0: 72 76 65 72 20 79 6f 75 20 68 61 76 65 20 61 63 rver you have ac
88e0: 63 65 73 73 20 74 6f 20 6f 72 20 75 73 65 20 74 cess to or use t
88f0: 68 65 20 66 69 6c 65 73 20 68 6f 73 74 65 64 20 he files hosted
8900: 61 74 20 61 6c 65 78 67 6f 72 62 61 74 63 68 65 at alexgorbatche
8910: 76 2e 63 6f 6d 2e 20 54 68 65 20 6c 61 74 74 65 v.com. The latte
8920: 72 20 6d 61 79 20 6f 6e 6c 79 20 62 65 20 61 6e r may only be an
8930: 20 6f 70 74 69 6f 6e 20 69 66 20 79 6f 75 20 61 option if you a
8940: 72 65 20 63 6f 6e 6e 65 63 74 65 64 20 74 6f 20 re connected to
8950: 69 6e 74 65 72 6e 65 74 20 61 6c 6c 20 74 68 65 internet all the
8960: 20 74 69 6d 65 2e 0d 0a 54 6f 20 61 64 64 20 74 time...To add t
8970: 68 65 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 he syntax highli
8980: 67 68 74 69 6e 67 20 63 6c 61 73 73 20 74 6f 20 ghting class to
8990: 74 68 65 20 26 6c 74 3b 70 72 65 26 67 74 3b 20 the <pre>
89a0: 65 6c 65 6d 65 6e 74 2c 20 79 6f 75 20 61 6c 73 element, you als
89b0: 6f 20 6e 65 65 64 20 61 20 63 6f 70 79 20 6f 66 o need a copy of
89c0: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f <a href="http:/
89d0: 2f 6a 71 75 65 72 79 2e 63 6f 6d 2f 22 3e 6a 71 /jquery.com/">jq
89e0: 75 65 72 79 3c 2f 61 3e 20 69 6e 20 74 68 65 20 uery</a> in the
89f0: 53 79 6e 74 61 78 48 69 67 68 6c 69 67 68 74 65 SyntaxHighlighte
8a00: 72 20 64 69 72 65 63 74 6f 72 79 2e 20 0d 0a 0d r directory. ...
8a10: 0a 46 6f 72 20 73 79 6e 74 61 78 20 68 69 67 68 .For syntax high
8a20: 6c 69 67 68 74 69 6e 67 20 74 6f 20 77 6f 72 6b lighting to work
8a30: 20 74 68 65 20 48 65 61 64 65 72 20 61 6e 64 20 the Header and
8a40: 46 6f 6f 74 65 72 20 74 65 6d 70 6c 61 74 65 73 Footer templates
8a50: 20 6e 65 65 64 20 74 6f 20 62 65 20 6d 6f 64 69 need to be modi
8a60: 66 69 65 64 2e 0d 0a 0d 0a 54 68 65 20 65 78 61 fied.....The exa
8a70: 6d 70 6c 65 73 20 62 65 6c 6f 77 20 61 73 73 75 mples below assu
8a80: 6d 65 20 79 6f 75 20 68 61 76 65 20 61 64 64 65 me you have adde
8a90: 64 20 74 68 65 20 73 79 6e 74 61 78 20 68 69 67 d the syntax hig
8aa0: 68 6c 69 67 68 74 69 6e 67 20 6c 69 62 72 61 72 hlighting librar
8ab0: 79 20 74 6f 20 79 6f 75 72 20 72 65 70 6f 73 69 y to your reposi
8ac0: 74 6f 72 79 20 69 6e 74 6f 20 61 20 64 69 72 65 tory into a dire
8ad0: 63 74 6f 72 79 20 77 77 77 2f 53 79 6e 74 61 78 ctory www/Syntax
8ae0: 48 69 67 68 6c 69 67 68 74 65 72 2e 0d 0a 54 6f Highlighter...To
8af0: 20 6d 61 6b 65 20 69 74 20 65 61 73 69 65 72 20 make it easier
8b00: 74 6f 20 73 77 69 74 63 68 20 62 65 74 77 65 65 to switch betwee
8b10: 6e 20 74 68 65 20 73 63 72 69 70 74 73 20 62 65 n the scripts be
8b20: 65 69 6e 67 20 70 61 72 74 20 6f 66 20 74 68 65 eing part of the
8b30: 20 72 65 70 6f 73 69 74 6f 72 79 20 61 6e 64 20 repository and
8b40: 74 68 65 20 73 63 72 69 70 74 73 20 62 65 65 69 the scripts beei
8b50: 6e 67 20 68 6f 73 74 65 64 20 6f 6e 20 74 68 65 ng hosted on the
8b60: 20 69 6e 74 65 72 6e 65 74 2c 20 74 68 65 20 68 internet, the h
8b70: 65 61 64 65 72 20 74 65 6d 70 6c 61 74 65 20 64 eader template d
8b80: 65 66 69 6e 65 73 20 74 77 6f 20 54 48 31 20 76 efines two TH1 v
8b90: 61 72 69 61 62 6c 65 73 3a 0d 0a 20 20 0d 0a 20 ariables:.. ..
8ba0: 20 2a 20 20 68 69 67 68 6c 69 67 68 74 65 72 70 * highlighterp
8bb0: 61 74 68 20 2d 20 75 73 65 64 20 66 6f 72 20 61 ath - used for a
8bc0: 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f ll references to
8bd0: 20 74 68 65 20 61 63 74 75 61 6c 20 6c 6f 63 61 the actual loca
8be0: 74 69 6f 6e 20 6f 66 20 74 68 65 20 53 79 6e 74 tion of the Synt
8bf0: 61 78 48 69 67 68 6c 69 67 68 74 65 72 2e 20 4a axHighlighter. J
8c00: 75 73 74 20 73 65 74 20 74 68 6f 73 65 20 76 61 ust set those va
8c10: 72 69 61 62 6c 65 20 74 6f 20 74 68 65 20 62 61 riable to the ba
8c20: 73 65 70 61 74 68 20 6f 66 20 53 79 6e 74 61 78 sepath of Syntax
8c30: 48 69 67 68 6c 69 67 68 74 65 72 20 61 6e 64 20 Highlighter and
8c40: 79 6f 75 27 72 65 20 64 6f 6e 65 2e 20 49 66 20 you're done. If
8c50: 79 6f 75 20 77 6f 75 6c 64 20 6c 69 6b 65 20 74 you would like t
8c60: 6f 20 75 73 65 20 74 68 65 20 68 6f 73 74 65 64 o use the hosted
8c70: 20 76 65 72 73 69 6f 6e 20 61 74 20 61 6c 65 78 version at alex
8c80: 67 6f 72 62 61 74 63 68 65 76 2e 63 6f 6d 2c 20 gorbatchev.com,
8c90: 72 65 70 6c 61 63 65 20 3c 69 3e 24 62 61 73 65 replace <i>$base
8ca0: 75 72 6c 2f 64 6f 63 2f 74 69 70 2f 77 77 77 2f url/doc/tip/www/
8cb0: 53 79 6e 74 61 78 48 69 67 68 6c 69 67 68 74 65 SyntaxHighlighte
8cc0: 72 3c 2f 69 3e 20 77 69 74 68 20 3c 69 3e 68 74 r</i> with <i>ht
8cd0: 74 70 3a 2f 2f 61 6c 65 78 67 6f 72 62 61 74 63 tp://alexgorbatc
8ce0: 68 65 76 2e 63 6f 6d 2f 70 75 62 2f 73 68 2f 63 hev.com/pub/sh/c
8cf0: 75 72 72 65 6e 74 3c 2f 69 3e 0d 0a 20 20 2a 20 urrent</i>.. *
8d00: 20 6a 71 75 65 72 79 70 61 74 68 20 20 2d 20 75 jquerypath - u
8d10: 73 65 64 20 74 6f 20 64 65 66 69 6e 65 20 74 68 sed to define th
8d20: 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 e location of th
8d30: 65 20 75 73 65 64 20 6a 71 75 65 72 79 20 73 63 e used jquery sc
8d40: 72 69 70 74 2e 20 49 66 20 79 6f 75 20 77 61 6e ript. If you wan
8d50: 74 20 74 6f 20 75 73 65 20 61 20 68 6f 73 74 65 t to use a hoste
8d60: 64 20 76 65 72 73 69 6f 6e 2c 20 72 65 70 6c 61 d version, repla
8d70: 63 65 20 3c 69 3e 24 62 61 73 65 75 72 6c 2f 64 ce <i>$baseurl/d
8d80: 6f 63 2f 74 69 70 2f 77 77 77 2f 53 79 6e 74 61 oc/tip/www/Synta
8d90: 78 48 69 67 68 6c 69 67 68 74 65 72 2f 6a 71 75 xHighlighter/jqu
8da0: 65 72 79 2d 31 2e 35 2e 6d 69 6e 2e 6a 73 3c 2f ery-1.5.min.js</
8db0: 69 3e 20 77 69 74 68 20 20 3c 69 3e 68 74 74 70 i> with <i>http
8dc0: 3a 2f 2f 63 6f 64 65 2e 6a 71 75 65 72 79 2e 63 ://code.jquery.c
8dd0: 6f 6d 2f 6a 71 75 65 72 79 2d 31 2e 35 2e 6d 69 om/jquery-1.5.mi
8de0: 6e 2e 6a 73 3c 2f 69 3e 20 6f 72 20 6f 6e 65 20 n.js</i> or one
8df0: 6f 66 20 74 68 65 20 6f 74 68 65 72 20 55 52 4c of the other URL
8e00: 73 20 61 76 61 69 6c 62 6c 65 20 61 74 20 74 68 s availble at th
8e10: 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a e <a href="http:
8e20: 2f 2f 64 6f 63 73 2e 6a 71 75 65 72 79 2e 63 6f //docs.jquery.co
8e30: 6d 2f 44 6f 77 6e 6c 6f 61 64 69 6e 67 5f 6a 51 m/Downloading_jQ
8e40: 75 65 72 79 23 43 44 4e 5f 48 6f 73 74 65 64 5f uery#CDN_Hosted_
8e50: 6a 51 75 65 72 79 22 3e 6a 71 75 65 72 79 20 64 jQuery">jquery d
8e60: 6f 77 6e 6c 6f 61 64 20 70 61 67 65 3c 2f 61 3e ownload page</a>
8e70: 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 3c 62 3e 48 65 61 .....<p>..<b>Hea
8e80: 64 65 72 3c 2f 62 3e 0d 0a 3c 70 72 65 3e 0d 0a der</b>..<pre>..
8e90: 26 6c 74 3b 68 74 6d 6c 26 67 74 3b 0d 0a 20 26 <html>.. &
8ea0: 6c 74 3b 68 65 61 64 26 67 74 3b 0d 0a 20 26 6c lt;head>.. &l
8eb0: 74 3b 74 68 31 26 67 74 3b 0d 0a 20 20 20 73 65 t;th1>.. se
8ec0: 74 20 68 69 67 68 6c 69 67 68 74 65 72 70 61 74 t highlighterpat
8ed0: 68 20 22 24 62 61 73 65 75 72 6c 2f 64 6f 63 2f h "$baseurl/doc/
8ee0: 74 69 70 2f 77 77 77 2f 53 79 6e 74 61 78 48 69 tip/www/SyntaxHi
8ef0: 67 68 6c 69 67 68 74 65 72 22 0d 0a 20 20 20 73 ghlighter".. s
8f00: 65 74 20 6a 71 75 65 72 79 70 61 74 68 20 22 24 et jquerypath "$
8f10: 62 61 73 65 75 72 6c 2f 64 6f 63 2f 74 69 70 2f baseurl/doc/tip/
8f20: 77 77 77 2f 53 79 6e 74 61 78 48 69 67 68 6c 69 www/SyntaxHighli
8f30: 67 68 74 65 72 2f 6a 71 75 65 72 79 2d 31 2e 35 ghter/jquery-1.5
8f40: 2e 6d 69 6e 2e 6a 73 22 0d 0a 20 26 6c 74 3b 2f .min.js".. </
8f50: 74 68 31 26 67 74 3b 20 0d 0a 20 26 6c 74 3b 74 th1> .. <t
8f60: 69 74 6c 65 26 67 74 3b 24 26 6c 74 3b 70 72 6f itle>$<pro
8f70: 6a 65 63 74 5f 6e 61 6d 65 26 67 74 3b 3a 20 24 ject_name>: $
8f80: 26 6c 74 3b 74 69 74 6c 65 26 67 74 3b 26 6c 74 <title><
8f90: 3b 2f 74 69 74 6c 65 26 67 74 3b 0d 0a 20 26 6c ;/title>.. &l
8fa0: 74 3b 6c 69 6e 6b 20 72 65 6c 3d 22 61 6c 74 65 t;link rel="alte
8fb0: 72 6e 61 74 65 22 20 74 79 70 65 3d 22 61 70 70 rnate" type="app
8fc0: 6c 69 63 61 74 69 6f 6e 2f 72 73 73 2b 78 6d 6c lication/rss+xml
8fd0: 22 20 74 69 74 6c 65 3d 22 52 53 53 20 46 65 65 " title="RSS Fee
8fe0: 64 22 20 68 72 65 66 3d 22 24 62 61 73 65 75 72 d" href="$baseur
8ff0: 6c 2f 74 69 6d 65 6c 69 6e 65 2e 72 73 73 22 26 l/timeline.rss"&
9000: 67 74 3b 0d 0a 20 26 6c 74 3b 6c 69 6e 6b 20 72 gt;.. <link r
9010: 65 6c 3d 22 73 74 79 6c 65 73 68 65 65 74 22 20 el="stylesheet"
9020: 68 72 65 66 3d 22 24 62 61 73 65 75 72 6c 2f 73 href="$baseurl/s
9030: 74 79 6c 65 2e 63 73 73 22 20 74 79 70 65 3d 22 tyle.css" type="
9040: 74 65 78 74 2f 63 73 73 22 20 6d 65 64 69 61 3d text/css" media=
9050: 22 73 63 72 65 65 6e 22 26 67 74 3b 0d 0a 20 26 "screen">.. &
9060: 6c 74 3b 6c 69 6e 6b 20 72 65 6c 3d 22 73 74 79 lt;link rel="sty
9070: 6c 65 73 68 65 65 74 22 20 68 72 65 66 3d 22 24 lesheet" href="$
9080: 68 69 67 68 6c 69 67 68 74 65 72 70 61 74 68 2f highlighterpath/
9090: 73 74 79 6c 65 73 2f 73 68 43 6f 72 65 44 65 66 styles/shCoreDef
90a0: 61 75 6c 74 2e 63 73 73 22 20 74 79 70 65 3d 22 ault.css" type="
90b0: 74 65 78 74 2f 63 73 73 22 20 6d 65 64 69 61 3d text/css" media=
90c0: 22 73 63 72 65 65 6e 22 20 2f 26 67 74 3b 0d 0a "screen" />..
90d0: 20 26 6c 74 3b 73 63 72 69 70 74 20 20 6c 61 6e <script lan
90e0: 67 75 61 67 65 3d 22 6a 61 76 61 73 63 72 69 70 guage="javascrip
90f0: 74 22 20 73 72 63 3d 22 24 6a 71 75 65 72 79 70 t" src="$jqueryp
9100: 61 74 68 22 26 67 74 3b 26 6c 74 3b 2f 73 63 72 ath"></scr
9110: 69 70 74 26 67 74 3b 09 20 20 20 0d 0a 20 26 6c ipt>. .. &l
9120: 74 3b 2f 68 65 61 64 26 67 74 3b 0d 0a 2e 20 2e t;/head>... .
9130: 20 2e 0d 0a 3c 2f 70 72 65 3e 0d 0a 3c 2f 70 3e ...</pre>..</p>
9140: 3c 70 3e 0d 0a 3c 62 3e 46 6f 6f 74 65 72 3c 2f <p>..<b>Footer</
9150: 62 3e 0d 0a 0d 0a 57 69 74 68 20 76 65 72 73 69 b>....With versi
9160: 6f 6e 20 33 2e 78 20 6f 66 20 53 79 6e 74 61 78 on 3.x of Syntax
9170: 48 69 67 68 6c 69 67 68 74 65 72 20 69 74 20 69 Highlighter it i
9180: 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 6c 6f s possible to lo
9190: 61 64 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 ad the language
91a0: 73 70 65 63 69 66 69 63 20 73 63 72 69 70 74 73 specific scripts
91b0: 20 6f 6e 20 64 65 6d 61 6e 64 2e 20 54 68 65 20 on demand. The
91c0: 66 6f 6f 74 65 72 20 74 65 6d 70 6c 61 74 65 20 footer template
91d0: 75 73 65 73 20 74 68 69 73 20 66 65 61 74 75 72 uses this featur
91e0: 65 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 e to identify th
91f0: 65 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 e programming la
9200: 6e 67 75 61 67 65 20 6f 66 20 74 68 65 20 73 6f nguage of the so
9210: 75 72 63 65 66 69 6c 65 20 62 79 20 6c 6f 6f 6b urcefile by look
9220: 69 6e 67 20 61 74 20 74 68 65 20 65 78 74 65 6e ing at the exten
9230: 73 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 6c 65 sion of the file
9240: 20 61 6e 64 20 74 68 65 6e 20 61 64 64 73 20 74 and then adds t
9250: 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 62 he appropriate b
9260: 72 75 73 68 20 74 6f 20 74 68 65 20 26 6c 74 3b rush to the <
9270: 70 72 65 26 67 74 3b 20 65 6c 65 6d 65 6e 74 2e pre> element.
9280: 20 53 79 6e 74 61 78 48 69 67 68 6c 69 67 68 74 SyntaxHighlight
9290: 65 72 20 77 69 6c 6c 20 74 68 65 6e 20 6c 6f 61 er will then loa
92a0: 64 20 6f 6e 6c 79 20 74 68 65 20 62 72 75 73 68 d only the brush
92b0: 20 6e 65 65 64 65 64 20 74 6f 20 68 69 67 68 6c needed to highl
92c0: 69 67 68 74 20 74 68 65 20 63 75 72 72 65 6e 74 ight the current
92d0: 20 70 61 67 65 2e 0d 0a 0d 0a 3c 70 72 65 3e 0d page.....<pre>.
92e0: 0a 26 6c 74 3b 64 69 76 20 63 6c 61 73 73 3d 22 .<div class="
92f0: 66 6f 6f 74 65 72 22 26 67 74 3b 0d 0a 46 6f 73 footer">..Fos
9300: 73 69 6c 20 76 65 72 73 69 6f 6e 20 24 6d 61 6e sil version $man
9310: 69 66 65 73 74 5f 76 65 72 73 69 6f 6e 20 24 6d ifest_version $m
9320: 61 6e 69 66 65 73 74 5f 64 61 74 65 0d 0a 26 6c anifest_date..&l
9330: 74 3b 2f 64 69 76 26 67 74 3b 0d 0a 26 6c 74 3b t;/div>..<
9340: 73 63 72 69 70 74 20 6c 61 6e 67 75 61 67 65 3d script language=
9350: 22 6a 61 76 61 73 63 72 69 70 74 22 20 73 72 63 "javascript" src
9360: 3d 22 24 68 69 67 68 6c 69 67 68 74 65 72 70 61 ="$highlighterpa
9370: 74 68 2f 73 63 72 69 70 74 73 2f 73 68 43 6f 72 th/scripts/shCor
9380: 65 2e 6a 73 22 26 67 74 3b 26 6c 74 3b 2f 73 63 e.js"></sc
9390: 72 69 70 74 26 67 74 3b 0d 0a 26 6c 74 3b 73 63 ript>..<sc
93a0: 72 69 70 74 20 6c 61 6e 67 75 61 67 65 3d 22 6a ript language="j
93b0: 61 76 61 73 63 72 69 70 74 22 20 73 72 63 3d 22 avascript" src="
93c0: 24 68 69 67 68 6c 69 67 68 74 65 72 70 61 74 68 $highlighterpath
93d0: 2f 73 63 72 69 70 74 73 2f 73 68 41 75 74 6f 6c /scripts/shAutol
93e0: 6f 61 64 65 72 2e 6a 73 22 3e 26 6c 74 3b 2f 73 oader.js"></s
93f0: 63 72 69 70 74 26 67 74 3b 0d 0a 26 6c 74 3b 73 cript>..<s
9400: 63 72 69 70 74 20 6c 61 6e 67 75 61 67 65 3d 22 cript language="
9410: 6a 61 76 61 73 63 72 69 70 74 22 26 67 74 3b 0d javascript">.
9420: 0a 66 75 6e 63 74 69 6f 6e 20 70 61 74 68 28 29 .function path()
9430: 0d 0a 7b 0d 0a 20 20 76 61 72 20 61 72 67 73 20 ..{.. var args
9440: 3d 20 61 72 67 75 6d 65 6e 74 73 2c 20 72 65 73 = arguments, res
9450: 75 6c 74 20 3d 20 26 23 39 31 3b 26 23 39 33 3b ult = []
9460: 3b 20 20 20 20 20 20 20 0d 0a 20 20 66 6f 72 28 ; .. for(
9470: 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 61 var i = 0; i < a
9480: 72 67 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 rgs.length; i++)
9490: 0d 0a 20 20 20 20 20 20 72 65 73 75 6c 74 2e 70 .. result.p
94a0: 75 73 68 28 61 72 67 73 26 23 39 31 3b 69 26 23 ush(args[i&#
94b0: 39 33 3b 2e 72 65 70 6c 61 63 65 28 27 40 27 2c 93;.replace('@',
94c0: 20 27 24 68 69 67 68 6c 69 67 68 74 65 72 70 61 '$highlighterpa
94d0: 74 68 2f 73 63 72 69 70 74 73 2f 27 29 29 3b 20 th/scripts/'));
94e0: 20 20 20 20 20 20 0d 0a 20 20 72 65 74 75 72 6e .. return
94f0: 20 72 65 73 75 6c 74 0d 0a 7d 3b 0d 0a 2f 2f 20 result..};..//
9500: 44 6f 20 74 68 65 20 68 69 67 68 6c 69 67 68 74 Do the highlight
9510: 69 6e 67 20 6f 6e 6c 79 20 6f 6e 20 61 72 74 69 ing only on arti
9520: 66 61 63 74 20 70 61 67 65 73 0d 0a 69 66 20 28 fact pages..if (
9530: 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d document.getElem
9540: 65 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 22 74 entsByTagName("t
9550: 69 74 6c 65 22 29 26 23 39 31 3b 30 26 23 39 33 itle")[0]
9560: 3b 2e 69 6e 6e 65 72 48 54 4d 4c 2e 69 6e 64 65 ;.innerHTML.inde
9570: 78 4f 66 28 22 41 72 74 69 66 61 63 74 22 29 20 xOf("Artifact")
9580: 21 3d 20 2d 31 29 0d 0a 7b 0d 0a 20 20 20 20 2f != -1)..{.. /
9590: 2f 20 74 72 79 20 74 6f 20 66 69 6e 64 20 6f 75 / try to find ou
95a0: 74 20 74 68 65 20 66 69 6c 65 20 74 79 70 65 20 t the file type
95b0: 62 79 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 by looking at th
95c0: 65 20 66 69 6c 65 20 6e 61 6d 65 73 20 65 78 74 e file names ext
95d0: 65 6e 73 69 6f 6e 0d 0a 20 20 20 20 76 61 72 20 ension.. var
95e0: 66 69 6c 65 20 3d 20 64 6f 63 75 6d 65 6e 74 2e file = document.
95f0: 67 65 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 getElementsByTag
9600: 4e 61 6d 65 28 22 62 6c 6f 63 6b 71 75 6f 74 65 Name("blockquote
9610: 22 29 26 23 39 31 3b 30 26 23 39 33 3b 2e 67 65 ")[0].ge
9620: 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 4e 61 tElementsByTagNa
9630: 6d 65 28 22 61 22 29 26 23 39 31 3b 30 26 23 39 me("a")[0	
9640: 33 3b 2e 69 6e 6e 65 72 48 54 4d 4c 3b 0d 0a 20 3;.innerHTML;..
9650: 20 20 20 76 61 72 20 65 78 74 50 6f 73 20 3d 20 var extPos =
9660: 66 69 6c 65 2e 6c 61 73 74 49 6e 64 65 78 4f 66 file.lastIndexOf
9670: 28 22 2e 22 29 3b 0d 0a 20 20 20 20 76 61 72 20 (".");.. var
9680: 65 78 74 65 6e 73 69 6f 6e 20 3d 20 22 22 3b 0d extension = "";.
9690: 0a 20 20 20 20 69 66 20 28 65 78 74 50 6f 73 20 . if (extPos
96a0: 21 3d 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 65 != -1).. e
96b0: 78 74 65 6e 73 69 6f 6e 20 3d 20 66 69 6c 65 2e xtension = file.
96c0: 73 75 62 73 74 72 69 6e 67 28 65 78 74 50 6f 73 substring(extPos
96d0: 20 2b 20 31 29 3b 0d 0a 20 20 20 20 2f 2f 20 73 + 1);.. // s
96e0: 65 74 20 61 20 64 65 66 61 75 6c 74 20 66 6f 72 et a default for
96f0: 20 65 78 74 65 6e 73 69 6f 6e 73 20 6e 6f 74 20 extensions not
9700: 72 65 63 6f 67 6e 69 7a 65 64 0d 0a 20 20 20 20 recognized..
9710: 76 61 72 20 62 72 75 73 68 20 3d 20 22 62 72 75 var brush = "bru
9720: 73 68 3a 20 74 65 78 74 22 3b 0d 0a 09 2f 2f 20 sh: text";...//
9730: 63 68 65 63 6b 20 74 68 65 20 65 78 74 65 6e 73 check the extens
9740: 69 6f 6e 20 74 6f 20 73 65 6c 65 63 74 20 74 68 ion to select th
9750: 65 20 62 72 75 73 68 20 66 6f 72 20 68 69 67 68 e brush for high
9760: 6c 69 67 68 74 69 6e 67 0d 0a 20 20 20 20 69 66 lighting.. if
9770: 20 28 65 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 (extension == "
9780: 63 73 22 29 0d 0a 20 20 20 20 20 20 20 20 62 72 cs").. br
9790: 75 73 68 20 3d 20 22 62 72 75 73 68 3a 20 63 2d ush = "brush: c-
97a0: 73 68 61 72 70 22 3b 0d 0a 20 20 20 20 65 6c 73 sharp";.. els
97b0: 65 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 20 e if (extension
97c0: 3d 3d 20 22 76 62 22 29 0d 0a 20 20 20 20 20 20 == "vb")..
97d0: 20 20 62 72 75 73 68 20 3d 20 22 62 72 75 73 68 brush = "brush
97e0: 3a 20 76 62 22 3b 0d 0a 20 20 20 20 65 6c 73 65 : vb";.. else
97f0: 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 20 3d if (extension =
9800: 3d 20 22 78 6d 6c 22 20 7c 7c 20 65 78 74 65 6e = "xml" || exten
9810: 73 69 6f 6e 20 3d 3d 20 22 78 73 64 22 20 7c 7c sion == "xsd" ||
9820: 20 65 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 78 extension == "x
9830: 73 6c 74 22 20 7c 7c 20 65 78 74 65 6e 73 69 6f slt" || extensio
9840: 6e 20 3d 3d 20 22 61 6d 6c 22 20 7c 7c 20 65 78 n == "aml" || ex
9850: 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 73 68 66 62 tension == "shfb
9860: 70 72 6f 6a 22 20 7c 7c 20 65 78 74 65 6e 73 69 proj" || extensi
9870: 6f 6e 20 3d 3d 20 22 63 73 70 72 6f 6a 22 29 0d on == "csproj").
9880: 0a 20 20 20 20 20 20 20 20 62 72 75 73 68 20 3d . brush =
9890: 20 22 62 72 75 73 68 3a 20 78 6d 6c 22 3b 0d 0a "brush: xml";..
98a0: 20 20 20 20 65 6c 73 65 20 69 66 20 28 65 78 74 else if (ext
98b0: 65 6e 73 69 6f 6e 20 3d 3d 20 22 63 6d 64 22 20 ension == "cmd"
98c0: 7c 7c 20 65 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 || extension ==
98d0: 22 73 68 22 29 0d 0a 20 20 20 20 20 20 20 20 62 "sh").. b
98e0: 72 75 73 68 20 3d 20 22 62 72 75 73 68 3a 20 73 rush = "brush: s
98f0: 68 65 6c 6c 22 3b 0d 0a 20 20 20 20 65 6c 73 65 hell";.. else
9900: 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 20 3d if (extension =
9910: 3d 20 22 73 71 6c 22 29 0d 0a 20 20 20 20 20 20 = "sql")..
9920: 20 20 62 72 75 73 68 20 3d 20 22 62 72 75 73 68 brush = "brush
9930: 3a 20 73 71 6c 22 3b 0d 0a 20 20 20 20 65 6c 73 : sql";.. els
9940: 65 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 20 e if (extension
9950: 3d 3d 20 22 63 22 20 7c 7c 20 65 78 74 65 6e 73 == "c" || extens
9960: 69 6f 6e 20 3d 3d 20 22 63 70 70 22 20 7c 7c 20 ion == "cpp" ||
9970: 65 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 63 78 extension == "cx
9980: 78 22 20 7c 7c 20 65 78 74 65 6e 73 69 6f 6e 20 x" || extension
9990: 3d 3d 20 22 63 63 22 20 7c 7c 20 65 78 74 65 6e == "cc" || exten
99a0: 73 69 6f 6e 20 3d 3d 20 22 68 22 20 7c 7c 20 65 sion == "h" || e
99b0: 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 68 70 70 xtension == "hpp
99c0: 22 29 0d 0a 20 20 20 20 20 20 20 20 62 72 75 73 ").. brus
99d0: 68 20 3d 20 22 62 72 75 73 68 3a 20 63 70 70 22 h = "brush: cpp"
99e0: 3b 0d 0a 20 20 20 20 65 6c 73 65 20 69 66 20 28 ;.. else if (
99f0: 65 78 74 65 6e 73 69 6f 6e 20 3d 3d 20 22 6a 73 extension == "js
9a00: 22 29 0d 0a 20 20 20 20 20 20 20 20 62 72 75 73 ").. brus
9a10: 68 20 3d 20 22 62 72 75 73 68 3a 20 6a 61 76 61 h = "brush: java
9a20: 73 63 72 69 70 74 22 3b 0d 0a 20 20 20 20 65 6c script";.. el
9a30: 73 65 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e se if (extension
9a40: 20 3d 3d 20 22 63 73 73 22 29 0d 0a 20 20 20 20 == "css")..
9a50: 20 20 20 20 62 72 75 73 68 20 3d 20 22 62 72 75 brush = "bru
9a60: 73 68 3a 20 63 73 73 22 3b 0d 0a 20 20 20 20 65 sh: css";.. e
9a70: 6c 73 65 20 69 66 20 28 65 78 74 65 6e 73 69 6f lse if (extensio
9a80: 6e 20 3d 3d 20 22 70 68 70 22 29 0d 0a 20 20 20 n == "php")..
9a90: 20 20 20 20 20 62 72 75 73 68 20 3d 20 22 62 72 brush = "br
9aa0: 75 73 68 3a 20 70 68 70 22 3b 0d 0a 20 20 20 20 ush: php";..
9ab0: 65 6c 73 65 20 69 66 20 28 65 78 74 65 6e 73 69 else if (extensi
9ac0: 6f 6e 20 3d 3d 20 22 70 6c 22 29 0d 0a 20 20 20 on == "pl")..
9ad0: 20 20 20 20 20 62 72 75 73 68 20 3d 20 22 62 72 brush = "br
9ae0: 75 73 68 3a 20 70 65 72 6c 22 3b 0d 0a 20 20 20 ush: perl";..
9af0: 20 65 6c 73 65 20 69 66 20 28 65 78 74 65 6e 73 else if (extens
9b00: 69 6f 6e 20 3d 3d 20 22 6a 61 76 61 22 29 0d 0a ion == "java")..
9b10: 20 20 20 20 20 20 20 20 62 72 75 73 68 20 3d 20 brush =
9b20: 22 62 72 75 73 68 3a 20 6a 61 76 61 22 3b 0d 0a "brush: java";..
9b30: 20 20 20 20 65 6c 73 65 20 69 66 20 28 65 78 74 else if (ext
9b40: 65 6e 73 69 6f 6e 20 3d 3d 20 22 72 75 62 79 22 ension == "ruby"
9b50: 20 7c 7c 20 65 78 74 65 6e 73 69 6f 6e 20 3d 3d || extension ==
9b60: 20 22 72 62 22 20 29 0d 0a 20 20 20 20 20 20 20 "rb" )..
9b70: 20 62 72 75 73 68 20 3d 20 22 62 72 75 73 68 3a brush = "brush:
9b80: 20 72 75 62 79 22 3b 0d 0a 20 20 20 20 65 6c 73 ruby";.. els
9b90: 65 20 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 20 e if (extension
9ba0: 3d 3d 20 22 70 79 22 29 0d 0a 20 20 20 20 20 20 == "py")..
9bb0: 20 20 62 72 75 73 68 20 3d 20 22 62 72 75 73 68 brush = "brush
9bc0: 3a 20 70 79 74 68 6f 6e 22 3b 0d 0a 20 20 20 20 : python";..
9bd0: 2f 2f 20 64 69 73 61 62 6c 65 20 74 68 65 20 68 // disable the h
9be0: 69 67 68 6c 69 67 68 74 65 72 20 74 6f 6f 6c 62 ighlighter toolb
9bf0: 61 72 0d 0a 20 20 20 20 62 72 75 73 68 20 3d 20 ar.. brush =
9c00: 62 72 75 73 68 20 2b 20 22 3b 20 74 6f 6f 6c 62 brush + "; toolb
9c10: 61 72 3a 20 66 61 6c 73 65 3b 22 3b 0d 0a 09 2f ar: false;";.../
9c20: 2f 20 41 64 64 20 74 68 65 20 62 72 75 73 68 20 / Add the brush
9c30: 74 6f 20 74 68 65 20 70 72 65 20 65 6c 65 6d 65 to the pre eleme
9c40: 6e 74 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e nt which contain
9c50: 73 20 74 68 65 20 73 6f 75 72 63 65 20 66 69 6c s the source fil
9c60: 65 0d 0a 20 20 20 20 24 28 22 70 72 65 3a 6c 61 e.. $("pre:la
9c70: 73 74 22 29 2e 61 64 64 43 6c 61 73 73 28 62 72 st").addClass(br
9c80: 75 73 68 29 3b 0d 0a 09 2f 2f 20 69 6e 69 74 69 ush);...// initi
9c90: 61 6c 69 7a 65 20 53 79 6e 74 61 78 48 69 67 68 alize SyntaxHigh
9ca0: 6c 69 67 68 74 65 72 27 73 20 61 75 74 6f 6c 6f lighter's autolo
9cb0: 61 64 65 72 0d 0a 20 20 20 20 53 79 6e 74 61 78 ader.. Syntax
9cc0: 48 69 67 68 6c 69 67 68 74 65 72 2e 61 75 74 6f Highlighter.auto
9cd0: 6c 6f 61 64 65 72 2e 61 70 70 6c 79 28 6e 75 6c loader.apply(nul
9ce0: 6c 2c 20 70 61 74 68 28 0d 0a 09 09 27 61 70 70 l, path(....'app
9cf0: 6c 65 73 63 72 69 70 74 20 20 20 20 20 20 20 20 lescript
9d00: 20 20 20 20 40 73 68 42 72 75 73 68 41 70 70 6c @shBrushAppl
9d10: 65 53 63 72 69 70 74 2e 6a 73 27 2c 0d 0a 09 09 eScript.js',....
9d20: 27 61 63 74 69 6f 6e 73 63 72 69 70 74 33 20 61 'actionscript3 a
9d30: 73 33 20 20 20 20 20 20 40 73 68 42 72 75 73 68 s3 @shBrush
9d40: 41 53 33 2e 6a 73 27 2c 0d 0a 09 09 27 62 61 73 AS3.js',....'bas
9d50: 68 20 73 68 65 6c 6c 20 20 20 20 20 20 20 20 20 h shell
9d60: 20 20 20 20 40 73 68 42 72 75 73 68 42 61 73 68 @shBrushBash
9d70: 2e 6a 73 27 2c 0d 0a 09 09 27 63 6f 6c 64 66 75 .js',....'coldfu
9d80: 73 69 6f 6e 20 63 66 20 20 20 20 20 20 20 20 20 sion cf
9d90: 20 40 73 68 42 72 75 73 68 43 6f 6c 64 46 75 73 @shBrushColdFus
9da0: 69 6f 6e 2e 6a 73 27 2c 0d 0a 09 09 27 63 70 70 ion.js',....'cpp
9db0: 20 63 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c
9dc0: 20 20 20 20 40 73 68 42 72 75 73 68 43 70 70 2e @shBrushCpp.
9dd0: 6a 73 27 2c 0d 0a 09 09 27 63 23 20 63 2d 73 68 js',....'c# c-sh
9de0: 61 72 70 20 63 73 68 61 72 70 20 20 20 20 20 20 arp csharp
9df0: 40 73 68 42 72 75 73 68 43 53 68 61 72 70 2e 6a @shBrushCSharp.j
9e00: 73 27 2c 0d 0a 09 09 27 63 73 73 20 20 20 20 20 s',....'css
9e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40 @
9e20: 73 68 42 72 75 73 68 43 73 73 2e 6a 73 27 2c 0d shBrushCss.js',.
9e30: 0a 09 09 27 64 65 6c 70 68 69 20 70 61 73 63 61 ...'delphi pasca
9e40: 6c 20 20 20 20 20 20 20 20 20 20 40 73 68 42 72 l @shBr
9e50: 75 73 68 44 65 6c 70 68 69 2e 6a 73 27 2c 0d 0a ushDelphi.js',..
9e60: 09 09 27 64 69 66 66 20 70 61 74 63 68 20 70 61 ..'diff patch pa
9e70: 73 20 20 20 20 20 20 20 20 20 40 73 68 42 72 75 s @shBru
9e80: 73 68 44 69 66 66 2e 6a 73 27 2c 0d 0a 09 09 27 shDiff.js',....'
9e90: 65 72 6c 20 65 72 6c 61 6e 67 20 20 20 20 20 20 erl erlang
9ea0: 20 20 20 20 20 20 20 40 73 68 42 72 75 73 68 45 @shBrushE
9eb0: 72 6c 61 6e 67 2e 6a 73 27 2c 0d 0a 09 09 27 67 rlang.js',....'g
9ec0: 72 6f 6f 76 79 20 20 20 20 20 20 20 20 20 20 20 roovy
9ed0: 20 20 20 20 20 20 40 73 68 42 72 75 73 68 47 72 @shBrushGr
9ee0: 6f 6f 76 79 2e 6a 73 27 2c 0d 0a 09 09 27 6a 61 oovy.js',....'ja
9ef0: 76 61 20 20 20 20 20 20 20 20 20 20 20 20 20 20 va
9f00: 20 20 20 20 20 40 73 68 42 72 75 73 68 4a 61 76 @shBrushJav
9f10: 61 2e 6a 73 27 2c 0d 0a 09 09 27 6a 66 78 20 6a a.js',....'jfx j
9f20: 61 76 61 66 78 20 20 20 20 20 20 20 20 20 20 20 avafx
9f30: 20 20 40 73 68 42 72 75 73 68 4a 61 76 61 46 58 @shBrushJavaFX
9f40: 2e 6a 73 27 2c 0d 0a 09 09 27 6a 73 20 6a 73 63 .js',....'js jsc
9f50: 72 69 70 74 20 6a 61 76 61 73 63 72 69 70 74 20 ript javascript
9f60: 20 40 73 68 42 72 75 73 68 4a 53 63 72 69 70 74 @shBrushJScript
9f70: 2e 6a 73 27 2c 0d 0a 09 09 27 70 65 72 6c 20 70 .js',....'perl p
9f80: 6c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l
9f90: 20 40 73 68 42 72 75 73 68 50 65 72 6c 2e 6a 73 @shBrushPerl.js
9fa0: 27 2c 0d 0a 09 09 27 70 68 70 20 20 20 20 20 20 ',....'php
9fb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40 73 @s
9fc0: 68 42 72 75 73 68 50 68 70 2e 6a 73 27 2c 0d 0a hBrushPhp.js',..
9fd0: 09 09 27 74 65 78 74 20 70 6c 61 69 6e 20 20 20 ..'text plain
9fe0: 20 20 20 20 20 20 20 20 20 20 40 73 68 42 72 75 @shBru
9ff0: 73 68 50 6c 61 69 6e 2e 6a 73 27 2c 0d 0a 09 09 shPlain.js',....
a000: 27 70 79 20 70 79 74 68 6f 6e 20 20 20 20 20 20 'py python
a010: 20 20 20 20 20 20 20 20 40 73 68 42 72 75 73 68 @shBrush
a020: 50 79 74 68 6f 6e 2e 6a 73 27 2c 0d 0a 09 09 27 Python.js',....'
a030: 72 75 62 79 20 72 61 69 6c 73 20 72 6f 72 20 72 ruby rails ror r
a040: 62 20 20 20 20 20 20 40 73 68 42 72 75 73 68 52 b @shBrushR
a050: 75 62 79 2e 6a 73 27 2c 0d 0a 09 09 27 73 61 73 uby.js',....'sas
a060: 73 20 73 63 73 73 20 20 20 20 20 20 20 20 20 20 s scss
a070: 20 20 20 20 40 73 68 42 72 75 73 68 53 61 73 73 @shBrushSass
a080: 2e 6a 73 27 2c 0d 0a 09 09 27 73 63 61 6c 61 20 .js',....'scala
a090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
a0a0: 20 40 73 68 42 72 75 73 68 53 63 61 6c 61 2e 6a @shBrushScala.j
a0b0: 73 27 2c 0d 0a 09 09 27 73 71 6c 20 20 20 20 20 s',....'sql
a0c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40 @
a0d0: 73 68 42 72 75 73 68 53 71 6c 2e 6a 73 27 2c 0d shBrushSql.js',.
a0e0: 0a 09 09 27 76 62 20 76 62 6e 65 74 20 20 20 20 ...'vb vbnet
a0f0: 20 20 20 20 20 20 20 20 20 20 20 40 73 68 42 72 @shBr
a100: 75 73 68 56 62 2e 6a 73 27 2c 0d 0a 09 09 27 78 ushVb.js',....'x
a110: 6d 6c 20 78 68 74 6d 6c 20 78 73 6c 74 20 68 74 ml xhtml xslt ht
a120: 6d 6c 20 20 20 20 40 73 68 42 72 75 73 68 58 6d ml @shBrushXm
a130: 6c 2e 6a 73 27 0d 0a 09 29 29 3b 0d 0a 20 20 20 l.js'...));..
a140: 20 2f 2f 20 61 6e 64 20 66 69 6e 61 6c 6c 79 20 // and finally
a150: 68 69 67 68 6c 69 67 68 74 20 69 74 0d 0a 20 20 highlight it..
a160: 20 20 53 79 6e 74 61 78 48 69 67 68 6c 69 67 68 SyntaxHighligh
a170: 74 65 72 2e 61 6c 6c 28 29 0d 0a 7d 0d 0a 26 6c ter.all()..}..&l
a180: 74 3b 2f 73 63 72 69 70 74 26 67 74 3b 0d 0a 26 t;/script>..&
a190: 6c 74 3b 2f 62 6f 64 79 26 67 74 3b 26 6c 74 3b lt;/body><
a1a0: 2f 68 74 6d 6c 26 67 74 3b 0d 0a 3c 2f 70 72 65 /html>..</pre
a1b0: 3e 0d 0a 3c 2f 70 3e 0d 0a 3c 68 32 3e 3c 61 20 >..</p>..<h2><a
a1c0: 6e 61 6d 65 3d 22 77 69 6e 33 32 64 65 76 22 3e name="win32dev">
a1d0: 48 6f 77 20 74 6f 20 70 72 65 70 61 72 65 20 79 How to prepare y
a1e0: 6f 75 72 20 57 69 6e 64 6f 77 73 20 58 50 20 46 our Windows XP F
a1f0: 6f 73 73 69 6c 20 64 65 76 65 6c 6f 70 6d 65 6e ossil developmen
a200: 74 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 3c 2f 61 t Environment</a
a210: 3e 3c 2f 68 32 3e 0d 0a 3c 68 34 3e 4d 69 6e 47 ></h2>..<h4>MinG
a220: 57 2b 4e 53 49 53 2f 57 69 58 3c 2f 68 34 3e 0d W+NSIS/WiX</h4>.
a230: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 53 65 74 75 70 .<ul>..<li>Setup
a240: 20 54 43 4c 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 53 TCL</li>..<li>S
a250: 65 74 75 70 20 4d 69 6e 47 57 3c 2f 6c 69 3e 0d etup MinGW</li>.
a260: 0a 3c 6c 69 3e 47 65 74 74 69 6e 67 20 4e 53 49 .<li>Getting NSI
a270: 53 20 57 69 6e 64 6f 77 73 20 70 61 63 6b 61 67 S Windows packag
a280: 69 6e 67 20 74 6f 6f 6c 20 3c 2f 6c 69 3e 0d 0a ing tool </li>..
a290: 3c 6c 69 3e 47 65 74 74 69 6e 67 20 46 6f 73 73 <li>Getting Foss
a2a0: 69 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 3c 2f il source code</
a2b0: 6c 69 3e 0d 0a 3c 6c 69 3e 42 75 69 6c 64 20 74 li>..<li>Build t
a2c0: 68 65 20 63 6f 64 65 20 77 69 74 68 20 4d 61 6b he code with Mak
a2d0: 65 66 69 6c 65 2e 77 69 6e 33 32 20 3c 2f 6c 69 efile.win32 </li
a2e0: 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 34 3e 56 69 >..</ul>..<h4>Vi
a2f0: 73 75 61 6c 20 53 74 75 64 69 6f 20 45 78 70 72 sual Studio Expr
a300: 65 73 73 20 32 30 30 38 2b 57 69 58 3c 2f 68 34 ess 2008+WiX</h4
a310: 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 53 65 74 >..<ul>..<li>Set
a320: 75 70 20 54 43 4c 3c 2f 6c 69 3e 0d 0a 3c 6c 69 up TCL</li>..<li
a330: 3e 53 65 74 75 70 20 56 53 32 30 30 38 3c 2f 6c >Setup VS2008</l
a340: 69 3e 0d 0a 3c 6c 69 3e 47 65 74 74 69 6e 67 20 i>..<li>Getting
a350: 57 69 58 20 57 69 6e 64 6f 77 73 20 4d 53 49 20 WiX Windows MSI
a360: 74 6f 6f 6c 20 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e tool </li>..<li>
a370: 47 65 74 74 69 6e 67 20 46 6f 73 73 69 6c 20 73 Getting Fossil s
a380: 6f 75 72 63 65 20 63 6f 64 65 3c 2f 6c 69 3e 0d ource code</li>.
a390: 0a 3c 6c 69 3e 42 75 69 6c 64 20 74 68 65 20 63 .<li>Build the c
a3a0: 6f 64 65 20 77 69 74 68 20 4d 61 6b 65 66 69 6c ode with Makefil
a3b0: 65 2e 77 69 6e 33 32 3c 2f 6c 69 3e 0d 0a 3c 2f e.win32</li>..</
a3c0: 75 6c 3e 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 ul>....<h2><a na
a3d0: 6d 65 3d 22 77 79 73 69 77 69 67 22 3e 4a 61 76 me="wysiwig">Jav
a3e0: 61 73 63 72 69 70 74 20 48 54 4d 4c 20 57 59 53 ascript HTML WYS
a3f0: 49 57 59 47 20 65 64 69 74 6f 72 20 63 6f 6e 74 IWYG editor cont
a400: 72 6f 6c 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c 68 rol</a></h2>..<h
a410: 33 3e 4d 6f 74 69 76 61 74 69 6f 6e 3c 2f 68 33 3>Motivation</h3
a420: 3e 0d 0a 20 20 2a 20 20 59 6f 75 20 77 61 6e 74 >.. * You want
a430: 20 74 6f 20 65 64 69 74 20 74 68 65 20 77 69 6b to edit the wik
a440: 69 20 70 61 67 65 73 20 77 69 74 68 20 61 20 6e i pages with a n
a450: 69 63 65 20 65 64 69 74 6f 72 20 63 6f 6d 70 6f ice editor compo
a460: 6e 65 6e 74 2c 20 69 6e 73 74 65 61 64 20 6f 66 nent, instead of
a470: 20 75 73 69 6e 67 20 70 6c 61 69 6e 20 48 54 4d using plain HTM
a480: 4c 2e 0d 0a 0d 0a 3c 68 33 3e 50 72 6f 62 6c 65 L.....<h3>Proble
a490: 6d 3c 2f 68 33 3e 0d 0a 46 6f 73 73 69 6c 20 62 m</h3>..Fossil b
a4a0: 79 20 69 74 73 65 6c 66 20 64 6f 65 73 6e 27 74 y itself doesn't
a4b0: 20 73 75 70 70 6f 72 74 20 69 74 2e 0d 0a 0d 0a support it.....
a4c0: 3c 68 33 3e 53 6f 6c 75 74 69 6f 6e 3c 2f 68 33 <h3>Solution</h3
a4d0: 3e 0d 0a 54 68 65 72 65 20 61 72 65 20 70 75 72 >..There are pur
a4e0: 65 20 6a 61 76 61 73 63 72 69 70 74 20 65 64 69 e javascript edi
a4f0: 74 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 74 tor components t
a500: 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 hat can be used
a510: 66 6f 72 20 74 68 69 73 20 74 61 73 6b 2e 0d 0a for this task...
a520: 54 68 65 20 73 6f 75 72 63 65 20 66 6f 72 20 74 The source for t
a530: 68 65 20 65 64 69 74 6f 72 20 63 6f 6d 70 6f 6e he editor compon
a540: 65 6e 74 20 69 73 20 61 64 64 65 64 20 74 6f 20 ent is added to
a550: 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 2e 20 the repository.
a560: 54 68 65 20 68 74 6d 6c 20 68 65 61 64 65 72 20 The html header
a570: 6f 72 20 66 6f 6f 74 65 72 20 69 73 20 70 72 65 or footer is pre
a580: 70 61 72 65 64 20 74 6f 20 69 6e 63 6c 75 64 65 pared to include
a590: 20 61 20 6a 61 76 61 73 63 72 69 70 74 20 66 69 a javascript fi
a5a0: 6c 65 20 61 6e 64 2f 6f 72 20 61 20 43 53 53 2e le and/or a CSS.
a5b0: 0d 0a 3c 62 72 3e 0d 0a 54 68 65 73 65 20 74 77 ..<br>..These tw
a5c0: 6f 20 74 69 70 73 20 61 72 65 20 66 72 6f 6d 20 o tips are from
a5d0: 74 68 65 20 6d 61 69 6c 69 6e 67 20 6c 69 73 74 the mailing list
a5e0: 3a 0d 0a 52 65 6e 65 20 64 65 20 5a 77 61 72 74 :..Rene de Zwart
a5f0: 20 33 30 2e 20 4f 63 74 2e 20 32 30 30 39 0d 0a 30. Oct. 2009..
a600: 0d 0a 0d 0a 3c 61 20 6e 61 6d 65 3d 22 74 69 6e ....<a name="tin
a610: 79 6d 63 65 22 3e 3c 68 34 3e 54 69 6e 79 4d 43 ymce"><h4>TinyMC
a620: 45 3c 2f 68 34 3e 3c 2f 61 3e 0d 0a 3c 70 3e 0d E</h4></a>..<p>.
a630: 0a 53 6f 75 72 63 65 3a 20 3c 61 20 68 72 65 66 .Source: <a href
a640: 3d 22 68 74 74 70 3a 2f 2f 74 69 6e 79 6d 63 65 ="http://tinymce
a650: 2e 6d 6f 78 69 65 63 6f 64 65 2e 63 6f 6d 2f 22 .moxiecode.com/"
a660: 3e 20 54 69 6e 79 4d 43 45 20 3c 2f 61 3e 0d 0a > TinyMCE </a>..
a670: 3c 2f 70 3e 0d 0a 3c 68 35 3e 20 45 78 61 6d 70 </p>..<h5> Examp
a680: 6c 65 3c 2f 68 35 3e 0d 0a 3c 70 72 65 20 63 6c le</h5>..<pre cl
a690: 61 73 73 3d 22 76 65 72 62 61 74 69 6d 22 3e 0d ass="verbatim">.
a6a0: 0a 20 20 20 20 6d 6b 64 69 72 20 74 69 6e 79 0d . mkdir tiny.
a6b0: 0a 20 20 20 20 6d 6b 64 69 72 20 74 69 6e 79 2f . mkdir tiny/
a6c0: 6a 61 76 61 73 63 72 69 70 74 0d 0a 20 20 20 20 javascript..
a6d0: 66 6f 73 73 69 6c 20 6e 65 77 20 74 69 6e 79 6d fossil new tinym
a6e0: 63 65 2e 66 73 6c 0d 0a 20 20 20 20 66 6f 73 73 ce.fsl.. foss
a6f0: 69 6c 20 75 69 20 74 69 6e 79 6d 63 65 2e 66 73 il ui tinymce.fs
a700: 6c 20 7b 63 6f 6e 66 69 67 75 72 65 20 74 68 65 l {configure the
a710: 20 70 72 6f 6a 65 63 74 29 0d 0a 20 20 20 20 64 project).. d
a720: 6f 77 6e 6c 6f 61 64 20 74 69 6e 79 6d 63 65 0d ownload tinymce.
a730: 0a 20 20 20 20 75 6e 7a 69 70 20 69 6e 20 74 69 . unzip in ti
a740: 6e 79 2f 6a 61 76 61 73 63 72 69 70 74 0d 0a 20 ny/javascript..
a750: 20 20 20 63 64 20 74 69 6e 79 0d 0a 20 20 20 20 cd tiny..
a760: 66 6f 73 73 69 6c 20 6f 70 65 6e 20 2e 2e 2f 74 fossil open ../t
a770: 69 6e 79 6d 63 65 2e 66 73 6c 0d 0a 20 20 20 20 inymce.fsl..
a780: 66 6f 73 73 69 6c 20 61 64 64 20 6a 61 76 61 73 fossil add javas
a790: 63 72 69 70 74 0d 0a 20 20 20 20 66 6f 73 73 69 cript.. fossi
a7a0: 6c 20 63 6f 6d 6d 69 74 20 2d 6d 20 22 61 64 64 l commit -m "add
a7b0: 65 64 20 74 69 6d 79 6d 63 65 20 74 6f 20 74 68 ed timymce to th
a7c0: 65 20 70 72 6f 6a 65 63 74 22 0d 0a 20 20 20 20 e project"..
a7d0: 66 6f 73 73 69 6c 20 75 69 0d 0a 3c 2f 70 72 65 fossil ui..</pre
a7e0: 3e 0d 0a 53 65 6c 65 63 74 20 61 64 6d 69 6e 2f >..Select admin/
a7f0: 68 65 61 64 65 72 73 20 61 64 64 20 61 66 74 65 headers add afte
a800: 72 20 74 68 65 20 26 6c 74 3b 2f 6c 69 6e 6b 26 r the </link&
a810: 67 74 3b 0d 0a 3c 70 72 65 20 63 6c 61 73 73 3d gt;..<pre class=
a820: 22 76 65 72 62 61 74 69 6d 22 3e 0d 0a 20 26 6c "verbatim">.. &l
a830: 74 3b 74 68 31 26 67 74 3b 0d 0a 20 20 20 69 66 t;th1>.. if
a840: 20 7b 20 22 74 6b 74 6e 65 77 22 20 65 71 20 24 { "tktnew" eq $
a850: 63 75 72 72 65 6e 74 5f 70 61 67 65 20 0d 0a 20 current_page ..
a860: 20 20 09 7c 7c 20 22 74 6b 74 65 64 69 74 22 20 .|| "tktedit"
a870: 65 71 20 24 63 75 72 72 65 6e 74 5f 70 61 67 65 eq $current_page
a880: 20 0d 0a 20 20 20 09 7c 7c 20 22 77 69 6b 69 65 .. .|| "wikie
a890: 64 69 74 22 20 65 71 20 24 63 75 72 72 65 6e 74 dit" eq $current
a8a0: 5f 70 61 67 65 20 0d 0a 20 20 20 09 7c 7c 20 22 _page .. .|| "
a8b0: 77 69 6b 69 61 70 70 65 6e 64 22 20 65 71 20 24 wikiappend" eq $
a8c0: 63 75 72 72 65 6e 74 5f 70 61 67 65 20 7d 20 7b current_page } {
a8d0: 0d 0a 20 20 20 20 20 20 20 68 74 6d 6c 20 22 3c .. html "<
a8e0: 73 63 72 69 70 74 20 74 79 70 65 3d 27 74 65 78 script type='tex
a8f0: 74 2f 6a 61 76 61 73 63 72 69 70 74 27 5c 6e 22 t/javascript'\n"
a900: 0d 0a 20 20 20 20 20 20 20 68 74 6d 6c 20 22 73 .. html "s
a910: 72 63 3d 27 2f 64 6f 63 2f 74 69 70 2f 6a 61 76 rc='/doc/tip/jav
a920: 61 73 63 72 69 70 74 2f 74 69 6e 79 6d 63 65 2f ascript/tinymce/
a930: 6a 73 63 72 69 70 74 73 2f 74 69 6e 79 5f 6d 63 jscripts/tiny_mc
a940: 65 2f 74 69 6e 79 5f 6d 63 65 2e 6a 73 27 3e 5c e/tiny_mce.js'>\
a950: 6e 22 0d 0a 20 20 20 20 20 20 20 68 74 6d 6c 20 n".. html
a960: 22 3c 2f 73 63 72 69 70 74 3e 5c 6e 22 0d 0a 20 "</script>\n"..
a970: 20 20 20 20 20 20 68 74 6d 6c 20 22 20 3c 73 63 html " <sc
a980: 72 69 70 74 20 74 79 70 65 3d 27 74 65 78 74 2f ript type='text/
a990: 6a 61 76 61 73 63 72 69 70 74 27 3e 5c 6e 22 0d javascript'>\n".
a9a0: 0a 20 20 20 20 20 20 20 70 75 74 73 20 22 74 69 . puts "ti
a9b0: 6e 79 4d 43 45 2e 69 6e 69 74 28 7b 20 6d 6f 64 nyMCE.init({ mod
a9c0: 65 20 3a 20 27 73 70 65 63 69 66 69 63 5f 74 65 e : 'specific_te
a9d0: 78 74 61 72 65 61 73 27 20 2c 20 65 64 69 74 6f xtareas' , edito
a9e0: 72 5f 73 65 6c 65 63 74 6f 72 20 3a 20 27 77 69 r_selector : 'wi
a9f0: 6b 69 65 64 69 74 27 2c 20 74 68 65 6d 65 3a 20 kiedit', theme:
aa00: 27 61 64 76 61 6e 63 65 64 27 2c 77 69 64 74 68 'advanced',width
aa10: 20 3a 20 27 39 30 25 27 20 7d 20 29 3b 22 0d 0a : '90%' } );"..
aa20: 20 20 20 20 20 20 20 68 74 6d 6c 20 22 3c 2f 73 html "</s
aa30: 63 72 69 70 74 3e 5c 6e 22 0d 0a 20 20 20 7d 0d cript>\n".. }.
aa40: 0a 26 6c 74 3b 2f 74 68 31 26 67 74 3b 0d 0a 3c .</th1>..<
aa50: 2f 70 72 65 3e 0d 0a 61 6e 64 20 73 61 76 65 2e /pre>..and save.
aa60: 0d 0a 0d 0a 0d 0a 3c 61 20 6e 61 6d 65 3d 27 6a ......<a name='j
aa70: 73 5f 6c 6f 63 61 6c 27 3e 3c 68 33 3e 55 73 69 s_local'><h3>Usi
aa80: 6e 67 20 6c 6f 63 61 6c 20 69 6e 73 74 61 6c 6c ng local install
aa90: 65 64 20 6a 61 76 61 73 63 72 69 70 74 20 6c 69 ed javascript li
aaa0: 62 72 61 72 69 65 73 3c 2f 68 33 3e 3c 2f 61 3e braries</h3></a>
aab0: 0d 0a 3c 70 3e 55 6e 64 65 72 20 66 69 72 65 66 ..<p>Under firef
aac0: 6f 78 20 77 69 74 68 20 74 68 65 20 65 78 74 65 ox with the exte
aad0: 6e 73 69 6f 6e 20 6c 6f 63 61 6c 6c 69 6e 6b 20 nsion locallink
aae0: 79 6f 75 20 63 61 6e 20 69 6e 73 74 61 6c 6c 20 you can install
aaf0: 6a 61 76 61 73 63 72 69 70 74 20 6c 69 62 72 61 javascript libra
ab00: 72 69 65 73 20 6c 6f 63 61 6c 6c 79 2e 3c 2f 70 ries locally.</p
ab10: 3e 0d 0a 0d 0a 3c 70 3e 49 74 20 73 65 65 6d 73 >....<p>It seems
ab20: 20 74 68 61 74 20 69 74 20 69 73 20 61 6c 73 6f that it is also
ab30: 20 70 6f 73 73 69 62 6c 65 20 77 69 74 68 20 49 possible with I
ab40: 45 37 20 62 65 63 61 75 73 65 20 74 68 61 74 20 E7 because that
ab50: 61 6c 6c 6f 77 73 20 6c 6f 63 61 6c 20 61 63 63 allows local acc
ab60: 65 73 73 2e 20 46 6f 72 20 63 68 72 6f 6d 65 20 ess. For chrome
ab70: 74 68 65 72 65 20 69 73 20 61 6e 20 65 78 74 65 there is an exte
ab80: 6e 73 69 6f 6e 20 3c 61 20 68 72 65 66 3d 27 68 nsion <a href='h
ab90: 74 74 70 73 3a 2f 2f 63 68 72 6f 6d 65 2e 67 6f ttps://chrome.go
aba0: 6f 67 6c 65 2e 63 6f 6d 2f 65 78 74 65 6e 73 69 ogle.com/extensi
abb0: 6f 6e 73 2f 64 65 74 61 69 6c 2f 6a 6c 6c 70 6b ons/detail/jllpk
abc0: 64 6b 63 64 6a 6e 64 68 67 67 6f 64 69 6d 69 70 dkcdjndhggodimip
abd0: 68 6b 67 68 6f 67 63 70 69 64 61 27 3e 6c 6f 63 hkghogcpida'>loc
abe0: 61 6c 6c 69 6e 6b 3c 2f 61 3e 20 42 75 74 20 49 allink</a> But I
abf0: 20 63 6f 75 6c 64 6e 27 74 20 67 65 74 20 69 74 couldn't get it
ac00: 20 74 6f 20 77 6f 72 6b 2e 0d 0a 3c 2f 70 3e 0d to work...</p>.
ac10: 0a 3c 70 3e 54 68 65 20 61 64 76 61 6e 74 61 67 .<p>The advantag
ac20: 65 20 6f 66 20 74 68 69 73 20 69 73 20 74 68 61 e of this is tha
ac30: 74 20 79 6f 75 72 20 72 65 70 6f 73 69 74 6f 72 t your repositor
ac40: 79 20 64 6f 65 73 6e 27 74 20 63 6f 6e 74 61 69 y doesn't contai
ac50: 6e 73 20 74 68 65 20 6a 61 76 61 73 63 72 69 70 ns the javascrip
ac60: 74 20 6c 69 62 72 61 72 79 2e 20 41 6e 64 20 66 t library. And f
ac70: 6f 72 20 65 61 63 68 20 70 72 6f 6a 65 63 74 20 or each project
ac80: 79 6f 75 20 6f 6e 6c 79 20 68 61 76 65 20 74 6f you only have to
ac90: 20 61 64 6a 75 73 74 20 74 68 65 20 68 65 61 64 adjust the head
aca0: 65 72 3c 2f 70 3e 0d 0a 3c 68 35 3e 20 45 78 61 er</p>..<h5> Exa
acb0: 6d 70 6c 65 20 75 6e 64 65 72 20 77 69 6e 64 6f mple under windo
acc0: 77 73 20 77 69 74 68 20 66 69 72 65 66 6f 78 3c ws with firefox<
acd0: 2f 68 35 3e 0d 0a 3c 70 72 65 20 63 6c 61 73 73 /h5>..<pre class
ace0: 3d 22 76 65 72 62 61 74 69 6d 22 3e 0d 0a 20 20 ="verbatim">..
acf0: 20 20 43 3a 0d 0a 20 20 20 20 6d 6b 64 69 72 20 C:.. mkdir
ad00: 6a 73 0d 0a 20 20 20 20 64 6f 77 6e 6c 6f 61 64 js.. download
ad10: 20 74 69 6e 79 6d 63 65 0d 0a 20 20 20 20 75 6e tinymce.. un
ad20: 7a 69 70 20 69 6e 20 63 3a 5c 6a 73 0d 0a 20 20 zip in c:\js..
ad30: 20 20 69 6e 73 74 61 6c 6c 20 3c 61 20 68 72 65 install <a hre
ad40: 66 3d 27 68 74 74 70 73 3a 2f 2f 61 64 64 6f 6e f='https://addon
ad50: 73 2e 6d 6f 7a 69 6c 6c 61 2e 6f 72 67 2f 65 6e s.mozilla.org/en
ad60: 2d 55 53 2f 66 69 72 65 66 6f 78 2f 61 64 64 6f -US/firefox/addo
ad70: 6e 2f 6c 6f 63 61 6c 6c 69 6e 6b 27 3e 6c 6f 63 n/locallink'>loc
ad80: 61 6c 6c 69 6e 6b 3c 2f 61 3e 20 69 6e 20 66 69 allink</a> in fi
ad90: 72 65 66 6f 78 0d 0a 20 20 20 20 66 6f 6c 6c 6f refox.. follo
ada0: 77 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 6f w instructions o
adb0: 6e 20 3c 61 20 68 72 65 66 3d 27 68 74 74 70 73 n <a href='https
adc0: 3a 2f 2f 61 64 64 6f 6e 73 2e 6d 6f 7a 69 6c 6c ://addons.mozill
add0: 61 2e 6f 72 67 2f 65 6e 2d 55 53 2f 66 69 72 65 a.org/en-US/fire
ade0: 66 6f 78 2f 61 64 64 6f 6e 2f 6c 6f 63 61 6c 6c fox/addon/locall
adf0: 69 6e 6b 2f 27 3e 70 61 67 65 3c 2f 61 3e 0d 0a ink/'>page</a>..
ae00: 3c 2f 70 72 65 3e 0d 0a 73 74 61 72 74 20 66 6f </pre>..start fo
ae10: 73 73 69 6c 20 75 69 0d 0a 53 65 6c 65 63 74 20 ssil ui..Select
ae20: 61 64 6d 69 6e 2f 68 65 61 64 65 72 73 20 61 64 admin/headers ad
ae30: 64 20 61 66 74 65 72 20 74 68 65 20 26 6c 74 3b d after the <
ae40: 2f 6c 69 6e 6b 26 67 74 3b 0d 0a 3c 70 72 65 20 /link>..<pre
ae50: 63 6c 61 73 73 3d 22 76 65 72 62 61 74 69 6d 22 class="verbatim"
ae60: 3e 0d 0a 20 26 6c 74 3b 74 68 31 26 67 74 3b 0d >.. <th1>.
ae70: 0a 20 20 69 66 20 7b 20 26 23 39 31 3b 20 73 74 . if { [ st
ae80: 72 69 6e 67 20 66 69 72 73 74 20 24 63 75 72 72 ring first $curr
ae90: 65 6e 74 5f 70 61 67 65 20 22 74 6b 74 6e 65 77 ent_page "tktnew
aea0: 20 74 6b 74 65 64 69 74 20 77 69 6b 69 65 64 69 tktedit wikiedi
aeb0: 74 20 77 69 6b 69 61 70 70 65 6e 64 22 20 5d 20 t wikiappend" ]
aec0: 7d 20 7b 0d 0a 20 20 20 20 20 20 20 68 74 6d 6c } {.. html
aed0: 20 22 3c 73 63 72 69 70 74 20 74 79 70 65 3d 27 "<script type='
aee0: 74 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 27 text/javascript'
aef0: 5c 6e 22 0d 0a 20 20 20 20 20 20 20 68 74 6d 6c \n".. html
af00: 20 22 73 72 63 3d 27 66 69 6c 65 3a 2f 2f 2f 63 "src='file:///c
af10: 3a 2f 6a 73 2f 74 69 6e 79 6d 63 65 2f 6a 73 63 :/js/tinymce/jsc
af20: 72 69 70 74 73 2f 74 69 6e 79 5f 6d 63 65 2f 74 ripts/tiny_mce/t
af30: 69 6e 79 5f 6d 63 65 2e 6a 73 27 3e 5c 6e 22 0d iny_mce.js'>\n".
af40: 0a 20 20 20 20 20 20 20 68 74 6d 6c 20 22 3c 2f . html "</
af50: 73 63 72 69 70 74 3e 5c 6e 22 0d 0a 20 20 20 20 script>\n"..
af60: 20 20 20 68 74 6d 6c 20 22 20 3c 73 63 72 69 70 html " <scrip
af70: 74 20 74 79 70 65 3d 27 74 65 78 74 2f 6a 61 76 t type='text/jav
af80: 61 73 63 72 69 70 74 27 3e 5c 6e 22 0d 0a 20 20 ascript'>\n"..
af90: 20 20 20 20 20 70 75 74 73 20 22 74 69 6e 79 4d puts "tinyM
afa0: 43 45 2e 69 6e 69 74 28 7b 20 6d 6f 64 65 20 3a CE.init({ mode :
afb0: 20 27 73 70 65 63 69 66 69 63 5f 74 65 78 74 61 'specific_texta
afc0: 72 65 61 73 27 20 2c 20 65 64 69 74 6f 72 5f 73 reas' , editor_s
afd0: 65 6c 65 63 74 6f 72 20 3a 20 27 77 69 6b 69 65 elector : 'wikie
afe0: 64 69 74 27 2c 20 74 68 65 6d 65 3a 20 27 61 64 dit', theme: 'ad
aff0: 76 61 6e 63 65 64 27 2c 77 69 64 74 68 20 3a 20 vanced',width :
b000: 27 39 30 25 27 20 7d 20 29 3b 22 0d 0a 20 20 20 '90%' } );"..
b010: 20 20 20 20 68 74 6d 6c 20 22 3c 2f 73 63 72 69 html "</scri
b020: 70 74 3e 5c 6e 22 0d 0a 20 20 20 7d 0d 0a 26 6c pt>\n".. }..&l
b030: 74 3b 2f 74 68 31 26 67 74 3b 0d 0a 3c 2f 70 72 t;/th1>..</pr
b040: 65 3e 0d 0a 61 6e 64 20 73 61 76 65 2e 0d 0a 0d e>..and save....
b050: 0a 0d 0a 0d 0a 0d 0a 3c 61 20 6e 61 6d 65 3d 22 .......<a name="
b060: 6d 61 72 6b 69 74 75 70 22 3e 3c 68 33 3e 6d 61 markitup"><h3>ma
b070: 72 6b 69 74 75 70 21 3c 2f 68 33 3e 3c 2f 61 3e rkitup!</h3></a>
b080: 0d 0a 3c 70 3e 0d 0a 53 6f 75 72 63 65 3a 20 3c ..<p>..Source: <
b090: 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 6d a href="http://m
b0a0: 61 72 6b 69 74 75 70 2e 6a 61 79 73 61 6c 76 61 arkitup.jaysalva
b0b0: 74 2e 63 6f 6d 2f 68 6f 6d 65 2f 22 3e 20 4d 61 t.com/home/"> Ma
b0c0: 72 6b 69 74 75 70 20 3c 2f 61 3e 0d 0a 3c 2f 70 rkitup </a>..</p
b0d0: 3e 0d 0a 3c 68 35 3e 20 45 78 61 6d 70 6c 65 3c >..<h5> Example<
b0e0: 2f 68 35 3e 0d 0a 3c 70 72 65 20 63 6c 61 73 73 /h5>..<pre class
b0f0: 3d 22 76 65 72 62 61 74 69 6d 22 3e 0d 0a 20 20 ="verbatim">..
b100: 20 20 6d 6b 64 69 72 20 6d 61 72 6b 69 74 75 70 mkdir markitup
b110: 0d 0a 20 20 20 20 6d 6b 64 69 72 20 6d 61 72 6b .. mkdir mark
b120: 69 74 75 70 2f 6a 61 76 61 73 63 72 69 70 74 0d itup/javascript.
b130: 0a 20 20 20 20 66 6f 73 73 69 6c 20 6e 65 77 20 . fossil new
b140: 6d 61 72 6b 69 74 75 70 2e 66 73 6c 0d 0a 20 20 markitup.fsl..
b150: 20 20 66 6f 73 73 69 6c 20 75 69 20 6d 61 72 6b fossil ui mark
b160: 69 74 75 70 2e 66 73 6c 20 7b 63 6f 6e 66 69 67 itup.fsl {config
b170: 75 72 65 20 74 68 65 20 70 72 6f 6a 65 63 74 29 ure the project)
b180: 0d 0a 20 20 20 20 64 6f 77 6e 6c 6f 61 64 20 6d .. download m
b190: 61 72 6b 69 74 75 70 20 61 6e 64 20 6a 71 75 65 arkitup and jque
b1a0: 72 79 0d 0a 20 20 20 20 75 6e 7a 69 70 20 69 6e ry.. unzip in
b1b0: 20 6d 61 72 6b 69 74 75 70 2f 6a 61 76 61 73 63 markitup/javasc
b1c0: 72 69 70 74 2c 20 63 64 20 6c 61 74 65 73 74 2c ript, cd latest,
b1d0: 20 6d 76 20 2a 20 2e 2e 2c 20 72 6d 64 69 72 20 mv * .., rmdir
b1e0: 6c 61 74 65 73 74 0d 0a 20 20 20 20 63 6f 70 79 latest.. copy
b1f0: 20 6a 71 75 65 72 79 2d 2e 2e 2e 2e 6a 73 20 74 jquery-....js t
b200: 6f 20 6a 61 76 61 73 63 72 69 70 74 2f 6a 71 75 o javascript/jqu
b210: 65 72 79 2e 6a 73 0d 0a 20 20 20 20 63 64 20 6d ery.js.. cd m
b220: 61 72 6b 69 74 75 70 0d 0a 20 20 20 20 66 6f 73 arkitup.. fos
b230: 73 69 6c 20 6f 70 65 6e 20 2e 2e 2f 6d 61 72 6b sil open ../mark
b240: 69 74 75 70 2e 66 73 6c 0d 0a 20 20 20 20 66 6f itup.fsl.. fo
b250: 73 73 69 6c 20 61 64 64 20 6a 61 76 61 73 63 72 ssil add javascr
b260: 69 70 74 0d 0a 20 20 20 20 66 6f 73 73 69 6c 20 ipt.. fossil
b270: 63 6f 6d 6d 69 74 20 2d 6d 20 22 61 64 64 65 64 commit -m "added
b280: 20 6d 61 72 6b 69 74 75 70 20 61 6e 20 6a 71 75 markitup an jqu
b290: 65 72 79 20 74 6f 20 74 68 65 20 70 72 6f 6a 65 ery to the proje
b2a0: 63 74 22 0d 0a 20 20 20 20 66 6f 73 73 69 6c 20 ct".. fossil
b2b0: 75 69 0d 0a 3c 2f 70 72 65 3e 0d 0a 73 65 6c 65 ui..</pre>..sele
b2c0: 63 74 20 61 64 6d 69 6e 2f 68 65 61 64 65 72 73 ct admin/headers
b2d0: 20 61 64 64 20 61 66 74 65 72 20 74 68 65 20 3c add after the <
b2e0: 2f 6c 69 6e 6b 3e 20 70 75 74 0d 0a 3c 70 72 65 /link> put..<pre
b2f0: 20 63 6c 61 73 73 3d 22 76 65 72 62 61 74 69 6d class="verbatim
b300: 22 3e 0d 0a 20 20 20 20 26 6c 74 3b 6c 69 6e 6b ">.. <link
b310: 20 72 65 6c 3d 22 73 74 79 6c 65 73 68 65 65 74 rel="stylesheet
b320: 22 20 74 79 70 65 3d 22 74 65 78 74 2f 63 73 73 " type="text/css
b330: 22 20 68 72 65 66 3d 22 2f 64 6f 63 2f 74 69 70 " href="/doc/tip
b340: 2f 6a 61 76 61 73 63 72 69 70 74 2f 6d 61 72 6b /javascript/mark
b350: 69 74 75 70 2f 73 6b 69 6e 73 2f 6d 61 72 6b 69 itup/skins/marki
b360: 74 75 70 2f 73 74 79 6c 65 2e 63 73 73 22 20 2f tup/style.css" /
b370: 26 67 74 3b 0d 0a 20 20 20 20 26 6c 74 3b 6c 69 >.. <li
b380: 6e 6b 20 72 65 6c 3d 22 73 74 79 6c 65 73 68 65 nk rel="styleshe
b390: 65 74 22 20 74 79 70 65 3d 22 74 65 78 74 2f 63 et" type="text/c
b3a0: 73 73 22 20 68 72 65 66 3d 22 2f 64 6f 63 2f 74 ss" href="/doc/t
b3b0: 69 70 2f 6a 61 76 61 73 63 72 69 70 74 2f 6d 61 ip/javascript/ma
b3c0: 72 6b 69 74 75 70 2f 73 65 74 73 2f 64 65 66 61 rkitup/sets/defa
b3d0: 75 6c 74 2f 73 74 79 6c 65 2e 63 73 73 22 20 2f ult/style.css" /
b3e0: 26 67 74 3b 0d 0a 20 20 20 20 26 6c 74 3b 73 63 >.. <sc
b3f0: 72 69 70 74 20 74 79 70 65 3d 22 74 65 78 74 2f ript type="text/
b400: 6a 61 76 61 73 63 72 69 70 74 22 20 73 72 63 3d javascript" src=
b410: 22 2f 64 6f 63 2f 74 69 70 2f 6a 61 76 61 73 63 "/doc/tip/javasc
b420: 72 69 70 74 2f 6a 71 75 65 72 79 2e 6a 73 22 26 ript/jquery.js"&
b430: 67 74 3b 0d 0a 20 20 20 20 26 6c 74 3b 2f 73 63 gt;.. </sc
b440: 72 69 70 74 26 67 74 3b 0d 0a 20 20 20 20 26 6c ript>.. &l
b450: 74 3b 73 63 72 69 70 74 20 74 79 70 65 3d 22 74 t;script type="t
b460: 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 22 20 ext/javascript"
b470: 73 72 63 3d 22 2f 64 6f 63 2f 74 69 70 2f 6a 61 src="/doc/tip/ja
b480: 76 61 73 63 72 69 70 74 2f 6d 61 72 6b 69 74 75 vascript/markitu
b490: 70 2f 6a 71 75 65 72 79 2e 6d 61 72 6b 69 74 75 p/jquery.markitu
b4a0: 70 2e 6a 73 22 26 67 74 3b 0d 0a 20 20 20 20 26 p.js">.. &
b4b0: 6c 74 3b 2f 73 63 72 69 70 74 26 67 74 3b 0d 0a lt;/script>..
b4c0: 3c 2f 70 72 65 3e 0d 0a 0d 0a 61 6e 64 20 73 61 </pre>....and sa
b4d0: 76 65 0d 0a 73 65 6c 65 63 74 20 61 64 6d 69 6e ve..select admin
b4e0: 2f 66 6f 6f 74 65 72 20 61 64 64 20 61 62 6f 76 /footer add abov
b4f0: 65 20 74 68 65 20 66 69 72 73 74 20 6c 69 6e 65 e the first line
b500: 0d 0a 0d 0a 3c 70 72 65 20 63 6c 61 73 73 3d 22 ....<pre class="
b510: 76 65 72 62 61 74 69 6d 22 3e 0d 0a 20 20 20 20 verbatim">..
b520: 26 6c 74 3b 73 63 72 69 70 74 20 74 79 70 65 3d <script type=
b530: 27 74 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 'text/javascript
b540: 27 26 67 74 3b 0d 0a 20 20 20 20 20 20 76 61 72 '>.. var
b550: 20 6d 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 67 65 m = document.ge
b560: 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 4e 61 tElementsByTagNa
b570: 6d 65 28 27 74 65 78 74 61 72 65 61 27 29 0d 0a me('textarea')..
b580: 20 20 20 20 20 20 76 61 72 20 6c 20 3d 20 6d 2e var l = m.
b590: 6c 65 6e 67 74 68 0d 0a 20 20 20 20 20 20 76 61 length.. va
b5a0: 72 20 6e 0d 0a 20 20 20 20 20 20 3c 6e 6f 77 69 r n.. <nowi
b5b0: 6b 69 3e 76 61 72 20 6d 79 53 65 74 74 69 6e 67 ki>var mySetting
b5c0: 73 20 3d 20 7b 0d 0a 09 6e 61 6d 65 53 70 61 63 s = {...nameSpac
b5d0: 65 3a 20 20 20 20 20 20 20 22 68 74 6d 6c 22 2c e: "html",
b5e0: 20 2f 2f 20 55 73 65 66 75 6c 20 74 6f 20 70 72 // Useful to pr
b5f0: 65 76 65 6e 74 20 6d 75 6c 74 69 2d 69 6e 73 74 event multi-inst
b600: 61 6e 63 65 73 20 43 53 53 20 63 6f 6e 66 6c 69 ances CSS confli
b610: 63 74 0d 0a 09 6f 6e 53 68 69 66 74 45 6e 74 65 ct...onShiftEnte
b620: 72 3a 20 20 20 20 7b 6b 65 65 70 44 65 66 61 75 r: {keepDefau
b630: 6c 74 3a 66 61 6c 73 65 2c 20 72 65 70 6c 61 63 lt:false, replac
b640: 65 57 69 74 68 3a 27 26 6c 74 3b 62 72 20 2f 26 eWith:'<br /&
b650: 67 74 3b 5c 6e 27 7d 2c 0d 0a 09 6f 6e 43 74 72 gt;\n'},...onCtr
b660: 6c 45 6e 74 65 72 3a 20 20 20 20 20 7b 6b 65 65 lEnter: {kee
b670: 70 44 65 66 61 75 6c 74 3a 66 61 6c 73 65 2c 20 pDefault:false,
b680: 6f 70 65 6e 57 69 74 68 3a 27 5c 6e 26 6c 74 3b openWith:'\n<
b690: 70 26 67 74 3b 27 2c 20 63 6c 6f 73 65 57 69 74 p>', closeWit
b6a0: 68 3a 27 26 6c 74 3b 2f 70 26 67 74 3b 5c 6e 27 h:'</p>\n'
b6b0: 7d 2c 0d 0a 09 6f 6e 54 61 62 3a 20 20 20 20 20 },...onTab:
b6c0: 20 20 20 20 20 20 7b 6b 65 65 70 44 65 66 61 75 {keepDefau
b6d0: 6c 74 3a 66 61 6c 73 65 2c 20 6f 70 65 6e 57 69 lt:false, openWi
b6e0: 74 68 3a 27 20 20 20 20 20 27 7d 2c 0d 0a 09 6d th:' '},...m
b6f0: 61 72 6b 75 70 53 65 74 3a 20 20 5b 0d 0a 09 20 arkupSet: [...
b700: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b710: 67 20 31 27 2c 20 6b 65 79 3a 27 31 27 2c 20 6f g 1', key:'1', o
b720: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 31 28 penWith:'<h1(
b730: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
b740: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
b750: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
b760: 68 31 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h1>', placeHo
b770: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
b780: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
b790: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b7a0: 67 20 32 27 2c 20 6b 65 79 3a 27 32 27 2c 20 6f g 2', key:'2', o
b7b0: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 32 28 penWith:'<h2(
b7c0: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
b7d0: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
b7e0: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
b7f0: 68 32 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h2>', placeHo
b800: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
b810: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
b820: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b830: 67 20 33 27 2c 20 6b 65 79 3a 27 33 27 2c 20 6f g 3', key:'3', o
b840: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 33 28 penWith:'<h3(
b850: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
b860: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
b870: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
b880: 68 33 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h3>', placeHo
b890: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
b8a0: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
b8b0: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b8c0: 67 20 34 27 2c 20 6b 65 79 3a 27 34 27 2c 20 6f g 4', key:'4', o
b8d0: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 34 28 penWith:'<h4(
b8e0: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
b8f0: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
b900: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
b910: 68 34 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h4>', placeHo
b920: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
b930: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
b940: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b950: 67 20 35 27 2c 20 6b 65 79 3a 27 35 27 2c 20 6f g 5', key:'5', o
b960: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 35 28 penWith:'<h5(
b970: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
b980: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
b990: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
b9a0: 68 35 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h5>', placeHo
b9b0: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
b9c0: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
b9d0: 20 20 20 7b 6e 61 6d 65 3a 27 48 65 61 64 69 6e {name:'Headin
b9e0: 67 20 36 27 2c 20 6b 65 79 3a 27 36 27 2c 20 6f g 6', key:'6', o
b9f0: 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 68 36 28 penWith:'<h6(
ba00: 21 28 20 63 6c 61 73 73 3d 22 5b 21 5b 43 6c 61 !( class="[![Cla
ba10: 73 73 5d 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 ss]!]")!)>',
ba20: 63 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f closeWith:'</
ba30: 68 36 26 67 74 3b 27 2c 20 70 6c 61 63 65 48 6f h6>', placeHo
ba40: 6c 64 65 72 3a 27 59 6f 75 72 20 74 69 74 6c 65 lder:'Your title
ba50: 20 68 65 72 65 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 here...' },...
ba60: 20 20 20 7b 6e 61 6d 65 3a 27 50 61 72 61 67 72 {name:'Paragr
ba70: 61 70 68 27 2c 20 6f 70 65 6e 57 69 74 68 3a 27 aph', openWith:'
ba80: 26 6c 74 3b 70 28 21 28 20 63 6c 61 73 73 3d 22 <p(!( class="
ba90: 5b 21 5b 43 6c 61 73 73 5d 21 5d 22 29 21 29 26 [![Class]!]")!)&
baa0: 67 74 3b 27 2c 20 63 6c 6f 73 65 57 69 74 68 3a gt;', closeWith:
bab0: 27 26 6c 74 3b 2f 70 26 67 74 3b 27 20 20 7d 2c '</p>' },
bac0: 0d 0a 09 20 20 20 20 7b 73 65 70 61 72 61 74 6f ... {separato
bad0: 72 3a 27 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d r:'-------------
bae0: 2d 2d 27 20 7d 2c 0d 0a 09 20 20 20 20 7b 6e 61 --' },... {na
baf0: 6d 65 3a 27 42 6f 6c 64 27 2c 20 6b 65 79 3a 27 me:'Bold', key:'
bb00: 42 27 2c 20 6f 70 65 6e 57 69 74 68 3a 27 26 6c B', openWith:'&l
bb10: 74 3b 73 74 72 6f 6e 67 26 67 74 3b 27 2c 20 63 t;strong>', c
bb20: 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f 73 loseWith:'</s
bb30: 74 72 6f 6e 67 26 67 74 3b 27 20 7d 2c 0d 0a 09 trong>' },...
bb40: 20 20 20 20 7b 6e 61 6d 65 3a 27 49 74 61 6c 69 {name:'Itali
bb50: 63 27 2c 20 6b 65 79 3a 27 49 27 2c 20 6f 70 65 c', key:'I', ope
bb60: 6e 57 69 74 68 3a 27 26 6c 74 3b 65 6d 26 67 74 nWith:'<em>
bb70: 3b 27 2c 20 63 6c 6f 73 65 57 69 74 68 3a 27 26 ;', closeWith:'&
bb80: 6c 74 3b 2f 65 6d 26 67 74 3b 27 20 20 7d 2c 0d lt;/em>' },.
bb90: 0a 09 20 20 20 20 7b 6e 61 6d 65 3a 27 53 74 72 .. {name:'Str
bba0: 6f 6b 65 20 74 68 72 6f 75 67 68 27 2c 20 6b 65 oke through', ke
bbb0: 79 3a 27 53 27 2c 20 6f 70 65 6e 57 69 74 68 3a y:'S', openWith:
bbc0: 27 26 6c 74 3b 64 65 6c 26 67 74 3b 27 2c 20 63 '<del>', c
bbd0: 6c 6f 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f 64 loseWith:'</d
bbe0: 65 6c 26 67 74 3b 27 20 7d 2c 0d 0a 09 20 20 20 el>' },...
bbf0: 20 7b 73 65 70 61 72 61 74 6f 72 3a 27 2d 2d 2d {separator:'---
bc00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 27 20 7d 2c ------------' },
bc10: 0d 0a 09 20 20 20 20 7b 6e 61 6d 65 3a 27 55 6c ... {name:'Ul
bc20: 27 2c 20 6f 70 65 6e 57 69 74 68 3a 27 26 6c 74 ', openWith:'<
bc30: 3b 75 6c 26 67 74 3b 5c 6e 27 2c 20 63 6c 6f 73 ;ul>\n', clos
bc40: 65 57 69 74 68 3a 27 26 6c 74 3b 2f 75 6c 26 67 eWith:'</ul&g
bc50: 74 3b 5c 6e 27 20 7d 2c 0d 0a 09 20 20 20 20 7b t;\n' },... {
bc60: 6e 61 6d 65 3a 27 4f 6c 27 2c 20 6f 70 65 6e 57 name:'Ol', openW
bc70: 69 74 68 3a 27 26 6c 74 3b 6f 6c 26 67 74 3b 5c ith:'<ol>\
bc80: 6e 27 2c 20 63 6c 6f 73 65 57 69 74 68 3a 27 26 n', closeWith:'&
bc90: 6c 74 3b 2f 6f 6c 26 67 74 3b 5c 6e 27 20 7d 2c lt;/ol>\n' },
bca0: 0d 0a 09 20 20 20 20 7b 6e 61 6d 65 3a 27 4c 69 ... {name:'Li
bcb0: 27 2c 20 6f 70 65 6e 57 69 74 68 3a 27 26 6c 74 ', openWith:'<
bcc0: 3b 6c 69 26 67 74 3b 27 2c 20 63 6c 6f 73 65 57 ;li>', closeW
bcd0: 69 74 68 3a 27 26 6c 74 3b 2f 6c 69 26 67 74 3b ith:'</li>
bce0: 27 20 7d 2c 0d 0a 09 20 20 20 20 7b 73 65 70 61 ' },... {sepa
bcf0: 72 61 74 6f 72 3a 27 2d 2d 2d 2d 2d 2d 2d 2d 2d rator:'---------
bd00: 2d 2d 2d 2d 2d 2d 27 20 7d 2c 0d 0a 09 20 20 20 ------' },...
bd10: 20 7b 6e 61 6d 65 3a 27 50 69 63 74 75 72 65 27 {name:'Picture'
bd20: 2c 20 6b 65 79 3a 27 50 27 2c 20 72 65 70 6c 61 , key:'P', repla
bd30: 63 65 57 69 74 68 3a 27 26 6c 74 3b 69 6d 67 20 ceWith:'<img
bd40: 73 72 63 3d 22 5b 21 5b 53 6f 75 72 63 65 3a 21 src="[![Source:!
bd50: 3a 68 74 74 70 3a 2f 2f 5d 21 5d 22 20 61 6c 74 :http://]!]" alt
bd60: 3d 22 5b 21 5b 41 6c 74 65 72 6e 61 74 69 76 65 ="[![Alternative
bd70: 20 74 65 78 74 5d 21 5d 22 20 2f 26 67 74 3b 27 text]!]" />'
bd80: 20 7d 2c 0d 0a 09 20 20 20 20 7b 6e 61 6d 65 3a },... {name:
bd90: 27 4c 69 6e 6b 27 2c 20 6b 65 79 3a 27 4c 27 2c 'Link', key:'L',
bda0: 20 6f 70 65 6e 57 69 74 68 3a 27 26 6c 74 3b 61 openWith:'<a
bdb0: 20 68 72 65 66 3d 22 5b 21 5b 4c 69 6e 6b 3a 21 href="[![Link:!
bdc0: 3a 68 74 74 70 3a 2f 2f 5d 21 5d 22 28 21 28 20 :http://]!]"(!(
bdd0: 74 69 74 6c 65 3d 22 5b 21 5b 54 69 74 6c 65 5d title="[![Title]
bde0: 21 5d 22 29 21 29 26 67 74 3b 27 2c 20 63 6c 6f !]")!)>', clo
bdf0: 73 65 57 69 74 68 3a 27 26 6c 74 3b 2f 61 26 67 seWith:'</a&g
be00: 74 3b 27 2c 20 70 6c 61 63 65 48 6f 6c 64 65 72 t;', placeHolder
be10: 3a 27 59 6f 75 72 20 74 65 78 74 20 74 6f 20 6c :'Your text to l
be20: 69 6e 6b 2e 2e 2e 27 20 7d 2c 0d 0a 09 20 20 20 ink...' },...
be30: 20 7b 73 65 70 61 72 61 74 6f 72 3a 27 2d 2d 2d {separator:'---
be40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 27 20 7d 2c ------------' },
be50: 0d 0a 09 20 20 20 20 7b 6e 61 6d 65 3a 27 43 6c ... {name:'Cl
be60: 65 61 6e 27 2c 20 72 65 70 6c 61 63 65 57 69 74 ean', replaceWit
be70: 68 3a 66 75 6e 63 74 69 6f 6e 28 68 29 20 7b 20 h:function(h) {
be80: 72 65 74 75 72 6e 20 68 2e 73 65 6c 65 63 74 69 return h.selecti
be90: 6f 6e 2e 72 65 70 6c 61 63 65 28 2f 26 6c 74 3b on.replace(/<
bea0: 28 2e 2a 3f 29 26 67 74 3b 2f 67 2c 20 22 22 29 (.*?)>/g, "")
beb0: 20 7d 20 7d 2c 0d 0a 09 20 20 20 20 7b 6e 61 6d } },... {nam
bec0: 65 3a 27 50 72 65 76 69 65 77 27 2c 20 63 61 6c e:'Preview', cal
bed0: 6c 3a 27 70 72 65 76 69 65 77 27 2c 20 63 6c 61 l:'preview', cla
bee0: 73 73 4e 61 6d 65 3a 27 70 72 65 76 69 65 77 27 ssName:'preview'
bef0: 20 7d 0d 0a 09 5d 0d 0a 20 20 20 20 20 20 7d 0d }...].. }.
bf00: 0a 20 20 20 20 20 20 66 6f 72 28 76 61 72 20 69 . for(var i
bf10: 3d 30 20 3b 69 20 3c 20 6c 3b 69 2b 2b 29 7b 0d =0 ;i < l;i++){.
bf20: 0a 09 6e 20 3d 20 6d 5b 69 5d 2e 6e 61 6d 65 0d ..n = m[i].name.
bf30: 0a 09 69 66 28 20 27 63 6f 6d 6d 65 6e 74 27 20 ..if( 'comment'
bf40: 3d 3d 20 6e 20 7c 7c 20 27 63 6d 61 70 70 6e 64 == n || 'cmappnd
bf50: 27 20 3d 3d 20 6e 20 7c 7c 20 22 77 22 20 20 3d ' == n || "w" =
bf60: 3d 20 6e 29 7b 0d 0a 09 20 20 20 20 6d 5b 69 5d = n){... m[i]
bf70: 2e 69 64 20 3d 20 6e 3c 2f 6e 6f 77 69 6b 69 3e .id = n</nowiki>
bf80: 0d 0a 09 20 20 20 20 24 28 66 75 6e 63 74 69 6f ... $(functio
bf90: 6e 28 29 20 7b 0d 0a 09 20 20 20 20 20 20 24 28 n() {... $(
bfa0: 22 23 22 20 2b 20 6e 29 2e 6d 61 72 6b 49 74 55 "#" + n).markItU
bfb0: 70 28 6d 79 53 65 74 74 69 6e 67 73 29 3b 0d 0a p(mySettings);..
bfc0: 09 20 20 20 20 7d 29 3b 0d 0a 09 7d 0d 0a 20 20 . });...}..
bfd0: 20 20 20 20 7d 0d 0a 20 20 20 20 26 6c 74 3b 2f }.. </
bfe0: 73 63 72 69 70 74 26 67 74 3b 0d 0a 20 3c 2f 70 script>.. </p
bff0: 72 65 3e 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 re>....<h2><a na
c000: 6d 65 3d 22 74 69 63 6b 65 74 2d 63 68 65 63 6b me="ticket-check
c010: 69 6e 2d 6c 69 6e 6b 73 22 3e 4c 69 6e 6b 69 6e in-links">Linkin
c020: 67 20 54 69 63 6b 65 74 73 20 74 6f 20 43 68 65 g Tickets to Che
c030: 63 6b 69 6e 27 73 3c 2f 61 3e 3c 2f 68 32 3e 0d ckin's</a></h2>.
c040: 0a 0d 0a 49 74 27 73 20 65 61 73 79 20 74 6f 20 ...It's easy to
c050: 6c 69 6e 6b 20 61 20 63 68 65 63 6b 69 6e 20 74 link a checkin t
c060: 6f 20 61 20 74 69 63 6b 65 74 2e 2e 2e 20 73 69 o a ticket... si
c070: 6d 70 6c 79 20 69 6e 63 6c 75 64 65 20 3c 6e 6f mply include <no
c080: 77 69 6b 69 3e 5b 74 69 63 6b 65 74 2d 75 75 69 wiki>[ticket-uui
c090: 64 5d 3c 2f 6e 6f 77 69 6b 69 3e 20 69 6e 20 79 d]</nowiki> in y
c0a0: 6f 75 72 20 63 6f 6d 6d 69 74 20 63 6f 6d 6d 65 our commit comme
c0b0: 6e 74 2e 20 4e 6f 77 2c 20 77 68 65 6e 20 79 6f nt. Now, when yo
c0c0: 75 20 64 6f 20 74 68 61 74 2c 20 79 6f 75 20 61 u do that, you a
c0d0: 6c 73 6f 20 68 61 76 65 20 74 68 65 20 61 62 69 lso have the abi
c0e0: 6c 69 74 79 20 74 6f 20 6c 69 6e 6b 20 61 20 74 lity to link a t
c0f0: 69 63 6b 65 74 20 74 6f 20 74 68 65 20 61 73 73 icket to the ass
c100: 6f 63 69 61 74 65 64 20 63 68 65 63 6b 69 6e 28 ociated checkin(
c110: 73 29 2e 0d 0a 0d 0a 54 68 69 73 20 69 73 20 6a s).....This is j
c120: 75 73 74 20 6f 6e 65 20 77 61 79 20 6f 66 20 64 ust one way of d
c130: 6f 69 6e 67 20 74 68 69 73 2c 20 61 6e 64 20 77 oing this, and w
c140: 68 61 74 20 49 20 64 65 63 69 64 65 64 20 74 6f hat I decided to
c150: 20 64 6f 2e 20 59 6f 75 20 63 61 6e 20 6f 66 20 do. You can of
c160: 63 6f 75 72 73 65 20 61 6c 74 65 72 20 69 74 20 course alter it
c170: 66 6f 72 20 79 6f 75 72 20 6f 77 6e 20 73 74 79 for your own sty
c180: 6c 65 2f 6c 61 79 6f 75 74 2e 0d 0a 0d 0a 46 69 le/layout.....Fi
c190: 72 73 74 3a 20 41 64 64 20 61 20 22 53 68 6f 72 rst: Add a "Shor
c1a0: 74 20 55 55 49 44 22 20 74 6f 20 79 6f 75 72 20 t UUID" to your
c1b0: 56 69 65 77 20 54 69 63 6b 65 74 20 70 61 67 65 View Ticket page
c1c0: 2e 20 59 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 . You can do thi
c1d0: 73 20 62 79 3a 20 0d 0a 0d 0a 3c 76 65 72 62 61 s by: ....<verba
c1e0: 74 69 6d 3e 0d 0a 3c 74 68 31 3e 0d 0a 73 65 74 tim>..<th1>..set
c1f0: 20 73 68 6f 72 74 55 75 69 64 20 5b 73 74 72 69 shortUuid [stri
c200: 6e 67 20 72 61 6e 67 65 20 24 74 6b 74 5f 75 75 ng range $tkt_uu
c210: 69 64 20 30 20 39 5d 0d 0a 3c 2f 74 68 31 3e 0d id 0 9]..</th1>.
c220: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a .</verbatim>....
c230: 54 68 65 6e 2c 20 64 69 73 70 6c 61 79 20 74 68 Then, display th
c240: 61 74 20 74 6f 20 74 68 65 20 75 73 65 72 20 73 at to the user s
c250: 6f 6d 65 77 68 65 72 65 3a 20 0d 0a 0d 0a 3c 76 omewhere: ....<v
c260: 65 72 62 61 74 69 6d 3e 0d 0a 55 75 69 64 3a 20 erbatim>..Uuid:
c270: 24 3c 73 68 6f 72 74 55 75 69 64 3e 0d 0a 3c 2f $<shortUuid>..</
c280: 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a 41 6c 6c verbatim>....All
c290: 20 74 68 61 74 20 64 6f 65 73 20 69 73 20 6d 61 that does is ma
c2a0: 6b 65 20 69 74 20 65 61 73 79 20 66 6f 72 20 74 ke it easy for t
c2b0: 68 65 20 64 65 76 65 6c 6f 70 65 72 20 74 6f 20 he developer to
c2c0: 63 6f 70 79 2f 70 61 73 74 65 20 61 20 73 65 6e copy/paste a sen
c2d0: 73 69 62 6c 65 20 55 55 49 44 20 69 6e 74 6f 20 sible UUID into
c2e0: 74 68 65 69 72 20 63 6f 6d 6d 69 74 20 6c 6f 67 their commit log
c2f0: 2e 20 0d 0a 0d 0a 4e 6f 77 2c 20 63 6f 6e 74 69 . ....Now, conti
c300: 6e 75 69 6e 67 2c 20 6f 6e 20 74 68 65 20 73 61 nuing, on the sa
c310: 6d 65 20 56 69 65 77 20 50 61 67 65 20 61 64 64 me View Page add
c320: 20 61 20 6c 69 6e 6b 20 74 6f 20 76 69 65 77 20 a link to view
c330: 61 73 73 6f 63 69 61 74 65 64 20 74 69 63 6b 65 associated ticke
c340: 74 73 3a 20 0d 0a 0d 0a 3c 76 65 72 62 61 74 69 ts: ....<verbati
c350: 6d 3e 0d 0a 3c 61 20 68 72 65 66 3d 22 24 3c 62 m>..<a href="$<b
c360: 61 73 65 75 72 6c 3e 2f 74 69 6d 65 6c 69 6e 65 aseurl>/timeline
c370: 3f 79 3d 63 69 26 73 3d 24 3c 73 68 6f 72 74 55 ?y=ci&s=$<shortU
c380: 75 69 64 3e 22 3e 61 73 73 6f 63 69 61 74 65 64 uid>">associated
c390: 20 74 69 63 6b 65 74 73 3c 2f 61 3e 0d 0a 3c 2f tickets</a>..</
c3a0: 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a 57 68 61 verbatim>....Wha
c3b0: 74 20 74 68 69 73 20 64 6f 65 73 20 69 73 20 73 t this does is s
c3c0: 65 61 72 63 68 65 73 20 61 6c 6c 20 63 68 65 63 earches all chec
c3d0: 6b 69 6e 27 73 20 66 6f 72 20 74 68 65 20 74 69 kin's for the ti
c3e0: 63 6b 65 74 73 20 75 75 69 64 2c 20 74 68 75 73 ckets uuid, thus
c3f0: 2c 20 79 6f 75 20 63 61 6e 20 6e 6f 77 20 73 65 , you can now se
c400: 65 20 61 6c 6c 20 63 68 65 63 6b 69 6e 27 73 20 e all checkin's
c410: 74 68 61 74 20 61 72 65 20 6c 69 6e 6b 65 64 20 that are linked
c420: 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 74 with the given t
c430: 69 63 6b 65 74 2e 0d 0a 0d 0a 3c 64 69 76 3e 0d icket.....<div>.
c440: 0a 20 20 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 . <h2><a name="
c450: 74 68 31 2d 75 73 61 67 65 22 3e 46 6f 73 73 69 th1-usage">Fossi
c460: 6c 20 54 68 31 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a l Th1</a></h2>..
c470: 0d 0a 20 20 3c 68 33 3e 50 75 72 70 6f 73 65 20 .. <h3>Purpose
c480: 6f 66 20 54 68 31 3c 2f 68 33 3e 0d 0a 0d 0a 20 of Th1</h3>....
c490: 20 3c 70 3e 54 68 31 20 69 73 20 75 73 65 64 20 <p>Th1 is used
c4a0: 61 73 20 61 20 3c 73 74 72 6f 6e 67 3e 74 65 6d as a <strong>tem
c4b0: 70 6c 61 74 65 20 73 79 73 74 65 6d 3c 2f 73 74 plate system</st
c4c0: 72 6f 6e 67 3e 20 66 6f 72 0d 0a 20 20 67 65 6e rong> for.. gen
c4d0: 65 72 61 74 69 6e 67 20 48 54 4d 4c 20 68 65 61 erating HTML hea
c4e0: 64 65 72 20 61 6e 64 20 66 6f 6f 74 65 72 2e 20 der and footer.
c4f0: 49 74 20 69 73 20 61 20 54 43 4c 20 6c 69 6b 65 It is a TCL like
c500: 0d 0a 20 20 6c 61 6e 67 75 61 67 65 2e 20 49 66 .. language. If
c510: 20 79 6f 75 20 6b 6e 6f 77 20 54 43 4c 20 79 6f you know TCL yo
c520: 75 20 6b 6e 6f 77 20 54 48 31 2e 3c 2f 70 3e 0d u know TH1.</p>.
c530: 0a 0d 0a 20 20 3c 70 3e 49 74 20 69 73 20 69 6e ... <p>It is in
c540: 76 6f 6b 65 64 20 62 79 20 6f 70 65 6e 69 6e 67 voked by opening
c550: 20 61 20 26 6c 74 3b 74 68 31 26 67 74 3b 20 74 a <th1> t
c560: 61 67 2e 20 54 68 65 20 66 69 72 73 74 20 74 69 ag. The first ti
c570: 6d 65 20 69 74 0d 0a 20 20 73 74 61 72 74 73 20 me it.. starts
c580: 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72 2e 20 an interpreter.
c590: 54 68 65 20 73 74 61 74 65 20 6f 66 20 74 68 69 The state of thi
c5a0: 73 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 73 s interpreter is
c5b0: 20 76 61 6c 69 64 0d 0a 20 20 64 75 72 69 6e 67 valid.. during
c5c0: 20 74 68 65 20 70 61 67 65 20 67 65 6e 65 72 61 the page genera
c5d0: 74 69 6f 6e 2e 3c 2f 70 3e 0d 0a 0d 0a 20 20 3c tion.</p>.... <
c5e0: 70 3e 46 6f 72 20 65 78 61 6d 70 6c 65 20 77 68 p>For example wh
c5f0: 65 6e 20 79 6f 75 3c 2f 70 3e 0d 0a 0d 0a 20 20 en you</p>....
c600: 3c 75 6c 20 63 6f 6d 70 61 63 74 3d 27 63 6f 6d <ul compact='com
c610: 70 61 63 74 27 3e 0d 0a 20 20 20 20 3c 6c 69 3e pact'>.. <li>
c620: 0d 0a 20 20 20 20 20 20 64 6f 20 69 6e 20 74 68 .. do in th
c630: 65 20 68 65 61 64 65 72 20 26 6c 74 3b 74 68 31 e header <th1
c640: 26 67 74 3b 20 73 65 74 20 76 65 72 73 69 6f 6e > set version
c650: 20 62 65 74 61 20 26 6c 74 3b 2f 74 68 31 26 67 beta </th1&g
c660: 74 3b 0d 0a 20 20 20 20 3c 2f 6c 69 3e 0d 0a 20 t;.. </li>..
c670: 20 20 20 3c 6c 69 3e 0d 0a 20 20 20 20 20 20 74 <li>.. t
c680: 68 65 6e 20 69 6e 20 74 68 65 20 66 6f 6f 74 65 hen in the foote
c690: 72 20 26 6c 74 3b 74 68 31 26 67 74 3b 70 75 74 r <th1>put
c6a0: 73 20 22 56 65 72 73 69 6f 6e 20 73 65 74 20 69 s "Version set i
c6b0: 6e 20 68 65 61 64 65 72 0d 0a 20 20 20 20 20 20 n header..
c6c0: 69 73 20 24 76 65 72 73 69 6f 6e 22 26 6c 74 3b is $version"<
c6d0: 2f 74 68 31 26 67 74 3b 20 72 65 73 75 6c 74 73 /th1> results
c6e0: 20 69 6e 20 27 56 65 72 73 69 6f 6e 20 73 65 74 in 'Version set
c6f0: 20 69 6e 20 68 65 61 64 65 72 20 69 73 0d 0a 20 in header is..
c700: 20 20 20 20 20 62 65 74 61 27 0d 0a 20 20 20 20 beta'..
c710: 3c 2f 6c 69 3e 0d 0a 20 20 3c 2f 75 6c 3e 0d 0a </li>.. </ul>..
c720: 0d 0a 20 20 3c 70 3e 42 65 63 61 75 73 65 20 69 .. <p>Because i
c730: 74 20 69 73 20 75 73 65 64 20 61 73 20 61 20 74 t is used as a t
c740: 65 6d 70 6c 61 74 65 20 73 79 73 74 65 6d 20 69 emplate system i
c750: 74 20 65 78 70 6f 72 74 73 20 73 6f 6d 65 0d 0a t exports some..
c760: 20 20 64 65 74 61 69 6c 73 20 6f 66 20 66 6f 73 details of fos
c770: 73 69 6c 20 74 68 72 6f 75 67 68 3c 2f 70 3e 0d sil through</p>.
c780: 0a 0d 0a 20 20 3c 6f 6c 3e 0d 0a 20 20 20 20 3c ... <ol>.. <
c790: 6c 69 3e 76 61 72 69 61 62 6c 65 73 3c 2f 6c 69 li>variables</li
c7a0: 3e 0d 0a 20 20 20 20 3c 6c 69 3e 66 75 6e 63 74 >.. <li>funct
c7b0: 69 6f 6e 73 3c 2f 6c 69 3e 0d 0a 20 20 3c 2f 6f ions</li>.. </o
c7c0: 6c 3e 0d 0a 0d 0a 20 20 3c 70 3e 54 68 65 73 65 l>.... <p>These
c7d0: 20 61 72 65 20 64 65 66 69 6e 65 64 20 69 6e 0d are defined in.
c7e0: 0a 20 5b 35 39 30 65 30 37 33 37 34 36 31 32 31 . [590e073746121
c7f0: 62 65 66 65 36 35 35 36 35 65 65 36 64 37 33 30 befe65565ee6d730
c800: 30 37 63 33 37 61 64 65 31 32 63 7c 73 72 63 2f 07c37ade12c|src/
c810: 74 68 5f 6d 61 69 6e 2e 63 5d 29 3c 2f 70 3e 0d th_main.c])</p>.
c820: 0a 0d 0a 20 20 3c 68 33 3e 56 61 72 69 61 62 6c ... <h3>Variabl
c830: 65 73 3c 2f 68 33 3e 0d 0a 0d 0a 20 20 3c 70 3e es</h3>.... <p>
c840: 54 68 65 73 65 20 76 61 72 69 61 62 6c 65 20 61 These variable a
c850: 72 65 20 67 6c 6f 62 61 6c 20 61 6e 64 20 61 76 re global and av
c860: 61 69 6c 61 62 6c 65 20 6f 75 74 73 69 64 65 20 ailable outside
c870: 26 6c 74 3b 74 68 31 26 67 74 3b 0d 0a 20 20 74 <th1>.. t
c880: 61 67 73 2e 20 54 68 65 79 20 63 61 6e 20 62 65 ags. They can be
c890: 20 72 65 66 65 72 65 6e 63 65 64 20 65 69 74 68 referenced eith
c8a0: 65 72 20 61 73 3c 2f 70 3e 0d 0a 0d 0a 20 20 3c er as</p>.... <
c8b0: 75 6c 20 63 6f 6d 70 61 63 74 3d 27 63 6f 6d 70 ul compact='comp
c8c0: 61 63 74 27 3e 0d 0a 20 20 20 20 3c 6c 69 3e 24 act'>.. <li>$
c8d0: 76 61 72 2e 20 65 2e 67 2e 20 24 74 69 74 6c 65 var. e.g. $title
c8e0: 2e 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e .</li>.. <li>
c8f0: 24 26 6c 74 3b 76 61 72 26 67 74 3b 20 65 2e 67 $<var> e.g
c900: 2e 20 24 26 6c 74 3b 74 69 74 6c 65 26 67 74 3b . $<title>
c910: 3c 2f 6c 69 3e 0d 0a 20 20 3c 2f 75 6c 3e 0d 0a </li>.. </ul>..
c920: 0d 0a 20 20 3c 70 3e 54 68 65 20 66 6f 6c 6c 6f .. <p>The follo
c930: 77 69 6e 67 20 61 72 65 20 64 65 66 69 6e 65 64 wing are defined
c940: 3a 3c 2f 70 3e 0d 0a 0d 0a 20 20 3c 75 6c 20 63 :</p>.... <ul c
c950: 6f 6d 70 61 63 74 3d 27 63 6f 6d 70 61 63 74 27 ompact='compact'
c960: 3e 0d 0a 20 20 20 20 3c 6c 69 3e 24 62 61 73 65 >.. <li>$base
c970: 75 72 6c 2e 20 54 68 65 20 66 69 72 73 74 20 70 url. The first p
c980: 61 72 74 20 6f 66 20 74 68 65 20 75 72 6c 2e 20 art of the url.
c990: 46 6f 72 20 65 78 61 6d 70 6c 65 0d 0a 20 20 20 For example..
c9a0: 20 3c 73 74 72 6f 6e 67 3e 68 74 74 70 3a 2f 2f <strong>http://
c9b0: 6c 6f 63 61 6c 68 6f 73 74 3a 38 30 38 30 3c 2f localhost:8080</
c9c0: 73 74 72 6f 6e 67 3e 3c 2f 6c 69 3e 0d 0a 20 20 strong></li>..
c9d0: 20 20 3c 6c 69 3e 24 63 75 72 72 65 6e 74 5f 70 <li>$current_p
c9e0: 61 67 65 2e 20 54 68 65 20 70 61 67 65 20 72 65 age. The page re
c9f0: 71 75 65 73 74 65 64 2e 20 46 6f 72 20 65 78 61 quested. For exa
ca00: 6d 70 6c 65 20 65 64 69 74 69 6e 67 20 61 0d 0a mple editing a..
ca10: 20 20 20 20 77 69 6b 69 70 61 67 65 20 69 73 20 wikipage is
ca20: 64 6f 6e 65 20 62 79 20 24 62 61 73 65 75 72 6c done by $baseurl
ca30: 2f 77 69 6b 69 65 64 69 74 20 24 63 75 72 72 65 /wikiedit $curre
ca40: 6e 74 5f 70 61 67 65 20 69 73 0d 0a 20 20 20 20 nt_page is..
ca50: 3c 73 74 72 6f 6e 67 3e 77 69 6b 69 65 64 69 74 <strong>wikiedit
ca60: 3c 2f 73 74 72 6f 6e 67 3e 3c 2f 6c 69 3e 0d 0a </strong></li>..
ca70: 20 20 20 20 3c 6c 69 3e 24 69 6e 64 65 78 5f 70 <li>$index_p
ca80: 61 67 65 3c 73 74 72 6f 6e 67 3e 2e 3c 2f 73 74 age<strong>.</st
ca90: 72 6f 6e 67 3e 20 4d 6f 73 74 6c 79 20 74 68 65 rong> Mostly the
caa0: 20 76 61 6c 75 65 20 69 73 0d 0a 20 20 20 20 3c value is.. <
cab0: 73 74 72 6f 6e 67 3e 2f 68 6f 6d 65 3c 2f 73 74 strong>/home</st
cac0: 72 6f 6e 67 3e 20 73 65 74 61 62 6c 65 20 69 6e rong> setable in
cad0: 20 41 64 6d 69 6e 2f 43 6f 6e 66 69 67 75 72 61 Admin/Configura
cae0: 74 69 6f 6e 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c tion</li>.. <
caf0: 6c 69 3e 24 74 69 74 6c 65 2e 20 54 68 65 20 74 li>$title. The t
cb00: 69 74 6c 65 20 6f 66 20 74 68 65 20 24 63 75 72 itle of the $cur
cb10: 72 65 6e 74 5f 70 61 67 65 3c 2f 6c 69 3e 0d 0a rent_page</li>..
cb20: 20 20 20 20 3c 6c 69 3e 24 6c 6f 67 69 6e 2e 20 <li>$login.
cb30: 54 68 65 20 6e 61 6d 65 20 6f 66 20 75 73 65 72 The name of user
cb40: 20 69 66 20 61 20 6c 6f 67 69 6e 20 68 61 73 20 if a login has
cb50: 6f 63 63 75 72 72 65 64 2e 20 69 66 20 79 6f 75 occurred. if you
cb60: 0d 0a 20 20 20 20 75 73 65 20 74 68 69 73 20 76 .. use this v
cb70: 61 72 69 61 62 6c 65 20 61 6c 77 61 79 73 20 63 ariable always c
cb80: 68 65 63 6b 20 69 66 20 69 74 20 65 78 69 73 74 heck if it exist
cb90: 73 20 76 69 61 0d 0a 20 20 20 20 3c 73 74 72 6f s via.. <stro
cba0: 6e 67 3e 3c 63 6f 64 65 3e 69 6e 66 6f 20 65 78 ng><code>info ex
cbb0: 69 73 74 73 20 6c 6f 67 69 6e 3c 2f 63 6f 64 65 ists login</code
cbc0: 3e 3c 2f 73 74 72 6f 6e 67 3e 3c 2f 6c 69 3e 0d ></strong></li>.
cbd0: 0a 20 20 20 20 3c 6c 69 3e 24 6d 61 6e 69 66 65 . <li>$manife
cbe0: 73 74 5f 76 65 72 73 69 6f 6e 2e 20 54 68 65 20 st_version. The
cbf0: 66 6f 73 73 69 6c 20 76 65 72 73 69 6f 6e 3c 2f fossil version</
cc00: 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e 24 6d 61 li>.. <li>$ma
cc10: 6e 69 66 65 73 74 5f 64 61 74 65 2e 20 54 68 65 nifest_date. The
cc20: 20 64 61 74 65 20 74 68 61 74 20 66 6f 73 73 69 date that fossi
cc30: 6c 20 76 65 72 73 69 6f 6e 20 77 61 73 0d 0a 20 l version was..
cc40: 20 20 20 63 6f 6d 70 69 6c 65 64 3c 2f 6c 69 3e compiled</li>
cc50: 0d 0a 20 20 3c 2f 75 6c 3e 0d 0a 0d 0a 20 20 3c .. </ul>.... <
cc60: 68 33 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 68 33 h3>Functions</h3
cc70: 3e 0d 0a 20 20 3c 70 3e 0d 0a 20 20 20 20 20 54 >.. <p>.. T
cc80: 68 65 73 65 20 61 72 65 20 6f 6e 6c 79 20 61 76 hese are only av
cc90: 61 69 62 6c 65 20 62 65 74 77 65 65 6e 20 0d 0a aible between ..
cca0: 20 20 26 6c 74 3b 74 68 31 26 67 74 3b 20 61 6e <th1> an
ccb0: 64 20 26 6c 74 3b 2f 74 68 31 26 67 74 3b 0d 0a d </th1>..
ccc0: 20 20 3c 2f 70 3e 0d 0a 20 20 3c 75 6c 20 63 6f </p>.. <ul co
ccd0: 6d 70 61 63 74 3d 27 63 6f 6d 70 61 63 74 27 3e mpact='compact'>
cce0: 0d 0a 20 20 20 20 3c 6c 69 3e 63 6f 6d 62 6f 62 .. <li>combob
ccf0: 6f 78 20 6e 61 6d 65 20 74 65 78 74 2d 6c 69 73 ox name text-lis
cd00: 74 20 6e 75 6d 6c 69 6e 65 73 2e 20 47 65 6e 65 t numlines. Gene
cd10: 72 61 74 65 73 20 61 20 73 65 6c 65 63 74 20 62 rates a select b
cd20: 6f 78 0d 0a 20 20 20 20 77 69 74 68 20 6e 61 6d ox.. with nam
cd30: 65 3d 22 6e 61 6d 65 22 20 61 6e 64 20 61 20 63 e="name" and a c
cd40: 67 69 2d 70 61 72 61 6d 65 74 65 72 20 6f 66 20 gi-parameter of
cd50: 22 6e 61 6d 65 22 3c 2f 6c 69 3e 0d 0a 20 20 20 "name"</li>..
cd60: 20 3c 6c 69 3e 65 6e 61 62 6c 65 5f 6f 75 74 70 <li>enable_outp
cd70: 75 74 20 62 6f 6f 6c 65 61 6e 3c 2f 6c 69 3e 0d ut boolean</li>.
cd80: 0a 20 20 20 20 3c 6c 69 3e 6c 69 6e 65 63 6f 75 . <li>linecou
cd90: 6e 74 20 73 74 72 69 6e 67 20 6d 61 78 20 6d 69 nt string max mi
cda0: 6e 2e 20 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 n. Counts the nu
cdb0: 6d 65 72 20 6f 66 20 6e 65 77 6c 69 6e 65 73 20 mer of newlines
cdc0: 69 6e 0d 0a 20 20 20 20 73 74 72 69 6e 67 20 62 in.. string b
cdd0: 75 74 20 6e 6f 74 20 6d 6f 72 65 20 74 68 65 6e ut not more then
cde0: 20 6d 61 78 20 61 6e 64 20 6e 6f 74 20 6c 65 73 max and not les
cdf0: 73 20 74 68 65 6e 20 6d 69 6e 3c 2f 6c 69 3e 0d s then min</li>.
ce00: 0a 20 20 20 20 3c 6c 69 3e 68 61 73 63 61 70 20 . <li>hascap
ce10: 73 74 72 69 6e 67 2e 20 72 65 74 75 72 6e 20 74 string. return t
ce20: 72 75 65 20 69 66 20 75 73 65 72 20 68 61 73 20 rue if user has
ce30: 61 6c 6c 0d 0a 20 20 20 20 63 61 70 61 62 69 6c all.. capabil
ce40: 69 74 69 65 73 20 69 6e 20 73 74 72 69 6e 67 3c ities in string<
ce50: 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e 68 74 /li>.. <li>ht
ce60: 6d 6c 69 7a 65 20 73 74 72 69 6e 67 2e 20 65 78 mlize string. ex
ce70: 63 61 70 65 73 20 61 6c 6c 20 63 68 61 72 73 20 capes all chars
ce80: 69 6e 20 73 74 72 69 6e 67 20 77 68 69 63 68 20 in string which
ce90: 68 61 76 65 0d 0a 20 20 20 20 73 70 65 63 69 61 have.. specia
cea0: 6c 20 6d 65 61 6e 69 6e 67 20 69 6e 20 48 54 4d l meaning in HTM
ceb0: 4c 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e L</li>.. <li>
cec0: 64 61 74 65 20 72 65 74 75 72 6e 73 20 74 68 65 date returns the
ced0: 20 73 71 6c 69 74 65 20 76 61 6c 75 65 20 6f 66 sqlite value of
cee0: 20 64 61 74 65 74 69 6d 65 28 27 6e 6f 77 27 29 datetime('now')
cef0: 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e 68 </li>.. <li>h
cf00: 74 6d 6c 20 73 74 72 69 6e 67 20 6f 75 74 70 75 tml string outpu
cf10: 74 20 68 74 6d 6c 3c 2f 6c 69 3e 0d 0a 20 20 20 t html</li>..
cf20: 20 3c 6c 69 3e 70 75 74 73 20 73 74 72 69 6e 67 <li>puts string
cf30: 20 70 72 69 6e 74 73 20 74 68 65 20 73 74 72 69 prints the stri
cf40: 6e 67 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 ng</li>.. <li
cf50: 3e 77 69 6b 69 20 73 74 72 69 6e 67 2e 20 54 68 >wiki string. Th
cf60: 65 20 73 74 72 69 6e 67 20 69 73 20 69 6e 20 77 e string is in w
cf70: 69 6b 69 20 66 6f 72 6d 61 74 2e 20 74 72 61 6e iki format. tran
cf80: 73 6c 61 74 65 20 69 74 20 74 6f 0d 0a 20 20 20 slate it to..
cf90: 20 48 54 4d 4c 3c 2f 6c 69 3e 0d 0a 20 20 3c 2f HTML</li>.. </
cfa0: 75 6c 3e 0d 0a 3c 6e 6f 77 69 6b 69 3e 0d 0a 20 ul>..<nowiki>..
cfb0: 20 3c 68 33 3e 45 78 61 6d 70 6c 65 20 66 72 6f <h3>Example fro
cfc0: 6d 20 61 64 6d 69 6e 2f 68 65 61 64 65 72 3c 2f m admin/header</
cfd0: 68 33 3e 0d 0a 20 20 3c 70 72 65 3e 0d 0a 26 6c h3>.. <pre>..&l
cfe0: 74 3b 68 74 6d 6c 26 67 74 3b 0d 0a 26 6c 74 3b t;html>..<
cff0: 68 65 61 64 26 67 74 3b 0d 0a 26 6c 74 3b 74 69 head>..<ti
d000: 74 6c 65 26 67 74 3b 3c 73 74 72 6f 6e 67 3e 24 tle><strong>$
d010: 26 6c 74 3b 70 72 6f 6a 65 63 74 5f 6e 61 6d 65 <project_name
d020: 26 67 74 3b 3c 2f 73 74 72 6f 6e 67 3e 3a 20 3c ></strong>: <
d030: 73 74 72 6f 6e 67 3e 24 26 6c 74 3b 74 69 74 6c strong>$<titl
d040: 65 26 67 74 3b 3c 2f 73 74 72 6f 6e 67 3e 26 6c e></strong>&l
d050: 74 3b 2f 74 69 74 6c 65 26 67 74 3b 0d 0a 26 6c t;/title>..&l
d060: 74 3b 6c 69 6e 6b 20 72 65 6c 3d 22 61 6c 74 65 t;link rel="alte
d070: 72 6e 61 74 65 22 20 74 79 70 65 3d 22 61 70 70 rnate" type="app
d080: 6c 69 63 61 74 69 6f 6e 2f 72 73 73 2b 78 6d 6c lication/rss+xml
d090: 22 20 74 69 74 6c 65 3d 22 52 53 53 20 46 65 65 " title="RSS Fee
d0a0: 64 22 0d 0a 20 20 20 20 20 20 68 72 65 66 3d 22 d".. href="
d0b0: 3c 73 74 72 6f 6e 67 3e 24 62 61 73 65 75 72 6c <strong>$baseurl
d0c0: 3c 2f 73 74 72 6f 6e 67 3e 2f 74 69 6d 65 6c 69 </strong>/timeli
d0d0: 6e 65 2e 72 73 73 22 26 67 74 3b 0d 0a 26 6c 74 ne.rss">..<
d0e0: 3b 6c 69 6e 6b 20 72 65 6c 3d 22 73 74 79 6c 65 ;link rel="style
d0f0: 73 68 65 65 74 22 20 68 72 65 66 3d 22 24 62 61 sheet" href="$ba
d100: 73 65 75 72 6c 2f 73 74 79 6c 65 2e 63 73 73 22 seurl/style.css"
d110: 20 74 79 70 65 3d 22 74 65 78 74 2f 63 73 73 22 type="text/css"
d120: 0d 0a 20 20 20 20 20 20 6d 65 64 69 61 3d 22 73 .. media="s
d130: 63 72 65 65 6e 22 26 67 74 3b 0d 0a 26 6c 74 3b creen">..<
d140: 2f 68 65 61 64 26 67 74 3b 0d 0a 26 6c 74 3b 62 /head>..<b
d150: 6f 64 79 26 67 74 3b 0d 0a 26 6c 74 3b 64 69 76 ody>..<div
d160: 20 63 6c 61 73 73 3d 22 68 65 61 64 65 72 22 26 class="header"&
d170: 67 74 3b 0d 0a 20 20 26 6c 74 3b 64 69 76 20 63 gt;.. <div c
d180: 6c 61 73 73 3d 22 6c 6f 67 6f 22 26 67 74 3b 0d lass="logo">.
d190: 0a 20 20 20 20 26 6c 74 3b 69 6d 67 20 73 72 63 . <img src
d1a0: 3d 22 3c 73 74 72 6f 6e 67 3e 24 62 61 73 65 75 ="<strong>$baseu
d1b0: 72 6c 3c 2f 73 74 72 6f 6e 67 3e 2f 6c 6f 67 6f rl</strong>/logo
d1c0: 22 20 61 6c 74 3d 22 6c 6f 67 6f 22 26 67 74 3b " alt="logo">
d1d0: 0d 0a 20 20 20 20 26 6c 74 3b 62 72 26 67 74 3b .. <br>
d1e0: 26 6c 74 3b 6e 6f 62 72 26 67 74 3b 3c 73 74 72 <nobr><str
d1f0: 6f 6e 67 3e 24 26 6c 74 3b 70 72 6f 6a 65 63 74 ong>$<project
d200: 5f 6e 61 6d 65 26 67 74 3b 3c 2f 73 74 72 6f 6e _name></stron
d210: 67 3e 26 6c 74 3b 2f 6e 6f 62 72 26 67 74 3b 0d g></nobr>.
d220: 0a 20 20 26 6c 74 3b 2f 64 69 76 26 67 74 3b 0d . </div>.
d230: 0a 20 20 26 6c 74 3b 64 69 76 20 63 6c 61 73 73 . <div class
d240: 3d 22 74 69 74 6c 65 22 26 67 74 3b 3c 73 74 72 ="title"><str
d250: 6f 6e 67 3e 24 26 6c 74 3b 74 69 74 6c 65 26 67 ong>$<title&g
d260: 74 3b 3c 2f 73 74 72 6f 6e 67 3e 26 6c 74 3b 2f t;</strong></
d270: 64 69 76 26 67 74 3b 0d 0a 20 20 26 6c 74 3b 64 div>.. <d
d280: 69 76 20 63 6c 61 73 73 3d 22 73 74 61 74 75 73 iv class="status
d290: 22 26 67 74 3b 26 6c 74 3b 6e 6f 62 72 26 67 74 "><nobr>
d2a0: 3b 3c 73 74 72 6f 6e 67 3e 26 6c 74 3b 74 68 31 ;<strong><th1
d2b0: 26 67 74 3b 3c 2f 73 74 72 6f 6e 67 3e 0d 0a 20 ></strong>..
d2c0: 20 20 20 20 69 66 20 7b 3c 73 74 72 6f 6e 67 3e if {<strong>
d2d0: 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6c 6f 67 [info exists log
d2e0: 69 6e 5d 3c 2f 73 74 72 6f 6e 67 3e 7d 20 7b 0d in]</strong>} {.
d2f0: 0a 20 20 20 20 20 20 20 70 75 74 73 20 22 4c 6f . puts "Lo
d300: 67 67 65 64 20 69 6e 20 61 73 20 3c 73 74 72 6f gged in as <stro
d310: 6e 67 3e 24 6c 6f 67 69 6e 3c 2f 73 74 72 6f 6e ng>$login</stron
d320: 67 3e 22 0d 0a 20 20 20 20 20 7d 20 65 6c 73 65 g>".. } else
d330: 20 7b 0d 0a 20 20 20 20 20 20 20 70 75 74 73 20 {.. puts
d340: 22 4e 6f 74 20 6c 6f 67 67 65 64 20 69 6e 22 0d "Not logged in".
d350: 0a 20 20 20 20 20 7d 0d 0a 20 20 26 6c 74 3b 2f . }.. </
d360: 74 68 31 26 67 74 3b 26 6c 74 3b 2f 6e 6f 62 72 th1></nobr
d370: 26 67 74 3b 26 6c 74 3b 2f 64 69 76 26 67 74 3b ></div>
d380: 0d 0a 26 6c 74 3b 2f 64 69 76 26 67 74 3b 0d 0a ..</div>..
d390: 26 6c 74 3b 64 69 76 20 63 6c 61 73 73 3d 22 6d <div class="m
d3a0: 61 69 6e 6d 65 6e 75 22 26 67 74 3b 26 6c 74 3b ainmenu"><
d3b0: 74 68 31 26 67 74 3b 0d 0a 68 74 6d 6c 20 22 26 th1>..html "&
d3c0: 6c 74 3b 61 20 68 72 65 66 3d 27 3c 73 74 72 6f lt;a href='<stro
d3d0: 6e 67 3e 24 62 61 73 65 75 72 6c 24 69 6e 64 65 ng>$baseurl$inde
d3e0: 78 5f 70 61 67 65 3c 2f 73 74 72 6f 6e 67 3e 27 x_page</strong>'
d3f0: 26 67 74 3b 48 6f 6d 65 26 6c 74 3b 2f 61 26 67 >Home</a&g
d400: 74 3b 20 22 0d 0a 69 66 20 7b 3c 73 74 72 6f 6e t; "..if {<stron
d410: 67 3e 5b 68 61 73 63 61 70 20 68 5d 3c 2f 73 74 g>[hascap h]</st
d420: 72 6f 6e 67 3e 5d 7d 20 7b 0d 0a 20 20 68 74 6d rong>]} {.. htm
d430: 6c 20 22 26 6c 74 3b 61 20 68 72 65 66 3d 27 24 l "<a href='$
d440: 62 61 73 65 75 72 6c 2f 64 69 72 27 26 67 74 3b baseurl/dir'>
d450: 46 69 6c 65 73 26 6c 74 3b 2f 61 26 67 74 3b 20 Files</a>
d460: 22 0d 0a 7d 0d 0a 3c 2f 70 72 65 3e 0d 0a 0d 0a "..}..</pre>....
d470: 20 20 3c 68 33 3e 43 61 76 65 61 74 73 3c 2f 68 <h3>Caveats</h
d480: 33 3e 0d 0a 0d 0a 20 20 3c 75 6c 20 63 6f 6d 70 3>.... <ul comp
d490: 61 63 74 3d 27 63 6f 6d 70 61 63 74 27 3e 0d 0a act='compact'>..
d4a0: 20 20 20 20 3c 6c 69 3e 70 75 74 73 20 22 5b 68 <li>puts "[h
d4b0: 65 6c 6c 6f 20 68 65 6c 6c 6f 5d 22 20 64 6f 65 ello hello]" doe
d4c0: 73 6e 27 74 20 77 6f 72 6b 20 62 65 63 61 75 73 sn't work becaus
d4d0: 65 20 5b 20 74 72 69 67 67 65 72 73 20 74 68 65 e [ triggers the
d4e0: 0d 0a 20 20 20 20 69 6e 74 65 72 70 65 74 65 72 .. interpeter
d4f0: 2c 20 75 73 65 20 70 75 74 73 20 22 26 61 6d 70 , use puts "&
d500: 3b 23 39 31 68 65 6c 6c 6f 20 68 65 6c 6c 6f 5d ;#91hello hello]
d510: 27 3c 2f 6c 69 3e 0d 0a 20 20 3c 2f 75 6c 3e 0d '</li>.. </ul>.
d520: 0a 3c 2f 6e 6f 77 69 6b 69 3e 0d 0a 3c 2f 64 69 .</nowiki>..</di
d530: 76 3e 0d 0a 3c 64 69 76 3e 0d 0a 20 20 3c 68 32 v>..<div>.. <h2
d540: 3e 3c 61 20 6e 61 6d 65 3d 22 76 65 72 73 69 6f ><a name="versio
d550: 6e 43 6f 6d 70 72 65 73 73 65 64 22 3e 56 65 72 nCompressed">Ver
d560: 73 69 6f 6e 69 6e 67 20 63 6f 6d 70 72 65 73 73 sioning compress
d570: 65 64 20 66 69 6c 65 73 3c 2f 61 3e 3c 2f 68 32 ed files</a></h2
d580: 3e 0d 0a 20 20 3c 68 33 3e 47 6f 61 6c 3c 2f 68 >.. <h3>Goal</h
d590: 33 3e 0d 0a 20 20 3c 70 3e 53 6f 6d 65 20 66 69 3>.. <p>Some fi
d5a0: 6c 65 20 66 6f 72 6d 61 74 73 20 61 72 65 20 61 le formats are a
d5b0: 63 74 75 61 6c 6c 79 20 7a 69 70 20 61 72 63 68 ctually zip arch
d5c0: 69 76 65 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 ives containing
d5d0: 74 65 78 74 20 66 69 6c 65 73 2e 20 46 6f 72 0d text files. For.
d5e0: 0a 20 20 65 78 61 6d 70 6c 65 20 4d 69 63 72 6f . example Micro
d5f0: 73 6f 66 74 20 4f 66 66 69 63 65 20 32 30 30 37 soft Office 2007
d600: 20 61 6e 64 20 6e 65 77 65 72 20 75 73 65 20 64 and newer use d
d610: 6f 63 78 2c 20 78 6c 73 78 20 61 6e 64 20 70 70 ocx, xlsx and pp
d620: 74 78 20 65 78 74 65 6e 73 69 6f 6e 73 20 74 6f tx extensions to
d630: 0d 0a 20 20 73 74 6f 72 65 20 77 68 61 74 20 69 .. store what i
d640: 73 20 6d 65 72 65 6c 79 20 78 6d 6c 20 66 69 6c s merely xml fil
d650: 65 73 20 7a 69 70 70 65 64 20 69 6e 74 6f 20 61 es zipped into a
d660: 20 66 69 6c 65 2e 3c 2f 70 3e 0d 0a 20 20 3c 70 file.</p>.. <p
d670: 3e 57 68 65 6e 20 65 64 69 74 73 20 61 72 65 20 >When edits are
d680: 6d 61 64 65 20 74 6f 20 73 75 63 68 20 66 69 6c made to such fil
d690: 65 73 20 61 20 76 65 72 73 69 6f 6e 69 6e 67 20 es a versioning
d6a0: 73 79 73 74 65 6d 20 69 73 20 6e 6f 74 20 65 66 system is not ef
d6b0: 66 69 63 69 65 6e 74 0d 0a 20 20 62 65 63 61 75 ficient.. becau
d6c0: 73 65 20 64 69 66 66 69 6e 67 20 69 73 20 6e 6f se diffing is no
d6d0: 20 6d 6f 72 65 20 61 70 70 72 6f 70 72 69 61 74 more appropriat
d6e0: 65 3c 2f 70 3e 0d 0a 20 20 3c 70 3e 54 68 65 20 e</p>.. <p>The
d6f0: 69 64 65 61 20 69 73 20 74 6f 20 76 65 72 73 69 idea is to versi
d700: 6f 6e 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 on the decompres
d710: 73 65 64 20 66 6f 6c 64 65 72 2e 20 41 20 73 63 sed folder. A sc
d720: 72 69 70 74 20 77 69 6c 6c 20 74 6f 67 67 6c 65 ript will toggle
d730: 0d 0a 20 20 43 6f 6d 70 72 65 73 73 65 64 2f 55 .. Compressed/U
d740: 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 ncompressed stat
d750: 65 3c 2f 70 3e 0d 0a 20 20 3c 68 33 3e 53 61 6d e</p>.. <h3>Sam
d760: 70 6c 65 20 62 61 74 63 68 20 73 63 72 69 70 74 ple batch script
d770: 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 64 6f for use with do
d780: 63 78 2c 20 78 6c 73 78 20 61 6e 64 20 70 70 74 cx, xlsx and ppt
d790: 78 20 64 6f 63 75 6d 65 6e 74 73 3c 2f 68 33 3e x documents</h3>
d7a0: 0d 0a 20 20 3c 70 3e 54 68 69 73 20 73 63 72 69 .. <p>This scri
d7b0: 70 74 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 pt is intended t
d7c0: 6f 20 77 6f 72 6b 20 75 6e 64 65 72 20 4d 53 20 o work under MS
d7d0: 57 69 6e 64 6f 77 73 2e 20 49 74 20 72 65 71 75 Windows. It requ
d7e0: 69 72 65 73 0d 0a 20 20 7a 69 70 2e 65 78 65 20 ires.. zip.exe
d7f0: 61 6e 64 20 75 6e 7a 69 70 2e 65 78 65 0d 0a 20 and unzip.exe..
d800: 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 66 69 that you can fi
d810: 6e 64 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 nd for example i
d820: 6e 20 67 6e 75 77 69 6e 33 32 20 28 5b 68 74 74 n gnuwin32 ([htt
d830: 70 3a 2f 2f 67 65 74 67 6e 75 77 69 6e 33 32 2e p://getgnuwin32.
d840: 73 66 2e 6e 65 74 5d 29 2e 3c 2f 70 3e 0d 0a 20 sf.net]).</p>..
d850: 20 3c 70 3e 59 6f 75 20 68 61 76 65 20 74 68 72 <p>You have thr
d860: 65 65 20 76 61 72 69 61 62 6c 65 73 20 74 6f 20 ee variables to
d870: 73 65 74 2e 20 52 75 6e 6e 69 6e 67 20 74 68 69 set. Running thi
d880: 73 20 73 63 72 69 70 74 20 77 69 6c 6c 3c 2f 70 s script will</p
d890: 3e 0d 0a 20 20 3c 75 6c 20 63 6f 6d 70 61 63 74 >.. <ul compact
d8a0: 3d 27 63 6f 6d 70 61 63 74 27 3e 0d 0a 20 20 20 ='compact'>..
d8b0: 20 3c 6c 69 3e 41 75 74 6f 64 65 74 65 63 74 20 <li>Autodetect
d8c0: 77 68 65 74 68 65 72 20 74 68 65 20 64 6f 63 75 whether the docu
d8d0: 6d 65 6e 74 20 69 73 20 69 6e 20 63 6f 6d 70 72 ment is in compr
d8e0: 65 73 73 65 64 20 6f 72 20 75 6e 63 6f 6d 70 72 essed or uncompr
d8f0: 65 73 73 65 64 0d 0a 20 20 20 20 73 74 61 74 65 essed.. state
d900: 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e 43 </li>.. <li>C
d910: 6f 6e 76 65 72 74 20 66 69 6c 65 20 4d 79 5f 64 onvert file My_d
d920: 6f 63 75 6d 65 6e 74 2e 64 6f 63 78 20 69 6e 74 ocument.docx int
d930: 6f 20 61 20 64 69 72 65 63 74 6f 72 79 20 6f 66 o a directory of
d940: 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 3c 2f the same name</
d950: 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 3e 52 65 6e li>.. <li>Ren
d960: 61 6d 65 20 66 69 6c 65 20 3c 6e 6f 77 69 6b 69 ame file <nowiki
d970: 3e 5b 43 6f 6e 74 65 6e 74 5f 54 79 70 65 73 5d >[Content_Types]
d980: 3c 2f 6e 6f 77 69 6b 69 3e 2e 78 6d 6c 20 74 6f </nowiki>.xml to
d990: 20 61 20 6e 61 6d 65 20 77 69 74 68 6f 75 74 0d a name without.
d9a0: 0a 20 20 20 20 62 72 61 63 6b 65 74 73 20 28 62 . brackets (b
d9b0: 72 61 63 6b 65 74 73 20 69 6e 20 66 69 6c 65 20 rackets in file
d9c0: 6e 61 6d 65 73 20 61 72 65 20 6e 6f 74 20 73 75 names are not su
d9d0: 70 70 6f 72 74 65 64 20 62 79 20 46 6f 73 73 69 pported by Fossi
d9e0: 6c 29 3c 2f 6c 69 3e 0d 0a 20 20 20 20 3c 6c 69 l)</li>.. <li
d9f0: 3e 70 65 72 66 6f 72 6d 20 72 65 76 65 72 73 65 >perform reverse
da00: 20 6f 70 65 72 61 74 69 6f 6e 73 20 74 6f 20 63 operations to c
da10: 6f 6e 76 65 72 74 20 64 69 72 65 63 74 6f 72 79 onvert directory
da20: 20 74 6f 20 63 6f 6d 70 72 65 73 73 65 64 0d 0a to compressed..
da30: 20 20 20 20 64 6f 63 78 2f 78 6c 73 78 2f 70 70 docx/xlsx/pp
da40: 74 78 20 66 69 6c 65 2e 3c 2f 6c 69 3e 0d 0a 20 tx file.</li>..
da50: 20 3c 2f 75 6c 3e 0d 0a 20 20 3c 70 3e 49 6e 20 </ul>.. <p>In
da60: 74 68 69 73 20 77 61 79 20 79 6f 75 20 63 61 6e this way you can
da70: 20 77 6f 72 6b 20 6f 6e 20 61 20 64 6f 63 78 20 work on a docx
da80: 64 6f 63 75 6d 65 6e 74 2c 20 72 75 6e 20 74 68 document, run th
da90: 65 20 73 63 72 69 70 74 2c 20 69 6e 73 65 72 74 e script, insert
daa0: 20 74 68 65 0d 0a 20 20 75 6e 63 6f 6d 70 72 65 the.. uncompre
dab0: 73 73 65 64 20 66 6f 6c 64 65 72 20 69 6e 74 6f ssed folder into
dac0: 20 66 6f 73 73 69 6c 20 61 6e 64 20 72 75 6e 20 fossil and run
dad0: 74 68 65 20 73 63 72 69 70 74 20 61 67 61 69 6e the script again
dae0: 20 74 6f 20 67 65 74 20 79 6f 75 72 20 64 6f 63 to get your doc
daf0: 75 6d 65 6e 74 0d 0a 20 20 62 61 63 6b 20 69 6e ument.. back in
db00: 20 65 64 69 74 61 62 6c 65 20 73 74 61 74 65 2e editable state.
db10: 3c 2f 70 3e 0d 0a 20 20 3c 70 3e 3c 73 74 72 6f </p>.. <p><stro
db20: 6e 67 3e 49 6d 70 6f 72 74 61 6e 74 3a 3c 2f 73 ng>Important:</s
db30: 74 72 6f 6e 67 3e 20 55 73 65 20 74 68 65 20 3c trong> Use the <
db40: 74 74 3e 2d 2d 64 6f 74 66 69 6c 65 73 3c 2f 74 tt>--dotfiles</t
db50: 74 3e 20 6f 70 74 69 6f 6e 20 74 6f 20 74 68 65 t> option to the
db60: 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 add command to
db70: 69 6e 63 6c 75 64 65 20 3c 74 74 3e 72 65 6c 73 include <tt>rels
db80: 2f 2e 72 65 6c 73 3c 2f 74 74 3e 20 66 69 6c 65 /.rels</tt> file
db90: 2e 3c 2f 70 3e 0d 0a 20 20 3c 66 6f 6e 74 20 66 .</p>.. <font f
dba0: 61 63 65 3d 22 6d 6f 6e 6f 73 70 61 63 65 22 3e ace="monospace">
dbb0: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
dbc0: 38 30 38 30 38 30 22 3e 26 6e 62 73 70 3b 31 20 808080"> 1
dbd0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
dbe0: 6f 72 3d 22 23 33 61 35 66 63 64 22 3e 3c 69 3e or="#3a5fcd"><i>
dbf0: 3a 3a 20 74 6f 67 67 6c 65 20 64 6f 63 78 20 73 :: toggle docx s
dc00: 74 61 74 65 20 28 63 6f 6d 70 72 65 73 73 65 64 tate (compressed
dc10: 20 2f 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 29 / uncompressed)
dc20: 3c 2f 69 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f </i></font><br /
dc30: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
dc40: 23 38 30 38 30 38 30 22 3e 26 6e 62 73 70 3b 32 #808080"> 2
dc50: 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f </font><font co
dc60: 6c 6f 72 3d 22 23 33 61 35 66 63 64 22 3e 3c 69 lor="#3a5fcd"><i
dc70: 3e 3a 3a 20 40 65 63 68 6f 20 6f 66 66 3c 2f 69 >:: @echo off</i
dc80: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a ></font><br />..
dc90: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 <font color="#80
dca0: 38 30 38 30 22 3e 26 6e 62 73 70 3b 33 20 3c 2f 8080"> 3 </
dcb0: 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f font><br />..<fo
dcc0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 nt color="#80808
dcd0: 30 22 3e 26 6e 62 73 70 3b 34 20 3c 2f 66 6f 6e 0"> 4 </fon
dce0: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
dcf0: 38 62 34 37 32 36 22 3e 53 45 54 3c 2f 66 6f 6e 8b4726">SET</fon
dd00: 74 3e 3c 66 6f 6e 74 0d 0a 63 6f 6c 6f 72 3d 22 t><font..color="
dd10: 23 38 62 34 37 32 36 22 3e 26 6e 62 73 70 3b 44 #8b4726"> D
dd20: 4f 43 58 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 0d OCX</font><font.
dd30: 0a 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 .color="#8b4726"
dd40: 3e 3c 62 3e 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e ><b>=</b></font>
dd50: 4d 79 5f 64 6f 63 75 6d 65 6e 74 2e 64 6f 63 78 My_document.docx
dd60: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
dd70: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 26 6e lor="#808080">&n
dd80: 62 73 70 3b 35 20 3c 2f 66 6f 6e 74 3e 3c 66 6f bsp;5 </font><fo
dd90: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
dda0: 36 22 3e 53 45 54 3c 2f 66 6f 6e 74 3e 3c 66 6f 6">SET</font><fo
ddb0: 6e 74 0d 0a 63 6f 6c 6f 72 3d 22 23 38 62 34 37 nt..color="#8b47
ddc0: 32 36 22 3e 26 6e 62 73 70 3b 54 4d 50 46 49 4c 26"> TMPFIL
ddd0: 45 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 0d 0a 63 E</font><font..c
dde0: 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c olor="#8b4726"><
ddf0: 62 3e 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 74 6d b>=</b></font>tm
de00: 70 5f 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 72 65 p_version_compre
de10: 73 73 65 64 5f 61 72 63 68 69 76 65 2e 7a 69 70 ssed_archive.zip
de20: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
de30: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 26 6e lor="#808080">&n
de40: 62 73 70 3b 36 20 3c 2f 66 6f 6e 74 3e 3c 66 6f bsp;6 </font><fo
de50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
de60: 36 22 3e 53 45 54 3c 2f 66 6f 6e 74 3e 3c 66 6f 6">SET</font><fo
de70: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
de80: 36 22 3e 26 6e 62 73 70 3b 43 4d 44 5a 49 50 3c 6"> CMDZIP<
de90: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
dea0: 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 3d r="#8b4726"><b>=
deb0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
dec0: 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 color="#228b22"
ded0: 3e 26 71 75 6f 74 3b 50 3a 5c 62 69 6e 5c 7a 69 >"P:\bin\zi
dee0: 70 2e 65 78 65 26 71 75 6f 74 3b 3c 2f 66 6f 6e p.exe"</fon
def0: 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 t><br />..<font
df00: 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e color="#808080">
df10: 26 6e 62 73 70 3b 37 20 3c 2f 66 6f 6e 74 3e 3c 7 </font><
df20: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
df30: 37 32 36 22 3e 53 45 54 3c 2f 66 6f 6e 74 3e 3c 726">SET</font><
df40: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
df50: 37 32 36 22 3e 26 6e 62 73 70 3b 43 4d 44 55 4e 726"> CMDUN
df60: 5a 49 50 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ZIP</font><font
df70: 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e color="#8b4726">
df80: 3c 62 3e 3d 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c <b>=</b></font><
df90: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 font color="#228
dfa0: 62 32 32 22 3e 26 71 75 6f 74 3b 50 3a 5c 62 69 b22">"P:\bi
dfb0: 6e 5c 75 6e 7a 69 70 2e 65 78 65 26 71 75 6f 74 n\unzip.exe"
dfc0: 3b 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a ;</font><br />..
dfd0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 <font color="#80
dfe0: 38 30 38 30 22 3e 26 6e 62 73 70 3b 38 20 3c 2f 8080"> 8 </
dff0: 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f font><br />..<fo
e000: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 nt color="#80808
e010: 30 22 3e 26 6e 62 73 70 3b 39 20 3c 2f 66 6f 6e 0"> 9 </fon
e020: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
e030: 33 61 35 66 63 64 22 3e 3c 69 3e 3a 3a 20 63 68 3a5fcd"><i>:: ch
e040: 65 63 6b 20 77 68 65 74 68 65 72 20 69 74 20 69 eck whether it i
e050: 73 20 69 6e 20 61 20 64 69 72 65 63 74 6f 72 79 s in a directory
e060: 20 6f 72 20 66 69 6c 65 20 73 74 61 74 65 3c 2f or file state</
e070: 69 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d i></font><br />.
e080: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 .<font color="#8
e090: 30 38 30 38 30 22 3e 31 30 20 3c 2f 66 6f 6e 74 08080">10 </font
e0a0: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ><font color="#8
e0b0: 62 34 37 32 36 22 3e 3c 62 3e 69 66 3c 2f 62 3e b4726"><b>if</b>
e0c0: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
e0d0: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e or="#8b4726"><b>
e0e0: 26 6e 62 73 70 3b 65 78 69 73 74 3c 2f 62 3e 3c exist</b><
e0f0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
e100: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
e110: 22 3e 25 54 45 4d 50 25 3c 2f 66 6f 6e 74 3e 5c ">%TEMP%</font>\
e120: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
e130: 34 37 32 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 4726">%TMPFILE%<
e140: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
e150: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
e160: 22 3e 64 65 6c 3c 2f 66 6f 6e 74 3e 26 6e 62 73 ">del</font>&nbs
e170: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
e180: 32 37 34 30 38 62 22 3e 2f 71 3c 2f 66 6f 6e 74 27408b">/q</font
e190: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
e1a0: 6f 72 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 or="#228b22">&qu
e1b0: 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 ot;</font><font
e1c0: 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e color="#8b4726">
e1d0: 25 54 45 4d 50 25 3c 2f 66 6f 6e 74 3e 3c 66 6f %TEMP%</font><fo
e1e0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 nt color="#228b2
e1f0: 32 22 3e 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 2">\</font><font
e200: 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 color="#8b4726"
e210: 3e 25 54 4d 50 46 49 4c 45 25 3c 2f 66 6f 6e 74 >%TMPFILE%</font
e220: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 ><font color="#2
e230: 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 28b22">"</f
e240: 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e ont><br />..<fon
e250: 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 t color="#808080
e260: 22 3e 31 31 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">11 </font><fon
e270: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
e280: 22 3e 3c 62 3e 69 66 3c 2f 62 3e 3c 2f 66 6f 6e "><b>if</b></fon
e290: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
e2a0: 38 62 34 37 32 36 22 3e 3c 62 3e 26 6e 62 73 70 8b4726"><b> 
e2b0: 3b 65 78 69 73 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 ;exist</b></font
e2c0: 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c > <font col
e2d0: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 44 4f or="#8b4726">%DO
e2e0: 43 58 25 3c 2f 66 6f 6e 74 3e 5c 4e 55 4c 20 28 CX%</font>\NUL (
e2f0: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
e300: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 31 32 lor="#808080">12
e310: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
e320: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
e330: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
e340: 34 37 32 36 22 3e 3c 62 3e 63 61 6c 6c 3c 2f 62 4726"><b>call</b
e350: 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
e360: 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 lor="#8b4726"><b
e370: 3e 3c 75 3e 26 6e 62 73 70 3b 3a 7a 69 70 5f 64 ><u> :zip_d
e380: 69 72 65 63 74 6f 72 79 3c 2f 75 3e 3c 2f 62 3e irectory</u></b>
e390: 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c </font><br />..<
e3a0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 font color="#808
e3b0: 30 38 30 22 3e 31 33 20 3c 2f 66 6f 6e 74 3e 26 080">13 </font>&
e3c0: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
e3d0: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
e3e0: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e or="#8b4726"><b>
e3f0: 67 6f 74 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c goto</b></font><
e400: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
e410: 37 32 36 22 3e 3c 62 3e 3c 75 3e 26 6e 62 73 70 726"><b><u> 
e420: 3b 3a 65 6e 64 3c 2f 75 3e 3c 2f 62 3e 3c 2f 66 ;:end</u></b></f
e430: 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e ont><br />..<fon
e440: 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 t color="#808080
e450: 22 3e 31 34 20 3c 2f 66 6f 6e 74 3e 29 3c 62 72 ">14 </font>)<br
e460: 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
e470: 3d 22 23 38 30 38 30 38 30 22 3e 31 35 20 3c 2f ="#808080">15 </
e480: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
e490: 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 69 66 ="#8b4726"><b>if
e4a0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 </b></font><font
e4b0: 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 color="#8b4726"
e4c0: 3e 3c 62 3e 26 6e 62 73 70 3b 65 78 69 73 74 3c ><b> exist<
e4d0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b /b></font>
e4e0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
e4f0: 34 37 32 36 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 4726">%DOCX%</fo
e500: 6e 74 3e 26 6e 62 73 70 3b 28 3c 62 72 20 2f 3e nt> (<br />
e510: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
e520: 38 30 38 30 38 30 22 3e 31 36 20 3c 2f 66 6f 6e 808080">16 </fon
e530: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
e540: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
e550: 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e color="#8b4726">
e560: 3c 62 3e 63 61 6c 6c 3c 2f 62 3e 3c 2f 66 6f 6e <b>call</b></fon
e570: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
e580: 38 62 34 37 32 36 22 3e 3c 62 3e 3c 75 3e 26 6e 8b4726"><b><u>&n
e590: 62 73 70 3b 3a 75 6e 7a 69 70 5f 66 69 6c 65 3c bsp;:unzip_file<
e5a0: 2f 75 3e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 /u></b></font><b
e5b0: 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f r />..<font colo
e5c0: 72 3d 22 23 38 30 38 30 38 30 22 3e 31 37 20 3c r="#808080">17 <
e5d0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
e5e0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
e5f0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 ont color="#8b47
e600: 32 36 22 3e 3c 62 3e 67 6f 74 6f 3c 2f 62 3e 3c 26"><b>goto</b><
e610: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
e620: 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 3c r="#8b4726"><b><
e630: 75 3e 26 6e 62 73 70 3b 3a 65 6e 64 3c 2f 75 3e u> :end</u>
e640: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f </b></font><br /
e650: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
e660: 23 38 30 38 30 38 30 22 3e 31 38 20 3c 2f 66 6f #808080">18 </fo
e670: 6e 74 3e 29 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e nt>)<br />..<fon
e680: 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 t color="#808080
e690: 22 3e 31 39 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">19 </font><fon
e6a0: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
e6b0: 22 3e 65 63 68 6f 3c 2f 66 6f 6e 74 3e 3c 66 6f ">echo</font><fo
e6c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 nt color="#228b2
e6d0: 32 22 3e 26 6e 62 73 70 3b 3c 2f 66 6f 6e 74 3e 2"> </font>
e6e0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
e6f0: 34 37 32 36 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 4726">%DOCX%</fo
e700: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
e710: 23 32 32 38 62 32 32 22 3e 26 6e 62 73 70 3b 6e #228b22"> n
e720: 6f 74 20 66 6f 75 6e 64 3c 2f 66 6f 6e 74 3e 3c ot found</font><
e730: 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c br />..<font col
e740: 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 32 30 20 or="#808080">20
e750: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
e760: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e or="#8b4726"><b>
e770: 67 6f 74 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c goto</b></font><
e780: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
e790: 37 32 36 22 3e 3c 62 3e 3c 75 3e 26 6e 62 73 70 726"><b><u> 
e7a0: 3b 3a 65 6e 64 3c 2f 75 3e 3c 2f 62 3e 3c 2f 66 ;:end</u></b></f
e7b0: 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e ont><br />..<fon
e7c0: 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 t color="#808080
e7d0: 22 3e 32 31 20 3c 2f 66 6f 6e 74 3e 3c 62 72 20 ">21 </font><br
e7e0: 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d />..<font color=
e7f0: 22 23 38 30 38 30 38 30 22 3e 32 32 20 3c 2f 66 "#808080">22 </f
e800: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
e810: 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 3c 75 3e "#8b4726"><b><u>
e820: 3a 7a 69 70 5f 64 69 72 65 63 74 6f 72 79 3c 2f :zip_directory</
e830: 75 3e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 u></b></font><br
e840: 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
e850: 3d 22 23 38 30 38 30 38 30 22 3e 32 33 20 3c 2f ="#808080">23 </
e860: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
e870: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ;<font color="#8
e880: 62 34 37 32 36 22 3e 65 63 68 6f 3c 2f 66 6f 6e b4726">echo</fon
e890: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
e8a0: 32 32 38 62 32 32 22 3e 26 6e 62 73 70 3b 5a 69 228b22"> Zi
e8b0: 70 70 69 6e 67 20 3c 2f 66 6f 6e 74 3e 3c 66 6f pping </font><fo
e8c0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
e8d0: 36 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 6e 74 3e 6">%DOCX%</font>
e8e0: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
e8f0: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 32 34 lor="#808080">24
e900: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
e910: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
e920: 22 23 38 62 34 37 32 36 22 3e 70 75 73 68 64 3c "#8b4726">pushd<
e930: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
e940: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
e950: 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 6e 74 3e 3c ">%DOCX%</font><
e960: 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c br />..<font col
e970: 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 32 35 20 or="#808080">25
e980: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
e990: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
e9a0: 23 38 62 34 37 32 36 22 3e 72 65 6e 3c 2f 66 6f #8b4726">ren</fo
e9b0: 6e 74 3e 26 6e 62 73 70 3b 43 6f 6e 74 65 6e 74 nt> Content
e9c0: 5f 54 79 70 65 73 2e 78 6d 6c 20 3c 6e 6f 77 69 _Types.xml <nowi
e9d0: 6b 69 3e 5b 43 6f 6e 74 65 6e 74 5f 54 79 70 65 ki>[Content_Type
e9e0: 73 5d 2e 78 6d 6c 3c 2f 6e 6f 77 69 6b 69 3e 3c s].xml</nowiki><
e9f0: 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c br />..<font col
ea00: 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 32 36 20 or="#808080">26
ea10: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 </font> &nb
ea20: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
ea30: 23 38 62 34 37 32 36 22 3e 25 43 4d 44 5a 49 50 #8b4726">%CMDZIP
ea40: 25 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2d 39 %</font> -9
ea50: 20 2d 72 20 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d -r <font color=
ea60: 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b "#228b22">"
ea70: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
ea80: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 45 or="#8b4726">%TE
ea90: 4d 50 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 MP%</font><font
eaa0: 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e color="#228b22">
eab0: 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f \</font><font co
eac0: 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 lor="#8b4726">%T
ead0: 4d 50 46 49 4c 45 25 3c 2f 66 6f 6e 74 3e 3c 66 MPFILE%</font><f
eae0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 ont color="#228b
eaf0: 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 22">"</font
eb00: 3e 26 6e 62 73 70 3b 2e 5c 2a 3c 62 72 20 2f 3e > .\*<br />
eb10: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
eb20: 38 30 38 30 38 30 22 3e 32 37 20 3c 2f 66 6f 6e 808080">27 </fon
eb30: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 t> <f
eb40: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 ont color="#8b47
eb50: 32 36 22 3e 3c 62 3e 69 66 3c 2f 62 3e 3c 2f 66 26"><b>if</b></f
eb60: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
eb70: 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 26 6e 62 "#8b4726"><b>&nb
eb80: 73 70 3b 6e 6f 74 20 65 78 69 73 74 3c 2f 62 3e sp;not exist</b>
eb90: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
eba0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 nt color="#228b2
ebb0: 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 2">"</font>
ebc0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
ebd0: 34 37 32 36 22 3e 25 54 45 4d 50 25 3c 2f 66 6f 4726">%TEMP%</fo
ebe0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
ebf0: 23 32 32 38 62 32 32 22 3e 5c 3c 2f 66 6f 6e 74 #228b22">\</font
ec00: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ><font color="#8
ec10: 62 34 37 32 36 22 3e 25 54 4d 50 46 49 4c 45 25 b4726">%TMPFILE%
ec20: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
ec30: 6f 72 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 or="#228b22">&qu
ec40: 6f 74 3b 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b ot;</font>
ec50: 28 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 (<br />..<font c
ec60: 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 32 olor="#808080">2
ec70: 38 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 8 </font><font c
ec80: 6f 6c 6f 72 3d 22 23 33 61 35 66 63 64 22 3e 3c olor="#3a5fcd"><
ec90: 69 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e i> &n
eca0: 62 73 70 3b 26 6e 62 73 70 3b 3a 3a 20 63 61 6e bsp; :: can
ecb0: 63 65 6c 3c 2f 69 3e 3c 2f 66 6f 6e 74 3e 3c 62 cel</i></font><b
ecc0: 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f r />..<font colo
ecd0: 72 3d 22 23 38 30 38 30 38 30 22 3e 32 39 20 3c r="#808080">29 <
ece0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
ecf0: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
ed00: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 ont color="#8b47
ed10: 32 36 22 3e 72 65 6e 3c 2f 66 6f 6e 74 3e 26 6e 26">ren</font>&n
ed20: 62 73 70 3b 3c 6e 6f 77 69 6b 69 3e 5b 43 6f 6e bsp;<nowiki>[Con
ed30: 74 65 6e 74 5f 54 79 70 65 73 5d 3c 2f 6e 6f 77 tent_Types]</now
ed40: 69 6b 69 3e 2e 78 6d 6c 20 43 6f 6e 74 65 6e 74 iki>.xml Content
ed50: 5f 54 79 70 65 73 2e 78 6d 6c 3c 62 72 20 2f 3e _Types.xml<br />
ed60: 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 ..<font color="#
ed70: 38 30 38 30 38 30 22 3e 33 30 20 3c 2f 66 6f 6e 808080">30 </fon
ed80: 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e t> &n
ed90: 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 bsp; <font
eda0: 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e color="#8b4726">
edb0: 70 6f 70 64 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f popd</font><br /
edc0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
edd0: 23 38 30 38 30 38 30 22 3e 33 31 20 3c 2f 66 6f #808080">31 </fo
ede0: 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 nt> &
edf0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
ee00: 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 color="#8b4726"
ee10: 3e 3c 62 3e 67 6f 74 6f 3c 2f 62 3e 3c 2f 66 6f ><b>goto</b></fo
ee20: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
ee30: 23 38 62 34 37 32 36 22 3e 3c 62 3e 3c 75 3e 26 #8b4726"><b><u>&
ee40: 6e 62 73 70 3b 3a 65 6e 64 3c 2f 75 3e 3c 2f 62 nbsp;:end</u></b
ee50: 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a ></font><br />..
ee60: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 <font color="#80
ee70: 38 30 38 30 22 3e 33 32 20 3c 2f 66 6f 6e 74 3e 8080">32 </font>
ee80: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 29 3c 62 72 )<br
ee90: 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
eea0: 3d 22 23 38 30 38 30 38 30 22 3e 33 33 20 3c 2f ="#808080">33 </
eeb0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
eec0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ;<font color="#8
eed0: 62 34 37 32 36 22 3e 70 6f 70 64 3c 2f 66 6f 6e b4726">popd</fon
eee0: 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 t><br />..<font
eef0: 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e color="#808080">
ef00: 33 34 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 34 </font>
ef10: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
ef20: 72 3d 22 23 38 62 34 37 32 36 22 3e 72 6d 64 69 r="#8b4726">rmdi
ef30: 72 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 r</font> <f
ef40: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 ont color="#228b
ef50: 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 22">"</font
ef60: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ><font color="#8
ef70: 62 34 37 32 36 22 3e 25 44 4f 43 58 25 3c 2f 66 b4726">%DOCX%</f
ef80: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
ef90: 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b "#228b22">"
efa0: 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f </font> <fo
efb0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 37 34 30 38 nt color="#27408
efc0: 62 22 3e 2f 73 3c 2f 66 6f 6e 74 3e 26 6e 62 73 b">/s</font>&nbs
efd0: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
efe0: 32 37 34 30 38 62 22 3e 2f 71 3c 2f 66 6f 6e 74 27408b">/q</font
eff0: 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 ><br />..<font c
f000: 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 33 olor="#808080">3
f010: 35 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 5 </font> &
f020: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
f030: 3d 22 23 38 62 34 37 32 36 22 3e 6d 6f 76 65 3c ="#8b4726">move<
f040: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
f050: 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 t color="#228b22
f060: 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c ">"</font><
f070: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
f080: 37 32 36 22 3e 25 54 45 4d 50 25 3c 2f 66 6f 6e 726">%TEMP%</fon
f090: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
f0a0: 32 32 38 62 32 32 22 3e 5c 3c 2f 66 6f 6e 74 3e 228b22">\</font>
f0b0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
f0c0: 34 37 32 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 4726">%TMPFILE%<
f0d0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
f0e0: 72 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f r="#228b22">&quo
f0f0: 74 3b 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2e t;</font> .
f100: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
f110: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 33 36 lor="#808080">36
f120: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
f130: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
f140: 22 23 38 62 34 37 32 36 22 3e 72 65 6e 3c 2f 66 "#8b4726">ren</f
f150: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
f160: 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e color="#228b22">
f170: 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f "</font><fo
f180: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
f190: 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 2f 66 6f 6">%TMPFILE%</fo
f1a0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
f1b0: 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c #228b22">"<
f1c0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
f1d0: 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 t color="#228b22
f1e0: 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c ">"</font><
f1f0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
f200: 37 32 36 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 6e 726">%DOCX%</fon
f210: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
f220: 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 228b22">"</
f230: 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f font><br />..<fo
f240: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 nt color="#80808
f250: 30 22 3e 33 37 20 3c 2f 66 6f 6e 74 3e 26 6e 62 0">37 </font>&nb
f260: 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 sp; <font c
f270: 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c olor="#8b4726"><
f280: 62 3e 67 6f 74 6f 3c 2f 62 3e 3c 2f 66 6f 6e 74 b>goto</b></font
f290: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ><font color="#8
f2a0: 62 34 37 32 36 22 3e 3c 62 3e 3c 75 3e 26 6e 62 b4726"><b><u>&nb
f2b0: 73 70 3b 3a 65 6e 64 3c 2f 75 3e 3c 2f 62 3e 3c sp;:end</u></b><
f2c0: 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 /font><br />..<f
f2d0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 ont color="#8080
f2e0: 38 30 22 3e 33 38 20 3c 2f 66 6f 6e 74 3e 3c 62 80">38 </font><b
f2f0: 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f r />..<font colo
f300: 72 3d 22 23 38 30 38 30 38 30 22 3e 33 39 20 3c r="#808080">39 <
f310: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
f320: 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 3c r="#8b4726"><b><
f330: 75 3e 3a 75 6e 7a 69 70 5f 66 69 6c 65 3c 2f 75 u>:unzip_file</u
f340: 3e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 ></b></font><br
f350: 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d />..<font color=
f360: 22 23 38 30 38 30 38 30 22 3e 34 30 20 3c 2f 66 "#808080">40 </f
f370: 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
f380: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
f390: 34 37 32 36 22 3e 72 65 6e 3c 2f 66 6f 6e 74 3e 4726">ren</font>
f3a0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
f3b0: 72 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f r="#228b22">&quo
f3c0: 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 t;</font><font c
f3d0: 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 olor="#8b4726">%
f3e0: 44 4f 43 58 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e DOCX%</font><fon
f3f0: 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 t color="#228b22
f400: 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 26 ">"</font>&
f410: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
f420: 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 ="#228b22">"
f430: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
f440: 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 lor="#8b4726">%T
f450: 4d 50 46 49 4c 45 25 3c 2f 66 6f 6e 74 3e 3c 66 MPFILE%</font><f
f460: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 ont color="#228b
f470: 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 22">"</font
f480: 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 ><br />..<font c
f490: 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 34 olor="#808080">4
f4a0: 31 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 1 </font> &
f4b0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
f4c0: 3d 22 23 38 62 34 37 32 36 22 3e 6d 6f 76 65 3c ="#8b4726">move<
f4d0: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e /font> <fon
f4e0: 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 t color="#228b22
f4f0: 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c ">"</font><
f500: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 font color="#8b4
f510: 37 32 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 2f 726">%TMPFILE%</
f520: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
f530: 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 ="#228b22">"
f540: 3b 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ;</font> <f
f550: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 ont color="#228b
f560: 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 22">"</font
f570: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ><font color="#8
f580: 62 34 37 32 36 22 3e 25 54 45 4d 50 25 3c 2f 66 b4726">%TEMP%</f
f590: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
f5a0: 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b "#228b22">"
f5b0: 3c 2f 66 6f 6e 74 3e 5c 3c 62 72 20 2f 3e 0d 0a </font>\<br />..
f5c0: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 <font color="#80
f5d0: 38 30 38 30 22 3e 34 32 20 3c 2f 66 6f 6e 74 3e 8080">42 </font>
f5e0: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e <fon
f5f0: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
f600: 22 3e 6d 6b 64 69 72 3c 2f 66 6f 6e 74 3e 26 6e ">mkdir</font>&n
f610: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
f620: 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b "#228b22">"
f630: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
f640: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 44 4f or="#8b4726">%DO
f650: 43 58 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 CX%</font><font
f660: 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e color="#228b22">
f670: 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 62 72 "</font><br
f680: 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
f690: 3d 22 23 38 30 38 30 38 30 22 3e 34 33 20 3c 2f ="#808080">43 </
f6a0: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
f6b0: 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 ;<font color="#8
f6c0: 62 34 37 32 36 22 3e 70 75 73 68 64 3c 2f 66 6f b4726">pushd</fo
f6d0: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
f6e0: 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e 26 olor="#228b22">&
f6f0: 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e quot;</font><fon
f700: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
f710: 22 3e 25 44 4f 43 58 25 3c 2f 66 6f 6e 74 3e 3c ">%DOCX%</font><
f720: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 font color="#228
f730: 62 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e b22">"</fon
f740: 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 t><br />..<font
f750: 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e color="#808080">
f760: 34 34 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 44 </font>
f770: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
f780: 72 3d 22 23 38 62 34 37 32 36 22 3e 25 43 4d 44 r="#8b4726">%CMD
f790: 55 4e 5a 49 50 25 3c 2f 66 6f 6e 74 3e 26 6e 62 UNZIP%</font>&nb
f7a0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
f7b0: 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c #228b22">"<
f7c0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
f7d0: 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 45 4d r="#8b4726">%TEM
f7e0: 50 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 P%</font><font c
f7f0: 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e 5c olor="#228b22">\
f800: 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c </font><font col
f810: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 4d or="#8b4726">%TM
f820: 50 46 49 4c 45 25 3c 2f 66 6f 6e 74 3e 3c 66 6f PFILE%</font><fo
f830: 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 nt color="#228b2
f840: 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 2">"</font>
f850: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
f860: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 34 35 lor="#808080">45
f870: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
f880: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
f890: 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 69 66 3c "#8b4726"><b>if<
f8a0: 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 /b></font><font
f8b0: 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e color="#8b4726">
f8c0: 3c 62 3e 26 6e 62 73 70 3b 6e 6f 74 20 65 78 69 <b> not exi
f8d0: 73 74 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 26 6e 62 st</b></font>&nb
f8e0: 73 70 3b 3c 6e 6f 77 69 6b 69 3e 5b 43 6f 6e 74 sp;<nowiki>[Cont
f8f0: 65 6e 74 5f 54 79 70 65 73 5d 2e 78 6d 6c 3c 2f ent_Types].xml</
f900: 6e 6f 77 69 6b 69 3e 20 28 3c 62 72 20 2f 3e 0d nowiki> (<br />.
f910: 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 .<font color="#8
f920: 30 38 30 38 30 22 3e 34 36 20 3c 2f 66 6f 6e 74 08080">46 </font
f930: 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 33 ><font color="#3
f940: 61 35 66 63 64 22 3e 3c 69 3e 26 6e 62 73 70 3b a5fcd"><i>
f950: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
f960: 70 3b 3a 3a 20 63 61 6e 63 65 6c 3c 2f 69 3e 3c p;:: cancel</i><
f970: 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 /font><br />..<f
f980: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 ont color="#8080
f990: 38 30 22 3e 34 37 20 3c 2f 66 6f 6e 74 3e 26 6e 80">47 </font>&n
f9a0: 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b bsp;
f9b0: 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f <font colo
f9c0: 72 3d 22 23 38 62 34 37 32 36 22 3e 70 6f 70 64 r="#8b4726">popd
f9d0: 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c </font><br />..<
f9e0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 font color="#808
f9f0: 30 38 30 22 3e 34 38 20 3c 2f 66 6f 6e 74 3e 26 080">48 </font>&
fa00: 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 nbsp;  
fa10: 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c ; <font col
fa20: 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 72 6d 64 or="#8b4726">rmd
fa30: 69 72 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c ir</font> <
fa40: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 font color="#228
fa50: 62 32 32 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e b22">"</fon
fa60: 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 t><font color="#
fa70: 38 62 34 37 32 36 22 3e 25 44 4f 43 58 25 3c 2f 8b4726">%DOCX%</
fa80: 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 font><font color
fa90: 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 ="#228b22">"
faa0: 3b 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 ;</font> <f
fab0: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 37 34 30 ont color="#2740
fac0: 38 62 22 3e 2f 73 3c 2f 66 6f 6e 74 3e 26 6e 62 8b">/s</font>&nb
fad0: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
fae0: 23 32 37 34 30 38 62 22 3e 2f 71 3c 2f 66 6f 6e #27408b">/q</fon
faf0: 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 t><br />..<font
fb00: 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e color="#808080">
fb10: 34 39 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 49 </font>
fb20: 26 6e 62 73 70 3b 26 6e 62 73 70 3b 26 6e 62 73 &nbs
fb30: 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 p;<font color="#
fb40: 38 62 34 37 32 36 22 3e 6d 6f 76 65 3c 2f 66 6f 8b4726">move</fo
fb50: 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 nt> <font c
fb60: 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e 26 olor="#228b22">&
fb70: 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e quot;</font><fon
fb80: 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 t color="#8b4726
fb90: 22 3e 25 54 45 4d 50 25 3c 2f 66 6f 6e 74 3e 3c ">%TEMP%</font><
fba0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 font color="#228
fbb0: 62 32 32 22 3e 5c 3c 2f 66 6f 6e 74 3e 3c 66 6f b22">\</font><fo
fbc0: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
fbd0: 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 2f 66 6f 6">%TMPFILE%</fo
fbe0: 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 nt><font color="
fbf0: 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c #228b22">"<
fc00: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 2e 3c 62 72 /font> .<br
fc10: 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
fc20: 3d 22 23 38 30 38 30 38 30 22 3e 35 30 20 3c 2f ="#808080">50 </
fc30: 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 font>  
fc40: 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f ; <fo
fc50: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
fc60: 36 22 3e 72 65 6e 3c 2f 66 6f 6e 74 3e 26 6e 62 6">ren</font>&nb
fc70: 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 sp;<font color="
fc80: 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b 3c #228b22">"<
fc90: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
fca0: 72 3d 22 23 38 62 34 37 32 36 22 3e 25 54 4d 50 r="#8b4726">%TMP
fcb0: 46 49 4c 45 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e FILE%</font><fon
fcc0: 74 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 t color="#228b22
fcd0: 22 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 26 ">"</font>&
fce0: 6e 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 nbsp;<font color
fcf0: 3d 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 ="#228b22">"
fd00: 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ;</font><font co
fd10: 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 25 44 lor="#8b4726">%D
fd20: 4f 43 58 25 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 OCX%</font><font
fd30: 20 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 color="#228b22"
fd40: 3e 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 62 >"</font><b
fd50: 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f r />..<font colo
fd60: 72 3d 22 23 38 30 38 30 38 30 22 3e 35 31 20 3c r="#808080">51 <
fd70: 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 /font> &nbs
fd80: 70 3b 26 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 p; <f
fd90: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 ont color="#8b47
fda0: 32 36 22 3e 3c 62 3e 67 6f 74 6f 3c 2f 62 3e 3c 26"><b>goto</b><
fdb0: 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f /font><font colo
fdc0: 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 3e 3c r="#8b4726"><b><
fdd0: 75 3e 26 6e 62 73 70 3b 3a 65 6e 64 3c 2f 75 3e u> :end</u>
fde0: 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f </b></font><br /
fdf0: 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 >..<font color="
fe00: 23 38 30 38 30 38 30 22 3e 35 32 20 3c 2f 66 6f #808080">52 </fo
fe10: 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b 29 nt> )
fe20: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
fe30: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 35 33 lor="#808080">53
fe40: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
fe50: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
fe60: 22 23 38 62 34 37 32 36 22 3e 72 65 6e 3c 2f 66 "#8b4726">ren</f
fe70: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 6e 6f 77 69 6b ont> <nowik
fe80: 69 3e 5b 43 6f 6e 74 65 6e 74 5f 54 79 70 65 73 i>[Content_Types
fe90: 5d 2e 78 6d 6c 3c 2f 6e 6f 77 69 6b 69 3e 20 43 ].xml</nowiki> C
fea0: 6f 6e 74 65 6e 74 5f 54 79 70 65 73 2e 78 6d 6c ontent_Types.xml
feb0: 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f <br />..<font co
fec0: 6c 6f 72 3d 22 23 38 30 38 30 38 30 22 3e 35 34 lor="#808080">54
fed0: 20 3c 2f 66 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e </font> &n
fee0: 62 73 70 3b 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d bsp;<font color=
fef0: 22 23 38 62 34 37 32 36 22 3e 64 65 6c 3c 2f 66 "#8b4726">del</f
ff00: 6f 6e 74 3e 26 6e 62 73 70 3b 3c 66 6f 6e 74 20 ont> <font
ff10: 63 6f 6c 6f 72 3d 22 23 32 32 38 62 32 32 22 3e color="#228b22">
ff20: 26 71 75 6f 74 3b 3c 2f 66 6f 6e 74 3e 3c 66 6f "</font><fo
ff30: 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
ff40: 36 22 3e 25 54 45 4d 50 25 3c 2f 66 6f 6e 74 3e 6">%TEMP%</font>
ff50: 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 32 32 <font color="#22
ff60: 38 62 32 32 22 3e 5c 3c 2f 66 6f 6e 74 3e 3c 66 8b22">\</font><f
ff70: 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 ont color="#8b47
ff80: 32 36 22 3e 25 54 4d 50 46 49 4c 45 25 3c 2f 66 26">%TMPFILE%</f
ff90: 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d ont><font color=
ffa0: 22 23 32 32 38 62 32 32 22 3e 26 71 75 6f 74 3b "#228b22">"
ffb0: 3c 2f 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c </font><br />..<
ffc0: 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 font color="#808
ffd0: 30 38 30 22 3e 35 35 20 3c 2f 66 6f 6e 74 3e 26 080">55 </font>&
ffe0: 6e 62 73 70 3b 26 6e 62 73 70 3b 3c 66 6f 6e 74 nbsp; <font
fff0: 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 color="#8b4726"
10000 3e 70 6f 70 64 3c 2f 66 6f 6e 74 3e 3c 62 72 20 >popd</font><br
10010 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d />..<font color=
10020 22 23 38 30 38 30 38 30 22 3e 35 36 20 3c 2f 66 "#808080">56 </f
10030 6f 6e 74 3e 26 6e 62 73 70 3b 26 6e 62 73 70 3b ont>
10040 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 <font color="#8b
10050 34 37 32 36 22 3e 3c 62 3e 67 6f 74 6f 3c 2f 62 4726"><b>goto</b
10060 3e 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e 74 20 63 6f ></font><font co
10070 6c 6f 72 3d 22 23 38 62 34 37 32 36 22 3e 3c 62 lor="#8b4726"><b
10080 3e 3c 75 3e 26 6e 62 73 70 3b 3a 65 6e 64 3c 2f ><u> :end</
10090 75 3e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 u></b></font><br
100a0 20 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 />..<font color
100b0 3d 22 23 38 30 38 30 38 30 22 3e 35 37 20 3c 2f ="#808080">57 </
100c0 66 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f font><br />..<fo
100d0 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 nt color="#80808
100e0 30 22 3e 35 38 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 0">58 </font><fo
100f0 6e 74 20 63 6f 6c 6f 72 3d 22 23 38 62 34 37 32 nt color="#8b472
10100 36 22 3e 3c 62 3e 3c 75 3e 3a 65 6e 64 3c 2f 75 6"><b><u>:end</u
10110 3e 3c 2f 62 3e 3c 2f 66 6f 6e 74 3e 3c 62 72 20 ></b></font><br
10120 2f 3e 0d 0a 3c 66 6f 6e 74 20 63 6f 6c 6f 72 3d />..<font color=
10130 22 23 38 30 38 30 38 30 22 3e 35 39 20 3c 2f 66 "#808080">59 </f
10140 6f 6e 74 3e 3c 62 72 20 2f 3e 0d 0a 3c 66 6f 6e ont><br />..<fon
10150 74 20 63 6f 6c 6f 72 3d 22 23 38 30 38 30 38 30 t color="#808080
10160 22 3e 36 30 20 3c 2f 66 6f 6e 74 3e 3c 66 6f 6e ">60 </font><fon
10170 74 20 63 6f 6c 6f 72 3d 22 23 33 61 35 66 63 64 t color="#3a5fcd
10180 22 3e 3c 69 3e 3a 3a 20 76 69 6d 3a 20 66 65 6e "><i>:: vim: fen
10190 63 3d 63 70 34 33 37 3c 2f 69 3e 3c 2f 66 6f 6e c=cp437</i></fon
101a0 74 3e 0d 0a 20 20 3c 2f 66 6f 6e 74 3e 0d 0a 0d t>.. </font>...
101b0 0a 3c 2f 64 69 76 3e 0d 0a 0d 0a 3c 68 32 3e 3c .</div>....<h2><
101c0 61 20 6e 61 6d 65 3d 22 43 6f 6c 6f 72 50 69 63 a name="ColorPic
101d0 6b 65 72 22 3e 43 6f 6c 6f 72 20 73 65 6c 65 63 ker">Color selec
101e0 74 6f 72 20 69 6e 20 63 68 65 63 6b 2d 69 6e 20 tor in check-in
101f0 70 72 6f 70 65 72 74 69 65 73 3c 2f 61 3e 3c 2f properties</a></
10200 68 32 3e 0d 0a 49 66 20 79 6f 75 20 77 61 6e 74 h2>..If you want
10210 20 61 20 6e 69 63 65 20 4a 53 20 63 6f 6c 6f 72 a nice JS color
10220 20 73 65 6c 65 63 74 6f 72 20 69 6e 20 79 6f 75 selector in you
10230 72 20 63 68 65 63 6b 2d 69 6e 20 70 72 6f 70 65 r check-in prope
10240 72 74 69 65 73 2c 20 70 75 74 20 74 68 65 20 66 rties, put the f
10250 6f 6c 6c 6f 77 69 6e 67 20 69 6e 74 6f 20 79 6f ollowing into yo
10260 75 72 20 66 6f 6f 74 65 72 3a 0d 0a 0d 0a 3c 76 ur footer:....<v
10270 65 72 62 61 74 69 6d 3e 0d 0a 3c 74 68 31 3e 0d erbatim>..<th1>.
10280 0a 20 20 69 66 20 7b 20 22 24 63 75 72 72 65 6e . if { "$curren
10290 74 5f 70 61 67 65 22 20 65 71 20 22 63 69 5f 65 t_page" eq "ci_e
102a0 64 69 74 22 20 7d 20 7b 0d 0a 20 20 20 20 68 74 dit" } {.. ht
102b0 6d 6c 20 22 3c 73 63 72 69 70 74 20 73 72 63 3d ml "<script src=
102c0 5c 22 68 74 74 70 3a 2f 2f 6a 73 63 6f 6c 6f 72 \"http://jscolor
102d0 2e 63 6f 6d 2f 6a 73 63 6f 6c 6f 72 2f 6a 73 63 .com/jscolor/jsc
102e0 6f 6c 6f 72 2e 6a 73 5c 22 20 74 79 70 65 3d 5c olor.js\" type=\
102f0 22 74 65 78 74 2f 6a 61 76 61 73 63 72 69 70 74 "text/javascript
10300 5c 22 3e 3c 2f 73 63 72 69 70 74 3e 22 0d 0a 20 \"></script>"..
10310 20 20 20 68 74 6d 6c 20 22 3c 73 63 72 69 70 74 html "<script
10320 20 74 79 70 65 3d 5c 22 74 65 78 74 2f 6a 61 76 type=\"text/jav
10330 61 73 63 72 69 70 74 5c 22 3e 22 0d 0a 20 20 20 ascript\">"..
10340 20 68 74 6d 6c 20 22 76 61 72 20 6d 79 50 69 63 html "var myPic
10350 6b 65 72 20 3d 20 6e 65 77 20 6a 73 63 6f 6c 6f ker = new jscolo
10360 72 2e 63 6f 6c 6f 72 28 64 6f 63 75 6d 65 6e 74 r.color(document
10370 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64 28 .getElementById(
10380 27 63 6c 72 63 75 73 74 27 29 2c 20 7b 68 61 73 'clrcust'), {has
10390 68 3a 74 72 75 65 7d 29 22 0d 0a 20 20 20 20 68 h:true})".. h
103a0 74 6d 6c 20 22 3c 2f 73 63 72 69 70 74 3e 22 0d tml "</script>".
103b0 0a 20 20 7d 0d 0a 3c 2f 74 68 31 3e 0d 0a 3c 2f . }..</th1>..</
103c0 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a 54 68 69 verbatim>....Thi
103d0 73 20 77 69 6c 6c 20 6f 6e 6c 79 20 77 6f 72 6b s will only work
103e0 20 77 69 74 68 20 61 20 76 65 72 73 69 6f 6e 20 with a version
103f0 61 66 74 65 72 20 32 30 31 30 20 53 65 70 20 32 after 2010 Sep 2
10400 39 2c 20 31 30 3a 33 30 0d 0a 0d 0a 3c 68 32 3e 9, 10:30....<h2>
10410 3c 61 20 6e 61 6d 65 3d 22 53 65 61 72 63 68 57 <a name="SearchW
10420 69 6b 69 22 3e 53 65 61 72 63 68 69 6e 67 20 77 iki">Searching w
10430 69 6b 69 20 74 65 78 74 3c 2f 61 3e 3c 2f 68 32 iki text</a></h2
10440 3e 0d 0a 41 74 20 70 72 65 73 65 6e 74 2c 20 46 >..At present, F
10450 6f 73 73 69 6c 20 64 6f 65 73 20 6e 6f 74 20 68 ossil does not h
10460 61 76 65 20 61 20 6d 65 74 68 6f 64 20 66 6f 72 ave a method for
10470 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 77 searching the w
10480 69 6b 69 20 70 61 67 65 73 20 66 6f 72 20 70 61 iki pages for pa
10490 72 74 69 63 75 6c 61 72 20 74 65 78 74 2e 20 20 rticular text.
104a0 53 6f 6d 65 74 69 6d 65 73 20 74 68 61 74 20 69 Sometimes that i
104b0 73 20 61 6e 6e 6f 79 69 6e 67 3b 20 62 75 74 20 s annoying; but
104c0 69 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 74 it is possible t
104d0 6f 20 67 65 74 20 61 72 6f 75 6e 64 20 74 68 69 o get around thi
104e0 73 20 77 69 74 68 20 61 20 6c 69 74 74 6c 65 20 s with a little
104f0 62 61 73 68 2d 73 63 72 69 70 74 20 28 6f 72 20 bash-script (or
10500 70 65 72 6c 20 6f 72 20 2e 2e 2e 29 3a 0d 0a 3c perl or ...):..<
10510 76 65 72 62 61 74 69 6d 3e 0d 0a 23 21 2f 62 69 verbatim>..#!/bi
10520 6e 2f 62 61 73 68 0d 0a 73 65 61 72 63 68 66 6f n/bash..searchfo
10530 72 3d 24 31 0d 0a 0d 0a 23 20 67 65 74 20 77 69 r=$1....# get wi
10540 6b 69 20 70 61 67 65 20 6e 61 6d 65 73 2c 20 73 ki page names, s
10550 75 62 73 74 69 74 75 74 65 20 73 70 61 63 65 73 ubstitute spaces
10560 20 66 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 65 for something e
10570 6c 73 65 3a 0d 0a 70 61 67 65 73 72 61 77 3d 60 lse:..pagesraw=`
10580 66 6f 73 73 69 6c 20 77 69 6b 69 20 6c 69 73 74 fossil wiki list
10590 60 0d 0a 70 61 67 65 73 3d 24 7b 70 61 67 65 73 `..pages=${pages
105a0 72 61 77 2f 2f 20 2f 2a 7d 0d 0a 0d 0a 23 20 66 raw// /*}....# f
105b0 6f 72 20 65 61 63 68 20 70 61 67 65 2c 20 73 65 or each page, se
105c0 65 20 69 66 20 6f 75 72 20 73 65 61 72 63 68 20 e if our search
105d0 74 65 72 6d 20 69 73 20 69 6e 20 69 74 3a 0d 0a term is in it:..
105e0 66 6f 72 20 70 61 67 65 20 69 6e 20 24 70 61 67 for page in $pag
105f0 65 73 0d 0a 64 6f 0d 0a 09 70 3d 24 7b 70 61 67 es..do...p=${pag
10600 65 2f 2f 5c 2a 2f 20 7d 0d 0a 09 66 6f 75 6e 64 e//\*/ }...found
10610 74 65 78 74 3d 60 66 6f 73 73 69 6c 20 77 69 6b text=`fossil wik
10620 69 20 65 78 70 6f 72 74 20 22 24 70 22 20 7c 20 i export "$p" |
10630 67 72 65 70 20 2d 6e 20 22 24 73 65 61 72 63 68 grep -n "$search
10640 66 6f 72 22 60 0d 0a 0d 0a 09 69 66 20 5b 20 21 for"`.....if [ !
10650 20 2d 7a 20 22 24 66 6f 75 6e 64 74 65 78 74 22 -z "$foundtext"
10660 20 5d 0d 0a 09 74 68 65 6e 0d 0a 09 09 23 20 66 ]...then....# f
10670 6f 75 6e 64 20 74 68 65 20 73 65 61 72 63 68 2d ound the search-
10680 74 65 72 6d 2c 20 73 6f 20 70 72 69 6e 74 20 77 term, so print w
10690 68 65 72 65 20 61 6e 64 20 77 68 61 74 20 77 61 here and what wa
106a0 73 20 66 6f 75 6e 64 3a 0d 0a 09 09 65 63 68 6f s found:....echo
106b0 20 22 24 70 22 0d 0a 09 09 65 63 68 6f 20 22 24 "$p"....echo "$
106c0 66 6f 75 6e 64 74 65 78 74 22 0d 0a 09 09 65 63 foundtext"....ec
106d0 68 6f 20 22 2d 2d 2d 2d 22 0d 0a 09 66 69 0d 0a ho "----"...fi..
106e0 64 6f 6e 65 0d 0a 3c 2f 76 65 72 62 61 74 69 6d done..</verbatim
106f0 3e 0d 0a 0d 0a 0d 0a 3c 68 32 3e 3c 61 20 6e 61 >......<h2><a na
10700 6d 65 3d 22 48 69 67 68 6c 69 67 68 74 44 69 66 me="HighlightDif
10710 66 22 3e 48 69 67 68 6c 69 67 68 74 20 64 69 66 f">Highlight dif
10720 66 27 73 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 3c 68 f's</a></h2>..<h
10730 33 3e 50 72 6f 62 6c 65 6d 3c 2f 68 33 3e 0d 0a 3>Problem</h3>..
10740 46 6f 73 73 69 6c 20 73 68 6f 77 73 20 61 20 64 Fossil shows a d
10750 69 66 66 20 6f 66 20 61 20 63 68 65 63 6b 69 6e iff of a checkin
10760 2e 20 49 74 20 75 73 65 73 20 74 68 65 20 74 65 . It uses the te
10770 78 74 75 61 6c 20 72 65 70 72 65 73 65 6e 74 61 xtual representa
10780 74 69 6f 6e 20 28 27 2b 27 20 73 69 67 6e 20 66 tion ('+' sign f
10790 6f 72 20 61 64 64 65 64 20 6c 69 6e 65 2c 20 27 or added line, '
107a0 2d 27 20 66 6f 72 20 61 20 63 68 61 6e 67 65 64 -' for a changed
107b0 2f 64 65 6c 65 74 65 64 20 6c 69 6e 65 29 2e 20 /deleted line).
107c0 48 61 76 69 6e 67 20 61 20 63 6f 6c 6f 72 20 66 Having a color f
107d0 6f 72 20 61 64 64 65 64 20 6c 69 6e 65 73 2c 20 or added lines,
107e0 65 2e 67 2e 20 67 72 65 65 6e 2c 20 61 6e 64 20 e.g. green, and
107f0 66 6f 72 20 63 68 61 6e 67 65 64 20 6c 69 6e 65 for changed line
10800 73 2c 20 65 2e 67 2e 20 72 65 64 2c 20 77 6f 75 s, e.g. red, wou
10810 6c 64 20 6d 61 6b 65 20 74 68 65 20 63 68 61 6e ld make the chan
10820 67 65 73 20 6d 6f 72 65 20 76 69 73 69 62 6c 65 ges more visible
10830 2e 0d 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 69 6f .....<h3>Solutio
10840 6e 3c 2f 68 33 3e 0d 0a 54 68 65 20 73 6f 6c 75 n</h3>..The solu
10850 74 69 6f 6e 20 77 61 73 20 70 72 65 73 65 6e 74 tion was present
10860 65 64 20 6f 6e 20 74 68 65 20 6d 61 69 6c 69 6e ed on the mailin
10870 67 20 6c 69 73 74 20 28 32 30 2d 4a 61 6e 2d 32 g list (20-Jan-2
10880 30 31 31 29 2e 0d 0a 0d 0a 3c 76 65 72 62 61 74 011).....<verbat
10890 69 6d 3e 0d 0a 4a 75 73 74 20 70 75 74 20 74 68 im>..Just put th
108a0 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 6f 6d 65 e following some
108b0 77 68 65 72 65 20 69 6e 74 6f 20 46 6f 6f 74 65 where into Foote
108c0 72 20 28 6e 6f 74 20 68 65 61 64 65 72 21 29 20 r (not header!)
108d0 61 62 6f 76 65 20 3c 2f 62 6f 64 79 3e 3a 0d 0a above </body>:..
108e0 0d 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ..==============
108f0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
10900 3d 3d 0d 0a 0d 0a 3c 73 63 72 69 70 74 3e 0d 0a ==....<script>..
10910 2f 2a 20 20 53 69 6d 70 6c 65 20 64 69 66 66 20 /* Simple diff
10920 68 69 67 68 6c 69 67 68 74 69 6e 67 20 2a 2f 0d highlighting */.
10930 0a 76 61 72 20 44 69 66 66 48 69 67 68 6c 69 67 .var DiffHighlig
10940 68 74 65 72 20 3d 20 7b 0d 0a 0d 0a 20 69 73 44 hter = {.... isD
10950 69 66 66 20 3a 20 66 75 6e 63 74 69 6f 6e 28 73 iff : function(s
10960 29 7b 0d 0a 20 20 20 72 65 74 75 72 6e 20 28 73 ){.. return (s
10970 2e 6d 61 74 63 68 28 2f 5e 40 40 2e 2a 40 40 2f .match(/^@@.*@@/
10980 6d 29 20 26 26 20 73 2e 6d 61 74 63 68 28 2f 5e m) && s.match(/^
10990 5b 2b 2d 5d 2f 6d 29 29 3b 0d 0a 20 7d 2c 0d 0a [+-]/m));.. },..
109a0 0d 0a 20 68 69 67 68 6c 69 67 68 74 45 6c 65 6d .. highlightElem
109b0 65 6e 74 20 3a 20 66 75 6e 63 74 69 6f 6e 28 65 ent : function(e
109c0 6c 29 7b 0d 0a 20 20 20 76 61 72 20 73 20 3d 20 l){.. var s =
109d0 65 6c 2e 69 6e 6e 65 72 48 54 4d 4c 3b 0d 0a 20 el.innerHTML;..
109e0 20 20 69 66 20 28 21 74 68 69 73 2e 69 73 44 69 if (!this.isDi
109f0 66 66 28 73 29 29 7b 0d 0a 20 20 20 20 20 72 65 ff(s)){.. re
10a00 74 75 72 6e 3b 0d 0a 20 20 20 7d 0d 0a 20 20 20 turn;.. }..
10a10 73 20 3d 20 73 2e 72 65 70 6c 61 63 65 28 22 3c s = s.replace("<
10a20 22 2c 20 22 26 6c 74 3b 22 29 3b 0d 0a 20 20 20 ", "<");..
10a30 73 20 3d 20 73 2e 72 65 70 6c 61 63 65 28 2f 5e s = s.replace(/^
10a40 5c 2b 2e 2a 24 2f 6d 67 2c 20 27 3c 73 70 61 6e \+.*$/mg, '<span
10a50 20 63 6c 61 73 73 3d 22 64 69 66 66 2d 61 64 64 class="diff-add
10a60 65 64 22 3e 24 26 3c 2f 73 70 61 6e 3e 27 29 3b ed">$&</span>');
10a70 0d 0a 20 20 20 73 20 3d 20 73 2e 72 65 70 6c 61 .. s = s.repla
10a80 63 65 28 2f 5e 5c 2d 2e 2a 24 2f 6d 67 2c 20 27 ce(/^\-.*$/mg, '
10a90 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 64 69 66 <span class="dif
10aa0 66 2d 72 65 6d 6f 76 65 64 22 3e 24 26 3c 2f 73 f-removed">$&</s
10ab0 70 61 6e 3e 27 29 3b 0d 0a 20 20 20 73 20 3d 20 pan>');.. s =
10ac0 73 2e 72 65 70 6c 61 63 65 28 2f 5e 40 40 2e 2a s.replace(/^@@.*
10ad0 24 2f 6d 67 2c 20 27 3c 73 70 61 6e 20 63 6c 61 $/mg, '<span cla
10ae0 73 73 3d 22 64 69 66 66 2d 70 6f 73 69 74 69 6f ss="diff-positio
10af0 6e 22 3e 24 26 3c 2f 73 70 61 6e 3e 27 29 3b 0d n">$&</span>');.
10b00 0a 20 20 20 73 20 3d 20 22 3c 70 72 65 20 63 6c . s = "<pre cl
10b10 61 73 73 3d 27 64 69 66 66 27 3e 22 20 2b 20 73 ass='diff'>" + s
10b20 20 2b 20 22 3c 2f 70 72 65 3e 22 3b 20 2f 2f 20 + "</pre>"; //
10b30 77 6f 72 6b 61 72 6f 75 6e 64 20 66 6f 72 20 49 workaround for I
10b40 45 0d 0a 20 20 20 65 6c 2e 69 6e 6e 65 72 48 54 E.. el.innerHT
10b50 4d 4c 20 3d 20 73 3b 0d 0a 20 7d 2c 0d 0a 0d 0a ML = s;.. },....
10b60 20 68 69 67 68 6c 69 67 68 74 45 6c 65 6d 65 6e highlightElemen
10b70 74 73 57 69 74 68 54 61 67 4e 61 6d 65 20 3a 20 tsWithTagName :
10b80 66 75 6e 63 74 69 6f 6e 28 74 61 67 4e 61 6d 65 function(tagName
10b90 29 7b 0d 0a 20 20 20 76 61 72 20 65 6c 73 20 3d ){.. var els =
10ba0 20 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 document.getEle
10bb0 6d 65 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 74 mentsByTagName(t
10bc0 61 67 4e 61 6d 65 29 3b 0d 0a 20 20 20 66 6f 72 agName);.. for
10bd0 20 28 76 61 72 20 69 3d 30 3b 20 69 20 3c 20 65 (var i=0; i < e
10be0 6c 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 7b ls.length; i++){
10bf0 0d 0a 20 20 20 20 20 74 68 69 73 2e 68 69 67 68 .. this.high
10c00 6c 69 67 68 74 45 6c 65 6d 65 6e 74 28 65 6c 73 lightElement(els
10c10 5b 69 5d 29 3b 0d 0a 20 20 20 7d 0d 0a 20 7d 0d [i]);.. }.. }.
10c20 0a 7d 3b 0d 0a 0d 0a 44 69 66 66 48 69 67 68 6c .};....DiffHighl
10c30 69 67 68 74 65 72 2e 68 69 67 68 6c 69 67 68 74 ighter.highlight
10c40 45 6c 65 6d 65 6e 74 73 57 69 74 68 54 61 67 4e ElementsWithTagN
10c50 61 6d 65 28 27 70 72 65 27 29 3b 0d 0a 3c 2f 73 ame('pre');..</s
10c60 63 72 69 70 74 3e 0d 0a 0d 0a 3d 3d 3d 3d 3d 3d cript>....======
10c70 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
10c80 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a 0d 0a 41 6e ==========....An
10c90 64 20 61 64 64 20 74 68 69 73 20 28 6f 72 20 73 d add this (or s
10ca0 6f 6d 65 74 68 69 6e 67 20 74 6f 20 79 6f 75 72 omething to your
10cb0 20 74 61 73 74 65 29 20 74 6f 20 79 6f 75 72 20 taste) to your
10cc0 43 53 53 3a 0d 0a 0d 0a 3d 3d 3d 3d 3d 3d 3d 3d CSS:....========
10cd0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
10ce0 3d 3d 3d 3d 3d 3d 3d 3d 0d 0a 0d 0a 70 72 65 2e ========....pre.
10cf0 64 69 66 66 20 7b 0d 0a 20 63 6f 6c 6f 72 3a 20 diff {.. color:
10d00 23 30 30 30 3b 0d 0a 7d 0d 0a 0d 0a 70 72 65 20 #000;..}....pre
10d10 2e 64 69 66 66 2d 70 6f 73 69 74 69 6f 6e 20 7b .diff-position {
10d20 0d 0a 20 64 69 73 70 6c 61 79 3a 2d 6d 6f 7a 2d .. display:-moz-
10d30 69 6e 6c 69 6e 65 2d 73 74 61 63 6b 3b 0d 0a 20 inline-stack;..
10d40 64 69 73 70 6c 61 79 3a 69 6e 6c 69 6e 65 2d 62 display:inline-b
10d50 6c 6f 63 6b 3b 0d 0a 20 7a 6f 6f 6d 3a 31 3b 0d lock;.. zoom:1;.
10d60 0a 20 2a 64 69 73 70 6c 61 79 3a 62 6c 6f 63 6b . *display:block
10d70 3b 0d 0a 20 77 69 64 74 68 3a 20 31 30 30 25 3b ;.. width: 100%;
10d80 0d 0a 20 66 6f 6e 74 2d 73 74 79 6c 65 3a 20 69 .. font-style: i
10d90 74 61 6c 69 63 3b 0d 0a 20 70 61 64 64 69 6e 67 talic;.. padding
10da0 3a 20 30 2e 35 65 6d 20 30 3b 0d 0a 20 6d 61 72 : 0.5em 0;.. mar
10db0 67 69 6e 3a 20 30 2e 35 65 6d 20 30 3b 0d 0a 20 gin: 0.5em 0;..
10dc0 62 6f 72 64 65 72 2d 74 6f 70 3a 20 31 70 78 20 border-top: 1px
10dd0 64 6f 74 74 65 64 20 23 41 32 42 35 43 44 3b 0d dotted #A2B5CD;.
10de0 0a 20 62 6f 72 64 65 72 2d 62 6f 74 74 6f 6d 3a . border-bottom:
10df0 20 31 70 78 20 64 6f 74 74 65 64 20 23 41 32 42 1px dotted #A2B
10e00 35 43 44 3b 0d 0a 20 63 6f 6c 6f 72 3a 20 23 41 5CD;.. color: #A
10e10 32 42 35 43 44 3b 0d 0a 7d 0d 0a 0d 0a 70 72 65 2B5CD;..}....pre
10e20 20 2e 64 69 66 66 2d 61 64 64 65 64 20 7b 0d 0a .diff-added {..
10e30 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f background-colo
10e40 72 3a 20 23 43 45 46 42 43 33 20 21 69 6d 70 6f r: #CEFBC3 !impo
10e50 72 74 61 6e 74 3b 0d 0a 7d 0d 0a 0d 0a 70 72 65 rtant;..}....pre
10e60 20 2e 64 69 66 66 2d 72 65 6d 6f 76 65 64 20 7b .diff-removed {
10e70 0d 0a 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f .. background-co
10e80 6c 6f 72 3a 20 23 46 35 43 32 43 31 20 21 69 6d lor: #F5C2C1 !im
10e90 70 6f 72 74 61 6e 74 3b 0d 0a 7d 0d 0a 0d 0a 3d portant;..}....=
10ea0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
10eb0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d ===============.
10ec0 0a 0d 0a 54 68 61 74 27 73 20 69 74 3a 20 74 68 ...That's it: th
10ed0 65 20 73 63 72 69 70 74 20 77 69 6c 6c 20 61 75 e script will au
10ee0 74 6f 6d 61 74 69 63 61 6c 6c 79 20 64 65 74 65 tomatically dete
10ef0 63 74 20 64 69 66 66 73 20 61 6e 64 20 63 6f 6c ct diffs and col
10f00 6f 72 20 74 68 65 6d 2e 0d 0a 3c 2f 76 65 72 62 or them...</verb
10f10 61 74 69 6d 3e 0d 0a 0d 0a 0d 0a 3c 68 32 3e 3c atim>......<h2><
10f20 61 20 6e 61 6d 65 3d 22 4d 65 72 63 75 72 69 61 a name="Mercuria
10f30 6c 22 3e 49 6d 70 6f 72 74 69 6e 67 20 66 72 6f l">Importing fro
10f40 6d 20 4d 65 72 63 75 72 69 61 6c 3c 2f 61 3e 3c m Mercurial</a><
10f50 2f 68 32 3e 0d 0a 0d 0a 3c 68 33 3e 50 72 6f 62 /h2>....<h3>Prob
10f60 6c 65 6d 3c 2f 68 33 3e 0d 0a 0d 0a 46 6f 73 73 lem</h3>....Foss
10f70 69 6c 20 73 75 70 70 6f 72 74 73 20 5b 2f 64 6f il supports [/do
10f80 63 2f 74 72 75 6e 6b 2f 77 77 77 2f 69 6e 6f 75 c/trunk/www/inou
10f90 74 2e 77 69 6b 69 7c 69 6d 70 6f 72 74 69 6e 67 t.wiki|importing
10fa0 20 66 72 6f 6d 20 47 69 74 5d 2c 20 62 75 74 20 from Git], but
10fb0 6e 6f 74 20 66 72 6f 6d 20 4d 65 72 63 75 72 69 not from Mercuri
10fc0 61 6c 2e 0d 0a 0d 0a 3c 68 33 3e 53 6f 6c 75 74 al.....<h3>Solut
10fd0 69 6f 6e 31 3c 2f 68 33 3e 0d 0a 0d 0a 57 65 27 ion1</h3>....We'
10fe0 6c 6c 20 75 73 65 20 47 69 74 20 61 73 20 61 6e ll use Git as an
10ff0 20 69 6e 74 65 72 6d 65 64 69 61 72 79 3a 20 66 intermediary: f
11000 69 72 73 74 20 62 79 20 63 6f 6e 76 65 72 74 69 irst by converti
11010 6e 67 20 4d 65 72 63 75 72 69 61 6c 20 72 65 70 ng Mercurial rep
11020 6f 73 69 74 6f 72 79 20 74 6f 20 47 69 74 2c 20 ository to Git,
11030 61 6e 64 20 74 68 65 6e 20 62 79 20 63 6f 6e 76 and then by conv
11040 65 72 74 69 6e 67 20 47 69 74 20 72 65 70 6f 73 erting Git repos
11050 69 74 6f 72 79 0d 0a 74 6f 20 46 6f 73 73 69 6c itory..to Fossil
11060 2e 20 59 6f 75 27 6c 6c 20 6e 65 65 64 20 62 6f . You'll need bo
11070 74 68 20 47 69 74 20 61 6e 64 20 4d 65 72 63 75 th Git and Mercu
11080 72 69 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 66 rial installed f
11090 6f 72 20 74 68 69 73 20 74 6f 20 77 6f 72 6b 2e or this to work.
110a0 0d 0a 0d 0a 47 65 74 20 3c 69 3e 68 67 32 67 69 ....Get <i>hg2gi
110b0 74 2e 70 79 3c 2f 69 3e 2c 20 3c 69 3e 68 67 2d t.py</i>, <i>hg-
110c0 66 61 73 74 2d 65 78 70 6f 72 74 2e 70 79 3c 2f fast-export.py</
110d0 69 3e 2c 20 61 6e 64 20 3c 69 3e 68 67 2d 66 61 i>, and <i>hg-fa
110e0 73 74 2d 65 78 70 6f 72 74 2e 73 68 3c 2f 69 3e st-export.sh</i>
110f0 20 66 72 6f 6d 20 5b 68 74 74 70 3a 2f 2f 72 65 from [http://re
11100 70 6f 2e 6f 72 2e 63 7a 2f 77 2f 66 61 73 74 2d po.or.cz/w/fast-
11110 65 78 70 6f 72 74 2e 67 69 74 2f 74 72 65 65 5d export.git/tree]
11120 2c 0d 0a 61 6e 64 20 70 75 74 20 74 68 65 6d 20 ,..and put them
11130 69 6e 74 6f 20 61 20 73 69 6e 67 6c 65 20 64 69 into a single di
11140 72 65 63 74 6f 72 79 20 28 77 65 27 6c 6c 20 75 rectory (we'll u
11150 73 65 20 7e 2f 44 6f 77 6e 6c 6f 61 64 73 2f 29 se ~/Downloads/)
11160 2e 0d 0a 0d 0a 43 68 61 6e 67 65 20 64 69 72 65 .....Change dire
11170 63 74 6f 72 79 20 74 6f 20 79 6f 75 72 20 4d 65 ctory to your Me
11180 72 63 75 72 69 61 6c 20 77 6f 72 6b 69 6e 67 20 rcurial working
11190 63 6f 70 79 20 28 66 6f 72 20 74 68 65 20 65 78 copy (for the ex
111a0 61 6d 70 6c 65 20 77 65 27 6c 6c 20 75 73 65 20 ample we'll use
111b0 22 70 72 6f 6a 65 63 74 22 29 2c 20 61 6e 64 20 "project"), and
111c0 63 72 65 61 74 65 20 61 20 6e 65 77 20 47 69 74 create a new Git
111d0 20 72 65 70 6f 73 69 74 6f 72 79 0d 0a 74 68 65 repository..the
111e0 72 65 3a 0d 0a 0d 0a 3c 76 65 72 62 61 74 69 6d re:....<verbatim
111f0 3e 0d 0a 20 20 63 64 20 70 72 6f 6a 65 63 74 0d >.. cd project.
11200 0a 20 20 67 69 74 20 69 6e 69 74 0d 0a 3c 2f 76 . git init..</v
11210 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a 52 75 6e 20 erbatim>....Run
11220 65 78 70 6f 72 74 3a 0d 0a 0d 0a 3c 76 65 72 62 export:....<verb
11230 61 74 69 6d 3e 0d 0a 20 20 73 68 20 7e 2f 44 6f atim>.. sh ~/Do
11240 77 6e 6c 6f 61 64 73 2f 68 67 2d 66 61 73 74 2d wnloads/hg-fast-
11250 65 78 70 6f 72 74 2e 73 68 0d 0a 3c 2f 76 65 72 export.sh..</ver
11260 62 61 74 69 6d 3e 0d 0a 0d 0a 4f 6e 63 65 20 69 batim>....Once i
11270 74 20 66 69 6e 69 73 68 65 73 2c 20 63 68 65 63 t finishes, chec
11280 6b 20 69 66 20 69 74 20 63 6f 72 72 65 63 74 6c k if it correctl
11290 79 20 69 6d 70 6f 72 74 65 64 20 65 76 65 72 79 y imported every
112a0 74 68 69 6e 67 20 62 79 20 72 75 6e 6e 69 6e 67 thing by running
112b0 20 22 67 69 74 20 6c 6f 67 22 2e 20 0d 0a 0d 0a "git log". ....
112c0 49 66 20 79 6f 75 20 67 6f 74 20 22 49 6d 70 6f If you got "Impo
112d0 72 74 45 72 72 6f 72 3a 20 4e 6f 20 6d 6f 64 75 rtError: No modu
112e0 6c 65 20 6e 61 6d 65 64 20 6d 65 72 63 75 72 69 le named mercuri
112f0 61 6c 22 20 6d 61 6b 65 20 73 75 72 65 20 79 6f al" make sure yo
11300 75 72 20 50 59 54 48 4f 4e 50 41 54 48 20 76 61 ur PYTHONPATH va
11310 72 69 61 62 6c 65 20 69 73 20 73 65 74 20 74 6f riable is set to
11320 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c 6f point to the lo
11330 63 61 74 69 6f 6e 0d 0a 77 68 65 72 65 20 6d 65 cation..where me
11340 72 63 75 72 69 61 6c 20 6d 6f 64 75 6c 65 73 20 rcurial modules
11350 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 20 28 6f are installed (o
11360 6e 20 4d 61 63 20 4f 53 20 58 20 77 68 65 6e 20 n Mac OS X when
11370 4d 65 72 63 75 72 69 61 6c 20 77 61 73 20 69 6e Mercurial was in
11380 73 74 61 6c 6c 65 64 20 76 69 61 20 22 73 75 64 stalled via "sud
11390 6f 20 65 61 73 79 5f 69 6e 73 74 61 6c 6c 20 6d o easy_install m
113a0 65 72 63 75 72 69 61 6c 22 2c 20 65 6e 74 65 72 ercurial", enter
113b0 20 74 68 65 0d 0a 66 6f 6c 6c 6f 77 69 6e 67 20 the..following
113c0 69 6e 74 6f 20 62 61 73 68 3a 20 22 65 78 70 6f into bash: "expo
113d0 72 74 20 50 59 54 48 4f 4e 50 41 54 48 3d 2f 4c rt PYTHONPATH=/L
113e0 69 62 72 61 72 79 2f 50 79 74 68 6f 6e 2f 32 2e ibrary/Python/2.
113f0 36 2f 73 69 74 65 2d 70 61 63 6b 61 67 65 73 22 6/site-packages"
11400 29 2e 0d 0a 0d 0a 4e 6f 77 20 77 65 20 63 61 6e ).....Now we can
11410 20 69 6d 70 6f 72 74 20 47 69 74 20 72 65 70 6f import Git repo
11420 73 69 74 6f 72 79 20 69 6e 74 6f 20 46 6f 73 73 sitory into Foss
11430 69 6c 20 28 77 65 27 6c 6c 20 70 75 74 20 69 74 il (we'll put it
11440 20 69 6e 74 6f 0d 0a 70 61 72 65 6e 74 20 64 69 into..parent di
11450 72 65 63 74 6f 72 79 20 75 6e 64 65 72 20 74 68 rectory under th
11460 65 20 22 6f 75 72 2d 72 65 70 6f 73 69 74 6f 72 e "our-repositor
11470 79 2e 66 6f 73 73 69 6c 22 20 6e 61 6d 65 29 3a y.fossil" name):
11480 0d 0a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a ....<verbatim>..
11490 20 20 67 69 74 20 66 61 73 74 2d 65 78 70 6f 72 git fast-expor
114a0 74 20 2d 2d 61 6c 6c 20 7c 20 66 6f 73 73 69 6c t --all | fossil
114b0 20 69 6d 70 6f 72 74 20 2d 2d 67 69 74 20 2e 2e import --git ..
114c0 2f 6f 75 72 2d 72 65 70 6f 73 69 74 6f 72 79 2e /our-repository.
114d0 66 6f 73 73 69 6c 0d 0a 3c 2f 76 65 72 62 61 74 fossil..</verbat
114e0 69 6d 3e 0d 0a 20 20 0d 0a 3c 68 33 3e 53 6f 6c im>.. ..<h3>Sol
114f0 75 74 69 6f 6e 32 3c 2f 68 33 3e 0d 0a 0d 0a 54 ution2</h3>....T
11500 68 69 73 20 73 6f 6c 75 74 69 6f 6e 20 75 73 65 his solution use
11510 73 20 48 67 47 69 74 20 66 72 6f 6d 20 5b 68 74 s HgGit from [ht
11520 74 70 3a 2f 2f 68 67 2d 67 69 74 2e 67 69 74 68 tp://hg-git.gith
11530 75 62 2e 63 6f 6d 2f 5d 2c 20 68 67 2c 20 67 69 ub.com/], hg, gi
11540 74 2c 20 61 6e 64 20 66 6f 73 73 69 6c 20 6e 65 t, and fossil ne
11550 65 64 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c ed to be install
11560 65 64 20 6f 6e 20 79 6f 75 72 20 73 79 73 74 65 ed on your syste
11570 6d 2e 20 20 4d 6f 73 74 20 4f 53 73 20 68 61 76 m. Most OSs hav
11580 65 20 61 20 70 61 63 6b 61 67 65 20 66 6f 72 20 e a package for
11590 48 67 47 69 74 2c 20 62 75 74 20 49 20 72 61 6e HgGit, but I ran
115a0 20 69 6e 74 6f 20 61 20 62 75 67 20 69 6e 20 61 into a bug in a
115b0 6e 20 6f 6c 64 65 72 20 76 65 72 73 69 6f 6e 20 n older version
115c0 6f 66 20 48 67 47 69 74 20 61 6e 64 20 68 61 76 of HgGit and hav
115d0 65 20 66 6f 75 6e 64 20 74 68 61 74 20 61 20 63 e found that a c
115e0 6c 65 61 6e 20 63 68 65 63 6b 20 6f 75 74 20 77 lean check out w
115f0 6f 72 6b 73 20 6a 75 73 74 20 66 69 6e 65 2e 0d orks just fine..
11600 0a 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 ...The following
11610 20 65 78 61 6d 70 6c 65 20 77 6f 72 6b 65 64 20 example worked
11620 76 65 72 79 20 6e 69 63 65 6c 79 20 66 6f 72 20 very nicely for
11630 6d 65 20 6f 6e 20 61 20 4d 65 72 63 75 72 69 61 me on a Mercuria
11640 6c 20 72 65 70 6f 73 69 74 6f 72 79 20 63 61 6c l repository cal
11650 6c 65 64 20 22 77 70 6b 67 22 2e 0d 0a 0d 0a 3c led "wpkg".....<
11660 68 34 3e 54 68 65 20 62 61 73 69 63 20 73 74 65 h4>The basic ste
11670 70 73 20 61 72 65 3a 3c 2f 68 34 3e 0d 0a 20 20 ps are:</h4>..
11680 31 2e 20 20 43 6c 6f 6e 65 20 74 68 65 20 4d 65 1. Clone the Me
11690 72 63 75 72 69 61 6c 20 72 65 70 6f 73 69 74 6f rcurial reposito
116a0 72 79 2e 0d 0a 20 20 32 2e 20 20 43 6c 6f 6e 65 ry... 2. Clone
116b0 20 68 67 2d 67 69 74 2e 0d 0a 20 20 33 2e 20 20 hg-git... 3.
116c0 49 6e 69 74 69 61 6c 69 7a 65 20 61 20 6e 65 77 Initialize a new
116d0 20 67 69 74 20 72 65 70 6f 73 69 74 6f 72 79 2e git repository.
116e0 0d 0a 20 20 34 2e 20 20 4d 6f 64 69 66 79 20 74 .. 4. Modify t
116f0 68 65 20 2e 68 67 2f 68 67 72 63 20 66 69 6c 65 he .hg/hgrc file
11700 2e 0d 0a 20 20 35 2e 20 20 50 75 73 68 20 74 68 ... 5. Push th
11710 65 20 4d 65 72 63 75 72 69 61 6c 20 72 65 70 6f e Mercurial repo
11720 73 69 74 6f 72 79 20 69 6e 74 6f 20 74 68 65 20 sitory into the
11730 6e 65 77 20 67 69 74 20 72 65 70 6f 73 69 74 6f new git reposito
11740 72 79 2e 0d 0a 20 20 36 2e 20 20 45 78 70 6f 72 ry... 6. Expor
11750 74 20 67 69 74 20 74 6f 20 66 6f 73 73 69 6c 2e t git to fossil.
11760 0d 0a 20 20 37 2e 20 20 54 61 6b 65 20 61 20 6c .. 7. Take a l
11770 6f 6f 6b 20 61 74 20 79 6f 75 72 20 6e 65 77 20 ook at your new
11780 66 6f 73 73 69 6c 20 72 65 70 6f 73 69 74 6f 72 fossil repositor
11790 79 2e 0d 0a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e y.....<verbatim>
117a0 0d 0a 6d 6b 64 69 72 20 2f 74 6d 70 2f 6d 6f 72 ..mkdir /tmp/mor
117b0 65 74 6d 70 0d 0a 63 64 20 2f 74 6d 70 2f 6d 6f etmp..cd /tmp/mo
117c0 72 65 74 6d 70 0d 0a 68 67 20 63 6c 6f 6e 65 20 retmp..hg clone
117d0 73 73 68 3a 2f 2f 68 67 40 68 67 2f 72 65 70 6f ssh://hg@hg/repo
117e0 73 2f 77 70 6b 67 0d 0a 67 69 74 20 63 6c 6f 6e s/wpkg..git clon
117f0 65 20 67 69 74 3a 2f 2f 67 69 74 68 75 62 2e 63 e git://github.c
11800 6f 6d 2f 73 63 68 61 63 6f 6e 2f 68 67 2d 67 69 om/schacon/hg-gi
11810 74 2e 67 69 74 0d 0a 67 69 74 20 69 6e 69 74 20 t.git..git init
11820 2d 2d 62 61 72 65 20 67 69 74 2d 77 70 6b 67 0d --bare git-wpkg.
11830 0a 63 64 20 77 70 6b 67 0d 0a 63 61 74 20 3e 3e .cd wpkg..cat >>
11840 20 2e 68 67 2f 68 67 72 63 20 3c 3c 20 45 4f 46 .hg/hgrc << EOF
11850 0d 0a 0d 0a 5b 65 78 74 65 6e 73 69 6f 6e 73 5d ....[extensions]
11860 0d 0a 68 67 65 78 74 2e 62 6f 6f 6b 6d 61 72 6b ..hgext.bookmark
11870 73 20 3d 0d 0a 68 67 67 69 74 20 3d 20 2f 74 6d s =..hggit = /tm
11880 70 2f 6d 6f 72 65 74 6d 70 2f 68 67 2d 67 69 74 p/moretmp/hg-git
11890 2f 68 67 67 69 74 0d 0a 45 4f 46 0d 0a 0d 0a 68 /hggit..EOF....h
118a0 67 20 70 75 73 68 20 2e 2e 2f 67 69 74 2d 77 70 g push ../git-wp
118b0 6b 67 0d 0a 63 64 20 2e 2e 2f 67 69 74 2d 77 70 kg..cd ../git-wp
118c0 6b 67 0d 0a 67 69 74 20 66 61 73 74 2d 65 78 70 kg..git fast-exp
118d0 6f 72 74 20 2d 2d 61 6c 6c 20 7c 20 66 6f 73 73 ort --all | foss
118e0 69 6c 20 69 6d 70 6f 72 74 20 2d 2d 67 69 74 20 il import --git
118f0 7e 2f 77 70 6b 67 2e 66 6f 73 73 69 6c 0d 0a 63 ~/wpkg.fossil..c
11900 64 20 7e 0d 0a 72 6d 20 2d 72 66 20 2f 74 6d 70 d ~..rm -rf /tmp
11910 2f 6d 6f 72 65 74 6d 70 0d 0a 66 6f 73 73 69 6c /moretmp..fossil
11920 20 75 69 20 77 70 6b 67 2e 66 6f 73 73 69 6c 0d ui wpkg.fossil.
11930 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 0d 0a .</verbatim>....
11940 3c 68 32 3e 3c 61 20 6e 61 6d 65 3d 22 53 56 4e <h2><a name="SVN
11950 22 3e 49 6d 70 6f 72 74 69 6e 67 20 66 72 6f 6d ">Importing from
11960 20 53 56 4e 3c 2f 61 3e 3c 2f 68 32 3e 0d 0a 0d SVN</a></h2>...
11970 0a 3c 68 33 3e 50 72 6f 62 6c 65 6d 3c 2f 68 33 .<h3>Problem</h3
11980 3e 0d 0a 0d 0a 46 6f 73 73 69 6c 20 73 75 70 70 >....Fossil supp
11990 6f 72 74 73 20 5b 2f 64 6f 63 2f 74 72 75 6e 6b orts [/doc/trunk
119a0 2f 77 77 77 2f 69 6e 6f 75 74 2e 77 69 6b 69 7c /www/inout.wiki|
119b0 69 6d 70 6f 72 74 69 6e 67 20 66 72 6f 6d 20 47 importing from G
119c0 69 74 5d 2c 20 62 75 74 20 6e 6f 74 20 66 72 6f it], but not fro
119d0 6d 20 53 56 4e 2e 0d 0a 0d 0a 3c 68 33 3e 53 6f m SVN.....<h3>So
119e0 6c 75 74 69 6f 6e 3c 2f 68 33 3e 0d 0a 0d 0a 20 lution</h3>....
119f0 20 2a 20 20 45 6e 73 75 72 65 20 79 6f 75 20 68 * Ensure you h
11a00 61 76 65 20 22 67 69 74 2d 73 76 6e 22 20 61 6e ave "git-svn" an
11a10 64 20 22 73 65 64 22 2e 0d 0a 20 20 2a 20 20 53 d "sed"... * S
11a20 61 76 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e ave the followin
11a30 67 20 62 61 73 68 20 73 63 72 69 70 74 20 73 6f g bash script so
11a40 6d 65 77 68 65 72 65 2c 20 63 61 6c 6c 20 69 74 mewhere, call it
11a50 20 3c 74 74 3e 73 76 6e 32 66 6f 73 73 69 6c 3c <tt>svn2fossil<
11a60 2f 74 74 3e 0d 0a 20 20 2a 20 20 43 72 65 61 74 /tt>.. * Creat
11a70 65 20 61 6e 20 65 6d 70 74 79 20 64 69 72 65 63 e an empty direc
11a80 74 6f 72 79 0d 0a 20 20 2a 20 20 49 6e 20 74 68 tory.. * In th
11a90 61 74 20 64 69 72 65 63 74 6f 72 79 2c 20 74 79 at directory, ty
11aa0 70 65 20 3c 74 74 3e 73 76 6e 32 66 6f 73 73 69 pe <tt>svn2fossi
11ab0 6c 20 75 73 65 72 6e 61 6d 65 20 73 76 6e 72 65 l username svnre
11ac0 70 6f 20 66 6f 73 73 69 6c 72 65 70 6f 3c 2f 74 po fossilrepo</t
11ad0 74 3e 0d 0a 0d 0a 49 6e 20 74 68 69 73 20 63 61 t>....In this ca
11ae0 73 65 20 27 75 73 65 72 6e 61 6d 65 27 20 69 73 se 'username' is
11af0 20 74 68 65 20 53 56 4e 20 75 73 65 72 20 79 6f the SVN user yo
11b00 75 20 77 69 73 68 20 74 6f 20 6d 61 6b 65 20 63 u wish to make c
11b10 68 61 6e 67 65 73 20 61 73 2c 20 27 73 76 6e 72 hanges as, 'svnr
11b20 65 70 6f 27 20 69 73 20 74 68 65 20 66 75 6c 6c epo' is the full
11b30 20 73 76 6e 20 75 72 6c 20 28 65 2e 67 2e 20 22 svn url (e.g. "
11b40 73 76 6e 2b 73 73 68 3a 2f 2f 6a 6f 65 40 73 6f svn+ssh://joe@so
11b50 6d 65 70 6c 61 63 65 2e 6f 72 67 2f 73 76 6e 2f meplace.org/svn/
11b60 77 68 61 74 65 76 65 72 22 29 2c 20 61 6e 64 20 whatever"), and
11b70 22 66 6f 73 73 69 6c 72 65 70 6f 22 20 69 73 20 "fossilrepo" is
11b80 74 68 65 20 6e 61 6d 65 20 79 6f 75 20 77 69 73 the name you wis
11b90 68 20 74 68 65 20 72 65 73 75 6c 74 61 6e 74 20 h the resultant
11ba0 66 6f 73 73 69 6c 20 72 65 70 6f 73 69 74 6f 72 fossil repositor
11bb0 79 20 74 6f 20 68 61 76 65 2e 0d 0a 0d 0a 54 68 y to have.....Th
11bc0 65 20 22 73 76 6e 32 66 6f 73 73 69 6c 22 20 73 e "svn2fossil" s
11bd0 63 72 69 70 74 20 77 69 6c 6c 20 66 69 72 73 74 cript will first
11be0 20 69 6d 70 6f 72 74 20 74 68 65 20 53 56 4e 20 import the SVN
11bf0 72 65 70 6f 73 69 74 6f 72 79 20 69 6e 74 6f 20 repository into
11c00 27 67 69 74 27 2e 20 20 54 68 65 6e 20 69 74 20 'git'. Then it
11c10 77 69 6c 6c 20 65 78 70 6f 72 74 20 66 72 6f 6d will export from
11c20 20 27 67 69 74 27 20 74 6f 20 66 6f 73 73 69 6c 'git' to fossil
11c30 2e 20 20 54 68 65 6e 20 69 74 20 77 69 6c 6c 20 . Then it will
11c40 69 6d 70 6f 72 74 20 61 6c 6c 20 74 68 65 20 53 import all the S
11c50 56 4e 20 75 73 65 72 73 20 77 68 6f 20 61 72 65 VN users who are
11c60 20 6c 69 73 74 65 64 20 69 6e 20 74 68 65 20 53 listed in the S
11c70 56 4e 20 6c 6f 67 2c 20 61 73 20 27 64 65 76 65 VN log, as 'deve
11c80 6c 6f 70 65 72 73 27 20 69 6e 20 74 68 65 20 66 lopers' in the f
11c90 6f 73 73 69 6c 20 72 65 70 6f 73 69 74 6f 72 79 ossil repository
11ca0 2c 20 77 69 74 68 20 61 20 70 61 73 73 77 6f 72 , with a passwor
11cb0 64 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20 d consisting of
11cc0 74 68 65 20 75 73 65 72 20 6e 61 6d 65 20 77 69 the user name wi
11cd0 74 68 20 27 31 32 33 34 27 20 61 70 70 65 6e 64 th '1234' append
11ce0 65 64 20 74 6f 20 69 74 2e 20 20 46 69 6e 61 6c ed to it. Final
11cf0 6c 79 2c 20 74 68 65 20 73 63 72 69 70 74 20 77 ly, the script w
11d00 69 6c 6c 20 6c 61 75 6e 63 68 20 27 66 6f 73 73 ill launch 'foss
11d10 69 6c 20 75 69 27 20 6f 6e 20 74 68 65 20 6e 65 il ui' on the ne
11d20 77 20 72 65 70 6f 73 69 74 6f 72 79 20 73 6f 20 w repository so
11d30 79 6f 75 20 63 61 6e 20 6d 61 6b 65 20 61 6e 79 you can make any
11d40 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 68 61 6e additional chan
11d50 67 65 73 20 79 6f 75 20 77 61 6e 74 2e 0d 0a 0d ges you want....
11d60 0a 49 20 68 61 76 65 20 73 75 63 63 65 73 73 66 .I have successf
11d70 75 6c 6c 79 20 75 73 65 64 20 74 68 69 73 20 73 ully used this s
11d80 63 72 69 70 74 20 74 6f 20 63 6f 6e 76 65 72 74 cript to convert
11d90 20 70 72 65 74 74 79 20 6c 61 72 67 65 20 53 56 pretty large SV
11da0 4e 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 74 N repositories t
11db0 6f 20 66 6f 73 73 69 6c 2c 20 69 6e 20 61 20 63 o fossil, in a c
11dc0 6f 72 70 6f 72 61 74 65 20 65 6e 76 69 72 6f 6e orporate environ
11dd0 6d 65 6e 74 2e 20 20 54 68 65 20 73 63 72 69 70 ment. The scrip
11de0 74 20 66 6f 6c 6c 6f 77 73 3a 0d 0a 3c 76 65 72 t follows:..<ver
11df0 62 61 74 69 6d 3e 0d 0a 23 21 2f 62 69 6e 2f 62 batim>..#!/bin/b
11e00 61 73 68 0d 0a 0d 0a 64 69 65 28 29 7b 0d 0a 09 ash....die(){...
11e10 65 63 68 6f 20 24 31 0d 0a 09 65 78 69 74 20 31 echo $1...exit 1
11e20 0d 0a 7d 0d 0a 0d 0a 61 75 74 68 6f 72 73 3d 27 ..}....authors='
11e30 61 75 74 68 6f 72 73 2e 74 78 74 27 0d 0a 66 6f authors.txt'..fo
11e40 73 73 69 6c 75 73 65 72 73 3d 27 75 73 65 72 73 ssilusers='users
11e50 2e 74 78 74 27 0d 0a 0d 0a 23 20 70 61 72 61 6d .txt'....# param
11e60 65 74 65 72 73 3a 0d 0a 23 20 31 20 2d 20 75 73 eters:..# 1 - us
11e70 65 72 6e 61 6d 65 20 6f 66 20 61 64 6d 69 6e 0d ername of admin.
11e80 0a 23 20 32 20 2d 20 73 76 6e 20 72 65 70 6f 73 .# 2 - svn repos
11e90 69 74 6f 72 79 20 74 6f 20 63 6f 6e 76 65 72 74 itory to convert
11ea0 0d 0a 23 20 33 20 2d 20 6e 61 6d 65 20 6f 66 20 ..# 3 - name of
11eb0 66 6f 73 73 69 6c 20 72 65 70 6f 0d 0a 23 20 6e fossil repo..# n
11ec0 6f 74 65 3a 20 74 68 65 20 72 65 70 6f 73 69 74 ote: the reposit
11ed0 6f 72 79 20 77 69 6c 6c 20 62 65 20 63 72 65 61 ory will be crea
11ee0 74 65 64 20 72 69 67 68 74 20 68 65 72 65 21 0d ted right here!.
11ef0 0a 0d 0a 69 66 20 5b 20 22 24 33 22 20 3d 3d 20 ...if [ "$3" ==
11f00 22 22 20 5d 0d 0a 74 68 65 6e 0d 0a 09 65 63 68 "" ]..then...ech
11f10 6f 20 22 53 79 6e 74 61 78 3a 22 0d 0a 09 65 63 o "Syntax:"...ec
11f20 68 6f 20 22 20 20 73 76 6e 32 66 6f 73 73 69 6c ho " svn2fossil
11f30 20 75 73 65 72 6e 61 6d 65 20 20 73 76 6e 2d 72 username svn-r
11f40 65 70 6f 2d 75 72 6c 20 20 66 6f 73 73 69 6c 2d epo-url fossil-
11f50 72 65 70 6f 2d 6e 61 6d 65 22 0d 0a 09 64 69 65 repo-name"...die
11f60 20 20 22 50 6c 65 61 73 65 20 6d 61 6b 65 20 73 "Please make s
11f70 75 72 65 20 79 6f 75 20 68 61 76 65 20 61 6c 6c ure you have all
11f80 20 74 68 72 65 65 20 70 61 72 61 6d 65 74 65 72 three parameter
11f90 73 20 73 65 74 21 22 0d 0a 66 69 0d 0a 0d 0a 65 s set!"..fi....e
11fa0 63 68 6f 20 22 47 65 74 74 69 6e 67 20 75 73 65 cho "Getting use
11fb0 72 20 6e 61 6d 65 73 2e 2e 2e 22 0d 0a 0d 0a 73 r names..."....s
11fc0 76 6e 20 6c 6f 67 20 22 24 32 22 20 7c 20 67 72 vn log "$2" | gr
11fd0 65 70 20 27 5e 72 5b 30 2d 39 5d 27 20 7c 20 63 ep '^r[0-9]' | c
11fe0 75 74 20 2d 66 33 20 2d 64 27 20 27 20 7c 20 73 ut -f3 -d' ' | s
11ff0 6f 72 74 20 2d 75 20 3e 20 24 66 6f 73 73 69 6c ort -u > $fossil
12000 75 73 65 72 73 20 7c 7c 20 64 69 65 20 22 53 6f users || die "So
12010 6d 65 74 68 69 6e 67 20 77 65 6e 74 20 77 72 6f mething went wro
12020 6e 67 20 67 65 74 74 69 6e 67 20 75 73 65 72 20 ng getting user
12030 6e 61 6d 65 73 22 0d 0a 0d 0a 65 63 68 6f 20 22 names"....echo "
12040 43 6f 6e 76 65 72 74 69 6e 67 20 75 73 65 72 20 Converting user
12050 6e 61 6d 65 73 20 74 6f 20 75 73 61 62 6c 65 20 names to usable
12060 66 6f 72 6d 61 74 2e 2e 2e 22 0d 0a 73 65 64 20 format..."..sed
12070 2d 65 20 27 73 2f 2e 2a 2f 26 20 3d 20 26 20 3c -e 's/.*/& = & <
12080 26 3e 2f 27 20 24 66 6f 73 73 69 6c 75 73 65 72 &>/' $fossiluser
12090 73 20 3e 20 24 61 75 74 68 6f 72 73 20 7c 7c 20 s > $authors ||
120a0 64 69 65 20 22 43 6f 75 6c 64 20 6e 6f 74 20 63 die "Could not c
120b0 6f 6e 76 65 72 74 20 75 73 65 72 20 6e 61 6d 65 onvert user name
120c0 73 22 0d 0a 0d 0a 65 63 68 6f 20 22 49 6d 70 6f s"....echo "Impo
120d0 72 74 69 6e 67 20 66 72 6f 6d 20 53 56 4e 20 74 rting from SVN t
120e0 6f 20 67 69 74 2e 20 20 54 68 69 73 20 77 69 6c o git. This wil
120f0 6c 20 74 61 6b 65 20 73 6f 6d 65 20 74 69 6d 65 l take some time
12100 2c 20 62 65 20 70 61 74 69 65 6e 74 21 22 0d 0a , be patient!"..
12110 0d 0a 67 69 74 20 73 76 6e 20 63 6c 6f 6e 65 20 ..git svn clone
12120 2d 2d 61 75 74 68 6f 72 73 2d 66 69 6c 65 3d 24 --authors-file=$
12130 61 75 74 68 6f 72 73 20 2d 2d 75 73 65 72 6e 61 authors --userna
12140 6d 65 3d 22 24 31 22 20 2d 2d 6e 6f 2d 6d 65 74 me="$1" --no-met
12150 61 64 61 74 61 20 22 24 32 22 20 74 6d 70 20 7c adata "$2" tmp |
12160 7c 20 64 69 65 20 22 55 6e 61 62 6c 65 20 74 6f | die "Unable to
12170 20 69 6d 70 6f 72 74 20 74 6f 20 67 69 74 22 0d import to git".
12180 0a 0d 0a 65 63 68 6f 20 22 49 6d 70 6f 72 74 69 ...echo "Importi
12190 6e 67 20 66 72 6f 6d 20 67 69 74 20 74 6f 20 66 ng from git to f
121a0 6f 73 73 69 6c 2e 20 20 54 68 69 73 20 77 69 6c ossil. This wil
121b0 6c 20 61 6c 73 6f 20 74 61 6b 65 20 73 6f 6d 65 l also take some
121c0 20 74 69 6d 65 2c 20 73 61 64 6c 79 22 0d 0a 0d time, sadly"...
121d0 0a 28 0d 0a 63 64 20 74 6d 70 0d 0a 67 69 74 20 .(..cd tmp..git
121e0 66 61 73 74 2d 65 78 70 6f 72 74 20 2d 2d 66 75 fast-export --fu
121f0 6c 6c 2d 74 72 65 65 20 2d 2d 61 6c 6c 20 7c 20 ll-tree --all |
12200 66 6f 73 73 69 6c 20 69 6d 70 6f 72 74 20 2d 2d fossil import --
12210 67 69 74 20 2e 2e 2f 24 33 20 7c 7c 20 64 69 65 git ../$3 || die
12220 20 22 55 6e 61 62 6c 65 20 74 6f 20 69 6d 70 6f "Unable to impo
12230 72 74 20 69 6e 74 6f 20 66 6f 73 73 69 6c 22 0d rt into fossil".
12240 0a 29 0d 0a 0d 0a 65 63 68 6f 20 22 41 64 64 69 .)....echo "Addi
12250 6e 67 20 75 73 65 72 73 20 74 6f 20 66 6f 73 73 ng users to foss
12260 69 6c 20 72 65 70 6f 73 69 74 6f 72 79 3a 22 0d il repository:".
12270 0a 66 6f 72 20 75 73 65 72 20 69 6e 20 60 63 61 .for user in `ca
12280 74 20 24 66 6f 73 73 69 6c 75 73 65 72 73 60 0d t $fossilusers`.
12290 0a 64 6f 0d 0a 09 66 6f 73 73 69 6c 20 75 73 65 .do...fossil use
122a0 72 20 6e 65 77 20 24 75 73 65 72 20 27 27 20 22 r new $user '' "
122b0 24 7b 75 73 65 72 7d 31 32 33 34 22 20 2d 52 20 ${user}1234" -R
122c0 24 33 0d 0a 09 66 6f 73 73 69 6c 20 75 73 65 72 $3...fossil user
122d0 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 24 75 capabilities $u
122e0 73 65 72 20 27 76 27 20 2d 52 20 24 33 0d 0a 64 ser 'v' -R $3..d
122f0 6f 6e 65 0d 0a 0d 0a 65 63 68 6f 20 22 44 6f 6e one....echo "Don
12300 65 21 2e 20 20 4e 6f 77 20 6c 61 75 6e 63 68 69 e!. Now launchi
12310 6e 67 20 27 66 6f 73 73 69 6c 20 75 69 20 24 33 ng 'fossil ui $3
12320 27 20 74 6f 20 63 68 65 63 6b 20 6f 75 74 20 74 ' to check out t
12330 68 65 20 6e 65 77 20 66 6f 73 73 69 6c 20 72 65 he new fossil re
12340 70 6f 73 69 74 6f 72 79 22 0d 0a 66 6f 73 73 69 pository"..fossi
12350 6c 20 75 69 20 24 33 0d 0a 3c 2f 76 65 72 62 61 l ui $3..</verba
12360 74 69 6d 3e 0a 5a 20 63 33 32 37 30 36 38 61 30 tim>.Z c327068a0
12370 61 39 36 32 37 37 35 63 64 37 62 64 63 31 64 37 a962775cd7bdc1d7
12380 37 33 32 61 61 61 64 0a 732aaad.