Posted to tcl by bairui at Wed Jul 18 23:42:36 GMT 2018view raw
- proc heredoc {body} {
- return [uplevel 1 [list subst -nocommands [join [lmap x [lrange [split $body \n] 1 end-1] {string trim $x}] \n]]]
- }
- proc usage {argv0 argv} {
- set usageError [heredoc {
- ERROR: [file tail ${argv0}]
- \ ?--auto-update?
- \ --rolback PIPTYPE PIPPACKAGE
- }]
- puts $usageError
- }
- usage $argv0 $argv
Comments
Posted by bairui at Wed Jul 18 23:54:01 GMT 2018 [text] [code]
# [string trim] feels better than [lrange] proc heredoc {body} { return [string trim [uplevel 1 [list subst -nocommands [join [lmap x [split $body \n] {string trim $x}] \n]]]] }
Posted by CecilWesterhof at Thu Jul 19 05:18:51 GMT 2018 [text] [code]
This generates: ERROR: [file tail /home/cecil/bin/testing.tcl] ?--auto-update? --rolback PIPTYPE PIPPACKAGE While my version generates: ERROR: checkPipPackages.tcl ?--auto-update? --rollback PIPTYPE PIPPACKAGE I also find my version more clear and I find easiness to understand important.
Posted by CecilWesterhof at Thu Jul 19 05:41:20 GMT 2018 [text] [code]
What does what I want: set usageError "ERROR: [file tail ${argv0}] ?--auto-update? --rollback PIPTYPE PIPPACKAGE" Sadly formatting gets lost in replies. :'-(