Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Added -foreach. Bugfix in kit-unmount. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
a520c01ba6ad6b5c48a74cc398b9dc67 |
User & Date: | peter 2005-09-29 21:49:46.000 |
Context
2006-05-14
| ||
19:48 | Added some comments. check-in: 020a156482 user: peter tags: trunk | |
2005-09-29
| ||
21:49 | Added -foreach. Bugfix in kit-unmount. check-in: a520c01ba6 user: peter tags: trunk | |
2005-09-28
| ||
22:44 | Intermediate checkin. check-in: 8cdad7ef58 user: peter tags: trunk | |
Changes
Changes to src/eskil.tcl.
︙ | ︙ | |||
1554 1555 1556 1557 1558 1559 1560 | # This detects .kit but how to detect starpacks? if {[file extension $file] eq ".kit"} { package require vfs::mk4 vfs::mk4::Mount $file $file # Check for contents to ensure it is a kit if {[llength [glob -nocomplain $file/*]] == 0} { | | | 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 | # This detects .kit but how to detect starpacks? if {[file extension $file] eq ".kit"} { package require vfs::mk4 vfs::mk4::Mount $file $file # Check for contents to ensure it is a kit if {[llength [glob -nocomplain $file/*]] == 0} { vfs::unmount $file } } return [file isdirectory $file] } # A wrapper for tk_getOpenFile proc myOpenFile {args} { |
︙ | ︙ | |||
3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 | -nodiff : Normally, if there are enough information on the command line to run diff, Eskil will do so unless this option is specified. -dir : Start in directory diff mode. Ignores other args. -clip : Start in clip diff mode. Ignores other args. -patch : View patch file. -context <n>: Show only differences, with <n> lines of context. -noparse : Eskil can perform analysis of changed blocks to -line : improve display. See online help for details. -smallblock : The default. Do block analysis on small blocks. -block : Full block analysis. This can be slow if there are large change blocks. | > | 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 | -nodiff : Normally, if there are enough information on the command line to run diff, Eskil will do so unless this option is specified. -dir : Start in directory diff mode. Ignores other args. -clip : Start in clip diff mode. Ignores other args. -patch : View patch file. -context <n>: Show only differences, with <n> lines of context. -foreach : Open one diff window per file listed. -noparse : Eskil can perform analysis of changed blocks to -line : improve display. See online help for details. -smallblock : The default. Do block analysis on small blocks. -block : Full block analysis. This can be slow if there are large change blocks. |
︙ | ︙ | |||
3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 | return } set allOpts { -w --help -help -b -noignore -i -nocase -nodigit -nokeyword -prefix -noparse -line -smallblock -block -char -word -limit -nodiff -dir -clip -patch -browse -conflict -print -server -o -r -context } # If the first option is "--query", use it to ask about options. if {$::eskil(argc) == 2 && [lindex $::eskil(argv) 0] == "--query"} { set arg [lindex $::eskil(argv) 1] if {[lsearch -exact $allOpts $arg] < 0} { set match [lsearch -glob -all -inline $allOpts $arg*] | > | 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 | return } set allOpts { -w --help -help -b -noignore -i -nocase -nodigit -nokeyword -prefix -noparse -line -smallblock -block -char -word -limit -nodiff -dir -clip -patch -browse -conflict -print -server -o -r -context -foreach } # If the first option is "--query", use it to ask about options. if {$::eskil(argc) == 2 && [lindex $::eskil(argv) 0] == "--query"} { set arg [lindex $::eskil(argv) 1] if {[lsearch -exact $allOpts $arg] < 0} { set match [lsearch -glob -all -inline $allOpts $arg*] |
︙ | ︙ | |||
3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 | set autobrowse 0 set dodir 0 set doclip 0 set files "" set nextArg "" set revNo 1 set dopatch 0 foreach arg $::eskil(argv) { if {$nextArg != ""} { if {$nextArg eq "mergeFile"} { set opts(mergeFile) [file join [pwd] $arg] } elseif {$nextArg eq "printFile"} { set opts(printFile) [file join [pwd] $arg] } elseif {$nextArg eq "revision"} { | > | 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 | set autobrowse 0 set dodir 0 set doclip 0 set files "" set nextArg "" set revNo 1 set dopatch 0 set foreach 0 foreach arg $::eskil(argv) { if {$nextArg != ""} { if {$nextArg eq "mergeFile"} { set opts(mergeFile) [file join [pwd] $arg] } elseif {$nextArg eq "printFile"} { set opts(printFile) [file join [pwd] $arg] } elseif {$nextArg eq "revision"} { |
︙ | ︙ | |||
3416 3417 3418 3419 3420 3421 3422 | set dodir 1 } elseif {$arg eq "-clip"} { set doclip 1 } elseif {$arg eq "-patch"} { set dopatch 1 } elseif {$arg eq "-browse"} { set autobrowse 1 | > > | | 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 | set dodir 1 } elseif {$arg eq "-clip"} { set doclip 1 } elseif {$arg eq "-patch"} { set dopatch 1 } elseif {$arg eq "-browse"} { set autobrowse 1 } elseif {$arg eq "-foreach"} { set foreach 1 } elseif {$arg eq "-conflict"} { set opts(mode) "conflict" } elseif {$arg eq "-print"} { set nextArg printFile } elseif {$arg eq "-server"} { if {$::tcl_platform(platform) eq "windows"} { catch { package require dde |
︙ | ︙ | |||
3497 3498 3499 3500 3501 3502 3503 | set ::diff($top,$item) $val } # It is preferable to see the end if the rev string is too long $::widgets($top,rev1) xview end $::widgets($top,rev2) xview end | | > > > > > > > > > > > > > > > > > > | | | | | | > | | | | | | | | | | | | > | | | | | | | | | | | | | | | | | > | > > | 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 | set ::diff($top,$item) $val } # It is preferable to see the end if the rev string is too long $::widgets($top,rev1) xview end $::widgets($top,rev2) xview end if {$len == 1 || $foreach} { set ReturnAfterLoop 0 set first 1 foreach file $files { if {$first} { set first 0 } else { # Create new window for other files makeDiffWin update set top [lindex $::diff(diffWindows) end] # Copy the previously collected options foreach {item val} [array get opts] { set ::diff($top,$item) $val } # It is preferable to see the end if the rev string is too long $::widgets($top,rev1) xview end $::widgets($top,rev2) xview end } set fullname [file join [pwd] $file] set fulldir [file dirname $fullname] if {$::diff($top,mode) eq "conflict"} { startConflictDiff $top $fullname after idle [list doDiff $top] set ReturnAfterLoop 1 continue } if {!$autobrowse && !$dopatch} { # Check for revision control set rev [detectRevSystem $fullname] if {$rev ne ""} { startRevMode $top $rev $fullname if {$noautodiff} { enableRedo $top } else { after idle [list doDiff $top] } set ReturnAfterLoop 1 continue } } # No revision control. Is it a patch file? set ::diff($top,leftDir) $fulldir set ::diff($top,leftFile) $fullname set ::diff($top,leftLabel) $fullname set ::diff($top,leftOK) 1 if {$dopatch || [regexp {\.(diff|patch)$} $fullname]} { set ::diff($top,mode) "patch" set ::diff($top,patchFile) $fullname set autobrowse 0 if {$noautodiff} { enableRedo $top } else { after idle [list doDiff $top] } set ReturnAfterLoop 1 continue } } if {$ReturnAfterLoop} return } elseif {$len >= 2} { set fullname [file join [pwd] [lindex $files 0]] set fulldir [file dirname $fullname] set ::diff($top,leftDir) $fulldir set ::diff($top,leftFile) $fullname set ::diff($top,leftLabel) $fullname set ::diff($top,leftOK) 1 |
︙ | ︙ |