home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1996-08-15 | 32.5 KB | [TEXT/ALFA] |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
You can browse this item here: procs.tcl
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, Thu Aug 15 12:25:00 1996, modified Thu Aug 15 12:25:00 1996, creator Alpha editor, type ASCII, 30817 bytes "procs.tcl" , at 0x78e1 2292 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [ALFA] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 09 70 72 6f 63 73 2e | 74 63 6c 00 00 00 00 00 |..procs.|tcl.....|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 41 4c 46 | 41 00 00 00 00 00 00 00 |.TEXTALF|A.......|
|00000050| 00 00 00 00 00 78 61 00 | 00 08 f4 ae 38 ff dc ae |.....xa.|....8...|
|00000060| 38 ff dc 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |8.......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 ae 72 00 00 |........|.....r..|
|00000080| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000d0| 0d 23 20 4c 6f 61 64 20 | 65 6c 65 63 74 72 69 63 |.# Load |electric|
|000000e0| 20 61 6c 69 61 73 2c 20 | 72 65 62 69 6e 64 20 74 | alias, |rebind t|
|000000f0| 63 6c 20 66 69 6c 65 20 | 63 6f 6d 70 6c 65 74 69 |cl file |completi|
|00000100| 6f 6e 20 66 6f 72 20 70 | 72 65 63 65 64 65 6e 63 |on for p|recedenc|
|00000110| 65 2e 0d 70 72 6f 63 20 | 6c 6f 61 64 45 6c 65 63 |e..proc |loadElec|
|00000120| 74 72 69 63 41 6c 69 61 | 73 20 7b 7d 20 7b 0d 09 |tricAlia|s {} {..|
|00000130| 67 6c 6f 62 61 6c 20 48 | 4f 4d 45 0d 09 75 70 6c |global H|OME..upl|
|00000140| 65 76 65 6c 20 23 30 20 | 7b 0d 09 09 73 6f 75 72 |evel #0 |{...sour|
|00000150| 63 65 20 22 24 48 4f 4d | 45 3a 54 63 6c 3a 45 6c |ce "$HOM|E:Tcl:El|
|00000160| 65 63 74 72 69 63 41 6c | 69 61 73 3a 65 6c 65 63 |ectricAl|ias:elec|
|00000170| 74 72 69 63 41 6c 69 61 | 73 2e 74 63 6c 22 0d 09 |tricAlia|s.tcl"..|
|00000180| 7d 0d 09 6d 65 73 73 61 | 67 65 20 22 45 6c 65 63 |}..messa|ge "Elec|
|00000190| 74 72 69 63 41 6c 69 61 | 73 20 6c 6f 61 64 65 64 |tricAlia|s loaded|
|000001a0| 2e 22 0d 09 62 69 6e 64 | 20 27 5c 74 27 20 74 63 |."..bind| '\t' tc|
|000001b0| 6c 46 69 6c 65 43 6f 6d | 70 6c 65 74 69 6f 6e 20 |lFileCom|pletion |
|000001c0| 22 53 68 65 6c 22 0d 09 | 65 6e 61 62 6c 65 4d 65 |"Shel"..|enableMe|
|000001d0| 6e 75 49 74 65 6d 20 2d | 6d 20 69 6e 73 74 61 6c |nuItem -|m instal|
|000001e0| 6c 20 22 45 6c 65 63 74 | 72 69 63 20 41 6c 69 61 |l "Elect|ric Alia|
|000001f0| 73 22 20 6f 66 66 0d 7d | 0d 0d 70 72 6f 63 20 64 |s" off.}|..proc d|
|00000200| 65 62 75 67 20 7b 7d 20 | 7b 0d 09 75 70 6c 65 76 |ebug {} |{..uplev|
|00000210| 65 6c 20 23 30 20 7b 0d | 09 09 73 65 74 20 64 65 |el #0 {.|..set de|
|00000220| 62 75 67 67 69 6e 67 20 | 31 0d 09 7d 0d 7d 0d 0d |bugging |1..}.}..|
|00000230| 0d 70 72 6f 63 20 6e 6f | 72 6d 61 6c 4c 65 66 74 |.proc no|rmalLeft|
|00000240| 42 72 61 63 6b 65 74 20 | 7b 7d 20 7b 0d 09 69 6e |Bracket |{} {..in|
|00000250| 73 65 72 74 54 65 78 74 | 20 22 5c 7b 22 0d 7d 0d |sertText| "\{".}.|
|00000260| 70 72 6f 63 20 6e 6f 72 | 6d 61 6c 52 69 67 68 74 |proc nor|malRight|
|00000270| 42 72 61 63 6b 65 74 20 | 7b 7d 20 7b 0d 09 69 6e |Bracket |{} {..in|
|00000280| 73 65 72 74 54 65 78 74 | 20 22 5c 7d 22 0d 7d 0d |sertText| "\}".}.|
|00000290| 62 69 6e 64 20 27 5c 5b | 27 20 3c 7a 73 3e 20 20 |bind '\[|' <zs> |
|000002a0| 6e 6f 72 6d 61 6c 4c 65 | 66 74 42 72 61 63 6b 65 |normalLe|ftBracke|
|000002b0| 74 0d 62 69 6e 64 20 27 | 5c 5d 27 20 3c 7a 73 3e |t.bind '|\]' <zs>|
|000002c0| 20 20 6e 6f 72 6d 61 6c | 52 69 67 68 74 42 72 61 | normal|RightBra|
|000002d0| 63 6b 65 74 0d 09 09 09 | 0d 23 20 53 65 6c 65 63 |cket....|.# Selec|
|000002e0| 74 20 74 68 65 20 6e 65 | 78 74 20 6f 72 20 63 75 |t the ne|xt or cu|
|000002f0| 72 72 65 6e 74 20 77 6f | 72 64 2e 20 49 66 20 77 |rrent wo|rd. If w|
|00000300| 6f 72 64 20 61 6c 72 65 | 61 64 79 20 73 65 6c 65 |ord alre|ady sele|
|00000310| 63 74 65 64 2c 20 77 69 | 6c 6c 20 67 6f 20 74 6f |cted, wi|ll go to|
|00000320| 20 6e 65 78 74 2e 0d 70 | 72 6f 63 20 68 69 6c 69 | next..p|roc hili|
|00000330| 74 65 57 6f 72 64 20 7b | 7d 20 7b 0d 09 69 66 20 |teWord {|} {..if |
|00000340| 7b 5b 67 65 74 50 6f 73 | 5d 21 3d 5b 73 65 6c 45 |{[getPos|]!=[selE|
|00000350| 6e 64 5d 7d 09 66 6f 72 | 77 61 72 64 43 68 61 72 |nd]}.for|wardChar|
|00000360| 0d 09 66 6f 72 77 61 72 | 64 57 6f 72 64 0d 09 73 |..forwar|dWord..s|
|00000370| 65 74 20 73 74 61 72 74 | 20 5b 67 65 74 50 6f 73 |et start| [getPos|
|00000380| 5d 0d 09 62 61 63 6b 77 | 61 72 64 57 6f 72 64 0d |]..backw|ardWord.|
|00000390| 09 73 65 6c 65 63 74 20 | 24 73 74 61 72 74 20 5b |.select |$start [|
|000003a0| 67 65 74 50 6f 73 5d 0d | 7d 0d 62 69 6e 64 20 27 |getPos].|}.bind '|
|000003b0| 68 27 20 3c 7a 3e 20 68 | 69 6c 69 74 65 57 6f 72 |h' <z> h|iliteWor|
|000003c0| 64 0d 0d 23 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |d..#====|========|
|000003d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000003e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000003f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000400| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000410| 3d 3d 3d 3d 0d 23 20 4d | 6f 64 65 20 76 61 72 69 |====.# M|ode vari|
|00000420| 61 62 6c 65 73 0d 23 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ables.#=|========|
|00000430| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000440| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000450| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000460| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000470| 3d 3d 3d 3d 3d 3d 3d 0d | 23 20 46 6f 72 20 6d 61 |=======.|# For ma|
|00000480| 72 6b 20 73 74 61 63 6b | 2e 0d 73 65 74 20 6d 61 |rk stack|..set ma|
|00000490| 72 6b 4e 61 6d 65 20 30 | 0d 73 65 74 20 6d 61 72 |rkName 0|.set mar|
|000004a0| 6b 53 74 61 63 6b 20 22 | 22 0d 0d 23 20 6d 61 70 |kStack "|"..# map|
|000004b0| 70 69 6e 67 20 6f 66 20 | 77 69 6e 64 6f 77 73 20 |ping of |windows |
|000004c0| 74 6f 20 63 75 72 72 65 | 6e 74 20 6d 6f 64 65 73 |to curre|nt modes|
|000004d0| 2e 0d 73 65 74 20 77 69 | 6e 4d 6f 64 65 73 28 22 |..set wi|nModes("|
|000004e0| 22 29 20 22 22 0d 0d 23 | 20 6d 61 6b 69 6e 67 20 |") ""..#| making |
|000004f0| 76 61 72 73 20 6c 6f 63 | 61 6c 20 74 6f 20 77 69 |vars loc|al to wi|
|00000500| 6e 64 6f 77 73 0d 23 20 | 27 69 6e 63 6f 6d 69 6e |ndows.# |'incomin|
|00000510| 67 56 61 72 73 27 20 75 | 73 65 64 20 74 6f 20 68 |gVars' u|sed to h|
|00000520| 6f 6c 64 20 6f 6c 64 20 | 76 61 72 20 76 61 6c 75 |old old |var valu|
|00000530| 65 73 20 74 68 61 74 20 | 68 61 76 65 20 62 65 65 |es that |have bee|
|00000540| 6e 20 6f 76 65 72 77 72 | 69 74 74 65 6e 20 69 6e |n overwr|itten in|
|00000550| 20 63 75 72 72 65 6e 74 | 20 77 69 6e 64 6f 77 0d | current| window.|
|00000560| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00000570| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000580| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000590| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005b0| 3d 3d 0d 23 20 48 61 6e | 64 6c 65 20 27 66 6c 61 |==.# Han|dle 'fla|
|000005c0| 67 27 20 61 6e 64 20 27 | 76 61 72 27 20 6d 65 6e |g' and '|var' men|
|000005d0| 75 20 73 65 6c 65 63 74 | 69 6f 6e 73 2e 0d 23 3d |u select|ions..#=|
|000005e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000005f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000600| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000610| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000620| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.|
|00000630| 23 20 70 72 6f 63 20 65 | 64 69 74 46 6c 61 67 20 |# proc e|ditFlag |
|00000640| 7b 6d 65 6e 75 20 69 74 | 65 6d 7d 20 7b 0d 23 20 |{menu it|em} {.# |
|00000650| 09 67 6c 6f 62 61 6c 20 | 24 69 74 65 6d 20 69 6e |.global |$item in|
|00000660| 63 6f 6d 69 6e 67 56 61 | 72 73 20 6c 6f 63 61 6c |comingVa|rs local|
|00000670| 56 61 72 73 20 6d 6f 64 | 69 66 69 65 64 56 61 72 |Vars mod|ifiedVar|
|00000680| 73 20 74 63 6c 5f 76 61 | 72 5f 70 72 6f 63 73 0d |s tcl_va|r_procs.|
|00000690| 23 20 0d 23 20 09 69 66 | 20 7b 5b 72 65 67 65 78 |# .# .if| {[regex|
|000006a0| 70 20 7b 5c 3f 20 28 2e | 2a 29 7d 20 24 69 74 65 |p {\? (.|*)} $ite|
|000006b0| 6d 20 64 75 6d 6d 79 20 | 76 61 72 5d 7d 20 7b 0d |m dummy |var]} {.|
|000006c0| 23 20 09 09 61 6c 70 68 | 61 48 65 6c 70 0d 23 20 |# ..alph|aHelp.# |
|000006d0| 09 09 65 76 61 6c 20 73 | 65 6c 65 63 74 20 5b 73 |..eval s|elect [s|
|000006e0| 65 61 72 63 68 20 2d 66 | 20 31 20 2d 72 20 31 20 |earch -f| 1 -r 1 |
|000006f0| 22 5e 24 76 61 72 22 5d | 0d 23 20 09 09 72 65 74 |"^$var"]|.# ..ret|
|00000700| 75 72 6e 0d 23 20 09 7d | 0d 23 20 09 6c 61 70 70 |urn.# .}|.# .lapp|
|00000710| 65 6e 64 20 6d 6f 64 69 | 66 69 65 64 56 61 72 73 |end modi|fiedVars|
|00000720| 20 24 69 74 65 6d 0d 23 | 20 09 73 65 74 20 76 61 | $item.#| .set va|
|00000730| 6c 20 5b 65 78 70 72 20 | 28 5b 73 65 74 20 24 69 |l [expr |([set $i|
|00000740| 74 65 6d 5d 2d 31 29 2a | 2d 31 5d 0d 23 20 09 6d |tem]-1)*|-1].# .m|
|00000750| 61 72 6b 4d 65 6e 75 49 | 74 65 6d 20 24 6d 65 6e |arkMenuI|tem $men|
|00000760| 75 20 24 69 74 65 6d 20 | 5b 65 78 70 72 20 28 24 |u $item |[expr ($|
|00000770| 76 61 6c 29 3f 22 6f 6e | 22 3a 22 6f 66 66 22 5d |val)?"on|":"off"]|
|00000780| 0d 23 20 09 73 65 74 20 | 24 69 74 65 6d 20 24 76 |.# .set |$item $v|
|00000790| 61 6c 0d 23 20 0d 23 20 | 09 69 66 20 7b 5b 69 6e |al.# .# |.if {[in|
|000007a0| 66 6f 20 65 78 69 73 74 | 73 20 74 63 6c 5f 76 61 |fo exist|s tcl_va|
|000007b0| 72 5f 70 72 6f 63 73 28 | 24 69 74 65 6d 29 5d 7d |r_procs(|$item)]}|
|000007c0| 20 7b 0d 23 20 09 09 24 | 74 63 6c 5f 76 61 72 5f | {.# ..$|tcl_var_|
|000007d0| 70 72 6f 63 73 28 24 69 | 74 65 6d 29 20 24 69 74 |procs($i|tem) $it|
|000007e0| 65 6d 0d 23 20 09 7d 0d | 23 20 7d 0d 0d 70 72 6f |em.# .}.|# }..pro|
|000007f0| 63 20 65 64 69 74 56 61 | 72 20 7b 6d 65 6e 75 20 |c editVa|r {menu |
|00000800| 69 74 65 6d 7d 20 7b 0d | 09 67 6c 6f 62 61 6c 20 |item} {.|.global |
|00000810| 24 69 74 65 6d 20 69 6e | 63 6f 6d 69 6e 67 56 61 |$item in|comingVa|
|00000820| 72 73 20 6c 6f 63 61 6c | 56 61 72 73 20 6d 6f 64 |rs local|Vars mod|
|00000830| 69 66 69 65 64 56 61 72 | 73 0d 0d 09 69 66 20 7b |ifiedVar|s...if {|
|00000840| 5b 72 65 67 65 78 70 20 | 7b 5c 3f 20 28 2e 2a 29 |[regexp |{\? (.*)|
|00000850| 7d 20 24 69 74 65 6d 20 | 64 75 6d 6d 79 20 76 61 |} $item |dummy va|
|00000860| 72 5d 7d 20 7b 0d 09 09 | 61 6c 70 68 61 48 65 6c |r]} {...|alphaHel|
|00000870| 70 0d 09 09 65 76 61 6c | 20 73 65 6c 65 63 74 20 |p...eval| select |
|00000880| 5b 73 65 61 72 63 68 20 | 2d 66 20 31 20 2d 72 20 |[search |-f 1 -r |
|00000890| 31 20 22 5e 24 76 61 72 | 22 5d 0d 09 09 72 65 74 |1 "^$var|"]...ret|
|000008a0| 75 72 6e 0d 09 7d 0d 09 | 6c 61 70 70 65 6e 64 20 |urn..}..|lappend |
|000008b0| 6d 6f 64 69 66 69 65 64 | 56 61 72 73 20 24 69 74 |modified|Vars $it|
|000008c0| 65 6d 0d 09 61 70 70 65 | 6e 64 20 70 72 6d 70 74 |em..appe|nd prmpt|
|000008d0| 20 22 4e 65 77 20 56 61 | 6c 75 65 20 6f 66 20 22 | "New Va|lue of "|
|000008e0| 20 24 69 74 65 6d 20 22 | 3a 20 22 0d 09 69 66 20 | $item "|: "..if |
|000008f0| 21 5b 63 61 74 63 68 20 | 7b 70 72 6f 6d 70 74 20 |![catch |{prompt |
|00000900| 24 70 72 6d 70 74 20 5b | 73 65 74 20 24 69 74 65 |$prmpt [|set $ite|
|00000910| 6d 5d 7d 20 72 65 73 5d | 20 7b 0d 09 09 73 65 74 |m]} res]| {...set|
|00000920| 20 24 69 74 65 6d 20 24 | 72 65 73 0d 09 7d 0d 7d | $item $|res..}.}|
|00000930| 0d 0d 0d 0d 0d 23 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.....#==|========|
|00000940| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000950| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000960| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000970| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000980| 3d 3d 3d 3d 3d 3d 0d 0d | 23 20 49 6e 73 74 61 6e |======..|# Instan|
|00000990| 74 69 61 74 65 20 61 20 | 67 6c 6f 62 61 6c 20 76 |tiate a |global v|
|000009a0| 61 72 69 61 62 6c 65 20 | 74 6f 20 74 68 65 20 70 |ariable |to the p|
|000009b0| 61 74 68 20 6f 66 20 61 | 20 66 69 6c 65 20 28 75 |ath of a| file (u|
|000009c0| 73 75 61 6c 6c 79 20 61 | 6e 20 61 70 70 29 2e 20 |sually a|n app). |
|000009d0| 41 73 20 61 0d 23 20 73 | 69 64 65 2d 65 66 66 65 |As a.# s|ide-effe|
|000009e0| 63 74 2c 20 6d 61 6b 65 | 20 74 68 65 20 69 6e 73 |ct, make| the ins|
|000009f0| 74 61 6e 74 69 61 74 69 | 6f 6e 20 70 65 72 6d 61 |tantiati|on perma|
|00000a00| 6e 65 6e 74 2e 0d 70 72 | 6f 63 20 61 64 64 41 70 |nent..pr|oc addAp|
|00000a10| 70 50 61 74 68 20 7b 6e | 61 6d 65 20 76 61 72 7d |pPath {n|ame var}|
|00000a20| 20 7b 0d 09 67 6c 6f 62 | 61 6c 20 24 76 61 72 20 | {..glob|al $var |
|00000a30| 6d 6f 64 69 66 69 65 64 | 56 61 72 73 0d 09 0d 09 |modified|Vars....|
|00000a40| 69 66 20 7b 24 6e 61 6d | 65 20 3d 3d 20 22 43 6f |if {$nam|e == "Co|
|00000a50| 64 65 57 61 72 72 69 6f | 72 20 43 6f 6d 70 69 6c |deWarrio|r Compil|
|00000a60| 65 72 22 7d 20 7b 0d 09 | 09 61 6c 65 72 74 6e 6f |er"} {..|.alertno|
|00000a70| 74 65 20 7b 50 6c 65 61 | 73 65 20 6c 6f 63 61 74 |te {Plea|se locat|
|00000a80| 65 20 74 68 65 20 63 6f | 6d 70 69 6c 65 72 20 76 |e the co|mpiler v|
|00000a90| 69 61 20 6d 65 6e 75 20 | 69 74 65 6d 20 22 43 6f |ia menu |item "Co|
|00000aa0| 6e 66 69 67 3a 41 70 70 | 20 50 61 74 68 73 3a 43 |nfig:App| Paths:C|
|00000ab0| 6f 64 65 57 61 72 72 69 | 6f 72 20 43 6f 6d 70 69 |odeWarri|or Compi|
|00000ac0| 6c 65 72 22 7d 0d 09 09 | 65 72 72 6f 72 20 22 22 |ler"}...|error ""|
|00000ad0| 0d 09 7d 20 65 6c 73 65 | 69 66 20 7b 24 6e 61 6d |..} else|if {$nam|
|00000ae0| 65 20 3d 3d 20 22 43 6f | 64 65 57 61 72 72 69 6f |e == "Co|deWarrio|
|00000af0| 72 20 44 65 62 75 67 67 | 65 72 22 7d 20 7b 0d 09 |r Debugg|er"} {..|
|00000b00| 09 61 6c 65 72 74 6e 6f | 74 65 20 7b 50 6c 65 61 |.alertno|te {Plea|
|00000b10| 73 65 20 6c 6f 63 61 74 | 65 20 74 68 65 20 64 65 |se locat|e the de|
|00000b20| 62 75 67 67 65 72 20 76 | 69 61 20 6d 65 6e 75 20 |bugger v|ia menu |
|00000b30| 69 74 65 6d 20 22 43 6f | 6e 66 69 67 3a 41 70 70 |item "Co|nfig:App|
|00000b40| 20 50 61 74 68 73 3a 43 | 6f 64 65 57 61 72 72 69 | Paths:C|odeWarri|
|00000b50| 6f 72 20 44 65 62 75 67 | 67 65 72 22 7d 0d 09 09 |or Debug|ger"}...|
|00000b60| 65 72 72 6f 72 20 22 22 | 0d 09 7d 0d 09 09 0d 09 |error ""|..}.....|
|00000b70| 73 65 74 20 24 76 61 72 | 20 5b 67 65 74 66 69 6c |set $var| [getfil|
|00000b80| 65 20 22 46 69 6e 64 20 | 27 24 6e 61 6d 65 27 20 |e "Find |'$name' |
|00000b90| 61 70 70 3a 22 5d 0d 09 | 6c 61 70 70 65 6e 64 20 |app:"]..|lappend |
|00000ba0| 6d 6f 64 69 66 69 65 64 | 56 61 72 73 20 24 76 61 |modified|Vars $va|
|00000bb0| 72 0d 7d 0d 0d 0d 70 72 | 6f 63 20 67 65 74 46 69 |r.}...pr|oc getFi|
|00000bc0| 6c 65 53 69 67 20 7b 66 | 7d 20 7b 0d 09 67 65 74 |leSig {f|} {..get|
|00000bd0| 46 69 6c 65 49 6e 66 6f | 20 24 66 20 61 72 72 0d |FileInfo| $f arr.|
|00000be0| 09 72 65 74 75 72 6e 20 | 24 61 72 72 28 63 72 65 |.return |$arr(cre|
|00000bf0| 61 74 6f 72 29 0d 7d 0d | 0d 70 72 6f 63 20 67 65 |ator).}.|.proc ge|
|00000c00| 74 46 69 6c 65 54 79 70 | 65 20 7b 66 7d 20 7b 0d |tFileTyp|e {f} {.|
|00000c10| 09 67 65 74 46 69 6c 65 | 49 6e 66 6f 20 24 66 20 |.getFile|Info $f |
|00000c20| 61 72 72 0d 09 72 65 74 | 75 72 6e 20 24 61 72 72 |arr..ret|urn $arr|
|00000c30| 28 74 79 70 65 29 0d 7d | 0d 0d 0d 23 20 4c 6f 6f |(type).}|...# Loo|
|00000c40| 6b 20 66 6f 72 20 67 69 | 76 65 6e 20 61 70 70 20 |k for gi|ven app |
|00000c50| 73 69 67 20 69 6e 20 61 | 63 74 69 76 65 20 70 72 |sig in a|ctive pr|
|00000c60| 6f 63 65 73 73 65 73 2e | 20 49 66 20 6e 6f 74 20 |ocesses.| If not |
|00000c70| 74 68 65 72 65 2c 20 74 | 72 79 20 74 6f 20 0d 23 |there, t|ry to .#|
|00000c80| 20 6c 61 75 6e 63 68 20 | 77 69 74 68 20 27 70 61 | launch |with 'pa|
|00000c90| 74 68 27 20 70 72 6f 6d | 70 74 69 6e 67 20 66 6f |th' prom|pting fo|
|00000ca0| 72 20 27 70 61 74 68 27 | 20 69 66 20 6e 65 63 65 |r 'path'| if nece|
|00000cb0| 73 73 61 72 79 2e 0d 23 | 20 52 65 74 75 72 6e 20 |ssary..#| Return |
|00000cc0| 74 68 65 20 72 65 61 6c | 20 6e 61 6d 65 20 6f 66 |the real| name of|
|00000cd0| 20 74 68 65 20 61 70 70 | 2e 20 44 6f 6e 27 74 20 | the app|. Don't |
|00000ce0| 73 77 69 74 63 68 2e 0d | 0d 23 20 53 6c 69 67 68 |switch..|.# Sligh|
|00000cf0| 74 6c 79 20 6d 6f 64 69 | 66 69 65 64 20 76 65 72 |tly modi|fied ver|
|00000d00| 73 69 6f 6e 20 6f 66 20 | 27 63 68 65 63 6b 52 75 |sion of |'checkRu|
|00000d10| 6e 6e 69 6e 67 27 20 74 | 68 61 74 20 6c 6f 6f 6b |nning' t|hat look|
|00000d20| 73 20 66 6f 72 20 61 6e | 79 20 6f 66 20 61 0d 23 |s for an|y of a.#|
|00000d30| 20 6c 69 73 74 20 6f 66 | 20 72 75 6e 6e 69 6e 67 | list of| running|
|00000d40| 20 61 70 70 73 2e 20 20 | 54 68 65 20 6e 61 6d 65 | apps. |The name|
|00000d50| 20 6f 66 20 74 68 65 20 | 61 70 70 20 69 73 20 72 | of the |app is r|
|00000d60| 65 74 75 72 6e 65 64 2e | 20 0d 23 20 0d 70 72 6f |eturned.| .# .pro|
|00000d70| 63 20 63 68 65 63 6b 52 | 75 6e 6e 69 6e 67 20 7b |c checkR|unning {|
|00000d80| 70 72 6f 6d 70 74 20 73 | 69 67 73 20 70 61 74 68 |prompt s|igs path|
|00000d90| 20 7b 69 6e 5f 66 72 6f | 6e 74 20 31 7d 7d 20 7b | {in_fro|nt 1}} {|
|00000da0| 0d 20 20 20 20 67 6c 6f | 62 61 6c 20 24 70 61 74 |. glo|bal $pat|
|00000db0| 68 0d 0d 20 20 20 20 23 | 20 53 65 65 20 69 66 20 |h.. #| See if |
|00000dc0| 61 20 70 72 6f 63 65 73 | 73 20 77 2f 20 61 6e 79 |a proces|s w/ any|
|00000dd0| 20 6f 66 20 74 68 65 20 | 61 63 63 65 70 74 61 62 | of the |acceptab|
|00000de0| 6c 65 20 73 69 67 73 20 | 61 6c 72 65 61 64 79 20 |le sigs |already |
|00000df0| 72 75 6e 6e 69 6e 67 2e | 0d 20 20 20 20 23 20 49 |running.|. # I|
|00000e00| 66 20 73 6f 2c 20 75 73 | 65 20 69 74 2c 20 77 68 |f so, us|e it, wh|
|00000e10| 65 74 68 65 72 20 69 74 | 27 73 20 74 68 65 20 6f |ether it|'s the o|
|00000e20| 6e 65 20 73 70 65 63 69 | 66 69 65 64 20 62 79 20 |ne speci|fied by |
|00000e30| 24 70 61 74 68 20 6f 72 | 20 6e 6f 74 2e 0d 20 20 |$path or| not.. |
|00000e40| 20 20 23 0d 20 20 20 20 | 66 6f 72 65 61 63 68 20 | #. |foreach |
|00000e50| 70 72 6f 63 20 5b 70 72 | 6f 63 65 73 73 65 73 5d |proc [pr|ocesses]|
|00000e60| 20 7b 0d 20 20 20 20 20 | 20 20 20 23 20 69 66 20 | {. | # if |
|00000e70| 61 20 72 75 6e 6e 69 6e | 67 20 61 70 70 20 68 61 |a runnin|g app ha|
|00000e80| 73 20 74 68 65 20 63 6f | 72 72 65 63 74 20 73 69 |s the co|rrect si|
|00000e90| 67 2c 20 2e 2e 2e 0d 20 | 20 20 20 20 20 20 20 69 |g, .... | i|
|00000ea0| 66 20 7b 5b 6c 73 65 61 | 72 63 68 20 2d 65 78 61 |f {[lsea|rch -exa|
|00000eb0| 63 74 20 24 73 69 67 73 | 20 5b 6c 69 6e 64 65 78 |ct $sigs| [lindex|
|00000ec0| 20 24 70 72 6f 63 20 31 | 5d 5d 20 3e 3d 20 30 7d | $proc 1|]] >= 0}|
|00000ed0| 20 7b 0d 20 20 20 20 20 | 20 20 20 20 20 20 20 23 | {. | #|
|00000ee0| 20 2e 2e 2e 74 68 65 6e | 20 72 65 74 75 72 6e 20 | ...then| return |
|00000ef0| 69 74 73 20 6e 61 6d 65 | 2e 0d 20 20 20 20 20 20 |its name|.. |
|00000f00| 20 20 20 20 20 20 72 65 | 74 75 72 6e 20 5b 6c 69 | re|turn [li|
|00000f10| 6e 64 65 78 20 24 70 72 | 6f 63 20 30 5d 0d 20 20 |ndex $pr|oc 0]. |
|00000f20| 20 20 20 20 20 20 7d 0d | 20 20 20 20 7d 0d 0d 20 | }.| }.. |
|00000f30| 20 20 20 23 20 49 66 20 | 74 68 65 20 70 61 74 68 | # If |the path|
|00000f40| 20 76 61 72 69 61 62 6c | 65 20 6f 72 20 74 68 65 | variabl|e or the|
|00000f50| 20 66 69 6c 65 20 69 74 | 20 72 65 66 65 72 65 6e | file it| referen|
|00000f60| 63 65 73 20 64 6f 6e 27 | 74 20 65 78 69 73 74 2c |ces don'|t exist,|
|00000f70| 0d 20 20 20 20 23 20 6f | 72 20 69 66 20 69 74 73 |. # o|r if its|
|00000f80| 20 73 69 67 20 69 73 6e | 27 74 20 6f 6e 65 20 74 | sig isn|'t one t|
|00000f90| 68 61 74 20 77 65 20 65 | 78 70 65 63 74 2c 20 74 |hat we e|xpect, t|
|00000fa0| 68 65 6e 20 70 72 6f 6d | 70 74 20 74 68 65 20 75 |hen prom|pt the u|
|00000fb0| 73 65 72 20 0d 20 20 20 | 20 23 20 74 6f 20 6c 6f |ser . | # to lo|
|00000fc0| 63 61 74 65 20 74 68 65 | 20 61 70 70 2e 0d 20 20 |cate the| app.. |
|00000fd0| 20 20 23 0d 20 20 20 20 | 69 66 20 7b 21 5b 69 6e | #. |if {![in|
|00000fe0| 66 6f 20 65 78 69 73 74 | 73 20 24 70 61 74 68 5d |fo exist|s $path]|
|00000ff0| 20 7c 7c 20 21 5b 66 69 | 6c 65 20 65 78 69 73 74 | || ![fi|le exist|
|00001000| 73 20 5b 73 65 74 20 24 | 70 61 74 68 5d 5d 20 0d |s [set $|path]] .|
|00001010| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 7c 7c 20 | | || |
|00001020| 5b 6c 73 65 61 72 63 68 | 20 2d 65 78 61 63 74 20 |[lsearch| -exact |
|00001030| 24 73 69 67 73 20 5b 67 | 65 74 46 69 6c 65 53 69 |$sigs [g|etFileSi|
|00001040| 67 20 5b 73 65 74 20 24 | 70 61 74 68 5d 5d 5d 20 |g [set $|path]]] |
|00001050| 3c 20 30 7d 20 7b 0d 20 | 20 20 20 20 20 20 20 69 |< 0} {. | i|
|00001060| 66 20 7b 5b 63 61 74 63 | 68 20 7b 61 64 64 41 70 |f {[catc|h {addAp|
|00001070| 70 50 61 74 68 20 24 70 | 72 6f 6d 70 74 20 24 70 |pPath $p|rompt $p|
|00001080| 61 74 68 7d 5d 7d 20 72 | 65 74 75 72 6e 0d 20 20 |ath}]} r|eturn. |
|00001090| 20 20 7d 0d 0d 20 20 20 | 20 23 20 43 68 65 63 6b | }.. | # Check|
|000010a0| 20 74 68 61 74 20 74 68 | 65 20 75 73 65 72 27 73 | that th|e user's|
|000010b0| 20 63 68 6f 69 63 65 20 | 68 61 73 20 61 6e 20 61 | choice |has an a|
|000010c0| 63 63 65 70 74 61 62 6c | 65 20 73 69 67 0d 20 20 |cceptabl|e sig. |
|000010d0| 20 20 69 66 20 7b 5b 6c | 73 65 61 72 63 68 20 2d | if {[l|search -|
|000010e0| 65 78 61 63 74 20 24 73 | 69 67 73 20 5b 67 65 74 |exact $s|igs [get|
|000010f0| 46 69 6c 65 53 69 67 20 | 5b 73 65 74 20 24 70 61 |FileSig |[set $pa|
|00001100| 74 68 5d 5d 5d 20 3c 20 | 30 7d 20 7b 0d 20 20 20 |th]]] < |0} {. |
|00001110| 20 20 20 20 20 75 6e 73 | 65 74 20 24 70 61 74 68 | uns|et $path|
|00001120| 0d 20 20 20 20 20 20 20 | 20 6d 65 73 73 61 67 65 |. | message|
|00001130| 20 22 49 6e 61 70 70 72 | 6f 70 72 69 61 74 65 20 | "Inappr|opriate |
|00001140| 66 69 6c 65 20 63 68 6f | 73 65 6e 22 0d 20 20 20 |file cho|sen". |
|00001150| 20 20 20 20 20 72 65 74 | 75 72 6e 20 7b 7d 20 0d | ret|urn {} .|
|00001160| 20 20 20 20 7d 0d 20 20 | 20 20 0d 20 20 20 20 23 | }. | . #|
|00001170| 20 4c 61 75 6e 63 68 20 | 74 68 65 20 61 70 70 0d | Launch |the app.|
|00001180| 20 20 20 20 69 66 20 7b | 24 69 6e 5f 66 72 6f 6e | if {|$in_fron|
|00001190| 74 7d 20 7b 0d 20 20 20 | 20 09 69 66 20 7b 5b 63 |t} {. | .if {[c|
|000011a0| 61 74 63 68 20 7b 6c 61 | 75 6e 63 68 20 2d 66 20 |atch {la|unch -f |
|000011b0| 5b 73 65 74 20 24 70 61 | 74 68 5d 7d 5d 7d 20 7b |[set $pa|th]}]} {|
|000011c0| 0d 20 20 20 20 09 09 65 | 72 72 6f 72 20 22 50 72 |. ..e|rror "Pr|
|000011d0| 6f 62 6c 65 6d 20 77 69 | 74 68 20 6c 61 75 6e 63 |oblem wi|th launc|
|000011e0| 68 69 6e 67 20 66 69 6c | 65 20 28 6f 75 74 20 6f |hing fil|e (out o|
|000011f0| 66 20 6d 65 6d 6f 72 79 | 3f 29 22 0d 20 20 20 20 |f memory|?)". |
|00001200| 09 7d 0d 20 20 20 20 7d | 20 65 6c 73 65 20 7b 0d |.}. }| else {.|
|00001210| 20 20 20 20 09 69 66 20 | 7b 5b 63 61 74 63 68 20 | .if |{[catch |
|00001220| 7b 6c 61 75 6e 63 68 20 | 5b 73 65 74 20 24 70 61 |{launch |[set $pa|
|00001230| 74 68 5d 7d 5d 7d 20 7b | 0d 20 20 20 20 09 09 65 |th]}]} {|. ..e|
|00001240| 72 72 6f 72 20 22 50 72 | 6f 62 6c 65 6d 20 77 69 |rror "Pr|oblem wi|
|00001250| 74 68 20 6c 61 75 6e 63 | 68 69 6e 67 20 66 69 6c |th launc|hing fil|
|00001260| 65 20 28 6f 75 74 20 6f | 66 20 6d 65 6d 6f 72 79 |e (out o|f memory|
|00001270| 3f 29 22 0d 20 20 20 20 | 09 7d 0d 20 20 20 20 7d |?)". |.}. }|
|00001280| 20 20 20 20 09 0d 20 20 | 20 20 0d 20 20 20 20 23 | .. | . #|
|00001290| 20 52 65 74 75 72 6e 20 | 74 68 65 20 6e 61 6d 65 | Return |the name|
|000012a0| 20 6f 66 20 74 68 65 20 | 63 68 6f 73 65 6e 20 61 | of the |chosen a|
|000012b0| 70 70 6c 69 63 61 74 69 | 6f 6e 0d 20 20 20 20 72 |pplicati|on. r|
|000012c0| 65 74 75 72 6e 20 5b 66 | 69 6c 65 20 74 61 69 6c |eturn [f|ile tail|
|000012d0| 20 5b 73 65 74 20 24 70 | 61 74 68 5d 5d 0d 7d 0d | [set $p|ath]].}.|
|000012e0| 0d 0d 23 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..#=====|========|
|000012f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001300| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001310| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001320| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001330| 3d 3d 0d 0d 23 20 53 77 | 69 74 63 68 20 74 6f 20 |==..# Sw|itch to |
|00001340| 27 73 69 67 27 2c 20 6c | 61 75 6e 63 68 69 6e 67 |'sig', l|aunching|
|00001350| 20 69 66 20 6e 65 63 65 | 73 61 72 79 0d 70 72 6f | if nece|sary.pro|
|00001360| 63 20 6c 61 75 6e 63 68 | 46 6f 72 65 41 70 70 6c |c launch|ForeAppl|
|00001370| 20 7b 73 69 67 7d 20 7b | 0d 09 73 65 74 20 6e 61 | {sig} {|..set na|
|00001380| 6d 65 20 5b 6e 61 6d 65 | 46 72 6f 6d 41 70 70 6c |me [name|FromAppl|
|00001390| 20 24 73 69 67 5d 0d 09 | 69 66 20 7b 5b 63 61 74 | $sig]..|if {[cat|
|000013a0| 63 68 20 7b 73 77 69 74 | 63 68 54 6f 20 22 27 24 |ch {swit|chTo "'$|
|000013b0| 73 69 67 27 22 7d 5d 7d | 20 7b 0d 09 09 6c 61 75 |sig'"}]}| {...lau|
|000013c0| 6e 63 68 20 2d 66 20 24 | 6e 61 6d 65 0d 09 7d 09 |nch -f $|name..}.|
|000013d0| 09 0d 09 72 65 74 75 72 | 6e 20 24 6e 61 6d 65 0d |...retur|n $name.|
|000013e0| 7d 0d 0d 23 20 45 6e 73 | 75 72 65 20 74 68 61 74 |}..# Ens|ure that|
|000013f0| 20 74 68 65 20 61 70 70 | 20 69 73 20 61 74 20 6c | the app| is at l|
|00001400| 65 61 73 74 20 72 75 6e | 6e 69 6e 67 20 69 6e 20 |east run|ning in |
|00001410| 74 68 65 20 62 61 63 6b | 67 72 6f 75 6e 64 2e 0d |the back|ground..|
|00001420| 70 72 6f 63 20 6c 61 75 | 6e 63 68 42 61 63 6b 41 |proc lau|nchBackA|
|00001430| 70 70 6c 20 7b 73 69 67 | 7d 20 7b 0d 09 73 65 74 |ppl {sig|} {..set|
|00001440| 20 6e 61 6d 65 20 5b 6e | 61 6d 65 46 72 6f 6d 41 | name [n|ameFromA|
|00001450| 70 70 6c 20 24 73 69 67 | 5d 0d 09 6c 61 75 6e 63 |ppl $sig|]..launc|
|00001460| 68 20 24 6e 61 6d 65 0d | 09 72 65 74 75 72 6e 20 |h $name.|.return |
|00001470| 24 6e 61 6d 65 0d 7d 0d | 0d 23 20 43 68 65 63 6b |$name.}.|.# Check|
|00001480| 20 74 6f 20 73 65 65 20 | 69 66 20 61 6e 79 20 6f | to see |if any o|
|00001490| 66 20 74 68 65 20 27 73 | 69 67 73 27 20 69 73 20 |f the 's|igs' is |
|000014a0| 72 75 6e 6e 69 6e 67 2e | 20 49 66 20 73 6f 2c 20 |running.| If so, |
|000014b0| 72 65 74 75 72 6e 20 69 | 74 73 20 6e 61 6d 65 2e |return i|ts name.|
|000014c0| 0d 23 20 4f 74 68 65 72 | 77 69 73 65 2c 20 61 74 |.# Other|wise, at|
|000014d0| 74 65 6d 70 74 20 74 6f | 20 6c 61 75 6e 63 68 20 |tempt to| launch |
|000014e0| 74 68 65 20 66 69 6c 65 | 20 6e 61 6d 65 64 20 62 |the file| named b|
|000014f0| 79 20 27 73 69 67 27 2e | 0d 70 72 6f 63 20 6c 61 |y 'sig'.|.proc la|
|00001500| 75 6e 63 68 42 61 63 6b | 41 70 70 6c 53 69 67 73 |unchBack|ApplSigs|
|00001510| 09 7b 73 69 67 73 20 73 | 69 67 20 7b 70 72 6f 6d |.{sigs s|ig {prom|
|00001520| 70 74 20 22 50 6c 65 61 | 73 65 20 6c 6f 63 61 74 |pt "Plea|se locat|
|00001530| 65 20 74 68 65 20 61 70 | 70 6c 69 63 61 74 69 6f |e the ap|plicatio|
|00001540| 6e 3a 22 7d 7d 20 7b 0d | 09 67 6c 6f 62 61 6c 20 |n:"}} {.|.global |
|00001550| 24 73 69 67 09 6d 6f 64 | 69 66 69 65 64 56 61 72 |$sig.mod|ifiedVar|
|00001560| 73 0d 09 66 6f 72 65 61 | 63 68 09 70 20 5b 70 72 |s..forea|ch.p [pr|
|00001570| 6f 63 65 73 73 65 73 5d | 20 7b 0d 09 09 69 66 20 |ocesses]| {...if |
|00001580| 7b 20 5b 73 65 74 20 69 | 6e 64 20 5b 6c 73 65 61 |{ [set i|nd [lsea|
|00001590| 72 63 68 20 2d 65 78 61 | 63 74 20 24 73 69 67 73 |rch -exa|ct $sigs|
|000015a0| 20 5b 6c 69 6e 64 65 78 | 20 24 70 20 31 5d 5d 5d | [lindex| $p 1]]]|
|000015b0| 20 3e 3d 20 30 20 7d 20 | 7b 0d 09 09 09 73 65 74 | >= 0 } |{....set|
|000015c0| 20 73 20 5b 6c 69 6e 64 | 65 78 20 24 73 69 67 73 | s [lind|ex $sigs|
|000015d0| 20 24 69 6e 64 5d 0d 09 | 09 09 69 66 20 7b 20 21 | $ind]..|..if { !|
|000015e0| 5b 69 6e 66 6f 20 65 78 | 69 73 74 73 20 24 73 69 |[info ex|ists $si|
|000015f0| 67 5d 20 7c 7c 20 28 24 | 73 20 21 3d 20 5b 73 65 |g] || ($|s != [se|
|00001600| 74 09 24 73 69 67 5d 29 | 20 7d 20 7b 0d 09 09 09 |t.$sig])| } {....|
|00001610| 09 73 65 74 09 24 73 69 | 67 20 24 73 0d 09 09 09 |.set.$si|g $s....|
|00001620| 09 6c 61 70 70 65 6e 64 | 09 6d 6f 64 69 66 69 65 |.lappend|.modifie|
|00001630| 64 56 61 72 73 20 24 73 | 69 67 0d 09 09 09 7d 0d |dVars $s|ig....}.|
|00001640| 09 09 09 72 65 74 75 72 | 6e 20 5b 6e 61 6d 65 46 |...retur|n [nameF|
|00001650| 72 6f 6d 41 70 70 6c 20 | 24 73 5d 0d 09 09 7d 0d |romAppl |$s]...}.|
|00001660| 09 7d 0d 09 69 66 20 7b | 21 5b 69 6e 66 6f 20 65 |.}..if {|![info e|
|00001670| 78 69 73 74 73 20 24 73 | 69 67 5d 20 7c 7c 20 28 |xists $s|ig] || (|
|00001680| 5b 73 65 74 20 24 73 69 | 67 5d 20 3d 3d 20 22 22 |[set $si|g] == ""|
|00001690| 29 7d 09 7b 0d 09 09 73 | 65 74 09 24 73 69 67 20 |)}.{...s|et.$sig |
|000016a0| 5b 67 65 74 46 69 6c 65 | 53 69 67 20 5b 67 65 74 |[getFile|Sig [get|
|000016b0| 66 69 6c 65 20 24 70 72 | 6f 6d 70 74 5d 5d 0d 09 |file $pr|ompt]]..|
|000016c0| 09 6c 61 70 70 65 6e 64 | 09 6d 6f 64 69 66 69 65 |.lappend|.modifie|
|000016d0| 64 56 61 72 73 20 24 73 | 69 67 0d 09 7d 0d 09 72 |dVars $s|ig..}..r|
|000016e0| 65 74 75 72 6e 20 5b 6c | 61 75 6e 63 68 42 61 63 |eturn [l|aunchBac|
|000016f0| 6b 41 70 70 6c 20 5b 73 | 65 74 09 24 73 69 67 5d |kAppl [s|et.$sig]|
|00001700| 5d 0d 7d 0d 0d 70 72 6f | 63 20 67 65 74 41 70 70 |].}..pro|c getApp|
|00001710| 6c 53 69 67 20 7b 70 72 | 6f 6d 70 74 20 73 69 67 |lSig {pr|ompt sig|
|00001720| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 24 73 69 67 |} {..glo|bal $sig|
|00001730| 20 6d 6f 64 69 66 69 65 | 64 56 61 72 73 0d 09 69 | modifie|dVars..i|
|00001740| 66 20 7b 5b 63 61 74 63 | 68 20 7b 6e 61 6d 65 46 |f {[catc|h {nameF|
|00001750| 72 6f 6d 41 70 70 6c 20 | 5b 73 65 74 20 24 73 69 |romAppl |[set $si|
|00001760| 67 5d 7d 5d 7d 20 7b 0d | 09 09 73 65 74 20 24 73 |g]}]} {.|..set $s|
|00001770| 69 67 20 5b 67 65 74 46 | 69 6c 65 53 69 67 20 5b |ig [getF|ileSig [|
|00001780| 67 65 74 66 69 6c 65 20 | 24 70 72 6f 6d 70 74 5d |getfile |$prompt]|
|00001790| 5d 0d 09 09 6c 61 70 70 | 65 6e 64 20 6d 6f 64 69 |]...lapp|end modi|
|000017a0| 66 69 65 64 56 61 72 73 | 20 24 73 69 67 0d 09 7d |fiedVars| $sig..}|
|000017b0| 0d 7d 0d 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.}..#===|========|
|000017c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000017d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000017e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000017f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001800| 3d 3d 3d 3d 3d 0d 23 20 | 45 78 63 61 6c 69 62 75 |=====.# |Excalibu|
|00001810| 72 20 69 73 20 74 68 65 | 20 6f 6e 6c 79 20 4d 61 |r is the| only Ma|
|00001820| 63 20 73 70 65 6c 6c 2d | 63 68 65 63 6b 65 72 20 |c spell-|checker |
|00001830| 74 68 61 74 20 49 20 6b | 6e 6f 77 20 6f 66 20 77 |that I k|now of w|
|00001840| 68 69 63 68 20 77 69 6c | 6c 20 68 61 6e 64 6c 65 |hich wil|l handle|
|00001850| 20 4c 61 54 65 58 20 61 | 73 0d 23 20 77 65 6c 6c | LaTeX a|s.# well|
|00001860| 20 61 73 20 6f 72 64 69 | 6e 61 72 79 20 74 65 78 | as ordi|nary tex|
|00001870| 74 2e 0d 0d 0d 70 72 6f | 63 20 73 70 65 6c 6c 63 |t....pro|c spellc|
|00001880| 68 65 63 6b 57 69 6e 64 | 6f 77 20 7b 7d 20 7b 0d |heckWind|ow {} {.|
|00001890| 09 67 6c 6f 62 61 6c 20 | 72 65 73 75 6d 65 52 65 |.global |resumeRe|
|000018a0| 76 65 72 74 0d 0d 09 73 | 65 74 20 6e 61 6d 65 20 |vert...s|et name |
|000018b0| 5b 6c 61 75 6e 63 68 46 | 6f 72 65 41 70 70 6c 20 |[launchF|oreAppl |
|000018c0| 58 43 4c 42 5d 0d 0d 09 | 69 66 20 7b 5b 77 69 6e |XCLB]...|if {[win|
|000018d0| 44 69 72 74 79 5d 7d 20 | 7b 0d 09 09 69 66 20 7b |Dirty]} |{...if {|
|000018e0| 5b 61 73 6b 79 65 73 6e | 6f 20 22 53 61 76 65 20 |[askyesn|o "Save |
|000018f0| 27 5b 6c 69 6e 64 65 78 | 20 5b 77 69 6e 4e 61 6d |'[lindex| [winNam|
|00001900| 65 73 5d 20 30 5d 27 3f | 22 5d 20 3d 3d 20 22 79 |es] 0]'?|"] == "y|
|00001910| 65 73 22 7d 20 7b 0d 09 | 09 09 73 61 76 65 0d 09 |es"} {..|..save..|
|00001920| 09 7d 0d 09 7d 0d 09 73 | 65 6e 64 4f 70 65 6e 45 |.}..}..s|endOpenE|
|00001930| 76 65 6e 74 20 6e 6f 52 | 65 70 6c 79 20 5b 66 69 |vent noR|eply [fi|
|00001940| 6c 65 20 74 61 69 6c 20 | 24 6e 61 6d 65 5d 20 5b |le tail |$name] [|
|00001950| 63 61 72 20 5b 77 69 6e | 4e 61 6d 65 73 20 2d 66 |car [win|Names -f|
|00001960| 5d 5d 0d 09 73 65 74 20 | 72 65 73 75 6d 65 52 65 |]]..set |resumeRe|
|00001970| 76 65 72 74 20 31 0d 7d | 0d 0d 70 72 6f 63 20 73 |vert 1.}|..proc s|
|00001980| 70 65 6c 6c 63 68 65 63 | 6b 53 65 6c 65 63 74 69 |pellchec|kSelecti|
|00001990| 6f 6e 20 7b 7d 20 7b 0d | 09 67 6c 6f 62 61 6c 20 |on {} {.|.global |
|000019a0| 65 78 63 61 6c 69 62 75 | 72 50 61 74 68 20 0d 0d |excalibu|rPath ..|
|000019b0| 09 63 61 74 63 68 20 7b | 63 68 65 63 6b 52 75 6e |.catch {|checkRun|
|000019c0| 6e 69 6e 67 20 45 78 63 | 61 6c 69 62 75 72 20 58 |ning Exc|alibur X|
|000019d0| 43 4c 42 20 65 78 63 61 | 6c 69 62 75 72 50 61 74 |CLB exca|liburPat|
|000019e0| 68 7d 20 6e 61 6d 65 0d | 0d 09 69 66 20 7b 5b 67 |h} name.|..if {[g|
|000019f0| 65 74 50 6f 73 5d 20 3d | 3d 20 5b 73 65 6c 45 6e |etPos] =|= [selEn|
|00001a00| 64 5d 7d 20 7b 0d 09 09 | 62 65 65 70 0d 09 09 6d |d]} {...|beep...m|
|00001a10| 65 73 73 61 67 65 20 22 | 4e 6f 20 73 65 6c 65 63 |essage "|No selec|
|00001a20| 74 69 6f 6e 22 0d 09 09 | 72 65 74 75 72 6e 3b 0d |tion"...|return;.|
|00001a30| 09 7d 0d 09 63 6f 70 79 | 0d 09 73 77 69 74 63 68 |.}..copy|..switch|
|00001a40| 54 6f 20 24 6e 61 6d 65 | 0d 7d 0d 0d 23 3d 3d 3d |To $name|.}..#===|
|00001a50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0d 0d |========|=====...|
|00001aa0| 70 72 6f 63 20 61 6c 70 | 68 61 48 65 6c 70 20 7b |proc alp|haHelp {|
|00001ab0| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 48 4f 4d 45 |} {..glo|bal HOME|
|00001ac0| 20 61 6c 70 68 61 4c 69 | 74 65 0d 09 69 66 20 24 | alphaLi|te..if $|
|00001ad0| 61 6c 70 68 61 4c 69 74 | 65 20 7b 0d 09 09 65 64 |alphaLit|e {...ed|
|00001ae0| 69 74 20 2d 72 20 22 24 | 48 4f 4d 45 3a 48 65 6c |it -r "$|HOME:Hel|
|00001af0| 70 3a 51 75 69 63 6b 20 | 53 74 61 72 74 22 0d 09 |p:Quick |Start"..|
|00001b00| 7d 20 65 6c 73 65 20 7b | 0d 09 09 65 64 69 74 20 |} else {|...edit |
|00001b10| 2d 72 20 22 24 48 4f 4d | 45 3a 48 65 6c 70 3a 4d |-r "$HOM|E:Help:M|
|00001b20| 61 6e 75 61 6c 22 0d 09 | 7d 0d 7d 0d 0d 0d 70 72 |anual"..|}.}...pr|
|00001b30| 6f 63 20 74 63 6c 48 65 | 6c 70 20 7b 7d 20 7b 0d |oc tclHe|lp {} {.|
|00001b40| 09 67 6c 6f 62 61 6c 20 | 48 4f 4d 45 0d 09 65 64 |.global |HOME..ed|
|00001b50| 69 74 20 2d 72 20 22 24 | 48 4f 4d 45 3a 48 65 6c |it -r "$|HOME:Hel|
|00001b60| 70 3a 54 63 6c 20 43 6f | 6d 6d 61 6e 64 73 22 0d |p:Tcl Co|mmands".|
|00001b70| 7d 0d 0d 0d 70 72 6f 63 | 20 64 69 76 69 64 69 6e |}...proc| dividin|
|00001b80| 67 4c 69 6e 65 20 7b 7d | 20 7b 0d 09 69 6e 73 65 |gLine {}| {..inse|
|00001b90| 72 74 54 65 78 74 20 22 | 3d 3d 3d 3d 3d 3d 3d 3d |rtText "|========|
|00001ba0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001bb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001bc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001bd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001be0| 3d 3d 3d 3d 3d 3d 3d 5c | 72 22 0d 7d 0d 62 69 6e |=======\|r".}.bin|
|00001bf0| 64 20 27 6c 27 20 3c 43 | 3e 20 64 69 76 69 64 69 |d 'l' <C|> dividi|
|00001c00| 6e 67 4c 69 6e 65 0d 0d | 70 72 6f 63 20 74 65 78 |ngLine..|proc tex|
|00001c10| 44 69 76 69 64 69 6e 67 | 4c 69 6e 65 20 7b 7d 20 |Dividing|Line {} |
|00001c20| 7b 0d 09 69 6e 73 65 72 | 74 54 65 78 74 20 22 25 |{..inser|tText "%|
|00001c30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001c40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001c50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001c60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001c70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 5c |========|=======\|
|00001c80| 72 22 0d 7d 0d 62 69 6e | 64 20 27 6c 27 20 3c 43 |r".}.bin|d 'l' <C|
|00001c90| 3e 20 74 65 78 44 69 76 | 69 64 69 6e 67 4c 69 6e |> texDiv|idingLin|
|00001ca0| 65 20 54 65 58 0d 0d 70 | 72 6f 63 20 63 44 69 76 |e TeX..p|roc cDiv|
|00001cb0| 69 64 69 6e 67 4c 69 6e | 65 20 7b 7d 20 7b 0d 09 |idingLin|e {} {..|
|00001cc0| 69 6e 73 65 72 74 54 65 | 78 74 20 22 2f 2f 3d 3d |insertTe|xt "//==|
|00001cd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001ce0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001cf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001d00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001d10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 5c 72 22 |========|=====\r"|
|00001d20| 0d 7d 0d 62 69 6e 64 20 | 27 6c 27 20 3c 43 3e 20 |.}.bind |'l' <C> |
|00001d30| 63 44 69 76 69 64 69 6e | 67 4c 69 6e 65 20 43 0d |cDividin|gLine C.|
|00001d40| 62 69 6e 64 20 27 6c 27 | 20 3c 43 3e 20 63 44 69 |bind 'l'| <C> cDi|
|00001d50| 76 69 64 69 6e 67 4c 69 | 6e 65 20 43 2b 2b 0d 0d |vidingLi|ne C++..|
|00001d60| 70 72 6f 63 20 74 63 6c | 44 69 76 69 64 69 6e 67 |proc tcl|Dividing|
|00001d70| 4c 69 6e 65 20 7b 7d 20 | 7b 0d 09 69 6e 73 65 72 |Line {} |{..inser|
|00001d80| 74 54 65 78 74 20 22 23 | 3d 3d 3d 3d 3d 3d 3d 3d |tText "#|========|
|00001d90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001da0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001db0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001dc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001dd0| 3d 3d 3d 3d 3d 3d 3d 5c | 72 22 0d 7d 0d 62 69 6e |=======\|r".}.bin|
|00001de0| 64 20 27 6c 27 20 3c 43 | 3e 20 74 63 6c 44 69 76 |d 'l' <C|> tclDiv|
|00001df0| 69 64 69 6e 67 4c 69 6e | 65 20 54 63 6c 0d 0d 0d |idingLin|e Tcl...|
|00001e00| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|00001e10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001e20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001e30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001e40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001e50| 3d 0d 0d 69 66 20 7b 21 | 5b 73 74 72 69 6e 67 20 |=..if {!|[string |
|00001e60| 6c 65 6e 67 74 68 20 5b | 69 6e 66 6f 20 63 6f 6d |length [|info com|
|00001e70| 6d 61 6e 64 73 20 6f 6c | 64 43 64 5d 5d 7d 20 7b |mands ol|dCd]]} {|
|00001e80| 0d 09 72 65 6e 61 6d 65 | 20 63 64 20 6f 6c 64 43 |..rename| cd oldC|
|00001e90| 64 0d 7d 0d 0d 70 72 6f | 63 20 63 64 20 61 72 67 |d.}..pro|c cd arg|
|00001ea0| 73 20 7b 0d 09 67 6c 6f | 62 61 6c 20 48 4f 4d 45 |s {..glo|bal HOME|
|00001eb0| 0d 09 69 66 20 7b 5b 6c | 6c 65 6e 67 74 68 20 24 |..if {[l|length $|
|00001ec0| 61 72 67 73 5d 7d 20 7b | 0d 09 09 6f 6c 64 43 64 |args]} {|...oldCd|
|00001ed0| 20 5b 73 74 72 69 6e 67 | 20 74 72 69 6d 20 5b 65 | [string| trim [e|
|00001ee0| 76 61 6c 20 6c 69 73 74 | 20 24 61 72 67 73 5d 20 |val list| $args] |
|00001ef0| 22 09 09 5c 7b 5c 7d 22 | 5d 0d 09 7d 20 65 6c 73 |"..\{\}"|]..} els|
|00001f00| 65 20 7b 0d 09 09 6f 6c | 64 43 64 20 24 48 4f 4d |e {...ol|dCd $HOM|
|00001f10| 45 0d 09 7d 0d 7d 0d 0d | 0d 0d 23 23 23 23 23 23 |E..}.}..|..######|
|00001f20| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00001f30| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00001f40| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00001f50| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00001f60| 23 23 23 23 23 23 23 0d | 23 20 20 4c 69 73 74 20 |#######.|# List |
|00001f70| 74 68 65 20 6e 61 6d 65 | 20 61 6e 64 20 76 61 6c |the name| and val|
|00001f80| 75 65 20 6f 66 20 65 61 | 63 68 20 65 6c 65 6d 65 |ue of ea|ch eleme|
|00001f90| 6e 74 20 6f 66 20 74 68 | 65 20 61 72 72 61 79 20 |nt of th|e array |
|00001fa0| 24 61 72 72 4e 61 6d 65 | 2e 0d 23 20 20 28 43 6f |$arrName|..# (Co|
|00001fb0| 6e 76 65 6e 69 65 6e 74 | 20 74 6f 20 75 73 65 20 |nvenient| to use |
|00001fc0| 61 73 20 61 20 73 68 65 | 6c 6c 20 63 6f 6d 6d 61 |as a she|ll comma|
|00001fd0| 6e 64 2e 29 0d 23 0d 23 | 20 20 4e 6f 74 65 3a 20 |nd.).#.#| Note: |
|00001fe0| 69 74 27 73 20 73 6c 6f | 77 65 72 20 74 6f 20 69 |it's slo|wer to i|
|00001ff0| 6e 73 65 72 74 20 74 68 | 65 20 6c 69 6e 65 73 20 |nsert th|e lines |
|00002000| 6f 6e 65 2d 62 79 2d 6f | 6e 65 20 6c 69 6b 65 20 |one-by-o|ne like |
|00002010| 74 68 69 73 2c 20 62 75 | 74 20 0d 23 20 20 61 73 |this, bu|t .# as|
|00002020| 73 65 6d 62 6c 69 6e 67 | 20 65 76 65 72 79 74 68 |sembling| everyth|
|00002030| 69 6e 67 20 69 6e 20 24 | 6c 69 6e 65 73 20 62 65 |ing in $|lines be|
|00002040| 66 6f 72 65 20 69 6e 73 | 65 72 74 69 6e 67 20 63 |fore ins|erting c|
|00002050| 61 6e 20 73 65 72 69 6f | 75 73 6c 79 20 63 72 61 |an serio|usly cra|
|00002060| 73 68 20 41 6c 70 68 61 | 0d 23 20 20 69 66 20 74 |sh Alpha|.# if t|
|00002070| 68 65 20 72 65 73 75 6c | 74 20 69 73 20 74 6f 6f |he resul|t is too|
|00002080| 20 62 69 67 2e 20 20 28 | 54 72 79 69 6e 67 20 74 | big. (|Trying t|
|00002090| 6f 20 6c 69 73 74 20 74 | 68 65 20 63 6f 6e 74 65 |o list t|he conte|
|000020a0| 6e 74 73 20 6f 66 20 24 | 61 75 74 6f 5f 69 6e 64 |nts of $|auto_ind|
|000020b0| 65 78 28 29 0d 23 20 20 | 77 69 6c 6c 20 64 6f 20 |ex().# |will do |
|000020c0| 69 74 2e 29 20 20 54 68 | 69 73 20 6d 65 74 68 6f |it.) Th|is metho|
|000020d0| 64 20 73 65 65 6d 73 20 | 74 6f 20 62 65 20 6d 6f |d seems |to be mo|
|000020e0| 72 65 20 72 6f 62 75 73 | 74 2e 0d 23 0d 70 72 6f |re robus|t..#.pro|
|000020f0| 63 20 6c 69 73 74 41 72 | 72 61 79 20 7b 61 72 72 |c listAr|ray {arr|
|00002100| 4e 61 6d 65 7d 20 7b 0d | 20 20 20 20 67 6c 6f 62 |Name} {.| glob|
|00002110| 61 6c 20 24 61 72 72 4e | 61 6d 65 0d 20 20 20 20 |al $arrN|ame. |
|00002120| 73 65 74 20 6c 69 6e 65 | 73 20 7b 7d 0d 20 20 20 |set line|s {}. |
|00002130| 20 69 66 20 7b 21 5b 63 | 61 74 63 68 20 7b 69 6e | if {![c|atch {in|
|00002140| 66 6f 20 76 61 72 73 20 | 24 61 72 72 4e 61 6d 65 |fo vars |$arrName|
|00002150| 7d 5d 7d 20 7b 0d 20 20 | 20 20 20 20 20 20 66 6f |}]} {. | fo|
|00002160| 72 65 61 63 68 20 6e 6d | 20 5b 6c 73 6f 72 74 20 |reach nm| [lsort |
|00002170| 2d 69 67 6e 6f 72 65 20 | 5b 61 72 72 61 79 20 6e |-ignore |[array n|
|00002180| 61 6d 65 73 20 24 61 72 | 72 4e 61 6d 65 5d 5d 20 |ames $ar|rName]] |
|00002190| 7b 0d 20 20 20 20 20 20 | 20 20 09 61 70 70 65 6e |{. | .appen|
|000021a0| 64 20 6c 69 6e 65 73 20 | 5b 66 6f 72 6d 61 74 20 |d lines |[format |
|000021b0| 22 5c 72 25 2d 32 30 73 | 20 5c 22 25 73 5c 22 22 |"\r%-20s| \"%s\""|
|000021c0| 20 24 6e 6d 20 5b 73 65 | 74 20 24 7b 61 72 72 4e | $nm [se|t ${arrN|
|000021d0| 61 6d 65 7d 28 24 6e 6d | 29 5d 5d 0d 20 20 20 20 |ame}($nm|)]]. |
|000021e0| 20 20 20 20 7d 0d 20 20 | 20 20 20 20 20 20 69 6e | }. | in|
|000021f0| 73 65 72 74 54 65 78 74 | 20 24 6c 69 6e 65 73 0d |sertText| $lines.|
|00002200| 20 20 20 20 7d 20 65 6c | 73 65 20 7b 0d 20 20 20 | } el|se {. |
|00002210| 20 20 20 20 20 61 6c 65 | 72 74 6e 6f 74 65 20 22 | ale|rtnote "|
|00002220| 5c 22 24 61 72 72 4e 61 | 6d 65 5c 22 20 64 6f 65 |\"$arrNa|me\" doe|
|00002230| 73 6e 27 74 20 65 78 69 | 73 74 20 69 6e 20 74 68 |sn't exi|st in th|
|00002240| 69 73 20 63 6f 6e 74 65 | 78 74 22 0d 20 20 20 20 |is conte|xt". |
|00002250| 7d 0d 7d 0d 0d 0d 0d 23 | 3d 3d 3d 3d 3d 3d 3d 3d |}.}....#|========|
|00002260| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002270| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002280| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002290| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000022a0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 09 0d 70 72 6f 63 20 |========|...proc |
|000022b0| 73 65 6c 65 63 74 50 61 | 72 61 67 72 61 70 68 20 |selectPa|ragraph |
|000022c0| 7b 7d 20 7b 0d 09 73 65 | 74 20 70 6f 73 20 5b 67 |{} {..se|t pos [g|
|000022d0| 65 74 50 6f 73 5d 0d 09 | 73 65 74 20 73 74 61 72 |etPos]..|set star|
|000022e0| 74 20 5b 70 61 72 61 53 | 74 61 72 74 20 24 70 6f |t [paraS|tart $po|
|000022f0| 73 5d 20 0d 09 73 65 74 | 20 66 69 6e 69 73 68 20 |s] ..set| finish |
|00002300| 5b 70 61 72 61 46 69 6e | 69 73 68 20 24 70 6f 73 |[paraFin|ish $pos|
|00002310| 5d 0d 09 67 6f 74 6f 20 | 24 73 74 61 72 74 0d 09 |]..goto |$start..|
|00002320| 73 65 6c 65 63 74 20 24 | 73 74 61 72 74 20 24 66 |select $|start $f|
|00002330| 69 6e 69 73 68 0d 7d 0d | 0d 23 20 77 72 61 70 54 |inish.}.|.# wrapT|
|00002340| 65 78 74 20 3d 3d 20 20 | 67 65 74 54 65 78 74 20 |ext == |getText |
|00002350| 3b 20 62 72 65 61 6b 49 | 6e 74 6f 4c 69 6e 65 73 |; breakI|ntoLines|
|00002360| 20 3b 20 72 65 70 6c 61 | 63 65 54 65 78 74 0d 23 | ; repla|ceText.#|
|00002370| 20 52 65 6d 6f 76 65 20 | 74 65 78 74 20 66 72 6f | Remove |text fro|
|00002380| 6d 20 77 69 6e 64 6f 77 | 2c 20 74 72 61 6e 73 66 |m window|, transf|
|00002390| 6f 72 6d 20 28 6a 6f 69 | 6e 2c 20 64 65 6c 2d 77 |orm (joi|n, del-w|
|000023a0| 73 29 2c 20 69 6e 73 65 | 72 74 20 62 61 63 6b 20 |s), inse|rt back |
|000023b0| 69 6e 74 6f 20 77 69 6e | 64 6f 77 2e 0d 70 72 6f |into win|dow..pro|
|000023c0| 63 20 66 69 6c 6c 54 65 | 78 74 42 79 50 61 72 20 |c fillTe|xtByPar |
|000023d0| 7b 66 72 6f 6d 20 74 6f | 7d 20 7b 0d 09 73 65 74 |{from to|} {..set|
|000023e0| 20 74 65 78 74 20 5b 67 | 65 74 54 65 78 74 20 24 | text [g|etText $|
|000023f0| 66 72 6f 6d 20 24 74 6f | 5d 0d 09 72 65 67 73 75 |from $to|]..regsu|
|00002400| 62 20 2d 61 6c 6c 20 22 | 5c 72 28 5c 5b 20 5c 74 |b -all "|\r(\[ \t|
|00002410| 5c 5d 2a 5c 72 29 2b 22 | 20 24 74 65 78 74 20 22 |\]*\r)+"| $text "|
|00002420| 5c 72 5c 72 5c 72 22 20 | 74 65 78 74 0d 09 72 65 |\r\r\r" |text..re|
|00002430| 67 73 75 62 20 2d 61 6c | 6c 20 22 28 5c 5b 5e 5c |gsub -al|l "(\[^\|
|00002440| 72 5c 5d 29 5c 72 22 20 | 24 74 65 78 74 20 22 5c |r\])\r" |$text "\|
|00002450| 5c 31 20 22 20 74 65 78 | 74 0d 09 72 65 67 73 75 |\1 " tex|t..regsu|
|00002460| 62 20 2d 61 6c 6c 20 22 | 5c 5b 20 5c 74 5c 5d 2b |b -all "|\[ \t\]+|
|00002470| 22 20 24 74 65 78 74 20 | 22 20 22 20 74 65 78 74 |" $text |" " text|
|00002480| 0d 09 72 65 74 75 72 6e | 20 5b 62 72 65 61 6b 49 |..return| [breakI|
|00002490| 6e 74 6f 4c 69 6e 65 73 | 20 24 74 65 78 74 5d 0d |ntoLines| $text].|
|000024a0| 7d 0d 0d 70 72 6f 63 20 | 66 69 6c 6c 52 65 67 69 |}..proc |fillRegi|
|000024b0| 6f 6e 42 79 50 61 72 20 | 7b 7b 73 74 61 72 74 20 |onByPar |{{start |
|000024c0| 2d 31 7d 20 7b 66 69 6e | 69 73 68 20 2d 31 7d 7d |-1} {fin|ish -1}}|
|000024d0| 20 7b 0d 23 09 23 20 69 | 66 20 7b 5b 67 65 74 50 | {.#.# i|f {[getP|
|000024e0| 6f 73 5d 20 3d 3d 20 5b | 73 65 6c 45 6e 64 5d 7d |os] == [|selEnd]}|
|000024f0| 20 7b 20 72 65 74 75 72 | 6e 7d 0d 09 69 66 20 7b | { retur|n}..if {|
|00002500| 28 24 73 74 61 72 74 20 | 3c 20 30 29 20 7c 7c 20 |($start |< 0) || |
|00002510| 28 24 66 69 6e 69 73 68 | 20 3c 20 30 29 7d 20 7b |($finish| < 0)} {|
|00002520| 0d 09 09 73 65 74 20 73 | 74 61 72 74 20 5b 6c 69 |...set s|tart [li|
|00002530| 6e 65 53 74 61 72 74 20 | 5b 67 65 74 50 6f 73 5d |neStart |[getPos]|
|00002540| 5d 0d 09 09 73 65 74 20 | 66 69 6e 69 73 68 20 5b |]...set |finish [|
|00002550| 73 65 6c 45 6e 64 5d 20 | 7d 0d 09 69 66 20 7b 24 |selEnd] |}..if {$|
|00002560| 73 74 61 72 74 20 3e 3d | 20 24 66 69 6e 69 73 68 |start >=| $finish|
|00002570| 7d 20 72 65 74 75 72 6e | 0d 09 67 6f 74 6f 20 24 |} return|..goto $|
|00002580| 73 74 61 72 74 0d 09 73 | 65 74 20 74 65 78 74 20 |start..s|et text |
|00002590| 5b 66 69 6c 6c 54 65 78 | 74 42 79 50 61 72 20 24 |[fillTex|tByPar $|
|000025a0| 73 74 61 72 74 20 24 66 | 69 6e 69 73 68 5d 0d 09 |start $f|inish]..|
|000025b0| 72 65 70 6c 61 63 65 54 | 65 78 74 20 24 73 74 61 |replaceT|ext $sta|
|000025c0| 72 74 20 24 66 69 6e 69 | 73 68 20 24 74 65 78 74 |rt $fini|sh $text|
|000025d0| 20 22 5c 72 22 0d 7d 0d | 09 0d 23 0d 23 20 6a 6f | "\r".}.|..#.# jo|
|000025e0| 69 6e 20 4c 69 6e 65 73 | 20 69 6e 20 72 65 67 69 |in Lines| in regi|
|000025f0| 6f 6e 20 2d 2d 20 69 66 | 20 6e 6f 20 6f 70 74 69 |on -- if| no opti|
|00002600| 6f 6e 61 6c 20 61 72 67 | 73 2c 20 75 73 65 20 73 |onal arg|s, use s|
|00002610| 65 6c 65 63 74 69 6f 6e | 0d 23 0d 70 72 6f 63 20 |election|.#.proc |
|00002620| 6a 6f 69 6e 52 65 67 69 | 6f 6e 20 7b 7b 66 72 6f |joinRegi|on {{fro|
|00002630| 6d 20 2d 31 7d 20 7b 74 | 6f 20 2d 31 7d 7d 20 7b |m -1} {t|o -1}} {|
|00002640| 0d 09 69 66 20 7b 28 24 | 66 72 6f 6d 20 3c 20 30 |..if {($|from < 0|
|00002650| 29 20 7c 7c 20 28 24 74 | 6f 20 3c 20 30 29 7d 20 |) || ($t|o < 0)} |
|00002660| 7b 09 73 65 74 20 66 72 | 6f 6d 20 5b 67 65 74 50 |{.set fr|om [getP|
|00002670| 6f 73 5d 20 3b 20 73 65 | 74 20 74 6f 20 5b 73 65 |os] ; se|t to [se|
|00002680| 6c 45 6e 64 5d 20 7d 0d | 09 69 66 20 7b 24 66 72 |lEnd] }.|.if {$fr|
|00002690| 6f 6d 20 3e 3d 20 24 74 | 6f 7d 20 72 65 74 75 72 |om >= $t|o} retur|
|000026a0| 6e 0d 09 73 65 74 20 74 | 65 78 74 20 5b 67 65 74 |n..set t|ext [get|
|000026b0| 54 65 78 74 20 24 66 72 | 6f 6d 20 24 74 6f 5d 0d |Text $fr|om $to].|
|000026c0| 09 72 65 67 73 75 62 20 | 2d 61 6c 6c 20 22 5c 72 |.regsub |-all "\r|
|000026d0| 28 5c 5b 20 5c 74 5c 5d | 2a 5c 72 29 2b 22 20 24 |(\[ \t\]|*\r)+" $|
|000026e0| 74 65 78 74 20 22 5c 72 | 5c 72 5c 72 22 20 74 65 |text "\r|\r\r" te|
|000026f0| 78 74 0d 09 72 65 67 73 | 75 62 20 2d 61 6c 6c 20 |xt..regs|ub -all |
|00002700| 22 28 5c 5b 5e 5c 72 5c | 5d 29 5c 72 22 20 24 74 |"(\[^\r\|])\r" $t|
|00002710| 65 78 74 20 22 5c 5c 31 | 20 22 20 74 65 78 74 0d |ext "\\1| " text.|
|00002720| 09 72 65 70 6c 61 63 65 | 54 65 78 74 20 24 66 72 |.replace|Text $fr|
|00002730| 6f 6d 20 24 74 6f 20 24 | 74 65 78 74 20 22 5c 72 |om $to $|text "\r|
|00002740| 22 0d 7d 0d 23 20 57 41 | 52 4e 49 4e 47 3a 09 72 |".}.# WA|RNING:.r|
|00002750| 65 67 73 75 62 20 5e 24 | 20 72 65 66 65 72 73 20 |egsub ^$| refers |
|00002760| 74 6f 20 73 74 72 69 6e | 67 20 65 6e 64 70 74 73 |to strin|g endpts|
|00002770| 20 28 6e 6f 74 20 6c 69 | 6e 65 73 29 0d 23 20 46 | (not li|nes).# F|
|00002780| 55 54 55 52 45 3a 09 66 | 69 6c 74 65 72 4c 69 6e |UTURE:.f|ilterLin|
|00002790| 65 73 20 6c 69 6b 65 20 | 70 65 72 6c 3a 0d 23 09 |es like |perl:.#.|
|000027a0| 72 65 70 6c 61 63 65 54 | 65 78 74 5b 61 70 70 6c |replaceT|ext[appl|
|000027b0| 79 5f 74 6f 5f 61 6c 6c | 28 63 6d 64 2c 73 70 6c |y_to_all|(cmd,spl|
|000027c0| 69 74 20 5b 67 65 74 54 | 65 78 74 20 5b 67 65 74 |it [getT|ext [get|
|000027d0| 50 6f 73 5d 20 5b 73 65 | 6c 45 6e 64 5d 5d 20 22 |Pos] [se|lEnd]] "|
|000027e0| 5c 72 22 29 5d 0d 23 20 | 4f 52 3a 09 72 65 70 6c |\r")].# |OR:.repl|
|000027f0| 61 63 65 49 6e 52 65 67 | 69 6f 6e 3a 20 64 75 70 |aceInReg|ion: dup|
|00002800| 5f 5c 72 2c 20 24 3d 3e | 5c 72 20 3f 3f 0d 23 0d |_\r, $=>|\r ??.#.|
|00002810| 0d 0d 23 0d 23 20 52 65 | 6d 6f 76 65 20 74 65 78 |..#.# Re|move tex|
|00002820| 74 20 66 72 6f 6d 20 77 | 69 6e 64 6f 77 2c 20 74 |t from w|indow, t|
|00002830| 72 61 6e 73 66 6f 72 6d | 20 28 64 65 6c 65 74 65 |ransform| (delete|
|00002840| 20 64 75 70 20 77 73 29 | 2c 20 69 6e 73 65 72 74 | dup ws)|, insert|
|00002850| 20 62 61 63 6b 20 69 6e | 74 6f 20 77 69 6e 64 6f | back in|to windo|
|00002860| 77 2e 0d 23 0d 23 20 69 | 6e 70 75 74 73 3a 20 6d |w..#.# i|nputs: m|
|00002870| 65 73 73 61 67 65 2c 20 | 61 6c 65 72 74 6e 6f 74 |essage, |alertnot|
|00002880| 65 2c 20 61 73 6b 79 65 | 73 6e 6f 2c 20 6c 69 73 |e, askye|sno, lis|
|00002890| 74 70 69 63 6b 2c 20 70 | 72 6f 6d 70 74 20 4b 49 |tpick, p|rompt KI|
|000028a0| 4c 4c 53 20 53 45 4c 45 | 43 54 49 4f 4e 2e 0d 23 |LLS SELE|CTION..#|
|000028b0| 20 73 65 61 72 63 68 3a | 20 62 6e 64 73 20 3d 20 | search:| bnds = |
|000028c0| 73 65 61 72 63 68 20 2d | 66 6f 72 77 61 72 64 20 |search -|forward |
|000028d0| 2d 72 65 67 45 78 70 72 | 20 2d 69 67 6e 6f 72 65 |-regExpr| -ignore|
|000028e0| 43 61 73 65 20 2d 6d 61 | 74 63 68 57 6f 72 64 73 |Case -ma|tchWords|
|000028f0| 20 2d 6e 6f 61 62 6f 72 | 74 20 0d 23 09 09 2d 6c | -noabor|t .#..-l|
|00002900| 20 6c 69 6d 69 74 20 70 | 61 74 20 70 6f 73 0d 23 | limit p|at pos.#|
|00002910| 20 0d 70 72 6f 63 20 72 | 65 67 73 75 62 49 6e 52 | .proc r|egsubInR|
|00002920| 65 67 69 6f 6e 20 7b 66 | 72 6f 6d 20 74 6f 20 73 |egion {f|rom to s|
|00002930| 72 63 68 20 72 65 70 6c | 7d 20 7b 0d 09 69 66 20 |rch repl|} {..if |
|00002940| 7b 21 5b 73 74 72 69 6e | 67 20 6c 65 6e 67 74 68 |{![strin|g length|
|00002950| 20 24 73 72 63 68 5d 7d | 20 72 65 74 75 72 6e 0d | $srch]}| return.|
|00002960| 09 69 66 20 7b 24 66 72 | 6f 6d 20 3e 3d 20 24 74 |.if {$fr|om >= $t|
|00002970| 6f 7d 20 72 65 74 75 72 | 6e 0d 09 73 65 74 20 74 |o} retur|n..set t|
|00002980| 65 78 74 20 5b 67 65 74 | 54 65 78 74 20 24 66 72 |ext [get|Text $fr|
|00002990| 6f 6d 20 24 74 6f 5d 0d | 09 72 65 67 73 75 62 20 |om $to].|.regsub |
|000029a0| 2d 61 6c 6c 20 22 24 73 | 72 63 68 22 20 24 74 65 |-all "$s|rch" $te|
|000029b0| 78 74 20 22 24 72 65 70 | 6c 22 20 74 65 78 74 0d |xt "$rep|l" text.|
|000029c0| 09 72 65 70 6c 61 63 65 | 54 65 78 74 20 24 66 72 |.replace|Text $fr|
|000029d0| 6f 6d 20 24 74 6f 20 24 | 74 65 78 74 0d 7d 0d 23 |om $to $|text.}.#|
|000029e0| 09 77 68 69 6c 65 20 7b | 28 24 70 6f 73 20 3c 20 |.while {|($pos < |
|000029f0| 24 74 6f 29 20 26 26 0d | 23 09 09 20 20 21 5b 63 |$to) &&.|#.. ![c|
|00002a00| 61 74 63 68 20 7b 73 65 | 61 72 63 68 20 2d 73 20 |atch {se|arch -s |
|00002a10| 2d 66 20 31 20 2d 72 20 | 31 20 2d 69 20 31 20 2d |-f 1 -r |1 -i 1 -|
|00002a20| 6d 20 30 20 22 24 73 72 | 63 68 22 20 24 70 6f 73 |m 0 "$sr|ch" $pos|
|00002a30| 7d 20 6d 74 63 68 5d 7d | 20 7b 0d 23 09 09 73 65 |} mtch]}| {.#..se|
|00002a40| 74 20 6d 62 65 67 20 5b | 6c 69 6e 64 65 78 20 24 |t mbeg [|lindex $|
|00002a50| 6d 74 63 68 20 30 5d 0d | 23 09 09 73 65 74 20 70 |mtch 0].|#..set p|
|00002a60| 6f 73 20 5b 6c 69 6e 64 | 65 78 20 24 6d 74 63 68 |os [lind|ex $mtch|
|00002a70| 20 31 5d 0d 23 09 09 72 | 65 70 6c 61 63 65 54 65 | 1].#..r|eplaceTe|
|00002a80| 78 74 20 24 6d 62 65 67 | 20 24 70 6f 73 20 24 72 |xt $mbeg| $pos $r|
|00002a90| 65 70 6c 20 7d 0d 0d 23 | 70 72 6f 63 20 62 61 63 |epl }..#|proc bac|
|00002aa0| 6b 53 6c 61 73 68 53 75 | 62 20 7b 61 72 67 7d 20 |kSlashSu|b {arg} |
|00002ab0| 7b 20 65 76 61 6c 20 5b | 63 6f 6e 63 61 74 20 72 |{ eval [|concat r|
|00002ac0| 65 74 75 72 6e 20 22 5c | 22 24 61 72 67 5c 22 22 |eturn "\|"$arg\""|
|00002ad0| 5d 20 7d 0d 0d 70 72 6f | 63 20 62 61 63 6b 53 6c |] }..pro|c backSl|
|00002ae0| 61 73 68 53 75 62 20 7b | 61 72 67 7d 20 7b 0d 09 |ashSub {|arg} {..|
|00002af0| 72 65 67 73 75 62 20 2d | 61 6c 6c 20 7b 5c 5c 7d |regsub -|all {\\}|
|00002b00| 20 24 61 72 67 20 7b 5c | 5c 5c 5c 7d 20 61 72 67 | $arg {\|\\\} arg|
|00002b10| 0d 09 72 65 67 73 75 62 | 20 2d 61 6c 6c 20 7b 5c |..regsub| -all {\|
|00002b20| 5b 7d 20 24 61 72 67 20 | 7b 5c 5c 5b 7d 20 61 72 |[} $arg |{\\[} ar|
|00002b30| 67 0d 09 72 65 67 73 75 | 62 20 2d 61 6c 6c 20 7b |g..regsu|b -all {|
|00002b40| 5c 5d 7d 20 24 61 72 67 | 20 7b 5c 5c 5d 7d 20 61 |\]} $arg| {\\]} a|
|00002b50| 72 67 0d 09 65 76 61 6c | 20 5b 63 6f 6e 63 61 74 |rg..eval| [concat|
|00002b60| 20 72 65 74 75 72 6e 20 | 22 5c 22 24 61 72 67 5c | return |"\"$arg\|
|00002b70| 22 22 5d 0d 7d 0d 0d 70 | 72 6f 63 20 72 65 70 6c |""].}..p|roc repl|
|00002b80| 61 63 65 49 6e 52 65 67 | 69 6f 6e 20 7b 7d 20 7b |aceInReg|ion {} {|
|00002b90| 0d 09 69 66 20 5b 63 61 | 74 63 68 20 7b 70 72 6f |..if [ca|tch {pro|
|00002ba0| 6d 70 74 20 22 53 65 61 | 72 63 68 20 52 65 67 45 |mpt "Sea|rch RegE|
|00002bb0| 78 70 72 3a 22 20 22 22 | 7d 20 73 72 63 68 5d 20 |xpr:" ""|} srch] |
|00002bc0| 72 65 74 75 72 6e 0d 09 | 69 66 20 5b 63 61 74 63 |return..|if [catc|
|00002bd0| 68 20 7b 70 72 6f 6d 70 | 74 20 22 52 65 70 6c 61 |h {promp|t "Repla|
|00002be0| 63 65 20 53 74 72 69 6e | 67 3a 22 20 22 22 7d 20 |ce Strin|g:" ""} |
|00002bf0| 72 65 70 6c 5d 20 72 65 | 74 75 72 6e 0d 09 69 66 |repl] re|turn..if|
|00002c00| 20 7b 21 5b 73 74 72 69 | 6e 67 20 6c 65 6e 67 74 | {![stri|ng lengt|
|00002c10| 68 20 24 73 72 63 68 5d | 7d 20 72 65 74 75 72 6e |h $srch]|} return|
|00002c20| 0d 09 72 65 67 73 75 62 | 49 6e 52 65 67 69 6f 6e |..regsub|InRegion|
|00002c30| 20 5b 67 65 74 50 6f 73 | 5d 20 5b 73 65 6c 45 6e | [getPos|] [selEn|
|00002c40| 64 5d 20 5c 0d 09 09 5b | 62 61 63 6b 53 6c 61 73 |d] \...[|backSlas|
|00002c50| 68 53 75 62 20 22 24 73 | 72 63 68 22 5d 20 5b 62 |hSub "$s|rch"] [b|
|00002c60| 61 63 6b 53 6c 61 73 68 | 53 75 62 20 22 24 72 65 |ackSlash|Sub "$re|
|00002c70| 70 6c 22 5d 0d 7d 0d 0d | 23 0d 23 20 41 70 70 6c |pl"].}..|#.# Appl|
|00002c80| 79 20 63 6f 6d 6d 61 6e | 64 20 74 6f 20 65 61 63 |y comman|d to eac|
|00002c90| 68 20 6c 69 6e 65 20 28 | 6f 72 20 70 61 72 61 67 |h line (|or parag|
|00002ca0| 72 61 70 68 29 20 69 6e | 20 73 65 6c 65 63 74 69 |raph) in| selecti|
|00002cb0| 6f 6e 20 3b 0d 23 09 69 | 66 20 6e 6f 20 63 6d 64 |on ;.#.i|f no cmd|
|00002cc0| 20 61 72 67 20 74 68 65 | 6e 20 70 72 6f 6d 70 74 | arg the|n prompt|
|00002cd0| 73 20 66 6f 72 20 69 74 | 0d 23 0d 70 72 6f 63 20 |s for it|.#.proc |
|00002ce0| 66 69 6c 74 65 72 4c 69 | 6e 65 73 20 7b 7b 63 6d |filterLi|nes {{cm|
|00002cf0| 64 20 30 7d 20 7b 70 61 | 72 75 6e 69 74 20 30 7d |d 0} {pa|runit 0}|
|00002d00| 7d 20 7b 0d 09 69 66 20 | 7b 24 63 6d 64 20 3d 3d |} {..if |{$cmd ==|
|00002d10| 20 30 7d 20 7b 0d 09 20 | 20 69 66 20 7b 5b 63 61 | 0} {.. | if {[ca|
|00002d20| 74 63 68 20 7b 20 70 72 | 6f 6d 70 74 20 22 4c 69 |tch { pr|ompt "Li|
|00002d30| 6e 65 2d 66 69 6c 74 65 | 72 20 63 6f 6d 6d 61 6e |ne-filte|r comman|
|00002d40| 64 3a 20 22 20 22 22 20 | 7d 20 63 6d 64 5d 7d 20 |d: " "" |} cmd]} |
|00002d50| 7b 20 72 65 74 75 72 6e | 20 7d 20 7d 0d 09 69 66 |{ return| } }..if|
|00002d60| 20 7b 21 5b 73 74 72 69 | 6e 67 20 6c 65 6e 67 74 | {![stri|ng lengt|
|00002d70| 68 20 24 63 6d 64 5d 7d | 20 72 65 74 75 72 6e 0d |h $cmd]}| return.|
|00002d80| 09 73 65 74 20 75 6e 69 | 74 53 74 61 72 74 20 6c |.set uni|tStart l|
|00002d90| 69 6e 65 53 74 61 72 74 | 0d 09 73 65 74 20 75 6e |ineStart|..set un|
|00002da0| 69 74 45 6e 64 20 6e 65 | 78 74 4c 69 6e 65 53 74 |itEnd ne|xtLineSt|
|00002db0| 61 72 74 0d 09 69 66 20 | 7b 24 70 61 72 75 6e 69 |art..if |{$paruni|
|00002dc0| 74 7d 20 7b 0d 09 09 73 | 65 74 20 75 6e 69 74 53 |t} {...s|et unitS|
|00002dd0| 74 61 72 74 20 70 61 72 | 61 53 74 61 72 74 0d 09 |tart par|aStart..|
|00002de0| 09 73 65 74 20 75 6e 69 | 74 45 6e 64 20 70 61 72 |.set uni|tEnd par|
|00002df0| 61 46 69 6e 69 73 68 20 | 7d 0d 09 73 65 74 20 70 |aFinish |}..set p|
|00002e00| 6f 73 20 5b 24 75 6e 69 | 74 53 74 61 72 74 20 5b |os [$uni|tStart [|
|00002e10| 67 65 74 50 6f 73 5d 5d | 0d 09 73 65 74 20 66 69 |getPos]]|..set fi|
|00002e20| 6e 69 73 68 20 5b 73 65 | 6c 45 6e 64 5d 0d 09 69 |nish [se|lEnd]..i|
|00002e30| 66 20 7b 24 70 6f 73 20 | 3e 3d 20 24 66 69 6e 69 |f {$pos |>= $fini|
|00002e40| 73 68 7d 20 72 65 74 75 | 72 6e 0d 09 67 6f 74 6f |sh} retu|rn..goto|
|00002e50| 20 24 70 6f 73 0d 09 63 | 72 65 61 74 65 54 4d 61 | $pos..c|reateTMa|
|00002e60| 72 6b 20 22 66 69 6c 74 | 65 72 4c 65 6e 64 22 20 |rk "filt|erLend" |
|00002e70| 24 66 69 6e 69 73 68 0d | 09 73 65 74 20 6e 65 78 |$finish.|.set nex|
|00002e80| 74 20 5b 24 75 6e 69 74 | 45 6e 64 20 24 70 6f 73 |t [$unit|End $pos|
|00002e90| 5d 0d 09 77 68 69 6c 65 | 20 7b 28 28 24 6e 65 78 |]..while| {(($nex|
|00002ea0| 74 20 3e 20 24 70 6f 73 | 29 20 26 26 20 28 24 70 |t > $pos|) && ($p|
|00002eb0| 6f 73 20 3c 20 24 66 69 | 6e 69 73 68 29 29 7d 20 |os < $fi|nish))} |
|00002ec0| 7b 0d 09 09 67 6f 74 6f | 20 5b 65 78 70 72 20 24 |{...goto| [expr $|
|00002ed0| 6e 65 78 74 2d 31 5d 0d | 09 09 63 72 65 61 74 65 |next-1].|..create|
|00002ee0| 54 4d 61 72 6b 20 22 66 | 69 6c 74 65 72 4c 6e 65 |TMark "f|ilterLne|
|00002ef0| 78 74 22 20 24 6e 65 78 | 74 0d 09 09 73 65 74 4d |xt" $nex|t...setM|
|00002f00| 61 72 6b 0d 09 09 67 6f | 74 6f 20 24 70 6f 73 0d |ark...go|to $pos.|
|00002f10| 09 09 6d 61 72 6b 48 69 | 6c 69 74 65 0d 09 09 69 |..markHi|lite...i|
|00002f20| 66 20 7b 5b 63 61 74 63 | 68 20 5b 6c 69 73 74 20 |f {[catc|h [list |
|00002f30| 75 70 6c 65 76 65 6c 20 | 23 30 20 22 24 63 6d 64 |uplevel |#0 "$cmd|
|00002f40| 22 5d 20 72 65 74 76 61 | 6c 5d 7d 20 7b 0d 09 09 |"] retva|l]} {...|
|00002f50| 09 73 65 6c 65 63 74 20 | 24 70 6f 73 20 24 66 69 |.select |$pos $fi|
|00002f60| 6e 69 73 68 0d 09 09 09 | 61 6c 65 72 74 6e 6f 74 |nish....|alertnot|
|00002f70| 65 20 24 72 65 74 76 61 | 6c 0d 09 09 09 72 65 74 |e $retva|l....ret|
|00002f80| 75 72 6e 0d 09 09 7d 0d | 09 09 69 66 20 7b 24 6e |urn...}.|..if {$n|
|00002f90| 65 78 74 3d 3d 24 66 69 | 6e 69 73 68 7d 20 62 72 |ext==$fi|nish} br|
|00002fa0| 65 61 6b 0d 09 09 73 65 | 74 20 69 6e 64 20 5b 6c |eak...se|t ind [l|
|00002fb0| 73 65 61 72 63 68 20 2d | 72 65 67 65 78 70 20 5b |search -|regexp [|
|00002fc0| 6c 69 6e 64 65 78 20 5b | 67 65 74 54 4d 61 72 6b |lindex [|getTMark|
|00002fd0| 73 5d 20 30 5d 20 22 66 | 69 6c 74 65 72 4c 65 6e |s] 0] "f|ilterLen|
|00002fe0| 64 2e 2a 22 5d 0d 09 09 | 73 65 74 20 66 69 6e 69 |d.*"]...|set fini|
|00002ff0| 73 68 20 5b 6c 69 6e 64 | 65 78 20 5b 6c 69 6e 64 |sh [lind|ex [lind|
|00003000| 65 78 20 5b 6c 69 6e 64 | 65 78 20 5b 67 65 74 54 |ex [lind|ex [getT|
|00003010| 4d 61 72 6b 73 5d 20 30 | 5d 20 24 69 6e 64 5d 20 |Marks] 0|] $ind] |
|00003020| 32 5d 0d 09 09 67 6f 74 | 6f 54 4d 61 72 6b 20 22 |2]...got|oTMark "|
|00003030| 66 69 6c 74 65 72 4c 6e | 65 78 74 22 0d 09 09 73 |filterLn|ext"...s|
|00003040| 65 74 20 70 6f 73 20 5b | 24 75 6e 69 74 53 74 61 |et pos [|$unitSta|
|00003050| 72 74 20 5b 67 65 74 50 | 6f 73 5d 5d 0d 09 09 73 |rt [getP|os]]...s|
|00003060| 65 74 20 6e 65 78 74 20 | 5b 24 75 6e 69 74 45 6e |et next |[$unitEn|
|00003070| 64 20 24 70 6f 73 5d 0d | 09 7d 0d 09 72 65 6d 6f |d $pos].|.}..remo|
|00003080| 76 65 54 4d 61 72 6b 20 | 22 66 69 6c 74 65 72 4c |veTMark |"filterL|
|00003090| 65 6e 64 22 0d 09 72 65 | 6d 6f 76 65 54 4d 61 72 |end"..re|moveTMar|
|000030a0| 6b 20 22 66 69 6c 74 65 | 72 4c 6e 65 78 74 22 0d |k "filte|rLnext".|
|000030b0| 7d 0d 0d 0d 70 72 6f 63 | 20 66 69 6c 74 65 72 50 |}...proc| filterP|
|000030c0| 61 72 61 67 72 61 70 68 | 73 20 7b 7b 63 6d 64 20 |aragraph|s {{cmd |
|000030d0| 30 7d 7d 20 7b 20 66 69 | 6c 74 65 72 4c 69 6e 65 |0}} { fi|lterLine|
|000030e0| 73 20 24 63 6d 64 20 31 | 20 7d 0d 0d 23 20 57 41 |s $cmd 1| }..# WA|
|000030f0| 52 4e 49 4e 47 3a 20 64 | 65 73 65 6c 65 63 74 69 |RNING: d|eselecti|
|00003100| 6e 67 20 73 65 74 73 20 | 74 68 65 20 6d 61 72 6b |ng sets |the mark|
|00003110| 20 74 6f 20 73 65 6c 45 | 6e 64 0d 70 72 6f 63 20 | to selE|nd.proc |
|00003120| 73 6f 72 74 50 61 72 61 | 67 72 61 70 68 73 20 7b |sortPara|graphs {|
|00003130| 7b 66 72 6f 6d 20 2d 31 | 7d 20 7b 74 6f 20 2d 31 |{from -1|} {to -1|
|00003140| 7d 7d 20 7b 0d 09 69 66 | 20 7b 28 24 66 72 6f 6d |}} {..if| {($from|
|00003150| 20 3c 20 30 29 20 7c 7c | 20 28 24 74 6f 20 3c 20 | < 0) ||| ($to < |
|00003160| 30 29 7d 20 7b 09 73 65 | 74 20 66 72 6f 6d 20 5b |0)} {.se|t from [|
|00003170| 67 65 74 50 6f 73 5d 20 | 3b 20 73 65 74 20 74 6f |getPos] |; set to|
|00003180| 20 5b 73 65 6c 45 6e 64 | 5d 20 7d 0d 09 69 66 20 | [selEnd|] }..if |
|00003190| 7b 24 66 72 6f 6d 20 3e | 3d 20 24 74 6f 7d 20 72 |{$from >|= $to} r|
|000031a0| 65 74 75 72 6e 0d 09 6a | 6f 69 6e 52 65 67 69 6f |eturn..j|oinRegio|
|000031b0| 6e 20 7b 24 66 72 6f 6d | 20 24 74 6f 7d 0d 09 73 |n {$from| $to}..s|
|000031c0| 65 6c 65 63 74 20 5b 67 | 65 74 50 6f 73 5d 20 5b |elect [g|etPos] [|
|000031d0| 6e 65 78 74 4c 69 6e 65 | 53 74 61 72 74 20 5b 67 |nextLine|Start [g|
|000031e0| 65 74 4d 61 72 6b 5d 5d | 0d 09 73 6f 72 74 4c 69 |etMark]]|..sortLi|
|000031f0| 6e 65 73 0d 09 73 65 6c | 65 63 74 20 5b 67 65 74 |nes..sel|ect [get|
|00003200| 50 6f 73 5d 20 5b 67 65 | 74 50 6f 73 5d 0d 09 72 |Pos] [ge|tPos]..r|
|00003210| 65 67 73 75 62 49 6e 52 | 65 67 69 6f 6e 20 5b 67 |egsubInR|egion [g|
|00003220| 65 74 50 6f 73 5d 20 5b | 67 65 74 4d 61 72 6b 5d |etPos] [|getMark]|
|00003230| 20 22 5c 72 22 20 22 5c | 72 5c 72 22 20 0d 09 77 | "\r" "\|r\r" ..w|
|00003240| 72 61 70 52 65 67 69 6f | 6e 0d 7d 0d 0d 23 0d 23 |rapRegio|n.}..#.#|
|00003250| 20 53 61 6d 70 6c 65 0d | 23 0d 70 72 6f 63 20 66 | Sample.|#.proc f|
|00003260| 69 6c 74 65 72 52 65 67 | 69 6f 6e 20 7b 7b 66 72 |ilterReg|ion {{fr|
|00003270| 6f 6d 20 2d 31 7d 20 7b | 74 6f 20 2d 31 7d 20 7b |om -1} {|to -1} {|
|00003280| 63 6d 64 20 30 7d 20 7b | 6e 65 77 77 69 6e 20 30 |cmd 0} {|newwin 0|
|00003290| 7d 7d 20 7b 0d 09 69 66 | 20 7b 24 63 6d 64 20 3d |}} {..if| {$cmd =|
|000032a0| 3d 20 30 7d 20 7b 0d 09 | 20 20 69 66 20 7b 5b 63 |= 0} {..| if {[c|
|000032b0| 61 74 63 68 20 7b 20 70 | 72 6f 6d 70 74 20 22 45 |atch { p|rompt "E|
|000032c0| 76 61 6c 20 63 6f 6d 6d | 61 6e 64 3a 20 22 20 22 |val comm|and: " "|
|000032d0| 22 20 7d 20 63 6d 64 5d | 7d 20 7b 20 72 65 74 75 |" } cmd]|} { retu|
|000032e0| 72 6e 20 7d 0d 09 7d 0d | 09 69 66 20 7b 21 5b 73 |rn }..}.|.if {![s|
|000032f0| 74 72 69 6e 67 20 6c 65 | 6e 67 74 68 20 24 63 6d |tring le|ngth $cm|
|00003300| 64 5d 7d 20 72 65 74 75 | 72 6e 0d 09 69 66 20 7b |d]} retu|rn..if {|
|00003310| 28 24 66 72 6f 6d 20 3c | 20 30 29 20 7c 7c 20 28 |($from <| 0) || (|
|00003320| 24 74 6f 20 3c 20 30 29 | 7d 20 7b 09 73 65 74 20 |$to < 0)|} {.set |
|00003330| 66 72 6f 6d 20 5b 67 65 | 74 50 6f 73 5d 20 3b 20 |from [ge|tPos] ; |
|00003340| 73 65 74 20 74 6f 20 5b | 73 65 6c 45 6e 64 5d 20 |set to [|selEnd] |
|00003350| 7d 0d 09 69 66 20 7b 24 | 66 72 6f 6d 20 3e 3d 20 |}..if {$|from >= |
|00003360| 24 74 6f 7d 20 72 65 74 | 75 72 6e 0d 09 73 65 74 |$to} ret|urn..set|
|00003370| 20 70 6f 73 20 5b 67 65 | 74 50 6f 73 5d 0d 09 73 | pos [ge|tPos]..s|
|00003380| 65 74 20 74 65 78 74 20 | 5b 67 65 74 54 65 78 74 |et text |[getText|
|00003390| 20 24 66 72 6f 6d 20 24 | 74 6f 5d 0d 09 73 65 74 | $from $|to]..set|
|000033a0| 20 74 65 78 74 20 5b 24 | 63 6d 64 20 24 74 65 78 | text [$|cmd $tex|
|000033b0| 74 5d 0d 09 72 65 70 6c | 61 63 65 54 65 78 74 20 |t]..repl|aceText |
|000033c0| 24 66 72 6f 6d 20 24 74 | 6f 20 24 74 65 78 74 20 |$from $t|o $text |
|000033d0| 22 5c 72 22 0d 09 67 6f | 74 6f 20 24 70 6f 73 0d |"\r"..go|to $pos.|
|000033e0| 7d 0d 0d 0d 23 0d 73 65 | 74 20 6c 61 73 74 45 76 |}...#.se|t lastEv|
|000033f0| 61 6c 65 64 20 22 22 0d | 70 72 6f 63 20 65 76 61 |aled "".|proc eva|
|00003400| 6c 75 61 74 65 20 7b 7d | 20 7b 0d 09 67 6c 6f 62 |luate {}| {..glob|
|00003410| 61 6c 20 6c 61 73 74 45 | 76 61 6c 65 64 0d 09 69 |al lastE|valed..i|
|00003420| 66 20 7b 5b 73 74 72 69 | 6e 67 20 6c 65 6e 67 74 |f {[stri|ng lengt|
|00003430| 68 20 24 6c 61 73 74 45 | 76 61 6c 65 64 5d 7d 20 |h $lastE|valed]} |
|00003440| 7b 0d 09 09 73 65 74 20 | 70 20 22 4d 2d 78 20 28 |{...set |p "M-x (|
|00003450| 24 6c 61 73 74 45 76 61 | 6c 65 64 29 3a 20 22 0d |$lastEva|led): ".|
|00003460| 09 7d 20 65 6c 73 65 20 | 7b 0d 09 09 73 65 74 20 |.} else |{...set |
|00003470| 70 20 22 4d 2d 78 3a 20 | 22 0d 09 7d 0d 09 69 66 |p "M-x: |"..}..if|
|00003480| 20 7b 5b 63 61 74 63 68 | 20 7b 73 74 61 74 75 73 | {[catch| {status|
|00003490| 50 72 6f 6d 70 74 20 24 | 70 7d 20 74 65 78 74 5d |Prompt $|p} text]|
|000034a0| 7d 20 7b 72 65 74 75 72 | 6e 7d 0d 09 69 66 20 7b |} {retur|n}..if {|
|000034b0| 21 5b 73 74 72 69 6e 67 | 20 6c 65 6e 67 74 68 20 |![string| length |
|000034c0| 24 74 65 78 74 5d 7d 20 | 7b 73 65 74 20 74 65 78 |$text]} |{set tex|
|000034d0| 74 20 24 6c 61 73 74 45 | 76 61 6c 65 64 7d 0d 09 |t $lastE|valed}..|
|000034e0| 24 74 65 78 74 0d 09 73 | 65 74 20 6c 61 73 74 45 |$text..s|et lastE|
|000034f0| 76 61 6c 65 64 20 24 74 | 65 78 74 0d 7d 0d 0d 0d |valed $t|ext.}...|
|00003500| 23 20 46 69 72 73 74 2c | 20 64 65 66 69 6e 65 20 |# First,| define |
|00003510| 6d 61 63 72 6f 73 20 74 | 6f 20 62 79 70 61 73 73 |macros t|o bypass|
|00003520| 20 74 68 65 20 65 6c 65 | 63 74 72 69 63 20 62 72 | the ele|ctric br|
|00003530| 61 63 65 73 2e 0d 70 72 | 6f 63 20 6f 72 64 4c 65 |aces..pr|oc ordLe|
|00003540| 66 74 42 72 61 63 65 20 | 7b 7d 20 7b 0d 09 69 6e |ftBrace |{} {..in|
|00003550| 73 65 72 74 54 65 78 74 | 20 22 09 09 5c 7b 22 0d |sertText| "..\{".|
|00003560| 7d 0d 62 69 6e 64 20 7b | 27 5b 27 7d 20 3c 63 73 |}.bind {|'['} <cs|
|00003570| 3e 20 6f 72 64 4c 65 66 | 74 42 72 61 63 65 0d 0d |> ordLef|tBrace..|
|00003580| 70 72 6f 63 20 6f 72 64 | 52 69 67 68 74 42 72 61 |proc ord|RightBra|
|00003590| 63 65 20 7b 7d 20 7b 0d | 09 69 6e 73 65 72 74 54 |ce {} {.|.insertT|
|000035a0| 65 78 74 20 22 5c 7d 22 | 0d 09 62 6c 69 6e 6b 20 |ext "\}"|..blink |
|000035b0| 5b 6d 61 74 63 68 49 74 | 20 22 5c 7d 22 20 5b 65 |[matchIt| "\}" [e|
|000035c0| 78 70 72 20 5b 67 65 74 | 50 6f 73 5d 2d 31 5d 5d |xpr [get|Pos]-1]]|
|000035d0| 0d 7d 0d 62 69 6e 64 20 | 7b 27 5d 27 7d 20 3c 63 |.}.bind |{']'} <c|
|000035e0| 73 3e 20 6f 72 64 52 69 | 67 68 74 42 72 61 63 65 |s> ordRi|ghtBrace|
|000035f0| 0d 09 0d 70 72 6f 63 20 | 71 75 6f 74 65 57 6f 72 |...proc |quoteWor|
|00003600| 64 20 7b 7d 20 7b 0d 09 | 62 61 63 6b 77 61 72 64 |d {} {..|backward|
|00003610| 57 6f 72 64 0d 09 69 6e | 73 65 72 74 54 65 78 74 |Word..in|sertText|
|00003620| 20 22 27 22 0d 09 66 6f | 72 77 61 72 64 57 6f 72 | "'"..fo|rwardWor|
|00003630| 64 0d 09 69 6e 73 65 72 | 74 54 65 78 74 20 22 27 |d..inser|tText "'|
|00003640| 22 0d 7d 0d 62 69 6e 64 | 20 27 27 27 20 3c 7a 3e |".}.bind| ''' <z>|
|00003650| 20 71 75 6f 74 65 57 6f | 72 64 0d 0d 23 3d 3d 3d | quoteWo|rd..#===|
|00003660| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003670| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003680| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00003690| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000036a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0d 70 |========|=====..p|
|000036b0| 72 6f 63 20 74 6f 6d 61 | 63 20 7b 66 6e 61 6d 65 |roc toma|c {fname|
|000036c0| 7d 20 7b 0d 09 73 65 74 | 20 66 64 20 5b 6f 70 65 |} {..set| fd [ope|
|000036d0| 6e 20 24 66 6e 61 6d 65 | 20 22 72 22 5d 0d 09 73 |n $fname| "r"]..s|
|000036e0| 65 74 20 74 65 78 74 20 | 5b 72 65 61 64 20 24 66 |et text |[read $f|
|000036f0| 64 5d 0d 09 63 6c 6f 73 | 65 20 24 66 64 0d 09 73 |d]..clos|e $fd..s|
|00003700| 65 74 20 66 64 20 5b 6f | 70 65 6e 20 24 66 6e 61 |et fd [o|pen $fna|
|00003710| 6d 65 20 22 77 22 5d 0d | 09 72 65 67 73 75 62 20 |me "w"].|.regsub |
|00003720| 22 5c 6e 22 20 24 74 65 | 78 74 20 22 5c 72 22 20 |"\n" $te|xt "\r" |
|00003730| 74 65 78 74 0d 09 70 75 | 74 73 20 2d 6e 6f 6e 65 |text..pu|ts -none|
|00003740| 77 6c 69 6e 65 20 24 66 | 64 20 24 74 65 78 74 0d |wline $f|d $text.|
|00003750| 09 63 6c 6f 73 65 20 24 | 66 64 0d 7d 0d 0d 70 72 |.close $|fd.}..pr|
|00003760| 6f 63 20 74 6f 75 6e 69 | 78 20 7b 66 6e 61 6d 65 |oc touni|x {fname|
|00003770| 7d 20 7b 0d 09 73 65 74 | 20 66 64 20 5b 6f 70 65 |} {..set| fd [ope|
|00003780| 6e 20 24 66 6e 61 6d 65 | 20 22 72 22 5d 0d 09 73 |n $fname| "r"]..s|
|00003790| 65 74 20 74 65 78 74 20 | 5b 72 65 61 64 20 24 66 |et text |[read $f|
|000037a0| 64 5d 0d 09 63 6c 6f 73 | 65 20 24 66 64 0d 09 73 |d]..clos|e $fd..s|
|000037b0| 65 74 20 66 64 20 5b 6f | 70 65 6e 20 24 66 6e 61 |et fd [o|pen $fna|
|000037c0| 6d 65 20 22 77 22 5d 0d | 09 72 65 67 73 75 62 20 |me "w"].|.regsub |
|000037d0| 22 5c 72 22 20 24 74 65 | 78 74 20 22 5c 6e 22 20 |"\r" $te|xt "\n" |
|000037e0| 74 65 78 74 0d 09 70 75 | 74 73 20 2d 6e 6f 6e 65 |text..pu|ts -none|
|000037f0| 77 6c 69 6e 65 20 24 66 | 64 20 24 74 65 78 74 0d |wline $f|d $text.|
|00003800| 09 63 6c 6f 73 65 20 24 | 66 64 0d 7d 0d 0d 0d 70 |.close $|fd.}...p|
|00003810| 72 6f 63 20 63 61 74 20 | 61 72 67 73 20 7b 0d 09 |roc cat |args {..|
|00003820| 73 65 74 20 66 69 6c 65 | 73 20 22 22 0d 09 66 6f |set file|s ""..fo|
|00003830| 72 65 61 63 68 20 61 20 | 24 61 72 67 73 20 7b 0d |reach a |$args {.|
|00003840| 09 09 66 6f 72 65 61 63 | 68 20 66 20 5b 67 6c 6f |..foreac|h f [glo|
|00003850| 62 20 24 61 5d 20 7b 0d | 09 09 09 6c 61 70 70 65 |b $a] {.|...lappe|
|00003860| 6e 64 20 66 69 6c 65 73 | 20 24 66 0d 09 09 7d 0d |nd files| $f...}.|
|00003870| 09 7d 0d 09 66 6f 72 65 | 61 63 68 20 66 20 24 66 |.}..fore|ach f $f|
|00003880| 69 6c 65 73 20 7b 0d 09 | 09 61 70 70 65 6e 64 20 |iles {..|.append |
|00003890| 74 65 78 74 20 22 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |text "==|========|
|000038a0| 3d 3d 3d 3d 3c 24 66 3e | 3d 3d 3d 3d 3d 3d 3d 3d |====<$f>|========|
|000038b0| 3d 3d 3d 3d 3d 3d 5c 72 | 22 0d 09 09 73 65 74 20 |======\r|"...set |
|000038c0| 66 64 20 5b 6f 70 65 6e | 20 24 66 20 22 72 22 5d |fd [open| $f "r"]|
|000038d0| 0d 09 09 61 70 70 65 6e | 64 20 74 65 78 74 20 22 |...appen|d text "|
|000038e0| 5b 72 65 61 64 20 24 66 | 64 5d 5c 72 5c 72 22 0d |[read $f|d]\r\r".|
|000038f0| 09 09 63 6c 6f 73 65 20 | 24 66 64 0d 09 7d 0d 09 |..close |$fd..}..|
|00003900| 72 65 74 75 72 6e 20 24 | 74 65 78 74 0d 7d 0d 0d |return $|text.}..|
|00003910| 70 72 6f 63 20 63 61 74 | 74 6f 20 61 72 67 73 20 |proc cat|to args |
|00003920| 7b 0d 09 73 65 74 20 6c | 65 6e 20 5b 6c 6c 65 6e |{..set l|en [llen|
|00003930| 67 74 68 20 24 61 72 67 | 73 5d 0d 09 73 65 74 20 |gth $arg|s]..set |
|00003940| 74 6f 20 5b 6c 69 6e 64 | 65 78 20 24 61 72 67 73 |to [lind|ex $args|
|00003950| 20 5b 65 78 70 72 20 24 | 6c 65 6e 20 2d 31 5d 5d | [expr $|len -1]]|
|00003960| 0d 09 73 65 74 20 61 72 | 67 73 20 5b 6c 72 61 6e |..set ar|gs [lran|
|00003970| 67 65 20 24 61 72 67 73 | 20 30 20 5b 65 78 70 72 |ge $args| 0 [expr|
|00003980| 20 24 6c 65 6e 20 2d 32 | 5d 5d 0d 0d 09 73 65 74 | $len -2|]]...set|
|00003990| 20 66 69 6c 65 73 20 22 | 22 0d 09 66 6f 72 65 61 | files "|"..forea|
|000039a0| 63 68 20 61 20 24 61 72 | 67 73 20 7b 0d 09 09 66 |ch a $ar|gs {...f|
|000039b0| 6f 72 65 61 63 68 20 66 | 20 5b 67 6c 6f 62 20 24 |oreach f| [glob $|
|000039c0| 61 5d 20 7b 0d 09 09 09 | 6c 61 70 70 65 6e 64 20 |a] {....|lappend |
|000039d0| 66 69 6c 65 73 20 24 66 | 0d 09 09 7d 0d 09 7d 0d |files $f|...}..}.|
|000039e0| 09 66 6f 72 65 61 63 68 | 20 66 20 24 66 69 6c 65 |.foreach| f $file|
|000039f0| 73 20 7b 0d 09 09 61 70 | 70 65 6e 64 20 74 65 78 |s {...ap|pend tex|
|00003a00| 74 20 22 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |t "=====|========|
|00003a10| 3d 3c 24 66 3e 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |=<$f>===|========|
|00003a20| 3d 3d 3d 5c 72 22 0d 09 | 09 73 65 74 20 66 64 20 |===\r"..|.set fd |
|00003a30| 5b 6f 70 65 6e 20 24 66 | 20 22 72 22 5d 0d 09 09 |[open $f| "r"]...|
|00003a40| 61 70 70 65 6e 64 20 74 | 65 78 74 20 22 5b 72 65 |append t|ext "[re|
|00003a50| 61 64 20 24 66 64 5d 5c | 72 5c 72 22 0d 09 09 63 |ad $fd]\|r\r"...c|
|00003a60| 6c 6f 73 65 20 24 66 64 | 0d 09 7d 0d 0d 09 73 65 |lose $fd|..}...se|
|00003a70| 74 20 64 66 69 6c 65 20 | 24 74 6f 0d 09 69 66 20 |t dfile |$to..if |
|00003a80| 7b 5b 66 69 6c 65 20 65 | 78 69 73 74 73 20 24 64 |{[file e|xists $d|
|00003a90| 66 69 6c 65 5d 7d 20 7b | 0d 09 09 73 65 74 20 66 |file]} {|...set f|
|00003aa0| 69 64 20 5b 6f 70 65 6e | 20 24 64 66 69 6c 65 20 |id [open| $dfile |
|00003ab0| 22 61 22 5d 0d 09 7d 20 | 65 6c 73 65 20 7b 0d 09 |"a"]..} |else {..|
|00003ac0| 09 73 65 74 20 66 69 64 | 20 5b 6f 70 65 6e 20 24 |.set fid| [open $|
|00003ad0| 64 66 69 6c 65 20 22 77 | 22 5d 0d 09 7d 0d 09 70 |dfile "w|"]..}..p|
|00003ae0| 75 74 73 20 24 66 69 64 | 20 24 74 65 78 74 0d 09 |uts $fid| $text..|
|00003af0| 63 6c 6f 73 65 20 24 66 | 69 64 0d 7d 0d 0d 0d 23 |close $f|id.}...#|
|00003b00| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00003b10| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00003b20| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00003b30| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00003b40| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 0d 23 20 |########|#####.# |
|00003b50| 20 54 6f 20 62 65 20 75 | 73 65 64 20 69 6e 20 74 | To be u|sed in t|
|00003b60| 68 65 20 77 69 6e 64 6f | 77 73 20 63 72 65 61 74 |he windo|ws creat|
|00003b70| 65 64 20 62 79 20 22 6d | 61 74 63 68 69 6e 67 4c |ed by "m|atchingL|
|00003b80| 69 6e 65 73 22 20 6f 72 | 20 62 79 20 62 61 74 63 |ines" or| by batc|
|00003b90| 68 20 73 65 61 72 63 68 | 65 73 2e 0d 23 0d 23 20 |h search|es..#.# |
|00003ba0| 20 57 69 74 68 20 74 68 | 65 20 63 75 72 73 6f 72 | With th|e cursor|
|00003bb0| 20 70 6f 73 69 74 69 6f | 6e 65 64 20 69 6e 20 61 | positio|ned in a|
|00003bc0| 20 6c 69 6e 65 20 63 6f | 72 72 73 70 6f 6e 64 69 | line co|rrspondi|
|00003bd0| 6e 67 20 74 6f 20 61 20 | 6d 61 74 63 68 2c 20 0d |ng to a |match, .|
|00003be0| 23 20 20 67 6f 20 62 61 | 63 6b 20 61 6e 64 20 73 |# go ba|ck and s|
|00003bf0| 65 6c 65 63 74 20 74 68 | 65 20 6c 69 6e 65 20 69 |elect th|e line i|
|00003c00| 6e 20 74 68 65 20 6f 72 | 69 67 69 6e 61 6c 20 66 |n the or|iginal f|
|00003c10| 69 6c 65 20 74 68 61 74 | 20 0d 23 20 20 67 65 6e |ile that| .# gen|
|00003c20| 65 72 61 74 65 64 20 74 | 68 69 73 20 6d 61 74 63 |erated t|his matc|
|00003c30| 68 2e 20 20 28 4c 69 6b | 65 20 65 6d 61 63 73 20 |h. (Lik|e emacs |
|00003c40| 27 4f 63 63 75 72 27 20 | 66 75 6e 63 74 69 6f 6e |'Occur' |function|
|00003c50| 61 6c 69 74 79 29 0d 23 | 0d 70 72 6f 63 20 67 6f |ality).#|.proc go|
|00003c60| 74 6f 4d 61 74 63 68 20 | 7b 7d 20 7b 0d 09 69 66 |toMatch |{} {..if|
|00003c70| 20 7b 5b 73 74 72 69 6e | 67 20 6d 61 74 63 68 20 | {[strin|g match |
|00003c80| 22 2a 4d 41 49 4c 42 4f | 58 2a 22 20 5b 6c 69 6e |"*MAILBO|X*" [lin|
|00003c90| 64 65 78 20 5b 77 69 6e | 4e 61 6d 65 73 5d 20 30 |dex [win|Names] 0|
|00003ca0| 5d 5d 7d 20 7b 0d 09 09 | 6d 61 69 6c 47 6f 74 6f |]]} {...|mailGoto|
|00003cb0| 4d 61 74 63 68 0d 09 09 | 72 65 74 75 72 6e 0d 09 |Match...|return..|
|00003cc0| 7d 0d 09 67 6c 6f 62 61 | 6c 20 74 69 6c 65 48 65 |}..globa|l tileHe|
|00003cd0| 69 67 68 74 20 74 69 6c | 65 57 69 64 74 68 20 74 |ight til|eWidth t|
|00003ce0| 69 6c 65 54 6f 70 20 74 | 69 6c 65 4c 65 66 74 20 |ileTop t|ileLeft |
|00003cf0| 74 69 6c 65 48 65 69 67 | 68 74 20 65 72 72 6f 72 |tileHeig|ht error|
|00003d00| 48 65 69 67 68 74 20 65 | 72 72 6f 72 44 69 73 70 |Height e|rrorDisp|
|00003d10| 20 74 69 6c 65 4d 61 72 | 67 69 6e 0d 09 73 65 74 | tileMar|gin..set|
|00003d20| 20 65 72 72 6f 72 44 69 | 73 70 20 5b 65 78 70 72 | errorDi|sp [expr|
|00003d30| 20 28 32 20 2a 20 28 24 | 74 69 6c 65 48 65 69 67 | (2 * ($|tileHeig|
|00003d40| 68 74 20 2d 20 24 74 69 | 6c 65 4d 61 72 67 69 6e |ht - $ti|leMargin|
|00003d50| 29 29 20 2f 20 33 5d 0d | 09 73 65 74 20 74 65 78 |)) / 3].|.set tex|
|00003d60| 74 20 5b 67 65 74 54 65 | 78 74 20 5b 6c 69 6e 65 |t [getTe|xt [line|
|00003d70| 53 74 61 72 74 20 5b 67 | 65 74 50 6f 73 5d 5d 20 |Start [g|etPos]] |
|00003d80| 5b 65 78 70 72 20 5b 6e | 65 78 74 4c 69 6e 65 53 |[expr [n|extLineS|
|00003d90| 74 61 72 74 20 5b 67 65 | 74 50 6f 73 5d 5d 20 2d |tart [ge|tPos]] -|
|00003da0| 20 31 5d 5d 0d 09 73 65 | 74 20 69 6e 64 31 20 5b | 1]]..se|t ind1 [|
|00003db0| 73 74 72 69 6e 67 20 66 | 69 72 73 74 20 22 b0 22 |string f|irst "."|
|00003dc0| 20 24 74 65 78 74 5d 0d | 09 73 65 74 20 69 6e 64 | $text].|.set ind|
|00003dd0| 32 20 5b 73 74 72 69 6e | 67 20 6c 61 73 74 20 22 |2 [strin|g last "|
|00003de0| b0 22 20 24 74 65 78 74 | 5d 0d 09 69 66 20 7b 24 |." $text|]..if {$|
|00003df0| 69 6e 64 31 20 3d 3d 20 | 24 69 6e 64 32 7d 20 7b |ind1 == |$ind2} {|
|00003e00| 0d 09 09 73 65 74 20 66 | 6e 61 6d 65 20 5b 73 74 |...set f|name [st|
|00003e10| 72 69 6e 67 20 74 72 69 | 6d 20 5b 73 74 72 69 6e |ring tri|m [strin|
|00003e20| 67 20 72 61 6e 67 65 20 | 24 74 65 78 74 20 24 69 |g range |$text $i|
|00003e30| 6e 64 31 20 65 6e 64 5d | 20 7b b0 7d 5d 0d 09 09 |nd1 end]| {.}]...|
|00003e40| 73 65 74 20 6d 73 67 20 | 22 22 0d 09 7d 20 65 6c |set msg |""..} el|
|00003e50| 73 65 20 7b 0d 09 09 73 | 65 74 20 66 6e 61 6d 65 |se {...s|et fname|
|00003e60| 20 5b 73 74 72 69 6e 67 | 20 74 72 69 6d 20 5b 73 | [string| trim [s|
|00003e70| 74 72 69 6e 67 20 72 61 | 6e 67 65 20 24 74 65 78 |tring ra|nge $tex|
|00003e80| 74 20 24 69 6e 64 31 20 | 24 69 6e 64 32 5d 20 7b |t $ind1 |$ind2] {|
|00003e90| b0 7d 5d 0d 09 09 73 65 | 74 20 6d 73 67 20 5b 73 |.}]...se|t msg [s|
|00003ea0| 74 72 69 6e 67 20 74 72 | 69 6d 20 5b 73 74 72 69 |tring tr|im [stri|
|00003eb0| 6e 67 20 72 61 6e 67 65 | 20 24 74 65 78 74 20 24 |ng range| $text $|
|00003ec0| 69 6e 64 32 20 65 6e 64 | 5d 20 7b b0 7d 5d 0d 09 |ind2 end|] {.}]..|
|00003ed0| 7d 0d 09 0d 09 73 65 74 | 20 74 6f 70 20 24 74 69 |}....set| top $ti|
|00003ee0| 6c 65 54 6f 70 0d 09 73 | 65 74 20 67 65 6f 20 5b |leTop..s|et geo [|
|00003ef0| 67 65 74 47 65 6f 6d 65 | 74 72 79 5d 0d 09 69 66 |getGeome|try]..if|
|00003f00| 20 7b 28 5b 6c 69 6e 64 | 65 78 20 24 67 65 6f 20 | {([lind|ex $geo |
|00003f10| 30 5d 20 21 3d 20 24 74 | 69 6c 65 4c 65 66 74 29 |0] != $t|ileLeft)|
|00003f20| 20 7c 7c 20 28 5b 6c 69 | 6e 64 65 78 20 24 67 65 | || ([li|ndex $ge|
|00003f30| 6f 20 31 5d 20 21 3d 20 | 24 74 6f 70 29 20 7c 7c |o 1] != |$top) |||
|00003f40| 20 28 5b 6c 69 6e 64 65 | 78 20 24 67 65 6f 20 33 | ([linde|x $geo 3|
|00003f50| 5d 20 21 3d 20 24 65 72 | 72 6f 72 48 65 69 67 68 |] != $er|rorHeigh|
|00003f60| 74 29 20 7d 20 7b 0d 09 | 09 6d 6f 76 65 57 69 6e |t) } {..|.moveWin|
|00003f70| 20 24 74 69 6c 65 4c 65 | 66 74 20 24 74 6f 70 0d | $tileLe|ft $top.|
|00003f80| 09 09 73 69 7a 65 57 69 | 6e 20 24 74 69 6c 65 57 |..sizeWi|n $tileW|
|00003f90| 69 64 74 68 20 24 65 72 | 72 6f 72 48 65 69 67 68 |idth $er|rorHeigh|
|00003fa0| 74 0d 09 7d 0d 09 73 65 | 74 20 6d 61 72 20 24 74 |t..}..se|t mar $t|
|00003fb0| 69 6c 65 4d 61 72 67 69 | 6e 0d 09 69 6e 63 72 20 |ileMargi|n..incr |
|00003fc0| 74 6f 70 20 5b 65 78 70 | 72 20 24 65 72 72 6f 72 |top [exp|r $error|
|00003fd0| 48 65 69 67 68 74 20 2b | 20 24 6d 61 72 5d 0d 09 |Height +| $mar]..|
|00003fe0| 69 66 20 7b 5b 65 78 70 | 72 20 7b 5b 6c 73 65 61 |if {[exp|r {[lsea|
|00003ff0| 72 63 68 20 5b 77 69 6e | 4e 61 6d 65 73 20 2d 66 |rch [win|Names -f|
|00004000| 5d 20 22 2a 24 66 6e 61 | 6d 65 22 5d 20 3e 3d 20 |] "*$fna|me"] >= |
|00004010| 30 7d 5d 7d 20 7b 0d 09 | 09 69 66 20 7b 5b 73 74 |0}]} {..|.if {[st|
|00004020| 72 69 6e 67 20 6d 61 74 | 63 68 20 22 3a 2a 22 20 |ring mat|ch ":*" |
|00004030| 24 66 6e 61 6d 65 5d 7d | 20 7b 0d 09 09 09 73 65 |$fname]}| {....se|
|00004040| 74 20 66 6e 61 6d 65 20 | 5b 66 69 6c 65 20 74 61 |t fname |[file ta|
|00004050| 69 6c 20 24 66 6e 61 6d | 65 5d 0d 09 09 7d 0d 09 |il $fnam|e]...}..|
|00004060| 09 62 72 69 6e 67 54 6f | 46 72 6f 6e 74 20 24 66 |.bringTo|Front $f|
|00004070| 6e 61 6d 65 0d 09 09 73 | 65 74 20 67 65 6f 20 5b |name...s|et geo [|
|00004080| 67 65 74 47 65 6f 6d 65 | 74 72 79 5d 0d 09 09 69 |getGeome|try]...i|
|00004090| 66 20 7b 28 5b 6c 69 6e | 64 65 78 20 24 67 65 6f |f {([lin|dex $geo|
|000040a0| 20 30 5d 20 21 3d 20 24 | 74 69 6c 65 4c 65 66 74 | 0] != $|tileLeft|
|000040b0| 29 20 7c 7c 20 28 5b 6c | 69 6e 64 65 78 20 24 67 |) || ([l|index $g|
|000040c0| 65 6f 20 31 5d 20 21 3d | 20 24 74 6f 70 29 20 7c |eo 1] !=| $top) ||
|000040d0| 7c 20 28 5b 6c 69 6e 64 | 65 78 20 24 67 65 6f 20 || ([lind|ex $geo |
|000040e0| 32 5d 20 21 3d 20 24 74 | 69 6c 65 57 69 64 74 68 |2] != $t|ileWidth|
|000040f0| 29 20 7c 7c 20 28 5b 6c | 69 6e 64 65 78 20 24 67 |) || ([l|index $g|
|00004100| 65 6f 20 33 5d 20 21 3d | 20 24 65 72 72 6f 72 44 |eo 3] !=| $errorD|
|00004110| 69 73 70 29 20 7d 20 7b | 0d 09 09 09 73 69 7a 65 |isp) } {|....size|
|00004120| 57 69 6e 20 24 74 69 6c | 65 57 69 64 74 68 20 24 |Win $til|eWidth $|
|00004130| 65 72 72 6f 72 44 69 73 | 70 0d 09 09 09 6d 6f 76 |errorDis|p....mov|
|00004140| 65 57 69 6e 20 24 74 69 | 6c 65 4c 65 66 74 20 24 |eWin $ti|leLeft $|
|00004150| 74 6f 70 0d 09 09 7d 0d | 09 7d 20 65 6c 73 65 69 |top...}.|.} elsei|
|00004160| 66 20 7b 5b 66 69 6c 65 | 20 65 78 69 73 74 73 20 |f {[file| exists |
|00004170| 24 66 6e 61 6d 65 5d 7d | 20 7b 0d 09 09 65 64 69 |$fname]}| {...edi|
|00004180| 74 20 2d 67 20 24 74 69 | 6c 65 4c 65 66 74 20 24 |t -g $ti|leLeft $|
|00004190| 74 6f 70 20 24 74 69 6c | 65 57 69 64 74 68 20 24 |top $til|eWidth $|
|000041a0| 65 72 72 6f 72 44 69 73 | 70 20 24 66 6e 61 6d 65 |errorDis|p $fname|
|000041b0| 0d 09 7d 20 65 6c 73 65 | 20 7b 0d 09 09 69 66 20 |..} else| {...if |
|000041c0| 7b 21 5b 73 74 72 69 6e | 67 20 6d 61 74 63 68 20 |{![strin|g match |
|000041d0| 22 2a 4c 69 6e 6b 2a 22 | 20 5b 67 65 74 54 65 78 |"*Link*"| [getTex|
|000041e0| 74 20 30 20 5b 6e 65 78 | 74 4c 69 6e 65 53 74 61 |t 0 [nex|tLineSta|
|000041f0| 72 74 20 30 5d 5d 5d 7d | 20 7b 0d 09 09 09 61 6c |rt 0]]]}| {....al|
|00004200| 65 72 74 6e 6f 74 65 20 | 22 46 69 6c 65 20 5c 22 |ertnote |"File \"|
|00004210| 20 24 66 6e 61 6d 65 20 | 5c 22 20 6e 6f 74 20 66 | $fname |\" not f|
|00004220| 6f 75 6e 64 2e 22 20 0d | 09 09 7d 0d 09 09 72 65 |ound." .|..}...re|
|00004230| 74 75 72 6e 0d 09 7d 0d | 09 69 66 20 7b 5b 72 65 |turn..}.|.if {[re|
|00004240| 67 65 78 70 20 7b 4c 69 | 6e 65 20 28 5b 30 2d 39 |gexp {Li|ne ([0-9|
|00004250| 5d 2b 29 3a 7d 20 24 74 | 65 78 74 20 64 75 6d 6d |]+):} $t|ext dumm|
|00004260| 79 20 6c 69 6e 65 5d 7d | 20 7b 0d 09 09 73 65 74 |y line]}| {...set|
|00004270| 20 70 6f 73 20 5b 72 6f | 77 43 6f 6c 54 6f 50 6f | pos [ro|wColToPo|
|00004280| 73 20 24 6c 69 6e 65 20 | 30 5d 0d 09 09 73 65 6c |s $line |0]...sel|
|00004290| 65 63 74 20 24 70 6f 73 | 20 5b 6e 65 78 74 4c 69 |ect $pos| [nextLi|
|000042a0| 6e 65 53 74 61 72 74 20 | 24 70 6f 73 5d 0d 09 7d |neStart |$pos]..}|
|000042b0| 0d 09 6d 65 73 73 61 67 | 65 20 24 6d 73 67 0d 7d |..messag|e $msg.}|
|000042c0| 0d 62 69 6e 64 20 27 63 | 27 20 3c 43 7a 3e 09 09 |.bind 'c|' <Cz>..|
|000042d0| 67 6f 74 6f 4d 61 74 63 | 68 0d 0d 0d 23 3d 3d 3d |gotoMatc|h...#===|
|000042e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000042f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004300| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004310| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004320| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 0d 70 |========|=====..p|
|00004330| 72 6f 63 20 70 72 65 76 | 49 6e 74 72 6f 20 7b 7d |roc prev|Intro {}|
|00004340| 20 7b 0d 09 73 65 74 20 | 72 65 73 20 5b 73 65 61 | {..set |res [sea|
|00004350| 72 63 68 20 2d 73 20 2d | 66 20 30 20 2d 72 20 30 |rch -s -|f 0 -r 0|
|00004360| 20 7b 3d 3d 20 7d 20 5b | 67 65 74 50 6f 73 5d 5d | {== } [|getPos]]|
|00004370| 0d 09 64 69 73 70 6c 61 | 79 20 5b 6c 69 6e 65 53 |..displa|y [lineS|
|00004380| 74 61 72 74 20 5b 65 78 | 70 72 20 5b 6c 69 6e 65 |tart [ex|pr [line|
|00004390| 53 74 61 72 74 20 5b 6c | 69 6e 64 65 78 20 24 72 |Start [l|index $r|
|000043a0| 65 73 20 30 5d 5d 20 2d | 20 31 5d 5d 0d 7d 0d 0d |es 0]] -| 1]].}..|
|000043b0| 70 72 6f 63 20 6e 65 78 | 74 49 6e 74 72 6f 20 7b |proc nex|tIntro {|
|000043c0| 7d 20 7b 0d 09 73 65 74 | 20 72 65 73 20 5b 73 65 |} {..set| res [se|
|000043d0| 61 72 63 68 20 2d 73 20 | 2d 66 20 31 20 2d 72 20 |arch -s |-f 1 -r |
|000043e0| 30 20 7b 3d 3d 20 7d 20 | 5b 67 65 74 50 6f 73 5d |0 {== } |[getPos]|
|000043f0| 5d 0d 09 73 65 74 20 72 | 65 73 20 5b 6c 69 6e 64 |]..set r|es [lind|
|00004400| 65 78 20 24 72 65 73 20 | 31 5d 0d 09 73 65 74 20 |ex $res |1]..set |
|00004410| 72 65 73 20 5b 73 65 61 | 72 63 68 20 2d 73 20 2d |res [sea|rch -s -|
|00004420| 66 20 31 20 2d 72 20 30 | 20 7b 3d 3d 20 7d 20 24 |f 1 -r 0| {== } $|
|00004430| 72 65 73 5d 0d 09 64 69 | 73 70 6c 61 79 20 5b 6c |res]..di|splay [l|
|00004440| 69 6e 65 53 74 61 72 74 | 20 5b 65 78 70 72 20 5b |ineStart| [expr [|
|00004450| 6c 69 6e 65 53 74 61 72 | 74 20 5b 6c 69 6e 64 65 |lineStar|t [linde|
|00004460| 78 20 24 72 65 73 20 30 | 5d 5d 20 2d 20 31 5d 5d |x $res 0|]] - 1]]|
|00004470| 0d 7d 0d 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.}..#===|========|
|00004480| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004490| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000044a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000044b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000044c0| 3d 3d 3d 3d 3d 0d 0d 70 | 72 6f 63 20 73 65 61 72 |=====..p|roc sear|
|000044d0| 63 68 53 74 61 72 74 20 | 7b 7d 20 7b 0d 09 67 6c |chStart |{} {..gl|
|000044e0| 6f 62 61 6c 20 73 65 61 | 72 63 68 5f 73 74 61 72 |obal sea|rch_star|
|000044f0| 74 0d 09 73 65 6c 65 63 | 74 20 5b 67 65 74 50 6f |t..selec|t [getPo|
|00004500| 73 5d 0d 09 73 65 74 4d | 61 72 6b 0d 09 69 66 20 |s]..setM|ark..if |
|00004510| 7b 5b 63 61 74 63 68 20 | 7b 67 6f 74 6f 20 24 73 |{[catch |{goto $s|
|00004520| 65 61 72 63 68 5f 73 74 | 61 72 74 7d 5d 7d 20 7b |earch_st|art}]} {|
|00004530| 6d 65 73 73 61 67 65 20 | 22 4e 6f 20 70 72 65 76 |message |"No prev|
|00004540| 69 6f 75 73 20 73 65 61 | 72 63 68 22 7d 0d 7d 0d |ious sea|rch"}.}.|
|00004550| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00004560| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004570| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004580| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004590| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000045a0| 3d 3d 0d 0d 0d 70 72 6f | 63 20 6c 69 73 74 42 69 |==...pro|c listBi|
|000045b0| 6e 64 69 6e 67 73 20 7b | 7d 20 7b 0d 09 6e 65 77 |ndings {|} {..new|
|000045c0| 20 2d 6e 20 7b 2a 20 4b | 65 79 20 42 69 6e 64 69 | -n {* K|ey Bindi|
|000045d0| 6e 67 73 20 2a 7d 0d 09 | 69 6e 73 65 72 74 54 65 |ngs *}..|insertTe|
|000045e0| 78 74 20 5b 62 69 6e 64 | 69 6e 67 4c 69 73 74 5d |xt [bind|ingList]|
|000045f0| 0d 0d 09 67 6f 74 6f 20 | 30 0d 09 73 65 74 57 69 |...goto |0..setWi|
|00004600| 6e 49 6e 66 6f 20 64 69 | 72 74 79 20 30 0d 09 73 |nInfo di|rty 0..s|
|00004610| 65 74 57 69 6e 49 6e 66 | 6f 20 72 65 61 64 2d 6f |etWinInf|o read-o|
|00004620| 6e 6c 79 20 31 0d 7d 0d | 0d 0d 70 72 6f 63 20 6c |nly 1.}.|..proc l|
|00004630| 69 73 74 46 75 6e 63 74 | 69 6f 6e 73 20 7b 7d 20 |istFunct|ions {} |
|00004640| 7b 0d 09 67 6c 6f 62 61 | 6c 20 77 69 6e 4d 6f 64 |{..globa|l winMod|
|00004650| 65 73 0d 09 6e 65 77 20 | 2d 6e 20 7b 2a 20 46 75 |es..new |-n {* Fu|
|00004660| 6e 63 74 69 6f 6e 73 20 | 2a 7d 0d 09 69 6e 73 65 |nctions |*}..inse|
|00004670| 72 74 54 65 78 74 20 22 | 3d 3d 3d 5c 72 5c 74 43 |rtText "|===\r\tC|
|00004680| 6f 6d 6d 61 6e 64 2d 64 | 6f 75 62 6c 65 2d 63 6c |ommand-d|ouble-cl|
|00004690| 69 63 6b 20 6f 6e 20 61 | 20 66 75 6e 63 74 69 6f |ick on a| functio|
|000046a0| 6e 20 74 6f 20 73 65 65 | 20 69 74 73 20 64 65 66 |n to see| its def|
|000046b0| 69 6e 69 74 69 6f 6e 5c | 72 3d 3d 3d 5c 72 5c 72 |inition\|r===\r\r|
|000046c0| 22 20 5b 6a 6f 69 6e 20 | 5b 6c 73 6f 72 74 20 2d |" [join |[lsort -|
|000046d0| 69 67 6e 6f 72 65 20 5b | 69 6e 66 6f 20 63 6f 6d |ignore [|info com|
|000046e0| 6d 61 6e 64 73 5d 5d 20 | 22 5c 72 22 5d 20 22 5c |mands]] |"\r"] "\|
|000046f0| 72 22 0d 09 67 6f 74 6f | 20 30 0d 09 73 65 74 57 |r"..goto| 0..setW|
|00004700| 69 6e 49 6e 66 6f 20 64 | 69 72 74 79 20 30 0d 09 |inInfo d|irty 0..|
|00004710| 63 68 61 6e 67 65 4d 6f | 64 65 20 5b 73 65 74 20 |changeMo|de [set |
|00004720| 77 69 6e 4d 6f 64 65 73 | 28 5b 6c 69 6e 64 65 78 |winModes|([lindex|
|00004730| 20 5b 77 69 6e 4e 61 6d | 65 73 5d 20 30 5d 29 20 | [winNam|es] 0]) |
|00004740| 54 63 6c 5d 0d 7d 0d 0d | 0d 23 3d 3d 3d 3d 3d 3d |Tcl].}..|.#======|
|00004750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004760| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004770| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004780| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004790| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0d 70 72 6f 63 |========|==..proc|
|000047a0| 20 70 72 69 6e 74 41 72 | 72 61 79 20 7b 61 72 72 | printAr|ray {arr|
|000047b0| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 24 61 72 72 |} {..glo|bal $arr|
|000047c0| 0d 09 09 66 6f 72 65 61 | 63 68 20 6e 20 5b 61 72 |...forea|ch n [ar|
|000047d0| 72 61 79 20 6e 61 6d 65 | 73 20 24 61 72 72 5d 20 |ray name|s $arr] |
|000047e0| 7b 0d 09 09 61 70 70 65 | 6e 64 20 74 65 78 74 20 |{...appe|nd text |
|000047f0| 22 24 6e 20 27 5b 73 65 | 74 20 24 7b 61 72 72 7d |"$n '[se|t ${arr}|
|00004800| 28 24 6e 29 5d 27 5c 72 | 22 0d 09 7d 0d 09 72 65 |($n)]'\r|"..}..re|
|00004810| 74 75 72 6e 20 5b 73 74 | 72 69 6e 67 20 74 72 69 |turn [st|ring tri|
|00004820| 6d 20 24 74 65 78 74 20 | 22 5c 72 22 5d 0d 7d 0d |m $text |"\r"].}.|
|00004830| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00004840| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004850| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004860| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004870| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004880| 3d 3d 0d 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |==..#===|========|
|00004890| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000048a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000048b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000048c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000048d0| 3d 3d 3d 3d 3d 0d 0d 70 | 72 6f 63 20 73 50 72 6f |=====..p|roc sPro|
|000048e0| 6d 70 74 20 7b 6d 73 67 | 20 64 65 66 7d 20 7b 0d |mpt {msg| def} {.|
|000048f0| 09 67 6c 6f 62 61 6c 20 | 75 73 65 53 74 61 74 75 |.global |useStatu|
|00004900| 73 42 61 72 0d 09 69 66 | 20 7b 21 24 75 73 65 53 |sBar..if| {!$useS|
|00004910| 74 61 74 75 73 42 61 72 | 7d 20 7b 72 65 74 75 72 |tatusBar|} {retur|
|00004920| 6e 20 5b 70 72 6f 6d 70 | 74 20 24 6d 73 67 20 24 |n [promp|t $msg $|
|00004930| 64 65 66 5d 7d 0d 09 69 | 66 20 7b 5b 63 61 74 63 |def]}..i|f {[catc|
|00004940| 68 20 7b 73 74 61 74 75 | 73 50 72 6f 6d 70 74 20 |h {statu|sPrompt |
|00004950| 22 24 6d 73 67 20 28 24 | 64 65 66 29 3a 20 22 7d |"$msg ($|def): "}|
|00004960| 20 61 6e 73 5d 7d 20 7b | 0d 09 09 65 72 72 6f 72 | ans]} {|...error|
|00004970| 20 22 63 61 6e 63 65 6c | 22 0d 09 7d 0d 09 69 66 | "cancel|"..}..if|
|00004980| 20 7b 21 5b 73 74 72 69 | 6e 67 20 6c 65 6e 67 74 | {![stri|ng lengt|
|00004990| 68 20 24 61 6e 73 5d 7d | 20 7b 72 65 74 75 72 6e |h $ans]}| {return|
|000049a0| 20 24 64 65 66 7d 0d 09 | 72 65 74 75 72 6e 20 24 | $def}..|return $|
|000049b0| 61 6e 73 0d 7d 0d 0d 0d | 70 72 6f 63 20 63 68 6f |ans.}...|proc cho|
|000049c0| 69 63 65 73 50 72 6f 63 | 20 7b 63 75 72 72 20 63 |icesProc| {curr c|
|000049d0| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 63 68 6f 69 |} {..glo|bal choi|
|000049e0| 63 65 4c 69 73 74 0d 09 | 69 66 20 7b 24 63 20 21 |ceList..|if {$c !|
|000049f0| 3d 20 22 5c 74 22 7d 20 | 7b 72 65 74 75 72 6e 20 |= "\t"} |{return |
|00004a00| 24 63 7d 0d 09 0d 09 73 | 65 74 20 6d 61 74 63 68 |$c}....s|et match|
|00004a10| 65 73 20 7b 7d 0d 09 66 | 6f 72 65 61 63 68 20 77 |es {}..f|oreach w|
|00004a20| 20 24 63 68 6f 69 63 65 | 4c 69 73 74 20 7b 0d 09 | $choice|List {..|
|00004a30| 09 69 66 20 7b 5b 73 74 | 72 69 6e 67 20 6d 61 74 |.if {[st|ring mat|
|00004a40| 63 68 20 22 24 63 75 72 | 72 2a 22 20 24 77 5d 7d |ch "$cur|r*" $w]}|
|00004a50| 20 7b 0d 09 09 09 6c 61 | 70 70 65 6e 64 20 6d 61 | {....la|ppend ma|
|00004a60| 74 63 68 65 73 20 24 77 | 0d 09 09 7d 0d 09 7d 0d |tches $w|...}..}.|
|00004a70| 09 69 66 20 7b 21 5b 6c | 6c 65 6e 67 74 68 20 24 |.if {![l|length $|
|00004a80| 6d 61 74 63 68 65 73 5d | 7d 20 7b 0d 09 09 62 65 |matches]|} {...be|
|00004a90| 65 70 0d 09 7d 20 65 6c | 73 65 20 7b 0d 09 09 72 |ep..} el|se {...r|
|00004aa0| 65 74 75 72 6e 20 5b 73 | 74 72 69 6e 67 20 72 61 |eturn [s|tring ra|
|00004ab0| 6e 67 65 20 5b 6c 61 72 | 67 65 73 74 50 72 65 66 |nge [lar|gestPref|
|00004ac0| 69 78 20 24 6d 61 74 63 | 68 65 73 5d 20 5b 73 74 |ix $matc|hes] [st|
|00004ad0| 72 69 6e 67 20 6c 65 6e | 67 74 68 20 24 63 75 72 |ring len|gth $cur|
|00004ae0| 72 5d 20 65 6e 64 5d 0d | 09 7d 0d 09 72 65 74 75 |r] end].|.}..retu|
|00004af0| 72 6e 20 22 22 0d 7d 0d | 0d 0d 70 72 6f 63 20 73 |rn "".}.|..proc s|
|00004b00| 50 72 6f 6d 70 74 43 68 | 6f 69 63 65 73 20 7b 6d |PromptCh|oices {m|
|00004b10| 73 67 20 64 65 66 20 63 | 68 6f 69 63 65 4c 69 73 |sg def c|hoiceLis|
|00004b20| 74 49 6e 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 75 |tIn} {..|global u|
|00004b30| 73 65 53 74 61 74 75 73 | 42 61 72 20 63 68 6f 69 |seStatus|Bar choi|
|00004b40| 63 65 4c 69 73 74 0d 09 | 73 65 74 20 63 68 6f 69 |ceList..|set choi|
|00004b50| 63 65 4c 69 73 74 20 24 | 63 68 6f 69 63 65 4c 69 |ceList $|choiceLi|
|00004b60| 73 74 49 6e 0d 09 69 66 | 20 7b 5b 63 61 74 63 68 |stIn..if| {[catch|
|00004b70| 20 7b 73 74 61 74 75 73 | 50 72 6f 6d 70 74 20 2d | {status|Prompt -|
|00004b80| 66 20 22 24 6d 73 67 20 | 28 24 64 65 66 29 3a 20 |f "$msg |($def): |
|00004b90| 22 20 63 68 6f 69 63 65 | 73 50 72 6f 63 7d 20 61 |" choice|sProc} a|
|00004ba0| 6e 73 5d 7d 20 7b 0d 09 | 09 65 72 72 6f 72 20 22 |ns]} {..|.error "|
|00004bb0| 63 61 6e 63 65 6c 22 0d | 09 7d 0d 09 69 66 20 7b |cancel".|.}..if {|
|00004bc0| 21 5b 73 74 72 69 6e 67 | 20 6c 65 6e 67 74 68 20 |![string| length |
|00004bd0| 24 61 6e 73 5d 7d 20 7b | 72 65 74 75 72 6e 20 24 |$ans]} {|return $|
|00004be0| 64 65 66 7d 0d 09 72 65 | 74 75 72 6e 20 24 61 6e |def}..re|turn $an|
|00004bf0| 73 0d 7d 0d 0d 23 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |s.}..#==|========|
|00004c00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004c10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004c20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004c30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004c40| 3d 3d 3d 3d 3d 3d 0d 70 | 72 6f 63 20 71 75 6f 74 |======.p|roc quot|
|00004c50| 65 43 68 61 72 20 7b 7d | 20 7b 0d 09 6d 65 73 73 |eChar {}| {..mess|
|00004c60| 61 67 65 20 22 4c 69 74 | 65 72 61 6c 20 6b 65 79 |age "Lit|eral key|
|00004c70| 73 74 72 6f 6b 65 20 74 | 6f 20 62 65 20 69 6e 73 |stroke t|o be ins|
|00004c80| 65 72 74 65 64 3a 22 0d | 09 69 6e 73 65 72 74 54 |erted:".|.insertT|
|00004c90| 65 78 74 20 5b 67 65 74 | 43 68 61 72 5d 0d 7d 0d |ext [get|Char].}.|
|00004ca0| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|00004cb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004cc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004cd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ce0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004cf0| 0d 0d 70 72 6f 63 20 73 | 61 76 65 41 43 6f 70 79 |..proc s|aveACopy|
|00004d00| 41 73 20 7b 7d 20 7b 0d | 09 69 66 20 7b 5b 66 69 |As {} {.|.if {[fi|
|00004d10| 6c 65 20 65 78 69 73 74 | 73 20 5b 73 65 74 20 6e |le exist|s [set n|
|00004d20| 6d 20 5b 63 61 72 20 5b | 77 69 6e 4e 61 6d 65 73 |m [car [|winNames|
|00004d30| 20 2d 66 5d 5d 5d 5d 7d | 20 7b 0d 09 09 73 65 74 | -f]]]]}| {...set|
|00004d40| 20 6e 6d 32 20 5b 70 75 | 74 66 69 6c 65 20 22 53 | nm2 [pu|tfile "S|
|00004d50| 61 76 65 20 61 20 63 6f | 70 79 20 61 73 3a 22 20 |ave a co|py as:" |
|00004d60| 5b 66 69 6c 65 20 74 61 | 69 6c 20 24 6e 6d 5d 5d |[file ta|il $nm]]|
|00004d70| 0d 09 09 63 70 20 24 6e | 6d 20 24 6e 6d 32 0d 09 |...cp $n|m $nm2..|
|00004d80| 7d 0d 7d 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |}.}.#===|========|
|00004d90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004da0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004db0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004dc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004dd0| 3d 3d 3d 3d 0d 70 72 6f | 63 20 72 65 6d 6f 76 65 |====.pro|c remove|
|00004de0| 44 75 70 73 20 7b 6c 7d | 20 7b 0d 09 66 6f 72 65 |Dups {l}| {..fore|
|00004df0| 61 63 68 20 66 20 24 6c | 20 7b 0d 09 09 73 65 74 |ach f $l| {...set|
|00004e00| 20 73 69 6c 6c 79 28 24 | 66 29 20 31 0d 09 7d 0d | silly($|f) 1..}.|
|00004e10| 09 69 66 20 7b 5b 69 6e | 66 6f 20 65 78 69 73 74 |.if {[in|fo exist|
|00004e20| 73 20 73 69 6c 6c 79 5d | 7d 20 7b 0d 09 09 72 65 |s silly]|} {...re|
|00004e30| 74 75 72 6e 20 5b 61 72 | 72 61 79 20 6e 61 6d 65 |turn [ar|ray name|
|00004e40| 73 20 73 69 6c 6c 79 5d | 0d 09 7d 0d 7d 0d 09 09 |s silly]|..}.}...|
|00004e50| 09 0d 0d 23 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |...#====|========|
|00004e60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004e90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00004ea0| 3d 3d 3d 0d 0d 70 72 6f | 63 20 70 72 69 6e 74 4c |===..pro|c printL|
|00004eb0| 65 66 74 48 65 61 64 65 | 72 20 7b 70 67 7d 20 7b |eftHeade|r {pg} {|
|00004ec0| 0d 09 67 6c 6f 62 61 6c | 20 70 72 69 6e 74 48 65 |..global| printHe|
|00004ed0| 61 64 65 72 20 70 72 69 | 6e 74 48 65 61 64 65 72 |ader pri|ntHeader|
|00004ee0| 54 69 6d 65 20 70 72 69 | 6e 74 48 65 61 64 65 72 |Time pri|ntHeader|
|00004ef0| 46 75 6c 6c 50 61 74 68 | 0d 09 0d 09 69 66 20 7b |FullPath|....if {|
|00004f00| 21 24 70 72 69 6e 74 48 | 65 61 64 65 72 7d 20 72 |!$printH|eader} r|
|00004f10| 65 74 75 72 6e 20 22 22 | 0d 09 0d 09 69 66 20 7b |eturn ""|....if {|
|00004f20| 24 70 72 69 6e 74 48 65 | 61 64 65 72 46 75 6c 6c |$printHe|aderFull|
|00004f30| 50 61 74 68 7d 20 7b 0d | 09 09 73 65 74 20 74 65 |Path} {.|..set te|
|00004f40| 78 74 20 5b 63 61 72 20 | 5b 77 69 6e 4e 61 6d 65 |xt [car |[winName|
|00004f50| 73 20 2d 66 5d 5d 0d 09 | 7d 20 65 6c 73 65 20 7b |s -f]]..|} else {|
|00004f60| 0d 09 09 73 65 74 20 74 | 65 78 74 20 5b 6c 69 6e |...set t|ext [lin|
|00004f70| 64 65 78 20 5b 77 69 6e | 4e 61 6d 65 73 5d 20 30 |dex [win|Names] 0|
|00004f80| 5d 0d 09 7d 0d 09 0d 09 | 69 66 20 7b 24 70 72 69 |]..}....|if {$pri|
|00004f90| 6e 74 48 65 61 64 65 72 | 54 69 6d 65 7d 20 7b 0d |ntHeader|Time} {.|
|00004fa0| 09 09 61 70 70 65 6e 64 | 20 74 65 78 74 20 22 20 |..append| text " |
|00004fb0| 20 20 20 20 20 5b 6a 6f | 69 6e 20 5b 6d 74 69 6d | [jo|in [mtim|
|00004fc0| 65 20 5b 6e 6f 77 5d 20 | 73 68 6f 72 74 5d 5d 22 |e [now] |short]]"|
|00004fd0| 0d 09 7d 0d 7d 0d 0d 70 | 72 6f 63 20 70 72 69 6e |..}.}..p|roc prin|
|00004fe0| 74 52 69 67 68 74 48 65 | 61 64 65 72 20 7b 70 67 |tRightHe|ader {pg|
|00004ff0| 7d 20 7b 0d 09 72 65 74 | 75 72 6e 20 22 50 61 67 |} {..ret|urn "Pag|
|00005000| 65 20 24 70 67 22 0d 7d | 0d 0d 23 3d 3d 3d 3d 3d |e $pg".}|..#=====|
|00005010| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005020| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005030| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005040| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005050| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0d 70 72 6f 63 |========|==..proc|
|00005060| 20 74 6f 67 67 6c 65 4e | 75 6d 4c 6f 63 6b 20 7b | toggleN|umLock {|
|00005070| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 6e 75 6d 4c |} {..glo|bal numL|
|00005080| 6f 63 6b 20 6d 6f 64 69 | 66 69 65 64 56 61 72 73 |ock modi|fiedVars|
|00005090| 0d 09 0d 09 73 65 74 20 | 6e 75 6d 4c 6f 63 6b 20 |....set |numLock |
|000050a0| 5b 65 78 70 72 20 2d 31 | 20 2a 20 28 24 6e 75 6d |[expr -1| * ($num|
|000050b0| 4c 6f 63 6b 20 2d 20 31 | 29 5d 0d 09 6c 61 70 70 |Lock - 1|)]..lapp|
|000050c0| 65 6e 64 20 6d 6f 64 69 | 66 69 65 64 56 61 72 73 |end modi|fiedVars|
|000050d0| 20 6e 75 6d 4c 6f 63 6b | 0d 7d 0d 0d 23 3d 3d 3d | numLock|.}..#===|
|000050e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000050f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005100| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005110| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005120| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 0d 70 72 |========|====..pr|
|00005130| 6f 63 20 72 65 67 69 73 | 74 65 72 20 7b 7d 20 7b |oc regis|ter {} {|
|00005140| 0d 09 67 6c 6f 62 61 6c | 20 48 4f 4d 45 0d 23 09 |..global| HOME.#.|
|00005150| 65 64 69 74 20 2d 72 20 | 22 24 48 4f 4d 45 3a 48 |edit -r |"$HOME:H|
|00005160| 65 6c 70 3a 52 65 67 69 | 73 74 65 72 69 6e 67 22 |elp:Regi|stering"|
|00005170| 0d 09 6c 61 75 6e 63 68 | 20 2d 66 20 22 24 48 4f |..launch| -f "$HO|
|00005180| 4d 45 3a 52 65 67 69 73 | 74 65 72 22 0d 7d 0d 0d |ME:Regis|ter".}..|
|00005190| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|000051a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000051b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000051c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000051d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000051e0| 0d 23 20 55 73 65 66 75 | 6c 20 66 6f 72 20 2d 63 |.# Usefu|l for -c|
|000051f0| 6f 6d 6d 61 6e 64 20 66 | 6c 61 67 20 6f 66 20 27 |ommand f|lag of '|
|00005200| 6c 73 6f 72 74 27 2e 0d | 70 72 6f 63 20 73 6f 72 |lsort'..|proc sor|
|00005210| 74 42 79 54 61 69 6c 20 | 7b 6f 6e 65 20 74 77 6f |tByTail |{one two|
|00005220| 7d 20 7b 0d 09 73 74 72 | 69 6e 67 20 63 6f 6d 70 |} {..str|ing comp|
|00005230| 61 72 65 20 5b 66 69 6c | 65 20 74 61 69 6c 20 24 |are [fil|e tail $|
|00005240| 6f 6e 65 5d 20 5b 66 69 | 6c 65 20 74 61 69 6c 20 |one] [fi|le tail |
|00005250| 24 74 77 6f 5d 0d 7d 0d | 0d 0d 23 3d 3d 3d 3d 3d |$two].}.|..#=====|
|00005260| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005270| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005280| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005290| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000052a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0d 70 72 6f 63 |========|==..proc|
|000052b0| 20 63 6d 64 44 6f 75 62 | 6c 65 43 6c 69 63 6b 20 | cmdDoub|leClick |
|000052c0| 7b 7b 66 72 6f 6d 20 2d | 31 7d 20 7b 74 6f 20 2d |{{from -|1} {to -|
|000052d0| 31 7d 20 7b 73 68 69 66 | 74 20 30 7d 20 7b 6f 70 |1} {shif|t 0} {op|
|000052e0| 74 69 6f 6e 20 30 7d 20 | 7b 63 6f 6e 74 72 6f 6c |tion 0} |{control|
|000052f0| 20 30 7d 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 6d | 0}} {..|global m|
|00005300| 6f 64 65 20 61 6c 70 68 | 61 4c 69 74 65 0d 09 0d |ode alph|aLite...|
|00005310| 09 69 66 20 7b 21 24 61 | 6c 70 68 61 4c 69 74 65 |.if {!$a|lphaLite|
|00005320| 20 26 26 20 5b 73 74 72 | 69 6e 67 20 6c 65 6e 67 | && [str|ing leng|
|00005330| 74 68 20 5b 73 65 74 20 | 77 68 65 20 5b 65 78 70 |th [set |whe [exp|
|00005340| 61 6e 64 55 52 4c 5d 5d | 5d 7d 20 7b 0d 09 09 73 |andURL]]|]} {...s|
|00005350| 65 6e 64 55 72 6c 20 5b | 67 65 74 53 65 6c 65 63 |endUrl [|getSelec|
|00005360| 74 5d 0d 09 7d 20 65 6c | 73 65 20 7b 0d 09 09 69 |t]..} el|se {...i|
|00005370| 66 20 7b 24 66 72 6f 6d | 20 3c 20 30 7d 20 7b 0d |f {$from| < 0} {.|
|00005380| 09 09 09 73 65 74 20 66 | 72 6f 6d 20 5b 67 65 74 |...set f|rom [get|
|00005390| 50 6f 73 5d 0d 09 09 09 | 73 65 74 20 74 6f 20 5b |Pos]....|set to [|
|000053a0| 73 65 6c 45 6e 64 5d 0d | 09 09 09 69 66 20 7b 24 |selEnd].|...if {$|
|000053b0| 66 72 6f 6d 20 3d 3d 20 | 24 74 6f 7d 20 7b 0d 09 |from == |$to} {..|
|000053c0| 09 09 09 68 69 6c 69 74 | 65 57 6f 72 64 0d 09 09 |...hilit|eWord...|
|000053d0| 09 09 73 65 74 20 66 72 | 6f 6d 20 5b 67 65 74 50 |..set fr|om [getP|
|000053e0| 6f 73 5d 0d 09 09 09 09 | 73 65 74 20 74 6f 20 5b |os].....|set to [|
|000053f0| 73 65 6c 45 6e 64 5d 0d | 09 09 09 7d 0d 09 09 7d |selEnd].|...}...}|
|00005400| 0d 09 09 0d 09 09 69 66 | 20 7b 5b 73 74 72 69 6e |......if| {[strin|
|00005410| 67 20 6c 65 6e 67 74 68 | 20 5b 69 6e 66 6f 20 63 |g length| [info c|
|00005420| 6f 6d 6d 61 6e 64 73 20 | 24 7b 6d 6f 64 65 7d 44 |ommands |${mode}D|
|00005430| 62 6c 43 6c 69 63 6b 5d | 5d 7d 20 7b 0d 09 09 09 |blClick]|]} {....|
|00005440| 69 66 20 7b 5b 6c 6c 65 | 6e 67 74 68 20 5b 69 6e |if {[lle|ngth [in|
|00005450| 66 6f 20 61 72 67 73 20 | 24 7b 6d 6f 64 65 7d 44 |fo args |${mode}D|
|00005460| 62 6c 43 6c 69 63 6b 5d | 5d 20 3d 3d 20 32 7d 20 |blClick]|] == 2} |
|00005470| 7b 0d 09 09 09 09 24 7b | 6d 6f 64 65 7d 44 62 6c |{.....${|mode}Dbl|
|00005480| 43 6c 69 63 6b 20 24 66 | 72 6f 6d 20 24 74 6f 0d |Click $f|rom $to.|
|00005490| 09 09 09 7d 20 65 6c 73 | 65 20 7b 0d 09 09 09 09 |...} els|e {.....|
|000054a0| 24 7b 6d 6f 64 65 7d 44 | 62 6c 43 6c 69 63 6b 20 |${mode}D|blClick |
|000054b0| 24 66 72 6f 6d 20 24 74 | 6f 20 24 73 68 69 66 74 |$from $t|o $shift|
|000054c0| 20 24 6f 70 74 69 6f 6e | 20 24 63 6f 6e 74 72 6f | $option| $contro|
|000054d0| 6c 0d 09 09 09 7d 0d 09 | 09 7d 20 65 6c 73 65 20 |l....}..|.} else |
|000054e0| 7b 0d 09 09 09 6d 65 73 | 73 61 67 65 20 22 4e 6f |{....mes|sage "No|
|000054f0| 20 64 6f 63 73 22 0d 09 | 09 7d 0d 09 7d 09 0d 7d | docs"..|.}..}..}|
|00005500| 0d 0d 23 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..#=====|========|
|00005510| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005520| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005530| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005550| 3d 3d 0d 0d 0d 70 72 6f | 63 20 65 64 69 74 4d 61 |==...pro|c editMa|
|00005560| 72 6b 20 7b 66 6e 61 6d | 65 20 6d 6e 61 6d 65 20 |rk {fnam|e mname |
|00005570| 61 72 67 73 7d 20 7b 0d | 20 20 20 20 69 66 20 7b |args} {.| if {|
|00005580| 5b 73 65 74 20 70 6f 73 | 20 5b 6c 73 65 61 72 63 |[set pos| [lsearc|
|00005590| 68 20 5b 77 69 6e 4e 61 | 6d 65 73 20 2d 66 5d 20 |h [winNa|mes -f] |
|000055a0| 22 2a 24 66 6e 61 6d 65 | 2a 22 5d 5d 20 3e 3d 20 |"*$fname|*"]] >= |
|000055b0| 30 7d 20 20 7b 0d 20 20 | 20 20 09 62 72 69 6e 67 |0} {. | .bring|
|000055c0| 54 6f 46 72 6f 6e 74 20 | 5b 6c 69 6e 64 65 78 20 |ToFront |[lindex |
|000055d0| 5b 77 69 6e 4e 61 6d 65 | 73 20 2d 66 5d 20 24 70 |[winName|s -f] $p|
|000055e0| 6f 73 5d 0d 20 20 20 20 | 7d 20 65 6c 73 65 20 7b |os]. |} else {|
|000055f0| 0d 20 20 20 20 09 69 66 | 20 7b 5b 6c 73 65 61 72 |. .if| {[lsear|
|00005600| 63 68 20 24 61 72 67 73 | 20 7b 2d 72 7d 5d 20 3e |ch $args| {-r}] >|
|00005610| 3d 20 30 7d 20 7b 0d 20 | 20 20 20 09 09 65 64 69 |= 0} {. | ..edi|
|00005620| 74 20 2d 72 20 22 24 66 | 6e 61 6d 65 22 0d 20 20 |t -r "$f|name". |
|00005630| 20 20 09 7d 20 65 6c 73 | 65 20 7b 0d 09 20 20 20 | .} els|e {.. |
|00005640| 20 09 65 64 69 74 20 22 | 24 66 6e 61 6d 65 22 0d | .edit "|$fname".|
|00005650| 09 20 20 20 20 7d 0d 20 | 20 20 20 7d 0d 20 20 20 |. }. | }. |
|00005660| 20 69 66 20 7b 5b 6c 73 | 65 61 72 63 68 20 5b 67 | if {[ls|earch [g|
|00005670| 65 74 4e 61 6d 65 64 4d | 61 72 6b 73 20 2d 6e 5d |etNamedM|arks -n]|
|00005680| 20 24 6d 6e 61 6d 65 5d | 20 3c 20 30 7d 20 7b 0d | $mname]| < 0} {.|
|00005690| 20 20 20 20 09 67 6c 6f | 62 61 6c 09 6d 6f 64 65 | .glo|bal.mode|
|000056a0| 0d 20 20 20 20 09 24 7b | 6d 6f 64 65 7d 4d 61 72 |. .${|mode}Mar|
|000056b0| 6b 46 69 6c 65 0d 20 20 | 20 20 7d 20 0d 20 20 20 |kFile. | } . |
|000056c0| 20 67 6f 74 6f 4d 61 72 | 6b 20 24 6d 6e 61 6d 65 | gotoMar|k $mname|
|000056d0| 0d 7d 0d 0d 0d 70 72 6f | 63 20 77 69 6e 44 69 72 |.}...pro|c winDir|
|000056e0| 74 79 20 7b 7d 20 7b 0d | 09 67 65 74 57 69 6e 49 |ty {} {.|.getWinI|
|000056f0| 6e 66 6f 20 61 72 72 0d | 09 72 65 74 75 72 6e 20 |nfo arr.|.return |
|00005700| 24 61 72 72 28 64 69 72 | 74 79 29 0d 7d 0d 0d 0d |$arr(dir|ty).}...|
|00005710| 23 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#=======|========|
|00005720| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005730| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005740| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005750| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005760| 0d 0d 70 72 6f 63 20 6c | 72 65 76 65 72 73 65 20 |..proc l|reverse |
|00005770| 7b 6c 7d 20 7b 0d 09 69 | 66 20 7b 5b 6c 6c 65 6e |{l} {..i|f {[llen|
|00005780| 67 74 68 20 24 6c 5d 20 | 3e 20 31 7d 20 7b 0d 09 |gth $l] |> 1} {..|
|00005790| 09 73 65 74 20 66 69 72 | 73 74 20 5b 6c 69 6e 64 |.set fir|st [lind|
|000057a0| 65 78 20 24 6c 20 30 5d | 0d 09 09 73 65 74 20 6c |ex $l 0]|...set l|
|000057b0| 20 5b 6c 72 65 76 65 72 | 73 65 20 5b 6c 72 61 6e | [lrever|se [lran|
|000057c0| 67 65 20 24 6c 20 31 20 | 65 6e 64 5d 5d 0d 09 09 |ge $l 1 |end]]...|
|000057d0| 6c 61 70 70 65 6e 64 20 | 6c 20 24 66 69 72 73 74 |lappend |l $first|
|000057e0| 0d 09 7d 0d 09 72 65 74 | 75 72 6e 20 24 6c 0d 7d |..}..ret|urn $l.}|
|000057f0| 0d 0d 09 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |....#===|========|
|00005800| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005810| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005820| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005830| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005840| 3d 3d 3d 3d 0d 0d 0d 73 | 65 74 20 7b 70 61 74 74 |====...s|et {patt|
|00005850| 65 72 6e 4c 69 62 72 61 | 72 79 28 50 61 73 63 61 |ernLibra|ry(Pasca|
|00005860| 6c 20 74 6f 20 43 20 43 | 6f 6d 6d 65 6e 74 73 29 |l to C C|omments)|
|00005870| 7d 20 20 09 7b 20 7b 5c | 7b 28 5b 5e 5c 7d 5d 2a |} .{ {\|{([^\}]*|
|00005880| 29 5c 7d 7d 09 7b 2f 2a | 20 5c 31 20 2a 2f 7d 20 |)\}}.{/*| \1 */} |
|00005890| 09 7d 0d 73 65 74 20 7b | 70 61 74 74 65 72 6e 4c |.}.set {|patternL|
|000058a0| 69 62 72 61 72 79 28 43 | 2b 2b 20 74 6f 20 43 20 |ibrary(C|++ to C |
|000058b0| 43 6f 6d 6d 65 6e 74 73 | 29 7d 09 09 09 7b 20 7b |Comments|)}...{ {|
|000058c0| 2f 2f 28 2e 2a 29 7d 09 | 09 09 7b 2f 2a 20 5c 31 |//(.*)}.|..{/* \1|
|000058d0| 20 2a 2f 7d 20 09 7d 0d | 73 65 74 20 7b 70 61 74 | */} .}.|set {pat|
|000058e0| 74 65 72 6e 4c 69 62 72 | 61 72 79 28 53 70 61 63 |ternLibr|ary(Spac|
|000058f0| 65 20 52 75 6e 73 20 74 | 6f 20 54 61 62 73 29 7d |e Runs t|o Tabs)}|
|00005900| 09 09 7b 20 7b 20 2b 7d | 09 09 09 09 7b 5c 74 7d |..{ { +}|....{\t}|
|00005910| 20 09 09 7d 0d 0d 0d 0d | 70 72 6f 63 20 67 65 74 | ..}....|proc get|
|00005920| 50 61 74 74 65 72 6e 4c | 69 62 72 61 72 79 20 7b |PatternL|ibrary {|
|00005930| 7d 20 7b 0d 09 67 6c 6f | 62 61 6c 20 70 61 74 74 |} {..glo|bal patt|
|00005940| 65 72 6e 4c 69 62 72 61 | 72 79 0d 09 0d 09 66 6f |ernLibra|ry....fo|
|00005950| 72 65 61 63 68 20 6e 6d | 20 5b 61 72 72 61 79 20 |reach nm| [array |
|00005960| 6e 61 6d 65 73 20 70 61 | 74 74 65 72 6e 4c 69 62 |names pa|tternLib|
|00005970| 72 61 72 79 5d 20 7b 0d | 09 09 6c 61 70 70 65 6e |rary] {.|..lappen|
|00005980| 64 20 6e 6d 73 20 5b 63 | 6f 6e 63 61 74 20 5b 6c |d nms [c|oncat [l|
|00005990| 69 73 74 20 24 6e 6d 5d | 20 24 70 61 74 74 65 72 |ist $nm]| $patter|
|000059a0| 6e 4c 69 62 72 61 72 79 | 28 24 6e 6d 29 5d 0d 09 |nLibrary|($nm)]..|
|000059b0| 7d 0d 09 72 65 74 75 72 | 6e 20 24 6e 6d 73 0d 7d |}..retur|n $nms.}|
|000059c0| 0d 0d 70 72 6f 63 20 72 | 65 6d 65 6d 62 65 72 50 |..proc r|ememberP|
|000059d0| 61 74 74 65 72 6e 48 6f | 6f 6b 20 7b 73 65 61 72 |atternHo|ok {sear|
|000059e0| 63 68 20 72 65 70 6c 61 | 63 65 7d 20 7b 0d 09 67 |ch repla|ce} {..g|
|000059f0| 6c 6f 62 61 6c 20 70 61 | 74 74 65 72 6e 4c 69 62 |lobal pa|tternLib|
|00005a00| 72 61 72 79 0d 09 69 66 | 20 7b 5b 63 61 74 63 68 |rary..if| {[catch|
|00005a10| 20 7b 73 65 74 20 6e 61 | 6d 65 20 5b 70 72 6f 6d | {set na|me [prom|
|00005a20| 70 74 20 22 4e 65 77 20 | 70 61 74 74 65 72 6e 27 |pt "New |pattern'|
|00005a30| 73 20 6e 61 6d 65 3f 22 | 20 22 22 5d 7d 5d 7d 20 |s name?"| ""]}]} |
|00005a40| 7b 0d 09 09 72 65 74 75 | 72 6e 20 22 22 0d 09 7d |{...retu|rn ""..}|
|00005a50| 0d 09 61 64 64 41 72 72 | 44 65 66 20 70 61 74 74 |..addArr|Def patt|
|00005a60| 65 72 6e 4c 69 62 72 61 | 72 79 20 24 6e 61 6d 65 |ernLibra|ry $name|
|00005a70| 20 5b 6c 69 73 74 20 24 | 73 65 61 72 63 68 20 24 | [list $|search $|
|00005a80| 72 65 70 6c 61 63 65 5d | 0d 09 73 65 74 20 70 61 |replace]|..set pa|
|00005a90| 74 74 65 72 6e 4c 69 62 | 72 61 72 79 28 24 6e 61 |tternLib|rary($na|
|00005aa0| 6d 65 29 20 5b 6c 69 73 | 74 20 24 73 65 61 72 63 |me) [lis|t $searc|
|00005ab0| 68 20 24 72 65 70 6c 61 | 63 65 5d 0d 09 72 65 74 |h $repla|ce]..ret|
|00005ac0| 75 72 6e 20 24 6e 61 6d | 65 0d 7d 0d 0d 70 72 6f |urn $nam|e.}..pro|
|00005ad0| 63 20 64 65 6c 65 74 65 | 50 61 74 74 65 72 6e 48 |c delete|PatternH|
|00005ae0| 6f 6f 6b 20 7b 7d 20 7b | 0d 09 67 6c 6f 62 61 6c |ook {} {|..global|
|00005af0| 20 70 61 74 74 65 72 6e | 4c 69 62 72 61 72 79 0d | pattern|Library.|
|00005b00| 09 0d 09 0d 09 73 65 74 | 20 74 65 6d 70 20 5b 6c |.....set| temp [l|
|00005b10| 69 73 74 20 70 72 6f 6d | 70 74 20 22 44 65 6c 65 |ist prom|pt "Dele|
|00005b20| 74 65 20 77 68 69 63 68 | 20 70 61 74 74 65 72 6e |te which| pattern|
|00005b30| 3f 22 20 5b 6c 69 6e 64 | 65 78 20 5b 61 72 72 61 |?" [lind|ex [arra|
|00005b40| 79 20 6e 61 6d 65 73 20 | 70 61 74 74 65 72 6e 4c |y names |patternL|
|00005b50| 69 62 72 61 72 79 5d 20 | 30 5d 20 22 50 61 74 73 |ibrary] |0] "Pats|
|00005b60| 3a 22 5d 0d 09 73 65 74 | 20 6e 61 6d 65 20 5b 65 |:"]..set| name [e|
|00005b70| 76 61 6c 20 5b 63 6f 6e | 63 61 74 20 24 74 65 6d |val [con|cat $tem|
|00005b80| 70 20 5b 61 72 72 61 79 | 20 6e 61 6d 65 73 20 70 |p [array| names p|
|00005b90| 61 74 74 65 72 6e 4c 69 | 62 72 61 72 79 5d 5d 5d |atternLi|brary]]]|
|00005ba0| 0d 09 72 65 6d 6f 76 65 | 41 72 72 44 65 66 20 70 |..remove|ArrDef p|
|00005bb0| 61 74 74 65 72 6e 4c 69 | 62 72 61 72 79 20 24 6e |atternLi|brary $n|
|00005bc0| 61 6d 65 0d 09 75 6e 73 | 65 74 20 70 61 74 74 65 |ame..uns|et patte|
|00005bd0| 72 6e 4c 69 62 72 61 72 | 79 28 24 6e 61 6d 65 29 |rnLibrar|y($name)|
|00005be0| 0d 7d 0d 0d 23 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.}..#===|========|
|00005bf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005c00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005c10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005c20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005c30| 3d 3d 3d 3d 0d 23 20 53 | 75 70 70 6f 72 74 20 66 |====.# S|upport f|
|00005c40| 6f 72 20 50 65 74 65 72 | 20 47 6f 6e 74 69 65 72 |or Peter| Gontier|
|00005c50| 27 73 20 27 43 6c 69 63 | 6b 57 61 72 72 69 6f 72 |'s 'Clic|kWarrior|
|00005c60| 27 20 28 44 6f 65 73 6e | 27 74 20 77 6f 72 6b 20 |' (Doesn|'t work |
|00005c70| 66 6f 72 20 36 38 6b 29 | 2e 0d 23 3d 3d 3d 3d 3d |for 68k)|..#=====|
|00005c80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005c90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005ca0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005cb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005cc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0d 65 76 65 6e |========|==..even|
|00005cd0| 74 48 61 6e 64 6c 65 72 | 20 41 4c 46 41 20 43 57 |tHandler| ALFA CW|
|00005ce0| 4f 46 20 63 6c 69 63 6b | 48 61 6e 64 6c 65 72 0d |OF click|Handler.|
|00005cf0| 0d 70 72 6f 63 20 63 6c | 69 63 6b 48 61 6e 64 6c |.proc cl|ickHandl|
|00005d00| 65 72 20 7b 6d 73 67 7d | 20 7b 0d 09 67 6c 6f 62 |er {msg}| {..glob|
|00005d10| 61 6c 20 48 4f 4d 45 20 | 41 4c 50 48 41 20 43 4f |al HOME |ALPHA CO|
|00005d20| 44 45 57 61 72 72 69 6f | 72 20 43 57 43 4c 41 53 |DEWarrio|r CWCLAS|
|00005d30| 53 0d 09 73 77 69 74 63 | 68 54 6f 20 24 41 4c 50 |S..switc|hTo $ALP|
|00005d40| 48 41 0d 09 63 68 65 63 | 6b 43 77 0d 09 69 66 20 |HA..chec|kCw..if |
|00005d50| 7b 5b 72 65 67 65 78 70 | 20 7b d2 28 2e 2a 29 d3 |{[regexp| {.(.*).|
|00005d60| 2e 2a c7 2e 2a c8 2e 2a | c7 28 2e 2a 29 c8 2e 2a |.*..*..*|.(.*)..*|
|00005d70| c7 28 2e 2a 29 c8 7d 20 | 24 6d 73 67 20 64 75 6d |.(.*).} |$msg dum|
|00005d80| 6d 79 20 66 6e 61 6d 65 | 20 66 69 6e 64 20 73 69 |my fname| find si|
|00005d90| 6e 64 5d 7d 20 7b 0d 09 | 09 73 65 74 20 72 65 73 |nd]} {..|.set res|
|00005da0| 20 5b 41 45 42 75 69 6c | 64 20 2d 74 20 35 30 30 | [AEBuil|d -t 500|
|00005db0| 30 30 30 20 2d 72 20 24 | 43 4f 44 45 57 61 72 72 |000 -r $|CODEWarr|
|00005dc0| 69 6f 72 20 24 43 57 43 | 4c 41 53 53 20 47 46 69 |ior $CWC|LASS GFi|
|00005dd0| 6c 20 22 2d 2d 2d 2d 22 | 20 22 6c 6f 6e 67 28 c7 |l "----"| "long(.|
|00005de0| 30 30 30 30 24 66 69 6e | 64 c8 29 22 20 53 65 67 |0000$fin|d.)" Seg|
|00005df0| 6d 20 22 6c 6f 6e 67 28 | 24 73 69 6e 64 29 22 5d |m "long(|$sind)"]|
|00005e00| 0d 09 09 69 66 20 7b 5b | 72 65 67 65 78 70 20 7b |...if {[|regexp {|
|00005e10| 46 54 78 74 7d 20 24 72 | 65 73 5d 7d 20 7b 0d 09 |FTxt} $r|es]} {..|
|00005e20| 09 09 72 65 67 65 78 70 | 20 7b c7 28 2e 2a 29 c8 |..regexp| {.(.*).|
|00005e30| 7d 20 24 72 65 73 20 64 | 75 6d 6d 79 20 73 70 65 |} $res d|ummy spe|
|00005e40| 63 0d 09 09 09 73 65 74 | 20 66 20 5b 73 70 65 63 |c....set| f [spec|
|00005e50| 54 6f 50 61 74 68 4e 61 | 6d 65 20 24 73 70 65 63 |ToPathNa|me $spec|
|00005e60| 5d 0d 09 09 09 65 64 69 | 74 20 24 66 0d 09 09 7d |]....edi|t $f...}|
|00005e70| 0d 09 7d 0d 7d 0d 0d 23 | 3d 3d 3d 3d 3d 3d 3d 3d |..}.}..#|========|
|00005e80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005e90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005ea0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005eb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005ec0| 3d 3d 3d 3d 3d 3d 3d 0d | 70 72 6f 63 20 71 75 69 |=======.|proc qui|
|00005ed0| 63 6b 46 69 6e 64 20 7b | 7d 20 7b 69 73 65 61 72 |ckFind {|} {isear|
|00005ee0| 63 68 7d 0d 70 72 6f 63 | 20 72 65 76 65 72 73 65 |ch}.proc| reverse|
|00005ef0| 51 75 69 63 6b 46 69 6e | 64 20 7b 7d 20 7b 72 73 |QuickFin|d {} {rs|
|00005f00| 65 61 72 63 68 7d 0d 0d | 70 72 6f 63 20 70 75 73 |earch}..|proc pus|
|00005f10| 68 50 6f 73 69 74 69 6f | 6e 20 7b 7d 20 7b 70 75 |hPositio|n {} {pu|
|00005f20| 73 68 4d 61 72 6b 7d 0d | 70 72 6f 63 20 70 6f 70 |shMark}.|proc pop|
|00005f30| 50 6f 73 69 74 69 6f 6e | 20 7b 7d 20 7b 70 6f 70 |Position| {} {pop|
|00005f40| 4d 61 72 6b 7d 0d 23 3d | 3d 3d 3d 3d 3d 3d 3d 3d |Mark}.#=|========|
|00005f50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005f60| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005f70| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005f80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00005f90| 3d 3d 3d 3d 3d 3d 0d 70 | 72 6f 63 20 6c 69 74 65 |======.p|roc lite|
|00005fa0| 72 61 6c 43 68 61 72 20 | 7b 7d 20 7b 0d 09 72 65 |ralChar |{} {..re|
|00005fb0| 74 75 72 6e 20 5b 65 78 | 70 72 20 7b 5b 6c 6f 6f |turn [ex|pr {[loo|
|00005fc0| 6b 41 74 20 5b 65 78 70 | 72 20 5b 67 65 74 50 6f |kAt [exp|r [getPo|
|00005fd0| 73 5d 20 2d 20 31 5d 5d | 20 3d 3d 20 22 5c 5c 22 |s] - 1]]| == "\\"|
|00005fe0| 7d 5d 0d 7d 0d 70 72 6f | 63 20 69 73 53 65 6c 65 |}].}.pro|c isSele|
|00005ff0| 63 74 69 6f 6e 20 7b 7d | 20 7b 0d 09 72 65 74 75 |ction {}| {..retu|
|00006000| 72 6e 20 5b 73 74 72 69 | 6e 67 20 6c 65 6e 67 74 |rn [stri|ng lengt|
|00006010| 68 20 5b 67 65 74 53 65 | 6c 65 63 74 5d 5d 0d 7d |h [getSe|lect]].}|
|00006020| 0d 0d 70 72 6f 63 20 66 | 69 6e 64 50 61 74 4a 75 |..proc f|indPatJu|
|00006030| 73 74 42 65 66 6f 72 65 | 20 7b 20 66 69 6e 64 70 |stBefore| { findp|
|00006040| 61 74 20 70 61 74 20 7b | 70 6f 73 20 22 22 7d 20 |at pat {|pos ""} |
|00006050| 7b 6d 61 74 63 68 77 20 | 22 22 7d 20 7d 20 7b 0d |{matchw |""} } {.|
|00006060| 09 69 66 20 7b 20 24 70 | 6f 73 20 3d 3d 20 22 22 |.if { $p|os == ""|
|00006070| 20 7d 20 7b 73 65 74 20 | 70 6f 73 20 5b 67 65 74 | } {set |pos [get|
|00006080| 50 6f 73 5d 20 7d 0d 09 | 69 66 20 7b 20 24 6d 61 |Pos] }..|if { $ma|
|00006090| 74 63 68 77 20 21 3d 20 | 22 22 20 7d 20 7b 20 75 |tchw != |"" } { u|
|000060a0| 70 76 61 72 20 20 24 6d | 61 74 63 68 77 20 77 6f |pvar $m|atchw wo|
|000060b0| 72 64 20 7d 0d 09 69 66 | 20 7b 20 21 5b 63 61 74 |rd }..if| { ![cat|
|000060c0| 63 68 20 7b 73 65 61 72 | 63 68 20 2d 73 20 2d 66 |ch {sear|ch -s -f|
|000060d0| 20 30 20 2d 72 20 31 20 | 22 24 66 69 6e 64 70 61 | 0 -r 1 |"$findpa|
|000060e0| 74 22 20 24 70 6f 73 7d | 20 72 65 73 5d 20 7d 20 |t" $pos}| res] } |
|000060f0| 7b 0d 09 09 69 66 20 7b | 20 5b 72 65 67 65 78 70 |{...if {| [regexp|
|00006100| 20 22 24 70 61 74 22 20 | 5b 67 65 74 54 65 78 74 | "$pat" |[getText|
|00006110| 20 5b 6c 69 6e 64 65 78 | 20 24 72 65 73 20 30 5d | [lindex| $res 0]|
|00006120| 20 24 70 6f 73 5d 20 64 | 75 6d 20 77 6f 72 64 5d | $pos] d|um word]|
|00006130| 20 7d 20 7b 0d 09 09 09 | 72 65 74 75 72 6e 20 5b | } {....|return [|
|00006140| 6c 69 6e 64 65 78 20 24 | 72 65 73 20 30 5d 0d 09 |lindex $|res 0]..|
|00006150| 09 7d 0d 09 7d 0d 09 72 | 65 74 75 72 6e 0d 7d 0d |.}..}..r|eturn.}.|
|00006160| 0d 23 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.#======|========|
|00006170| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006180| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006190| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000061a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000061b0| 3d 0d 70 72 6f 63 20 6d | 6b 64 69 72 20 7b 64 69 |=.proc m|kdir {di|
|000061c0| 72 7d 20 7b 0d 09 6f 6c | 64 4d 6b 64 69 72 20 5b |r} {..ol|dMkdir [|
|000061d0| 6c 69 73 74 20 24 64 69 | 72 5d 0d 7d 0d 0d 70 72 |list $di|r].}..pr|
|000061e0| 6f 63 20 72 6d 64 69 72 | 20 7b 64 69 72 7d 20 7b |oc rmdir| {dir} {|
|000061f0| 0d 09 6f 6c 64 52 6d 64 | 69 72 20 5b 6c 69 73 74 |..oldRmd|ir [list|
|00006200| 20 24 64 69 72 5d 0d 7d | 0d 0d 23 3d 3d 3d 3d 3d | $dir].}|..#=====|
|00006210| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006220| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006230| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006240| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00006250| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 70 72 6f 63 20 |========|==.proc |
|00006260| 74 65 78 74 54 6f 41 6c | 70 68 61 20 7b 7b 64 69 |textToAl|pha {{di|
|00006270| 72 20 22 22 7d 7d 20 7b | 0d 09 73 65 74 20 6e 75 |r ""}} {|..set nu|
|00006280| 6d 20 30 0d 09 69 66 20 | 7b 21 5b 73 74 72 69 6e |m 0..if |{![strin|
|00006290| 67 20 6c 65 6e 67 74 68 | 20 24 64 69 72 5d 7d 20 |g length| $dir]} |
|000062a0| 7b 0d 09 09 73 65 74 20 | 64 69 72 20 5b 67 65 74 |{...set |dir [get|
|000062b0| 5f 64 69 72 65 63 74 6f | 72 79 20 2d 70 20 22 43 |_directo|ry -p "C|
|000062c0| 72 65 61 74 6f 72 73 20 | 74 6f 20 27 41 4c 46 41 |reators |to 'ALFA|
|000062d0| 27 3a 22 5d 0d 09 7d 0d | 0d 09 69 66 20 7b 21 5b |':"]..}.|..if {![|
|000062e0| 63 61 74 63 68 20 7b 67 | 6c 6f 62 20 22 24 64 69 |catch {g|lob "$di|
|000062f0| 72 3a 2a 22 7d 20 66 69 | 6c 65 73 5d 7d 20 7b 0d |r:*"} fi|les]} {.|
|00006300| 09 09 66 6f 72 65 61 63 | 68 20 66 20 24 66 69 6c |..foreac|h f $fil|
|00006310| 65 73 20 7b 0d 09 09 09 | 69 66 20 7b 5b 66 69 6c |es {....|if {[fil|
|00006320| 65 20 69 73 66 69 6c 65 | 20 24 66 5d 20 26 26 20 |e isfile| $f] && |
|00006330| 28 5b 67 65 74 46 69 6c | 65 54 79 70 65 20 24 66 |([getFil|eType $f|
|00006340| 5d 20 3d 3d 20 22 54 45 | 58 54 22 29 20 26 26 20 |] == "TE|XT") && |
|00006350| 28 5b 67 65 74 46 69 6c | 65 53 69 67 20 24 66 5d |([getFil|eSig $f]|
|00006360| 20 21 3d 20 22 41 4c 46 | 41 22 29 7d 20 7b 0d 09 | != "ALF|A")} {..|
|00006370| 09 09 09 6d 65 73 73 61 | 67 65 20 24 66 0d 09 09 |...messa|ge $f...|
|00006380| 09 09 73 65 74 46 69 6c | 65 49 6e 66 6f 20 24 66 |..setFil|eInfo $f|
|00006390| 20 63 72 65 61 74 6f 72 | 20 41 4c 46 41 0d 09 09 | creator| ALFA...|
|000063a0| 09 09 69 6e 63 72 20 6e | 75 6d 0d 09 09 09 7d 20 |..incr n|um....} |
|000063b0| 65 6c 73 65 69 66 20 7b | 5b 66 69 6c 65 20 69 73 |elseif {|[file is|
|000063c0| 64 69 72 20 24 66 5d 7d | 20 7b 0d 09 09 09 09 69 |dir $f]}| {.....i|
|000063d0| 6e 63 72 20 6e 75 6d 20 | 5b 74 65 78 74 54 6f 41 |ncr num |[textToA|
|000063e0| 6c 70 68 61 20 24 66 5d | 0d 09 09 09 7d 0d 09 09 |lpha $f]|....}...|
|000063f0| 7d 0d 09 7d 0d 09 6d 65 | 73 73 61 67 65 20 22 43 |}..}..me|ssage "C|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.