X-Git-Url: https://git.distorted.org.uk/~mdw/ircbot/blobdiff_plain/281f2c0e568eb3fac93173a3d0b852259e61245f..9e0b3214cd24a8e4c2fc251b4cfc251476016fbd:/parsecmd.tcl diff --git a/parsecmd.tcl b/parsecmd.tcl index de8d322..925eed3 100644 --- a/parsecmd.tcl +++ b/parsecmd.tcl @@ -23,6 +23,15 @@ proc ta_nick {} { return $v } +proc ta_interval_optional {min def} { + upvar 1 text text + if {[ta_anymore]} { + return [parse_interval [ta_word] $min] + } else { + return $def + } +} + proc usererror {emsg} { error $emsg {} {BLIGHT USER} } proc go_usercommand {p c n dest text} { @@ -30,7 +39,7 @@ proc go_usercommand {p c n dest text} { set ucmd [ta_word] set procname ucmd/[string tolower $ucmd] if {[catch { info body $procname }]} { - usererror "Unknown command; try help for help." + usererror "Unknown command; try help for Help." } $procname $p $dest } @@ -61,6 +70,10 @@ proc def_ucmd {cmdname body} { proc ucmd/$cmdname {p dest} " upvar 1 text text\n$body" } +proc def_ucmd_alias {alias canon} { + proc ucmd/$alias {p dest} " uplevel 1 \[list ucmd/$canon \$p \$dest\]\n" +} + proc ucmdr {priv pub args} { return -code return [concat [list $priv $pub] $args] }