tcl_help prettier output.
git-svn-id: svn://svn.berlios.de/openocd/trunk@793 b42882b7-edfa-0310-969c-e2dbd0fdcd60__archive__
parent
69c6f1f7ea
commit
e04f0142ee
|
@ -62,13 +62,36 @@ proc flash args {
|
|||
openocd_throw "flash $args"
|
||||
}
|
||||
|
||||
#Print help text for a command
|
||||
#Print help text for a command. Word wrap
|
||||
#help text that is too wide inside column.
|
||||
proc tcl_help {args} {
|
||||
global ocd_helptext
|
||||
set cmd $args
|
||||
foreach a [lsort $ocd_helptext] {
|
||||
if {[string length $cmd]==0||[string first $cmd $a]!=-1} {
|
||||
puts [format "%18s - %s" [lindex $a 0] [lindex $a 1]]
|
||||
set w 40
|
||||
set cmdname [lindex $a 0]
|
||||
set h [lindex $a 1]
|
||||
set n 0
|
||||
while 1 {
|
||||
if {$n > [string length $h]} {break}
|
||||
|
||||
set next_a [expr $n+$w]
|
||||
if {[string length $h]>$n+$w} {
|
||||
set xxxx [string range $h $n [expr $n+$w]]
|
||||
for {set lastpos [expr [string length $xxxx]-1]} {$lastpos>=0&&[string compare [string range $xxxx $lastpos $lastpos] " "]!=0} {set lastpos [expr $lastpos-1]} {
|
||||
}
|
||||
#set next_a -1
|
||||
if {$lastpos!=-1} {
|
||||
set next_a [expr $lastpos+$n+1]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
puts [format "%-25s %s" $cmdname [string range $h $n [expr $next_a-1]] ]
|
||||
set cmdname ""
|
||||
set n [expr $next_a]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue