From 5dafd13525db785388c19e19280aaddc62ee8388 Mon Sep 17 00:00:00 2001 From: cas Date: Wed, 27 Jun 2001 17:56:35 +0000 Subject: [PATCH] No comments --- src/WOKTclLib/FILES | 13 +--- src/WOKTclLib/wutils.tcl | 126 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 129 insertions(+), 10 deletions(-) diff --git a/src/WOKTclLib/FILES b/src/WOKTclLib/FILES index cd904c0..69a80bf 100755 --- a/src/WOKTclLib/FILES +++ b/src/WOKTclLib/FILES @@ -8,11 +8,9 @@ srcinc:::WCOMPATIBLE.tcl srcinc:::WOKVC.tcl srcinc:::WOKVC.RCS srcinc:::WOKVC.SCCS -srcinc:::WOKVC.ClearCase srcinc:::WOKVC.NOBASE srcinc:::upack.tcl srcinc:::wbuild.tcl -srcinc:::wok-comm.el srcinc:::wok.tcl srcinc:::wokCreations.tcl srcinc:::wokDeletions.tcl @@ -24,14 +22,11 @@ srcinc:::wokprocs.tcl srcinc:::wokinterp.tcl srcinc:::wprepare.tcl srcinc:::wstore.tcl -srcinc:::woksh.el -srcinc:::woksh.el-wnt srcinc:::wutils.tcl srcinc:::Wok_Init.tcl srcinc:::wokEDF.tcl srcinc:::wstore_trigger.example srcinc:::wnews_trigger.example -srcinc:::pinstall.tcl srcinc:::scheck.tcl srcinc:::wbuild.hlp srcinc:::wokRPRHelp.hlp @@ -39,16 +34,13 @@ srcinc:::wokWaffQueueHelp.hlp srcinc:::wokPrepareHelp.hlp srcinc:::wokEDF.hlp srcinc:::wokMainHelp.hlp -srcinc:::ptypefile.tcl srcinc:::VC.example srcinc:::wcheck.tcl srcinc:::wnews.tcl srcinc:::tclx.nt srcinc:::wokclient.tcl -srcinc:::p-ul.tcl srcinc:::wokPRM.tcl srcinc:::wokPRM.hlp -srcinc:::MatraDatavision.xpm srcinc:::reposit.xpm srcinc:::abstract.xpm srcinc:::admin.xpm @@ -136,7 +128,6 @@ srcinc:::dep.tcl srcinc:::path.xpm srcinc:::wokSEA.tcl srcinc:::wokPROP.tcl -srcinc:::wokOUC.tcl srcinc:::news_cpwb.tcl srcinc:::cback.xpm srcinc:::cfrwd.xpm @@ -146,8 +137,10 @@ srcinc:::wokQUE.tcl srcinc:::wcompare.tcl srcinc:::envir.xpm srcinc:::envir_open.xpm -srcinc:::MdtvLogo33x120b.gif srcinc:::README srcinc:::wokcvs.tcl srcinc:::ud2cvs_unix srcinc:::template.dsp +srcinc:::template.min +srcinc:::template.mam +srcinc:::osutils.tcl diff --git a/src/WOKTclLib/wutils.tcl b/src/WOKTclLib/wutils.tcl index 09e45fa..326aefd 100755 --- a/src/WOKTclLib/wutils.tcl +++ b/src/WOKTclLib/wutils.tcl @@ -1158,6 +1158,16 @@ proc wokUtils:LIST:selectpair { ll l } { return $rr } # +# { a.x b.c c.v } => { a b c} +# +proc wokUtils:LIST:sanspoint { l } { + set rr {} + foreach x $l { + lappend rr [file root $x] + } + return $rr +} +# # sort elements of l, according to key # key is the field number of an element considered as a string # command is invoked and receive the 2 fields. @@ -2193,3 +2203,119 @@ proc wokUtils:EASY:readdir { dir } { return $l } +;# +;# "Nice letter: %s" { a b c } => {Nice letter: %a} {Nice letter: %b} .. +;# as a string without backslash +;# +proc wokUtils:EASY:FmtSimple1 { fmt l {backslh 1} } { + foreach e $l { + if { $backslh } { + append str [format $fmt $e] "\n" + } else { + append str [format $fmt $e] + } + } + return $str +} +;# +;# +;# +proc wokUtils:EASY:FmtString1 { fmt l {yes_for_last 0} {edit_last {}} } { + set ldeb [lrange $l 0 [expr [llength $l] -2]] + set last [lrange $l end end] + foreach e $ldeb { + append str [format $fmt $e] " \\" "\n" + } + + if {$edit_last != {} } { + set slast [$edit_last [format $fmt $last]] + } else { + set slast [format $fmt $last] + } + + if { $yes_for_last } { + append str $slast " \\" "\n" + } else { + append str $slast "\n" + } + return $str +} +;# +;# +;# +;# edit_last is performed ONCE fmt has been applied. +;# +proc wokUtils:EASY:FmtString2 { fmt l {yes_for_last 0} {edit_last {}} } { + set ldeb [lrange $l 0 [expr [llength $l] -2]] + set last [lrange $l end end] + foreach e $ldeb { + append str [format $fmt $e $e] " \\" "\n" + } + + if {$edit_last != {} } { + set slast [$edit_last [format $fmt $last $last]] + } else { + set slast [format $fmt $last $last] + } + + if { $yes_for_last } { + append str $slast " \\" "\n" + } else { + append str $slast "\n" + } + + return $str +} +;# +;# Apply fmt1 to the car of l, fmt2 to the cdr +;# +proc wokUtils:EASY:FmtFmtString1 { fmt1 fmt2 l {yes_for_last 0} {edit_last {}} } { + set car [lindex $l 0] + set ldeb [lrange $l 1 [expr [llength $l] -2]] + set last [lrange $l end end] + append str [format $fmt1 $car] " \\" "\n" + foreach e $ldeb { + append str [format $fmt2 $e] " \\" "\n" + } + + if {$edit_last != {} } { + set slast [$edit_last [format $fmt2 $last]] + } else { + set slast [format $fmt2 $last] + } + + if { $yes_for_last } { + append str $slast " \\" "\n" + } else { + append str $slast "\n" + } + return $str +} +;# +;# Same as above. The first argument is treated with a specific format. +;# +proc wokUtils:EASY:FmtFmtString2 { fmt1 fmt2 l {yes_for_last 0} {edit_last {}} } { + set car [lindex $l 0] + set ldeb [lrange $l 1 [expr [llength $l] -2]] + set last [lrange $l end end] + + append str [format $fmt1 $car $car] " \\" "\n" + foreach e $ldeb { + append str [format $fmt2 $e $e] " \\" "\n" + } + + if {$edit_last != {} } { + set slast [$edit_last [format $fmt2 $last $last]] + } else { + set slast [format $fmt2 $last $last] + } + + + if { $yes_for_last } { + append str $slast " \\" "\n" + } else { + append str $slast "\n" + } + return $str +} + -- 2.39.5