3 set server irc.perl.org
4 set channels
[list #parrot]
8 proc privmsg
{who target msg
} {
9 set first
[string wordstart
$msg 0]
10 set last
[string wordend
$msg 0]
12 if {[string range
$msg $first [expr {$last-1}]] ne
"expr"} return
14 set expr [string range
$msg $last end-1
]
15 if {[string first
\[ $expr] != -1} return
18 if {$target eq
$::nick} {set target
$who}
19 if { [catch {$::cxn privmsg
$target "$who: [expr $expr]"} err
] } {
20 $::cxn privmsg
$target "$who: $err"
24 set cxn
[irc
::connection]
27 $cxn registerevent PRIVMSG
{::privmsg [who
] [target
] [msg
]}
28 $cxn registerevent defaultevent
{puts "(event) [header]: [msg]"}
31 $cxn user
$nick localhost domain www.tcl.
tk
33 foreach channel
$channels {