home *** CD-ROM | disk | FTP | other *** search
/ Internet File Formats / InternetFileFormatsCD.bin / text / latex / mac / alpha.6.0.sit / Tcl / SystemCode / diff.tcl < prev    next >
MacBinary  |  1995-06-08  |  8.3 KB  |  [TEXT/ALFA]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Thu Jun 8 22:24:12 1995, modified Thu Jun 8 22:24:12 1995, creator Alpha editor, type ASCII, 7677 bytes "diff.tcl" , at 0x1e7d 604 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
keyvalue
macFileType[TEXT]
macFileCreator[ALFA]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 08 64 69 66 66 2e 74 | 63 6c 00 00 00 00 00 00 |..diff.t|cl......|
|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 01 00 00 00 00 00 00 |.TEXTALF|A.......|
|00000050| 00 00 00 00 00 1d fd 00 | 00 02 5c ab fd 61 4c ab |........|..\..aL.|
|00000060| fd 61 4c 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.aL.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 9c a8 00 00 |........|........|
|00000080| 0d 23 20 55 73 61 67 65 | 3a 20 64 69 66 66 20 5b |.# Usage|: diff [|
|00000090| 2d 23 5d 20 5b 2d 61 62 | 42 63 64 65 66 68 48 69 |-#] [-ab|BcdefhHi|
|000000a0| 6c 6e 4e 70 72 73 74 54 | 75 76 77 5d 20 5b 2d 43 |lnNprstT|uvw] [-C|
|000000b0| 20 6c 69 6e 65 73 5d 20 | 5b 2d 46 20 72 65 67 65 | lines] |[-F rege|
|000000c0| 78 70 5d 20 5b 2d 49 20 | 72 65 67 65 78 70 5d 0d |xp] [-I |regexp].|
|000000d0| 23 20 20 20 20 20 20 20 | 20 5b 2d 4c 20 6c 61 62 |# | [-L lab|
|000000e0| 65 6c 20 5b 2d 4c 20 6c | 61 62 65 6c 5d 5d 20 5b |el [-L l|abel]] [|
|000000f0| 2d 53 20 66 69 6c 65 5d | 20 5b 2d 44 20 73 79 6d |-S file]| [-D sym|
|00000100| 62 6f 6c 5d 20 5b 2b 69 | 67 6e 6f 72 65 2d 62 6c |bol] [+i|gnore-bl|
|00000110| 61 6e 6b 2d 6c 69 6e 65 | 73 5d 0d 23 20 20 20 20 |ank-line|s].# |
|00000120| 20 20 20 20 5b 2b 63 6f | 6e 74 65 78 74 5b 3d 6c | [+co|ntext[=l|
|00000130| 69 6e 65 73 5d 5d 20 5b | 2b 75 6e 69 66 69 65 64 |ines]] [|+unified|
|00000140| 5b 3d 6c 69 6e 65 73 5d | 5d 20 5b 2b 69 66 64 65 |[=lines]|] [+ifde|
|00000150| 66 3d 73 79 6d 62 6f 6c | 5d 0d 23 20 20 20 20 20 |f=symbol|].# |
|00000160| 20 20 20 5b 2b 73 68 6f | 77 2d 66 75 6e 63 74 69 | [+sho|w-functi|
|00000170| 6f 6e 2d 6c 69 6e 65 3d | 72 65 67 65 78 70 5d 0d |on-line=|regexp].|
|00000180| 23 20 20 20 20 20 20 20 | 20 5b 2b 73 70 65 65 64 |# | [+speed|
|00000190| 2d 6c 61 72 67 65 2d 66 | 69 6c 65 73 5d 20 5b 2b |-large-f|iles] [+|
|000001a0| 69 67 6e 6f 72 65 2d 6d | 61 74 63 68 69 6e 67 2d |ignore-m|atching-|
|000001b0| 6c 69 6e 65 73 3d 72 65 | 67 65 78 70 5d 20 5b 2b |lines=re|gexp] [+|
|000001c0| 6e 65 77 2d 66 69 6c 65 | 5d 0d 23 20 20 20 20 20 |new-file|].# |
|000001d0| 20 20 20 5b 2b 69 6e 69 | 74 69 61 6c 2d 74 61 62 | [+ini|tial-tab|
|000001e0| 5d 20 5b 2b 73 74 61 72 | 74 69 6e 67 2d 66 69 6c |] [+star|ting-fil|
|000001f0| 65 3d 66 69 6c 65 5d 20 | 5b 2b 74 65 78 74 5d 20 |e=file] |[+text] |
|00000200| 5b 2b 61 6c 6c 2d 74 65 | 78 74 5d 20 5b 2b 61 73 |[+all-te|xt] [+as|
|00000210| 63 69 69 5d 0d 23 20 20 | 20 20 20 20 20 20 5b 2b |cii].# | [+|
|00000220| 6d 69 6e 69 6d 61 6c 5d | 20 5b 2b 69 67 6e 6f 72 |minimal]| [+ignor|
|00000230| 65 2d 73 70 61 63 65 2d | 63 68 61 6e 67 65 5d 20 |e-space-|change] |
|00000240| 5b 2b 65 64 5d 20 5b 2b | 72 65 76 65 72 73 65 64 |[+ed] [+|reversed|
|00000250| 2d 65 64 5d 20 5b 2b 69 | 67 6e 6f 72 65 2d 63 61 |-ed] [+i|gnore-ca|
|00000260| 73 65 5d 0d 23 20 20 20 | 20 20 20 20 20 5b 2b 70 |se].# | [+p|
|00000270| 72 69 6e 74 5d 20 5b 2b | 72 63 73 5d 20 5b 2b 73 |rint] [+|rcs] [+s|
|00000280| 68 6f 77 2d 63 2d 66 75 | 6e 63 74 69 6f 6e 5d 20 |how-c-fu|nction] |
|00000290| 5b 2b 62 69 6e 61 72 79 | 5d 20 5b 2b 62 72 69 65 |[+binary|] [+brie|
|000002a0| 66 5d 20 5b 2b 72 65 63 | 75 72 73 69 76 65 5d 0d |f] [+rec|ursive].|
|000002b0| 23 20 20 20 20 20 20 20 | 20 5b 2b 72 65 70 6f 72 |# | [+repor|
|000002c0| 74 2d 69 64 65 6e 74 69 | 63 61 6c 2d 66 69 6c 65 |t-identi|cal-file|
|000002d0| 73 5d 20 5b 2b 65 78 70 | 61 6e 64 2d 74 61 62 73 |s] [+exp|and-tabs|
|000002e0| 5d 20 5b 2b 69 67 6e 6f | 72 65 2d 61 6c 6c 2d 73 |] [+igno|re-all-s|
|000002f0| 70 61 63 65 5d 0d 23 20 | 20 20 20 20 20 20 20 5b |pace].# | [|
|00000300| 2b 66 69 6c 65 2d 6c 61 | 62 65 6c 3d 6c 61 62 65 |+file-la|bel=labe|
|00000310| 6c 20 5b 2b 66 69 6c 65 | 2d 6c 61 62 65 6c 3d 6c |l [+file|-label=l|
|00000320| 61 62 65 6c 5d 5d 20 5b | 2b 76 65 72 73 69 6f 6e |abel]] [|+version|
|00000330| 5d 20 70 61 74 68 31 20 | 70 61 74 68 32 0d 0d 0d |] path1 |path2...|
|00000340| 70 72 6f 63 20 63 6f 6d | 70 61 72 65 44 69 72 65 |proc com|pareDire|
|00000350| 63 74 6f 72 69 65 73 20 | 7b 7d 20 7b 0d 09 67 6c |ctories |{} {..gl|
|00000360| 6f 62 61 6c 20 64 69 66 | 66 4f 6e 65 20 64 69 66 |obal dif|fOne dif|
|00000370| 66 54 77 6f 0d 09 0d 23 | 09 72 65 74 75 72 6e 20 |fTwo...#|.return |
|00000380| 22 43 6c 6f 73 65 64 20 | 66 6f 72 20 72 65 70 61 |"Closed |for repa|
|00000390| 69 72 73 c9 22 0d 0d 20 | 20 20 20 73 65 74 20 64 |irs.".. | set d|
|000003a0| 69 66 66 4f 6e 65 20 5b | 73 74 72 69 6e 67 20 74 |iffOne [|string t|
|000003b0| 72 69 6d 72 69 67 68 74 | 20 5b 67 65 74 5f 64 69 |rimright| [get_di|
|000003c0| 72 65 63 74 6f 72 79 20 | 2d 70 20 22 53 65 6c 65 |rectory |-p "Sele|
|000003d0| 63 74 20 64 69 72 20 31 | 3a 22 5d 20 7b 3a 7d 5d |ct dir 1|:"] {:}]|
|000003e0| 0d 20 20 20 20 73 65 74 | 20 64 69 66 66 54 77 6f |. set| diffTwo|
|000003f0| 20 5b 73 74 72 69 6e 67 | 20 74 72 69 6d 72 69 67 | [string| trimrig|
|00000400| 68 74 20 5b 67 65 74 5f | 64 69 72 65 63 74 6f 72 |ht [get_|director|
|00000410| 79 20 2d 70 20 22 53 65 | 6c 65 63 74 20 64 69 72 |y -p "Se|lect dir|
|00000420| 20 32 3a 22 5d 20 7b 3a | 7d 5d 0d 0d 09 64 6f 54 | 2:"] {:|}]...doT|
|00000430| 68 65 43 6f 6d 70 61 72 | 65 20 31 20 7b 2a 20 44 |heCompar|e 1 {* D|
|00000440| 69 72 65 63 74 6f 72 79 | 20 43 6f 6d 70 61 72 69 |irectory| Compari|
|00000450| 73 6f 6e 20 2a 7d 0d 7d | 0d 0d 0d 70 72 6f 63 20 |son *}.}|...proc |
|00000460| 63 6f 6d 70 61 72 65 46 | 69 6c 65 73 20 7b 7d 20 |compareF|iles {} |
|00000470| 7b 0d 09 67 6c 6f 62 61 | 6c 20 74 69 6c 65 57 69 |{..globa|l tileWi|
|00000480| 64 74 68 20 74 69 6c 65 | 48 65 69 67 68 74 20 74 |dth tile|Height t|
|00000490| 69 6c 65 54 6f 70 20 74 | 69 6c 65 4c 65 66 74 0d |ileTop t|ileLeft.|
|000004a0| 09 67 6c 6f 62 61 6c 20 | 64 69 66 66 4f 6e 65 20 |.global |diffOne |
|000004b0| 64 69 66 66 54 77 6f 0d | 0d 09 73 65 74 20 64 69 |diffTwo.|..set di|
|000004c0| 66 66 4f 6e 65 20 5b 67 | 65 74 66 69 6c 65 20 22 |ffOne [g|etfile "|
|000004d0| 53 65 6c 65 63 74 20 79 | 6f 75 72 20 66 69 72 73 |Select y|our firs|
|000004e0| 74 20 66 69 6c 65 3a 22 | 5d 0d 09 73 65 74 20 64 |t file:"|]..set d|
|000004f0| 69 66 66 54 77 6f 20 5b | 67 65 74 66 69 6c 65 20 |iffTwo [|getfile |
|00000500| 22 53 65 6c 65 63 74 20 | 79 6f 75 72 20 73 65 63 |"Select |your sec|
|00000510| 6f 6e 64 20 66 69 6c 65 | 3a 22 5d 0d 09 0d 09 69 |ond file|:"]....i|
|00000520| 66 20 7b 5b 6c 73 65 61 | 72 63 68 20 5b 77 69 6e |f {[lsea|rch [win|
|00000530| 4e 61 6d 65 73 20 2d 66 | 5d 20 24 64 69 66 66 4f |Names -f|] $diffO|
|00000540| 6e 65 5d 20 3e 3d 20 30 | 7d 20 7b 0d 09 09 62 72 |ne] >= 0|} {...br|
|00000550| 69 6e 67 54 6f 46 72 6f | 6e 74 20 24 64 69 66 66 |ingToFro|nt $diff|
|00000560| 4f 6e 65 0d 09 09 6b 69 | 6c 6c 57 69 6e 64 6f 77 |One...ki|llWindow|
|00000570| 0d 09 09 69 66 20 7b 5b | 6c 73 65 61 72 63 68 20 |...if {[|lsearch |
|00000580| 5b 77 69 6e 4e 61 6d 65 | 73 20 2d 66 5d 20 24 64 |[winName|s -f] $d|
|00000590| 69 66 66 4f 6e 65 5d 20 | 3e 3d 20 30 7d 20 7b 72 |iffOne] |>= 0} {r|
|000005a0| 65 74 75 72 6e 7d 0d 09 | 7d 0d 09 69 66 20 7b 5b |eturn}..|}..if {[|
|000005b0| 6c 73 65 61 72 63 68 20 | 5b 77 69 6e 4e 61 6d 65 |lsearch |[winName|
|000005c0| 73 20 2d 66 5d 20 24 64 | 69 66 66 54 77 6f 5d 20 |s -f] $d|iffTwo] |
|000005d0| 3e 3d 20 30 7d 20 7b 0d | 09 09 62 72 69 6e 67 54 |>= 0} {.|..bringT|
|000005e0| 6f 46 72 6f 6e 74 20 24 | 64 69 66 66 54 77 6f 0d |oFront $|diffTwo.|
|000005f0| 09 09 6b 69 6c 6c 57 69 | 6e 64 6f 77 0d 09 09 69 |..killWi|ndow...i|
|00000600| 66 20 7b 5b 6c 73 65 61 | 72 63 68 20 5b 77 69 6e |f {[lsea|rch [win|
|00000610| 4e 61 6d 65 73 20 2d 66 | 5d 20 24 64 69 66 66 54 |Names -f|] $diffT|
|00000620| 77 6f 5d 20 3e 3d 20 30 | 7d 20 7b 72 65 74 75 72 |wo] >= 0|} {retur|
|00000630| 6e 7d 0d 09 7d 0d 09 0d | 09 73 65 74 20 67 65 6f |n}..}...|.set geo|
|00000640| 31 20 5b 64 69 66 66 47 | 65 6f 20 31 5d 0d 09 73 |1 [diffG|eo 1]..s|
|00000650| 65 74 20 67 65 6f 32 20 | 5b 64 69 66 66 47 65 6f |et geo2 |[diffGeo|
|00000660| 20 30 5d 0d 09 0d 09 65 | 64 69 74 20 2d 67 20 5b | 0]....e|dit -g [|
|00000670| 6c 69 6e 64 65 78 20 24 | 67 65 6f 31 20 30 5d 20 |lindex $|geo1 0] |
|00000680| 5b 6c 69 6e 64 65 78 20 | 24 67 65 6f 31 20 31 5d |[lindex |$geo1 1]|
|00000690| 20 5b 6c 69 6e 64 65 78 | 20 24 67 65 6f 31 20 32 | [lindex| $geo1 2|
|000006a0| 5d 20 5b 6c 69 6e 64 65 | 78 20 24 67 65 6f 31 20 |] [linde|x $geo1 |
|000006b0| 33 5d 20 24 64 69 66 66 | 4f 6e 65 0d 09 73 65 74 |3] $diff|One..set|
|000006c0| 20 64 69 66 66 4f 6e 65 | 20 5b 6c 69 6e 64 65 78 | diffOne| [lindex|
|000006d0| 20 5b 77 69 6e 4e 61 6d | 65 73 20 2d 66 5d 20 30 | [winNam|es -f] 0|
|000006e0| 5d 0d 09 64 69 73 70 6c | 61 79 20 30 0d 09 67 6f |]..displ|ay 0..go|
|000006f0| 74 6f 20 30 0d 0d 09 65 | 64 69 74 20 2d 67 20 5b |to 0...e|dit -g [|
|00000700| 6c 69 6e 64 65 78 20 24 | 67 65 6f 32 20 30 5d 20 |lindex $|geo2 0] |
|00000710| 5b 6c 69 6e 64 65 78 20 | 24 67 65 6f 32 20 31 5d |[lindex |$geo2 1]|
|00000720| 20 5b 6c 69 6e 64 65 78 | 20 24 67 65 6f 32 20 32 | [lindex| $geo2 2|
|00000730| 5d 20 5b 6c 69 6e 64 65 | 78 20 24 67 65 6f 32 20 |] [linde|x $geo2 |
|00000740| 33 5d 20 24 64 69 66 66 | 54 77 6f 0d 09 73 65 74 |3] $diff|Two..set|
|00000750| 20 64 69 66 66 54 77 6f | 20 5b 6c 69 6e 64 65 78 | diffTwo| [lindex|
|00000760| 20 5b 77 69 6e 4e 61 6d | 65 73 20 2d 66 5d 20 30 | [winNam|es -f] 0|
|00000770| 5d 0d 09 64 69 73 70 6c | 61 79 20 30 0d 09 67 6f |]..displ|ay 0..go|
|00000780| 74 6f 20 30 0d 09 0d 09 | 64 6f 54 68 65 43 6f 6d |to 0....|doTheCom|
|00000790| 70 61 72 65 0d 7d 0d 0d | 70 72 6f 63 20 64 69 66 |pare.}..|proc dif|
|000007a0| 66 47 65 6f 20 7b 6c 65 | 66 74 7d 20 7b 0d 09 67 |fGeo {le|ft} {..g|
|000007b0| 6c 6f 62 61 6c 20 74 69 | 6c 65 57 69 64 74 68 20 |lobal ti|leWidth |
|000007c0| 74 69 6c 65 48 65 69 67 | 68 74 20 74 69 6c 65 54 |tileHeig|ht tileT|
|000007d0| 6f 70 20 74 69 6c 65 4c | 65 66 74 0d 0d 09 73 65 |op tileL|eft...se|
|000007e0| 74 20 6d 61 72 67 69 6e | 20 34 0d 09 73 65 74 20 |t margin| 4..set |
|000007f0| 77 69 64 74 68 20 5b 65 | 78 70 72 20 28 24 74 69 |width [e|xpr ($ti|
|00000800| 6c 65 57 69 64 74 68 20 | 2d 20 24 6d 61 72 67 69 |leWidth |- $margi|
|00000810| 6e 29 2f 32 5d 0d 09 73 | 65 74 20 68 65 69 67 68 |n)/2]..s|et heigh|
|00000820| 74 20 5b 65 78 70 72 20 | 24 74 69 6c 65 48 65 69 |t [expr |$tileHei|
|00000830| 67 68 74 20 2d 20 32 30 | 30 5d 0d 09 73 65 74 20 |ght - 20|0]..set |
|00000840| 68 6f 72 20 24 74 69 6c | 65 4c 65 66 74 0d 0d 09 |hor $til|eLeft...|
|00000850| 69 66 20 7b 21 24 6c 65 | 66 74 7d 20 7b 69 6e 63 |if {!$le|ft} {inc|
|00000860| 72 20 68 6f 72 20 5b 65 | 78 70 72 20 24 77 69 64 |r hor [e|xpr $wid|
|00000870| 74 68 2b 24 6d 61 72 67 | 69 6e 5d 7d 0d 09 0d 09 |th+$marg|in]}....|
|00000880| 72 65 74 75 72 6e 20 5b | 6c 69 73 74 20 24 68 6f |return [|list $ho|
|00000890| 72 20 24 74 69 6c 65 54 | 6f 70 20 24 77 69 64 74 |r $tileT|op $widt|
|000008a0| 68 20 24 68 65 69 67 68 | 74 5d 0d 7d 0d 0d 0d 70 |h $heigh|t].}...p|
|000008b0| 72 6f 63 20 63 6f 6d 70 | 61 72 65 57 69 6e 64 6f |roc comp|areWindo|
|000008c0| 77 73 20 7b 7d 20 7b 0d | 09 67 6c 6f 62 61 6c 20 |ws {} {.|.global |
|000008d0| 74 69 6c 65 48 65 69 67 | 68 74 20 74 69 6c 65 57 |tileHeig|ht tileW|
|000008e0| 69 64 74 68 20 74 69 6c | 65 54 6f 70 20 74 69 6c |idth til|eTop til|
|000008f0| 65 4c 65 66 74 0d 09 67 | 6c 6f 62 61 6c 20 64 69 |eLeft..g|lobal di|
|00000900| 66 66 4f 6e 65 20 64 69 | 66 66 54 77 6f 0d 0d 09 |ffOne di|ffTwo...|
|00000910| 73 65 74 20 77 69 6e 73 | 20 5b 77 69 6e 4e 61 6d |set wins| [winNam|
|00000920| 65 73 20 2d 66 5d 0d 09 | 69 66 20 7b 5b 6c 6c 65 |es -f]..|if {[lle|
|00000930| 6e 67 74 68 20 24 77 69 | 6e 73 5d 20 3c 20 32 7d |ngth $wi|ns] < 2}|
|00000940| 20 7b 20 6d 65 73 73 61 | 67 65 20 22 4e 65 65 64 | { messa|ge "Need|
|00000950| 20 32 20 77 69 6e 64 6f | 77 73 22 3b 20 72 65 74 | 2 windo|ws"; ret|
|00000960| 75 72 6e 20 7d 0d 09 0d | 09 73 65 74 20 64 69 66 |urn }...|.set dif|
|00000970| 66 4f 6e 65 20 5b 6c 69 | 6e 64 65 78 20 24 77 69 |fOne [li|ndex $wi|
|00000980| 6e 73 20 30 5d 0d 09 73 | 65 74 20 64 69 66 66 54 |ns 0]..s|et diffT|
|00000990| 77 6f 20 5b 6c 69 6e 64 | 65 78 20 24 77 69 6e 73 |wo [lind|ex $wins|
|000009a0| 20 31 5d 0d 09 0d 09 66 | 6f 72 20 7b 73 65 74 20 | 1]....f|or {set |
|000009b0| 69 20 30 7d 20 7b 24 69 | 20 3c 20 32 7d 20 7b 69 |i 0} {$i| < 2} {i|
|000009c0| 6e 63 72 20 69 7d 20 7b | 0d 09 09 73 65 74 20 6e |ncr i} {|...set n|
|000009d0| 6d 20 5b 6c 69 6e 64 65 | 78 20 24 77 69 6e 73 20 |m [linde|x $wins |
|000009e0| 24 69 5d 0d 09 09 67 65 | 74 57 69 6e 49 6e 66 6f |$i]...ge|tWinInfo|
|000009f0| 20 2d 77 20 24 6e 6d 20 | 62 0d 09 09 69 66 20 7b | -w $nm |b...if {|
|00000a00| 24 62 28 64 69 72 74 79 | 29 20 3d 3d 20 31 7d 20 |$b(dirty|) == 1} |
|00000a10| 7b 0d 09 09 09 61 6c 65 | 72 74 6e 6f 74 65 20 22 |{....ale|rtnote "|
|00000a20| 43 61 6e 27 74 20 63 6f | 6d 70 61 72 65 20 62 65 |Can't co|mpare be|
|00000a30| 63 61 75 73 65 20 74 68 | 65 20 77 69 6e 64 6f 77 |cause th|e window|
|00000a40| 20 24 6e 6d 20 68 61 73 | 20 75 6e 73 61 76 65 64 | $nm has| unsaved|
|00000a50| 20 63 68 61 6e 67 65 73 | 2e 20 5c 0d 53 61 76 65 | changes|. \.Save|
|00000a60| 20 69 74 20 61 6e 64 20 | 74 72 79 20 61 67 61 69 | it and |try agai|
|00000a70| 6e 2e 22 0d 09 09 09 72 | 65 74 75 72 6e 0d 09 09 |n."....r|eturn...|
|00000a80| 7d 0d 09 7d 0d 0d 09 73 | 65 74 20 67 65 6f 30 20 |}..}...s|et geo0 |
|00000a90| 5b 64 69 66 66 47 65 6f | 20 31 5d 0d 09 73 65 74 |[diffGeo| 1]..set|
|00000aa0| 20 67 65 6f 31 20 5b 64 | 69 66 66 47 65 6f 20 30 | geo1 [d|iffGeo 0|
|00000ab0| 5d 0d 09 0d 09 66 6f 72 | 20 7b 73 65 74 20 69 20 |]....for| {set i |
|00000ac0| 30 7d 20 7b 24 69 20 3c | 20 32 7d 20 7b 69 6e 63 |0} {$i <| 2} {inc|
|00000ad0| 72 20 69 7d 20 7b 0d 09 | 09 6d 6f 76 65 57 69 6e |r i} {..|.moveWin|
|00000ae0| 20 5b 6c 69 6e 64 65 78 | 20 24 77 69 6e 73 20 24 | [lindex| $wins $|
|00000af0| 69 5d 20 31 30 30 30 20 | 30 0d 09 09 73 69 7a 65 |i] 1000 |0...size|
|00000b00| 57 69 6e 20 5b 6c 69 6e | 64 65 78 20 24 77 69 6e |Win [lin|dex $win|
|00000b10| 73 20 24 69 5d 20 5b 6c | 69 6e 64 65 78 20 5b 73 |s $i] [l|index [s|
|00000b20| 65 74 20 67 65 6f 24 69 | 5d 20 32 5d 20 5b 6c 69 |et geo$i|] 2] [li|
|00000b30| 6e 64 65 78 20 5b 73 65 | 74 20 67 65 6f 24 69 5d |ndex [se|t geo$i]|
|00000b40| 20 33 5d 0d 09 7d 0d 0d | 09 66 6f 72 20 7b 73 65 | 3]..}..|.for {se|
|00000b50| 74 20 69 20 30 7d 20 7b | 24 69 20 3c 20 32 7d 20 |t i 0} {|$i < 2} |
|00000b60| 7b 69 6e 63 72 20 69 7d | 20 7b 0d 09 09 6d 6f 76 |{incr i}| {...mov|
|00000b70| 65 57 69 6e 20 5b 6c 69 | 6e 64 65 78 20 24 77 69 |eWin [li|ndex $wi|
|00000b80| 6e 73 20 24 69 5d 20 5b | 6c 69 6e 64 65 78 20 5b |ns $i] [|lindex [|
|00000b90| 73 65 74 20 67 65 6f 24 | 69 5d 20 30 5d 20 20 5b |set geo$|i] 0] [|
|00000ba0| 6c 69 6e 64 65 78 20 5b | 73 65 74 20 67 65 6f 24 |lindex [|set geo$|
|00000bb0| 69 5d 20 31 5d 0d 09 7d | 0d 0d 09 64 6f 54 68 65 |i] 1]..}|...doThe|
|00000bc0| 43 6f 6d 70 61 72 65 0d | 7d 0d 0d 70 72 6f 63 20 |Compare.|}..proc |
|00000bd0| 74 72 69 6d 6e 75 6d 20 | 7b 73 74 72 7d 20 7b 0d |trimnum |{str} {.|
|00000be0| 09 69 66 20 7b 5b 72 65 | 67 65 78 70 20 2d 69 6e |.if {[re|gexp -in|
|00000bf0| 64 69 63 65 73 20 7b 20 | 3c 5b 30 2d 39 5d 2b 3e |dices { |<[0-9]+>|
|00000c00| 24 7d 20 24 73 74 72 20 | 69 6e 64 5d 7d 20 7b 0d |$} $str |ind]} {.|
|00000c10| 09 09 72 65 74 75 72 6e | 20 5b 73 74 72 69 6e 67 |..return| [string|
|00000c20| 20 72 61 6e 67 65 20 24 | 73 74 72 20 30 20 5b 65 | range $|str 0 [e|
|00000c30| 78 70 72 20 5b 6c 69 6e | 64 65 78 20 24 69 6e 64 |xpr [lin|dex $ind|
|00000c40| 20 30 5d 20 2d 20 31 5d | 5d 0d 09 7d 20 65 6c 73 | 0] - 1]|]..} els|
|00000c50| 65 20 7b 0d 09 09 72 65 | 74 75 72 6e 20 24 73 74 |e {...re|turn $st|
|00000c60| 72 0d 09 7d 0d 7d 0d 23 | 20 70 72 6f 63 20 74 72 |r..}.}.#| proc tr|
|00000c70| 69 6d 42 20 7b 77 6e 61 | 6d 65 7d 20 7b 72 65 67 |imB {wna|me} {reg|
|00000c80| 73 75 62 20 7b 20 3c 5b | 30 2d 39 5d 2a 3e 24 7d |sub { <[|0-9]*>$}|
|00000c90| 20 24 77 6e 61 6d 65 20 | 22 22 20 77 6e 61 6d 65 | $wname |"" wname|
|00000ca0| 3b 72 65 74 75 72 6e 20 | 24 77 6e 61 6d 65 7d 0d |;return |$wname}.|
|00000cb0| 0d 0d 70 72 6f 63 20 64 | 6f 54 68 65 43 6f 6d 70 |..proc d|oTheComp|
|00000cc0| 61 72 65 20 7b 7b 69 73 | 64 69 72 20 30 7d 20 7b |are {{is|dir 0} {|
|00000cd0| 6e 61 6d 65 20 7b 2a 20 | 46 69 6c 65 20 43 6f 6d |name {* |File Com|
|00000ce0| 70 61 72 69 73 6f 6e 20 | 2a 7d 7d 7d 20 7b 0d 09 |parison |*}}} {..|
|00000cf0| 67 6c 6f 62 61 6c 20 74 | 69 6c 65 4c 65 66 74 20 |global t|ileLeft |
|00000d00| 74 69 6c 65 54 6f 70 20 | 74 69 6c 65 57 69 64 74 |tileTop |tileWidt|
|00000d10| 68 20 74 69 6c 65 48 65 | 69 67 68 74 20 64 69 66 |h tileHe|ight dif|
|00000d20| 66 46 6c 61 67 73 0d 09 | 67 6c 6f 62 61 6c 20 64 |fFlags..|global d|
|00000d30| 69 66 66 4f 6e 65 20 64 | 69 66 66 54 77 6f 20 77 |iffOne d|iffTwo w|
|00000d40| 69 6e 4d 6f 64 65 73 20 | 48 4f 4d 45 20 64 69 66 |inModes |HOME dif|
|00000d50| 66 44 69 72 0d 09 0d 09 | 73 65 74 20 64 69 66 66 |fDir....|set diff|
|00000d60| 44 69 72 20 24 69 73 64 | 69 72 0d 0d 09 6d 65 73 |Dir $isd|ir...mes|
|00000d70| 73 61 67 65 20 22 4c 61 | 75 6e 63 68 69 6e 67 20 |sage "La|unching |
|00000d80| 27 47 4e 55 20 44 69 66 | 66 27 22 0d 09 6c 61 75 |'GNU Dif|f'"..lau|
|00000d90| 6e 63 68 20 22 24 48 4f | 4d 45 3a 54 6f 6f 6c 73 |nch "$HO|ME:Tools|
|00000da0| 3a 47 4e 55 20 44 69 66 | 66 22 0d 09 6d 65 73 73 |:GNU Dif|f"..mess|
|00000db0| 61 67 65 20 22 53 74 61 | 72 74 69 6e 67 20 64 69 |age "Sta|rting di|
|00000dc0| 66 66 c9 22 0d 09 73 65 | 74 20 64 74 65 78 74 20 |ff."..se|t dtext |
|00000dd0| 5b 64 6f 73 63 20 2d 6e | 20 22 47 4e 55 20 44 69 |[dosc -n| "GNU Di|
|00000de0| 66 66 22 20 2d 73 20 22 | 24 64 69 66 66 46 6c 61 |ff" -s "|$diffFla|
|00000df0| 67 73 20 5c 22 5b 74 72 | 69 6d 6e 75 6d 20 24 64 |gs \"[tr|imnum $d|
|00000e00| 69 66 66 4f 6e 65 5d 5c | 22 20 5c 22 5b 74 72 69 |iffOne]\|" \"[tri|
|00000e10| 6d 6e 75 6d 20 24 64 69 | 66 66 54 77 6f 5d 5c 22 |mnum $di|ffTwo]\"|
|00000e20| 22 5d 0d 09 6d 65 73 73 | 61 67 65 20 22 53 74 61 |"]..mess|age "Sta|
|00000e30| 72 74 69 6e 67 20 64 69 | 66 66 c9 64 6f 6e 65 22 |rting di|ff.done"|
|00000e40| 0d 09 0d 0d 09 69 66 20 | 7b 21 5b 73 74 72 69 6e |.....if |{![strin|
|00000e50| 67 20 6c 65 6e 67 74 68 | 20 24 64 74 65 78 74 5d |g length| $dtext]|
|00000e60| 7d 20 7b 0d 09 09 61 6c | 65 72 74 6e 6f 74 65 09 |} {...al|ertnote.|
|00000e70| 22 4e 6f 20 64 69 66 66 | 65 72 65 6e 63 65 3a 5c |"No diff|erence:\|
|00000e80| 72 24 64 69 66 66 4f 6e | 65 5c 72 24 64 69 66 66 |r$diffOn|e\r$diff|
|00000e90| 54 77 6f 22 0d 09 09 72 | 65 74 75 72 6e 0d 09 7d |Two"...r|eturn..}|
|00000ea0| 09 0d 09 73 65 74 20 74 | 6f 70 20 5b 65 78 70 72 |...set t|op [expr|
|00000eb0| 20 24 74 69 6c 65 54 6f | 70 20 2b 20 24 74 69 6c | $tileTo|p + $til|
|00000ec0| 65 48 65 69 67 68 74 20 | 2d 20 31 37 38 5d 0d 09 |eHeight |- 178]..|
|00000ed0| 6e 65 77 20 2d 6e 20 24 | 6e 61 6d 65 20 2d 67 20 |new -n $|name -g |
|00000ee0| 24 74 69 6c 65 4c 65 66 | 74 20 24 74 6f 70 20 5b |$tileLef|t $top [|
|00000ef0| 65 78 70 72 20 24 74 69 | 6c 65 57 69 64 74 68 20 |expr $ti|leWidth |
|00000f00| 2d 20 36 5d 20 31 37 38 | 0d 09 63 68 61 6e 67 65 |- 6] 178|..change|
|00000f10| 4d 6f 64 65 20 5b 73 65 | 74 20 77 69 6e 4d 6f 64 |Mode [se|t winMod|
|00000f20| 65 73 28 5b 6c 69 6e 64 | 65 78 20 5b 77 69 6e 4e |es([lind|ex [winN|
|00000f30| 61 6d 65 73 5d 20 30 5d | 29 20 44 69 66 66 5d 0d |ames] 0]|) Diff].|
|00000f40| 09 69 6e 73 65 72 74 54 | 65 78 74 20 22 5c 72 24 |.insertT|ext "\r$|
|00000f50| 64 74 65 78 74 5c 72 22 | 0d 09 67 6f 74 6f 20 30 |dtext\r"|..goto 0|
|00000f60| 0d 09 73 65 74 57 69 6e | 49 6e 66 6f 20 64 69 72 |..setWin|Info dir|
|00000f70| 74 79 20 30 0d 09 73 65 | 74 57 69 6e 49 6e 66 6f |ty 0..se|tWinInfo|
|00000f80| 20 72 65 61 64 2d 6f 6e | 6c 79 20 31 0d 09 73 65 | read-on|ly 1..se|
|00000f90| 6c 65 63 74 20 30 20 5b | 6e 65 78 74 4c 69 6e 65 |lect 0 [|nextLine|
|00000fa0| 53 74 61 72 74 20 30 5d | 0d 7d 0d 0d 0d 70 72 6f |Start 0]|.}...pro|
|00000fb0| 63 20 75 70 44 69 66 66 | 20 7b 7d 20 7b 0d 09 73 |c upDiff| {} {..s|
|00000fc0| 65 74 20 6c 69 6d 69 74 | 20 30 0d 09 73 65 74 20 |et limit| 0..set |
|00000fd0| 72 65 73 20 5b 73 65 61 | 72 63 68 20 2d 73 20 2d |res [sea|rch -s -|
|00000fe0| 66 20 30 20 2d 72 20 31 | 20 7b 5e 5b 5e 2d 20 5c |f 0 -r 1| {^[^- \|
|00000ff0| 72 5d 2b 5c 72 7d 20 5b | 65 78 70 72 20 5b 67 65 |r]+\r} [|expr [ge|
|00001000| 74 50 6f 73 5d 20 2d 20 | 31 5d 5d 0d 09 73 65 74 |tPos] - |1]]..set|
|00001010| 20 70 6f 73 20 5b 6c 69 | 6e 64 65 78 20 24 72 65 | pos [li|ndex $re|
|00001020| 73 20 30 5d 0d 09 73 65 | 6c 65 63 74 20 24 70 6f |s 0]..se|lect $po|
|00001030| 73 20 5b 6e 65 78 74 4c | 69 6e 65 53 74 61 72 74 |s [nextL|ineStart|
|00001040| 20 24 70 6f 73 5d 0d 09 | 0d 7d 0d 23 20 09 73 65 | $pos]..|.}.# .se|
|00001050| 74 20 72 65 73 20 5b 73 | 65 61 72 63 68 20 2d 73 |t res [s|earch -s|
|00001060| 20 2d 66 20 30 20 2d 72 | 20 31 20 7b 5e 5b 5e 2d | -f 0 -r| 1 {^[^-|
|00001070| 3c 3e 5d 7d 20 5b 65 78 | 70 72 20 5b 67 65 74 50 |<>]} [ex|pr [getP|
|00001080| 6f 73 5d 20 2d 20 31 5d | 5d 0d 0d 70 72 6f 63 20 |os] - 1]|]..proc |
|00001090| 64 6f 77 6e 44 69 66 66 | 20 7b 7d 20 7b 0d 09 73 |downDiff| {} {..s|
|000010a0| 65 74 20 6c 69 6d 69 74 | 20 30 0d 09 73 65 74 20 |et limit| 0..set |
|000010b0| 72 65 73 20 5b 73 65 61 | 72 63 68 20 2d 73 20 2d |res [sea|rch -s -|
|000010c0| 66 20 31 20 2d 72 20 31 | 20 7b 5e 5b 5e 2d 20 5c |f 1 -r 1| {^[^- \|
|000010d0| 72 5d 2b 5c 72 7d 20 5b | 65 78 70 72 20 5b 67 65 |r]+\r} [|expr [ge|
|000010e0| 74 50 6f 73 5d 20 2b 20 | 31 5d 5d 0d 09 73 65 74 |tPos] + |1]]..set|
|000010f0| 20 70 6f 73 20 5b 6c 69 | 6e 64 65 78 20 24 72 65 | pos [li|ndex $re|
|00001100| 73 20 30 5d 0d 09 64 69 | 73 70 6c 61 79 20 24 70 |s 0]..di|splay $p|
|00001110| 6f 73 0d 09 73 65 6c 65 | 63 74 20 24 70 6f 73 20 |os..sele|ct $pos |
|00001120| 5b 6e 65 78 74 4c 69 6e | 65 53 74 61 72 74 20 24 |[nextLin|eStart $|
|00001130| 70 6f 73 5d 0d 09 0d 7d | 0d 23 20 09 73 65 74 20 |pos]...}|.# .set |
|00001140| 72 65 73 20 5b 73 65 61 | 72 63 68 20 2d 73 20 2d |res [sea|rch -s -|
|00001150| 66 20 31 20 2d 72 20 31 | 20 7b 5e 5b 5e 2d 3c 3e |f 1 -r 1| {^[^-<>|
|00001160| 5d 7d 20 5b 65 78 70 72 | 20 5b 67 65 74 50 6f 73 |]} [expr| [getPos|
|00001170| 5d 20 2b 20 31 5d 5d 0d | 0d 23 20 20 20 20 20 20 |] + 1]].|.# |
|00001180| 20 20 20 20 20 6e 31 20 | 61 20 6e 33 2c 6e 34 0d | n1 |a n3,n4.|
|00001190| 23 20 20 20 20 20 20 20 | 20 20 20 20 6e 31 2c 6e |# | n1,n|
|000011a0| 32 20 64 20 6e 33 0d 23 | 20 20 20 20 20 20 20 20 |2 d n3.#| |
|000011b0| 20 20 20 6e 31 2c 6e 32 | 20 63 20 6e 33 2c 6e 34 | n1,n2| c n3,n4|
|000011c0| 0d 0d 70 72 6f 63 20 73 | 65 6c 65 63 74 44 69 66 |..proc s|electDif|
|000011d0| 66 20 7b 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 64 |f {} {..|global d|
|000011e0| 69 66 66 4f 6e 65 20 64 | 69 66 66 54 77 6f 20 64 |iffOne d|iffTwo d|
|000011f0| 69 66 66 44 69 72 0d 09 | 0d 09 73 65 74 20 74 65 |iffDir..|..set te|
|00001200| 78 74 20 5b 67 65 74 54 | 65 78 74 20 5b 6c 69 6e |xt [getT|ext [lin|
|00001210| 65 53 74 61 72 74 20 5b | 67 65 74 50 6f 73 5d 5d |eStart [|getPos]]|
|00001220| 20 5b 65 78 70 72 20 5b | 6e 65 78 74 4c 69 6e 65 | [expr [|nextLine|
|00001230| 53 74 61 72 74 20 5b 67 | 65 74 50 6f 73 5d 5d 20 |Start [g|etPos]] |
|00001240| 2d 20 31 5d 5d 0d 09 0d | 09 69 66 20 7b 21 5b 72 |- 1]]...|.if {![r|
|00001250| 65 67 65 78 70 20 7b 5b | 61 63 64 5d 7d 20 24 74 |egexp {[|acd]} $t|
|00001260| 65 78 74 20 63 68 61 72 | 5d 7d 20 72 65 74 75 72 |ext char|]} retur|
|00001270| 6e 0d 09 73 65 74 20 72 | 65 73 20 5b 73 70 6c 69 |n..set r|es [spli|
|00001280| 74 20 24 74 65 78 74 20 | 24 63 68 61 72 5d 0d 09 |t $text |$char]..|
|00001290| 69 66 20 7b 21 5b 73 63 | 61 6e 20 5b 6c 69 6e 64 |if {![sc|an [lind|
|000012a0| 65 78 20 24 72 65 73 20 | 30 5d 20 22 25 64 22 20 |ex $res |0] "%d" |
|000012b0| 6f 6e 65 5d 7d 20 72 65 | 74 75 72 6e 0d 09 69 66 |one]} re|turn..if|
|000012c0| 20 7b 21 5b 73 63 61 6e | 20 5b 6c 69 6e 64 65 78 | {![scan| [lindex|
|000012d0| 20 24 72 65 73 20 31 5d | 20 22 25 64 22 20 74 77 | $res 1]| "%d" tw|
|000012e0| 6f 5d 7d 20 72 65 74 75 | 72 6e 0d 09 69 66 20 7b |o]} retu|rn..if {|
|000012f0| 24 6f 6e 65 20 3d 3d 20 | 31 7d 20 7b 69 6e 63 72 |$one == |1} {incr|
|00001300| 20 6f 6e 65 7d 0d 09 69 | 66 20 7b 24 74 77 6f 20 | one}..i|f {$two |
|00001310| 3d 3d 20 31 7d 20 7b 69 | 6e 63 72 20 74 77 6f 7d |== 1} {i|ncr two}|
|00001320| 0d 0d 09 69 66 20 7b 24 | 64 69 66 66 44 69 72 7d |...if {$|diffDir}|
|00001330| 20 7b 0d 09 09 73 65 74 | 20 72 65 73 20 5b 73 65 | {...set| res [se|
|00001340| 61 72 63 68 20 2d 73 20 | 2d 66 20 30 20 2d 72 20 |arch -s |-f 0 -r |
|00001350| 31 20 22 5e 64 69 66 66 | 2e 2a 5c 72 22 20 5b 67 |1 "^diff|.*\r" [g|
|00001360| 65 74 50 6f 73 5d 5d 0d | 09 09 73 65 74 20 74 65 |etPos]].|..set te|
|00001370| 78 74 20 5b 65 76 61 6c | 20 67 65 74 54 65 78 74 |xt [eval| getText|
|00001380| 20 24 72 65 73 5d 0d 09 | 09 73 65 74 20 6c 65 6e | $res]..|.set len|
|00001390| 20 5b 6c 6c 65 6e 67 74 | 68 20 24 74 65 78 74 5d | [llengt|h $text]|
|000013a0| 0d 09 09 73 65 74 20 64 | 69 66 66 4f 6e 65 20 5b |...set d|iffOne [|
|000013b0| 6c 69 6e 64 65 78 20 24 | 74 65 78 74 20 5b 65 78 |lindex $|text [ex|
|000013c0| 70 72 20 24 6c 65 6e 20 | 2d 20 32 5d 5d 0d 09 09 |pr $len |- 2]]...|
|000013d0| 73 65 74 20 64 69 66 66 | 54 77 6f 20 5b 6c 69 6e |set diff|Two [lin|
|000013e0| 64 65 78 20 24 74 65 78 | 74 20 5b 65 78 70 72 20 |dex $tex|t [expr |
|000013f0| 24 6c 65 6e 20 2d 20 31 | 5d 5d 0d 09 7d 0d 09 64 |$len - 1|]]..}..d|
|00001400| 69 66 66 44 69 73 70 6c | 61 79 20 24 64 69 66 66 |iffDispl|ay $diff|
|00001410| 4f 6e 65 20 5b 65 78 70 | 72 20 24 6f 6e 65 20 2d |One [exp|r $one -|
|00001420| 20 31 5d 20 31 0d 09 64 | 69 66 66 44 69 73 70 6c | 1] 1..d|iffDispl|
|00001430| 61 79 20 24 64 69 66 66 | 54 77 6f 20 5b 65 78 70 |ay $diff|Two [exp|
|00001440| 72 20 24 74 77 6f 20 2d | 20 31 5d 20 30 0d 0d 09 |r $two -| 1] 0...|
|00001450| 69 66 20 7b 24 64 69 66 | 66 44 69 72 7d 20 7b 0d |if {$dif|fDir} {.|
|00001460| 09 09 69 66 20 7b 21 5b | 73 74 72 69 6e 67 20 6d |..if {![|string m|
|00001470| 61 74 63 68 20 7b 2a 20 | 44 69 72 65 63 74 6f 72 |atch {* |Director|
|00001480| 79 20 43 6f 6d 70 61 72 | 69 73 6f 6e 20 2a 7d 20 |y Compar|ison *} |
|00001490| 5b 6c 69 6e 64 65 78 20 | 5b 77 69 6e 4e 61 6d 65 |[lindex |[winName|
|000014a0| 73 20 2d 66 5d 20 30 5d | 5d 7d 20 7b 0d 09 09 09 |s -f] 0]|]} {....|
|000014b0| 63 61 74 63 68 20 7b 62 | 72 69 6e 67 54 6f 46 72 |catch {b|ringToFr|
|000014c0| 6f 6e 74 20 22 2a 20 44 | 69 72 65 63 74 6f 72 79 |ont "* D|irectory|
|000014d0| 20 43 6f 6d 70 61 72 69 | 73 6f 6e 20 2a 22 7d 0d | Compari|son *"}.|
|000014e0| 09 09 7d 0d 09 7d 0d 7d | 0d 0d 70 72 6f 63 20 64 |..}..}.}|..proc d|
|000014f0| 69 66 66 44 69 73 70 6c | 61 79 20 7b 77 6e 61 6d |iffDispl|ay {wnam|
|00001500| 65 20 72 6f 77 20 6c 65 | 66 74 7d 20 7b 0d 09 67 |e row le|ft} {..g|
|00001510| 6c 6f 62 61 6c 20 64 69 | 66 66 44 69 72 0d 0d 09 |lobal di|ffDir...|
|00001520| 69 66 20 7b 24 64 69 66 | 66 44 69 72 7d 20 7b 0d |if {$dif|fDir} {.|
|00001530| 09 09 73 65 74 20 67 65 | 6f 20 5b 64 69 66 66 47 |..set ge|o [diffG|
|00001540| 65 6f 20 24 6c 65 66 74 | 5d 0d 09 09 69 66 20 7b |eo $left|]...if {|
|00001550| 5b 73 65 74 20 72 65 73 | 20 5b 6c 73 65 61 72 63 |[set res| [lsearc|
|00001560| 68 20 5b 77 69 6e 4e 61 | 6d 65 73 20 2d 66 5d 20 |h [winNa|mes -f] |
|00001570| 22 24 77 6e 61 6d 65 2a | 22 5d 5d 20 3c 20 30 7d |"$wname*|"]] < 0}|
|00001580| 20 7b 0d 09 09 09 65 76 | 61 6c 20 65 64 69 74 20 | {....ev|al edit |
|00001590| 2d 67 20 24 67 65 6f 20 | 5b 6c 69 73 74 20 24 77 |-g $geo |[list $w|
|000015a0| 6e 61 6d 65 5d 0d 09 09 | 09 73 65 74 20 77 6e 61 |name]...|.set wna|
|000015b0| 6d 65 20 5b 6c 69 6e 64 | 65 78 20 5b 77 69 6e 4e |me [lind|ex [winN|
|000015c0| 61 6d 65 73 20 2d 66 5d | 20 30 5d 0d 09 09 7d 20 |ames -f]| 0]...} |
|000015d0| 65 6c 73 65 20 7b 0d 09 | 09 09 73 65 74 20 77 6e |else {..|..set wn|
|000015e0| 61 6d 65 20 5b 6c 69 6e | 64 65 78 20 5b 77 69 6e |ame [lin|dex [win|
|000015f0| 4e 61 6d 65 73 20 2d 66 | 5d 20 24 72 65 73 5d 0d |Names -f|] $res].|
|00001600| 09 09 09 69 66 20 7b 5b | 67 65 74 47 65 6f 6d 65 |...if {[|getGeome|
|00001610| 74 72 79 20 24 77 6e 61 | 6d 65 5d 20 21 3d 20 24 |try $wna|me] != $|
|00001620| 67 65 6f 7d 20 7b 0d 09 | 09 09 09 73 69 7a 65 57 |geo} {..|...sizeW|
|00001630| 69 6e 20 24 77 6e 61 6d | 65 20 5b 6c 69 6e 64 65 |in $wnam|e [linde|
|00001640| 78 20 24 67 65 6f 20 32 | 5d 20 5b 6c 69 6e 64 65 |x $geo 2|] [linde|
|00001650| 78 20 24 67 65 6f 20 33 | 5d 0d 09 09 09 09 6d 6f |x $geo 3|].....mo|
|00001660| 76 65 57 69 6e 20 24 77 | 6e 61 6d 65 20 5b 6c 69 |veWin $w|name [li|
|00001670| 6e 64 65 78 20 24 67 65 | 6f 20 30 5d 20 5b 6c 69 |ndex $ge|o 0] [li|
|00001680| 6e 64 65 78 20 24 67 65 | 6f 20 31 5d 0d 09 09 09 |ndex $ge|o 1]....|
|00001690| 7d 0d 09 09 09 69 66 20 | 7b 24 72 65 73 20 3e 20 |}....if |{$res > |
|000016a0| 32 7d 20 7b 0d 09 09 09 | 09 62 72 69 6e 67 54 6f |2} {....|.bringTo|
|000016b0| 46 72 6f 6e 74 20 24 77 | 6e 61 6d 65 0d 09 09 09 |Front $w|name....|
|000016c0| 7d 0d 09 09 7d 0d 09 7d | 0d 0d 09 64 69 73 70 6c |}...}..}|...displ|
|000016d0| 61 79 20 2d 77 20 24 77 | 6e 61 6d 65 20 5b 72 6f |ay -w $w|name [ro|
|000016e0| 77 43 6f 6c 54 6f 50 6f | 73 20 2d 77 20 24 77 6e |wColToPo|s -w $wn|
|000016f0| 61 6d 65 20 24 72 6f 77 | 20 30 5d 0d 7d 0d 0d 70 |ame $row| 0].}..p|
|00001700| 72 6f 63 20 64 69 66 66 | 53 65 6c 20 7b 77 6e 61 |roc diff|Sel {wna|
|00001710| 6d 65 20 72 6f 20 72 6f | 77 20 72 6f 77 64 20 6c |me ro ro|w rowd l|
|00001720| 65 66 74 7d 20 7b 0d 09 | 67 6c 6f 62 61 6c 20 64 |eft} {..|global d|
|00001730| 69 66 66 44 69 72 0d 0d | 09 69 66 20 7b 24 64 69 |iffDir..|.if {$di|
|00001740| 66 66 44 69 72 7d 20 7b | 0d 09 09 73 65 74 20 67 |ffDir} {|...set g|
|00001750| 65 6f 20 5b 64 69 66 66 | 47 65 6f 20 24 6c 65 66 |eo [diff|Geo $lef|
|00001760| 74 5d 0d 09 09 69 66 20 | 7b 5b 73 65 74 20 72 65 |t]...if |{[set re|
|00001770| 73 20 5b 6c 73 65 61 72 | 63 68 20 5b 77 69 6e 4e |s [lsear|ch [winN|
|00001780| 61 6d 65 73 20 2d 66 5d | 20 22 24 77 6e 61 6d 65 |ames -f]| "$wname|
|00001790| 2a 22 5d 5d 20 3c 20 30 | 7d 20 7b 0d 09 09 09 65 |*"]] < 0|} {....e|
|000017a0| 76 61 6c 20 65 64 69 74 | 20 2d 67 20 24 67 65 6f |val edit| -g $geo|
|000017b0| 20 5b 6c 69 73 74 20 24 | 77 6e 61 6d 65 5d 0d 09 | [list $|wname]..|
|000017c0| 09 09 73 65 74 20 77 6e | 61 6d 65 20 5b 6c 69 6e |..set wn|ame [lin|
|000017d0| 64 65 78 20 5b 77 69 6e | 4e 61 6d 65 73 20 2d 66 |dex [win|Names -f|
|000017e0| 5d 20 30 5d 0d 09 09 7d | 20 65 6c 73 65 20 7b 0d |] 0]...}| else {.|
|000017f0| 09 09 09 73 65 74 20 77 | 6e 61 6d 65 20 5b 6c 69 |...set w|name [li|
|00001800| 6e 64 65 78 20 5b 77 69 | 6e 4e 61 6d 65 73 20 2d |ndex [wi|nNames -|
|00001810| 66 5d 20 24 72 65 73 5d | 0d 09 09 09 69 66 20 7b |f] $res]|....if {|
|00001820| 5b 67 65 74 47 65 6f 6d | 65 74 72 79 20 24 77 6e |[getGeom|etry $wn|
|00001830| 61 6d 65 5d 20 21 3d 20 | 24 67 65 6f 7d 20 7b 0d |ame] != |$geo} {.|
|00001840| 09 09 09 09 73 69 7a 65 | 57 69 6e 20 24 77 6e 61 |....size|Win $wna|
|00001850| 6d 65 20 5b 6c 69 6e 64 | 65 78 20 24 67 65 6f 20 |me [lind|ex $geo |
|00001860| 32 5d 20 5b 6c 69 6e 64 | 65 78 20 24 67 65 6f 20 |2] [lind|ex $geo |
|00001870| 33 5d 0d 09 09 09 09 6d | 6f 76 65 57 69 6e 20 24 |3].....m|oveWin $|
|00001880| 77 6e 61 6d 65 20 5b 6c | 69 6e 64 65 78 20 24 67 |wname [l|index $g|
|00001890| 65 6f 20 30 5d 20 5b 6c | 69 6e 64 65 78 20 24 67 |eo 0] [l|index $g|
|000018a0| 65 6f 20 31 5d 0d 09 09 | 09 7d 0d 09 09 7d 0d 09 |eo 1]...|.}...}..|
|000018b0| 7d 0d 09 62 72 69 6e 67 | 54 6f 46 72 6f 6e 74 20 |}..bring|ToFront |
|000018c0| 24 77 6e 61 6d 65 0d 0d | 09 64 69 73 70 6c 61 79 |$wname..|.display|
|000018d0| 20 5b 72 6f 77 43 6f 6c | 54 6f 50 6f 73 20 24 72 | [rowCol|ToPos $r|
|000018e0| 6f 20 30 5d 0d 09 73 65 | 6c 65 63 74 20 5b 72 6f |o 0]..se|lect [ro|
|000018f0| 77 43 6f 6c 54 6f 50 6f | 73 20 24 72 6f 77 20 30 |wColToPo|s $row 0|
|00001900| 5d 20 5b 72 6f 77 43 6f | 6c 54 6f 50 6f 73 20 5b |] [rowCo|lToPos [|
|00001910| 65 78 70 72 20 24 72 6f | 77 64 20 2b 20 31 5d 20 |expr $ro|wd + 1] |
|00001920| 30 5d 0d 7d 0d 23 20 09 | 67 6f 74 6f 20 5b 72 6f |0].}.# .|goto [ro|
|00001930| 77 43 6f 6c 54 6f 50 6f | 73 20 24 72 6f 77 20 30 |wColToPo|s $row 0|
|00001940| 5d 0d 0d 70 72 6f 63 20 | 76 69 65 77 44 69 66 66 |]..proc |viewDiff|
|00001950| 20 7b 7d 20 7b 0d 09 67 | 6c 6f 62 61 6c 20 64 69 | {} {..g|lobal di|
|00001960| 66 66 4f 6e 65 20 64 69 | 66 66 54 77 6f 20 64 69 |ffOne di|ffTwo di|
|00001970| 66 66 44 69 72 0d 09 0d | 09 73 65 74 20 74 65 78 |ffDir...|.set tex|
|00001980| 74 20 5b 67 65 74 54 65 | 78 74 20 5b 6c 69 6e 65 |t [getTe|xt [line|
|00001990| 53 74 61 72 74 20 5b 67 | 65 74 50 6f 73 5d 5d 20 |Start [g|etPos]] |
|000019a0| 5b 65 78 70 72 20 5b 6e | 65 78 74 4c 69 6e 65 53 |[expr [n|extLineS|
|000019b0| 74 61 72 74 20 5b 67 65 | 74 50 6f 73 5d 5d 20 2d |tart [ge|tPos]] -|
|000019c0| 20 31 5d 5d 0d 09 0d 09 | 69 66 20 7b 21 5b 72 65 | 1]]....|if {![re|
|000019d0| 67 65 78 70 20 7b 5b 61 | 63 64 5d 7d 20 24 74 65 |gexp {[a|cd]} $te|
|000019e0| 78 74 20 63 68 61 72 5d | 7d 20 72 65 74 75 72 6e |xt char]|} return|
|000019f0| 0d 09 73 65 74 20 72 65 | 73 20 5b 73 70 6c 69 74 |..set re|s [split|
|00001a00| 20 24 74 65 78 74 20 24 | 63 68 61 72 5d 0d 09 69 | $text $|char]..i|
|00001a10| 66 20 7b 21 5b 73 63 61 | 6e 20 5b 6c 69 6e 64 65 |f {![sca|n [linde|
|00001a20| 78 20 24 72 65 73 20 30 | 5d 20 22 25 64 2c 25 64 |x $res 0|] "%d,%d|
|00001a30| 22 20 6f 6e 65 20 6f 6e | 65 64 5d 7d 20 72 65 74 |" one on|ed]} ret|
|00001a40| 75 72 6e 0d 09 69 66 20 | 7b 21 5b 73 63 61 6e 20 |urn..if |{![scan |
|00001a50| 5b 6c 69 6e 64 65 78 20 | 24 72 65 73 20 31 5d 20 |[lindex |$res 1] |
|00001a60| 22 25 64 2c 25 64 22 20 | 74 77 6f 20 74 77 6f 64 |"%d,%d" |two twod|
|00001a70| 5d 7d 20 72 65 74 75 72 | 6e 0d 09 73 65 74 20 6f |]} retur|n..set o|
|00001a80| 6e 20 24 6f 6e 65 0d 09 | 73 65 74 20 74 77 20 24 |n $one..|set tw $|
|00001a90| 74 77 6f 0d 09 69 66 20 | 7b 24 6f 6e 20 3d 3d 20 |two..if |{$on == |
|00001aa0| 31 7d 20 7b 69 6e 63 72 | 20 6f 6e 7d 0d 09 69 66 |1} {incr| on}..if|
|00001ab0| 20 7b 24 74 77 20 3d 3d | 20 31 7d 20 7b 69 6e 63 | {$tw ==| 1} {inc|
|00001ac0| 72 20 74 77 7d 0d 09 69 | 66 20 7b 21 5b 69 6e 66 |r tw}..i|f {![inf|
|00001ad0| 6f 20 65 78 69 73 74 73 | 20 6f 6e 65 64 5d 7d 20 |o exists| oned]} |
|00001ae0| 7b 73 65 74 20 6f 6e 65 | 64 20 24 6f 6e 65 7d 0d |{set one|d $one}.|
|00001af0| 09 69 66 20 7b 21 5b 69 | 6e 66 6f 20 65 78 69 73 |.if {![i|nfo exis|
|00001b00| 74 73 20 74 77 6f 64 5d | 7d 20 7b 73 65 74 20 74 |ts twod]|} {set t|
|00001b10| 77 6f 64 20 24 74 77 6f | 7d 0d 0d 09 69 66 20 7b |wod $two|}...if {|
|00001b20| 24 64 69 66 66 44 69 72 | 7d 20 7b 0d 09 09 73 65 |$diffDir|} {...se|
|00001b30| 74 20 72 65 73 20 5b 73 | 65 61 72 63 68 20 2d 73 |t res [s|earch -s|
|00001b40| 20 2d 66 20 30 20 2d 72 | 20 31 20 22 5e 64 69 66 | -f 0 -r| 1 "^dif|
|00001b50| 66 2e 2a 5c 72 22 20 5b | 67 65 74 50 6f 73 5d 5d |f.*\r" [|getPos]]|
|00001b60| 0d 09 09 73 65 74 20 74 | 65 78 74 20 5b 65 76 61 |...set t|ext [eva|
|00001b70| 6c 20 67 65 74 54 65 78 | 74 20 24 72 65 73 5d 0d |l getTex|t $res].|
|00001b80| 09 09 73 65 74 20 64 69 | 66 66 4f 6e 65 20 5b 6c |..set di|ffOne [l|
|00001b90| 69 6e 64 65 78 20 24 74 | 65 78 74 20 31 5d 0d 09 |index $t|ext 1]..|
|00001ba0| 09 73 65 74 20 64 69 66 | 66 54 77 6f 20 5b 6c 69 |.set dif|fTwo [li|
|00001bb0| 6e 64 65 78 20 24 74 65 | 78 74 20 32 5d 0d 09 7d |ndex $te|xt 2]..}|
|00001bc0| 0d 09 64 69 66 66 53 65 | 6c 20 24 64 69 66 66 4f |..diffSe|l $diffO|
|00001bd0| 6e 65 20 5b 65 78 70 72 | 20 24 6f 6e 20 2d 20 31 |ne [expr| $on - 1|
|00001be0| 5d 20 24 6f 6e 65 20 24 | 6f 6e 65 64 20 31 0d 09 |] $one $|oned 1..|
|00001bf0| 64 69 66 66 53 65 6c 20 | 24 64 69 66 66 54 77 6f |diffSel |$diffTwo|
|00001c00| 20 5b 65 78 70 72 20 24 | 74 77 20 2d 20 31 5d 20 | [expr $|tw - 1] |
|00001c10| 24 74 77 6f 20 24 74 77 | 6f 64 20 30 0d 09 69 66 |$two $tw|od 0..if|
|00001c20| 20 7b 24 64 69 66 66 44 | 69 72 7d 20 7b 0d 09 09 | {$diffD|ir} {...|
|00001c30| 63 61 74 63 68 20 7b 62 | 72 69 6e 67 54 6f 46 72 |catch {b|ringToFr|
|00001c40| 6f 6e 74 20 22 2a 20 44 | 69 72 65 63 74 6f 72 79 |ont "* D|irectory|
|00001c50| 20 43 6f 6d 70 61 72 69 | 73 6f 6e 20 2a 22 7d 0d | Compari|son *"}.|
|00001c60| 09 7d 20 65 6c 73 65 20 | 7b 0d 09 09 63 61 74 63 |.} else |{...catc|
|00001c70| 68 20 7b 62 72 69 6e 67 | 54 6f 46 72 6f 6e 74 20 |h {bring|ToFront |
|00001c80| 22 2a 20 46 69 6c 65 20 | 43 6f 6d 70 61 72 69 73 |"* File |Comparis|
|00001c90| 6f 6e 20 2a 22 7d 0d 09 | 7d 0d 7d 0d 0d 70 72 6f |on *"}..|}.}..pro|
|00001ca0| 63 20 64 69 66 66 57 69 | 6e 20 7b 7d 20 7b 0d 09 |c diffWi|n {} {..|
|00001cb0| 67 6c 6f 62 61 6c 20 77 | 69 6e 4d 6f 64 65 73 0d |global w|inModes.|
|00001cc0| 09 73 65 74 20 66 69 6c | 65 73 20 5b 77 69 6e 4e |.set fil|es [winN|
|00001cd0| 61 6d 65 73 20 2d 66 5d | 0d 09 73 65 74 20 6c 65 |ames -f]|..set le|
|00001ce0| 6e 20 5b 6c 6c 65 6e 67 | 74 68 20 24 66 69 6c 65 |n [lleng|th $file|
|00001cf0| 73 5d 0d 09 09 66 6f 72 | 20 7b 73 65 74 20 69 20 |s]...for| {set i |
|00001d00| 30 7d 20 7b 24 69 20 3c | 20 24 6c 65 6e 7d 20 7b |0} {$i <| $len} {|
|00001d10| 69 6e 63 72 20 69 7d 20 | 7b 0d 09 09 09 69 66 20 |incr i} |{....if |
|00001d20| 7b 24 77 69 6e 4d 6f 64 | 65 73 28 5b 6c 69 6e 64 |{$winMod|es([lind|
|00001d30| 65 78 20 5b 77 69 6e 4e | 61 6d 65 73 20 2d 66 5d |ex [winN|ames -f]|
|00001d40| 20 24 69 5d 29 20 3d 3d | 20 22 44 69 66 66 22 7d | $i]) ==| "Diff"}|
|00001d50| 20 7b 0d 09 09 09 09 62 | 72 69 6e 67 54 6f 46 72 | {.....b|ringToFr|
|00001d60| 6f 6e 74 20 5b 6c 69 6e | 64 65 78 20 5b 77 69 6e |ont [lin|dex [win|
|00001d70| 4e 61 6d 65 73 5d 20 24 | 69 5d 0d 09 09 09 09 72 |Names] $|i].....r|
|00001d80| 65 74 75 72 6e 0d 09 09 | 09 7d 0d 09 09 7d 0d 09 |eturn...|.}...}..|
|00001d90| 62 65 65 70 0d 09 6d 65 | 73 73 61 67 65 20 22 4e |beep..me|ssage "N|
|00001da0| 6f 20 44 69 66 66 20 77 | 69 6e 64 6f 77 2e 22 0d |o Diff w|indow.".|
|00001db0| 7d 0d 0d 62 69 6e 64 20 | 27 5c 72 27 09 09 73 65 |}..bind |'\r'..se|
|00001dc0| 6c 65 63 74 44 69 66 66 | 09 44 69 66 66 0d 62 69 |lectDiff|.Diff.bi|
|00001dd0| 6e 64 20 27 5c 74 27 09 | 09 76 69 65 77 44 69 66 |nd '\t'.|.viewDif|
|00001de0| 66 09 44 69 66 66 0d 62 | 69 6e 64 20 4b 70 61 64 |f.Diff.b|ind Kpad|
|00001df0| 2e 20 3c 63 3e 09 09 64 | 69 66 66 57 69 6e 0d 62 |. <c>..d|iffWin.b|
|00001e00| 69 6e 64 20 45 6e 74 65 | 72 09 09 7b 64 6f 77 6e |ind Ente|r..{down|
|00001e10| 44 69 66 66 3b 73 65 6c | 65 63 74 44 69 66 66 7d |Diff;sel|ectDiff}|
|00001e20| 09 44 69 66 66 0d 62 69 | 6e 64 20 4b 70 61 64 30 |.Diff.bi|nd Kpad0|
|00001e30| 09 09 7b 75 70 44 69 66 | 66 3b 73 65 6c 65 63 74 |..{upDif|f;select|
|00001e40| 44 69 66 66 7d 09 44 69 | 66 66 0d 62 69 6e 64 20 |Diff}.Di|ff.bind |
|00001e50| 64 6f 77 6e 20 09 09 64 | 6f 77 6e 44 69 66 66 20 |down ..d|ownDiff |
|00001e60| 44 69 66 66 0d 62 69 6e | 64 20 75 70 20 09 09 75 |Diff.bin|d up ..u|
|00001e70| 70 44 69 66 66 20 44 69 | 66 66 0d 0d 0d 00 00 00 |pDiff Di|ff......|
|00001e80| 00 00 01 00 00 00 02 1a | 00 00 01 1a 00 00 00 42 |........|.......B|
|00001e90| 20 23 23 23 23 23 23 23 | 20 20 20 23 23 23 23 23 | #######| #####|
|00001ea0| 23 23 20 57 41 52 4e 49 | 4e 47 21 20 23 23 23 23 |## WARNI|NG! ####|
|00001eb0| 08 64 69 66 66 2e 74 63 | 6c 66 02 00 00 00 54 45 |.diff.tc|lf....TE|
|00001ec0| 58 54 41 4c 46 41 01 00 | 00 00 00 00 00 00 00 01 |XTALFA..|........|
|00001ed0| 00 00 54 45 58 54 41 4c | 46 41 01 00 00 00 00 00 |..TEXTAL|FA......|
|00001ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ef0| 00 00 ab 82 99 76 00 00 | 1d fd 00 00 02 5c 23 20 |.....v..|.....\# |
|00001f00| 0d 23 20 4e 65 78 74 2c | 20 49 20 75 73 65 20 67 |.# Next,| I use g|
|00001f10| 6c 6f 62 61 6c 20 27 74 | 6c 57 69 64 74 68 27 20 |lobal 't|lWidth' |
|00001f20| 49 4e 53 54 45 41 44 20 | 6f 66 20 27 74 69 6c 65 |INSTEAD |of 'tile|
|00001f30| 57 69 64 74 68 27 2e 0d | 23 20 28 49 6e 20 6d 79 |Width'..|# (In my|
|00001f40| 20 73 65 74 75 70 2c 20 | 24 74 6c 57 69 64 74 68 | setup, |$tlWidth|
|00001f50| 20 3d 3d 20 36 33 30 2c | 20 77 68 65 72 65 20 24 | == 630,| where $|
|00001f60| 74 69 6c 65 57 69 64 74 | 68 20 3d 3d 20 35 31 30 |tileWidt|h == 510|
|00001f70| 2e 29 0d 23 20 0d 23 20 | 41 6c 73 6f 2c 20 73 6f |.).# .# |Also, so|
|00001f80| 00 00 00 ca 00 0a 00 00 | 02 c0 00 00 02 c0 13 63 |........|.......c|
|00001f90| 6f 6d 70 61 72 65 44 69 | 72 65 63 74 6f 72 69 65 |ompareDi|rectorie|
|00001fa0| 73 00 00 00 03 db 00 00 | 03 db 0d 63 6f 6d 70 61 |s.......|...compa|
|00001fb0| 72 65 46 69 6c 65 73 00 | 00 00 08 2f 00 00 08 2f |reFiles.|.../.../|
|00001fc0| 0f 63 6f 6d 70 61 72 65 | 57 69 6e 64 6f 77 73 00 |.compare|Windows.|
|00001fd0| 00 00 0b 4b 00 00 0b 4b | 07 74 72 69 6d 6e 75 6d |...K...K|.trimnum|
|00001fe0| 00 00 0c 32 00 00 0c 32 | 0d 64 6f 54 68 65 43 6f |...2...2|.doTheCo|
|00001ff0| 6d 70 61 72 65 00 00 00 | 0f 3b 00 00 0f 3b 07 75 |mpare...|.;...;.u|
|00002000| 70 44 69 66 66 00 00 00 | 0f 3b 00 00 0f 3b 09 64 |pDiff...|.;...;.d|
|00002010| 6f 77 6e 44 69 66 66 00 | 00 00 11 50 00 00 11 50 |ownDiff.|...P...P|
|00002020| 0b 73 65 6c 65 63 74 44 | 69 66 66 00 00 00 18 d1 |.selectD|iff.....|
|00002030| 00 00 18 d1 09 76 69 65 | 77 44 69 66 66 00 00 00 |.....vie|wDiff...|
|00002040| 1c 2b 00 00 1c 2b 07 64 | 69 66 66 57 69 6e 00 00 |.+...+.d|iffWin..|
|00002050| 00 48 00 09 4d 6f 6e 61 | 63 6f 00 be 0a 40 00 00 |.H..Mona|co...@..|
|00002060| 13 78 00 b6 95 24 00 d5 | 3b 40 24 00 04 44 00 b1 |.x...$..|;@$..D..|
|00002070| f6 1c ff fc 00 04 00 04 | 00 28 00 02 01 37 03 38 |........|.(...7.8|
|00002080| 00 28 00 02 01 37 03 38 | ab fd 29 0d 00 00 03 ab |.(...7.8|..).....|
|00002090| 00 00 03 ab 00 00 02 c0 | 01 00 00 00 01 00 00 00 |........|........|
|000020a0| 02 1a 00 00 01 1a 00 00 | 00 42 00 ad ae f8 13 78 |........|.B.....x|
|000020b0| 00 00 00 1c 00 3e 00 00 | 4d 50 53 52 00 01 00 0a |.....>..|MPSR....|
|000020c0| 03 ef 00 00 00 00 00 00 | 00 00 00 00 03 ed ff ff |........|........|
|000020d0| 00 00 00 ce 00 b6 aa 38 | 03 74 61 62 00 00 00 00 |.......8|.tab....|
|000020e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+