115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
fconfigure $ch2 -translation binary
}
# Allow a plugin to do its thing
if {$anyPlugin} {
#puts "PLUGIN!"
$::eskil(.dirdiff,plugin) eval \
[list array set ::Pref [array get ::Pref]]
interp share {} $ch1 $::eskil(.dirdiff,plugin)
interp share {} $ch2 $::eskil(.dirdiff,plugin)
set info1 [dict create name $file1 size $stat1(size)]
set info2 [dict create name $file2 size $stat2(size)]
set eq [$::eskil(.dirdiff,plugin) eval \
[list FileCompare $ch1 $ch2 $info1 $info2]]
$::eskil(.dirdiff,plugin) invokehidden close $ch1
$::eskil(.dirdiff,plugin) invokehidden close $ch2
}
if {$ignorekey} {
# Assume that all keywords are in the first block
set f1 [read $ch1 $bufsz]
set f2 [read $ch2 $bufsz]
regsub -all {\$\w+:[^\$]*\$} $f1 {} f1
|
>
>
>
>
>
>
|
|
>
|
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
fconfigure $ch2 -translation binary
}
# Allow a plugin to do its thing
if {$anyPlugin} {
#puts "PLUGIN!"
$::eskil(.dirdiff,plugin) eval \
[list array set ::Pref [array get ::Pref]]
$::eskil(.dirdiff,plugin) eval [list set ::argv $::eskil(argv)]
interp share {} $ch1 $::eskil(.dirdiff,plugin)
interp share {} $ch2 $::eskil(.dirdiff,plugin)
set info1 [dict create name $file1 size $stat1(size)]
set info2 [dict create name $file2 size $stat2(size)]
set eq [$::eskil(.dirdiff,plugin) eval \
[list FileCompare $ch1 $ch2 $info1 $info2]]
set allow [dict get $::eskil(.dirdiff,pluginpinfo) allow]
if {$allow} {
$::eskil(.dirdiff,plugin) eval close $ch1
$::eskil(.dirdiff,plugin) eval close $ch2
} else {
$::eskil(.dirdiff,plugin) invokehidden close $ch1
$::eskil(.dirdiff,plugin) invokehidden close $ch2
}
}
if {$ignorekey} {
# Assume that all keywords are in the first block
set f1 [read $ch1 $bufsz]
set f2 [read $ch2 $bufsz]
regsub -all {\$\w+:[^\$]*\$} $f1 {} f1
|