on *:text:?define *:*: { ;COLOR SETTING: set %col 09 inc %ID 1 set $+(%,search.,%ID) $replace($2-,$chr(32),+) $iif($chan,$iif($left($1,1) == !,notice $nick,msg $chan),msg $nick) sockopen $+(def.,%ID) wordnet.princeton.edu 80 } on *:SOCKOPEN:def.*: { sockwrite -nt $sockname GET /perl/webwn?s= $+ $gettok($($+(%,search.,%ID),2),1,32) HTTP/1.1 sockwrite -nt $sockname Accept-Language: en-us sockwrite -nt $sockname Host: wordnet.princeton.edu sockwrite -t $sockname $str($crlf,2) } on *:SOCKREAD:def.*: { var %IDt = $right($sockname,-4) var %target = $gettok($($+(%,search.,%IDt),2),2-,32) if ($sockerr) { %target $chr(91) $col(ERROR) $chr(93) Socket error sockclose $sockname } else { :nextread var %read | sockread %read if (Your search did not return any results. isin $htmlfree(%read)) { %target $chr(91) $col(DEFINE) $chr(93) No results found unset %search. $+ $right($sockname,-4) sockclose $sockname } elseif (S: isin $htmlfree(%read)) { if (SEARCH DISPLAY OPTION == $remove($htmlfree(%read),S:,)) { goto nextread } if (KEY isincs $remove($htmlfree(%read),S:,)) { goto nextread } if ($($+(%,reads.,%IDt),2) == $null) { set $+(%,reads.,%IDt) 1 } if ($($+(%,reads.,%IDt),2) < 3) { %target $chr(91) $col(DEFINE) $chr(93) $remove($htmlfree(%read),S:,) inc $+(%,reads.,%IDt) 1 goto nextread } close -m $nick unset %search. $+ $right($sockname,-4) | unset %reads. $+ $right($sockname,-4) sockclose $sockname } } } alias -l col { return $+($chr(3),$iif($len(%col) == 2,%col,$+(0,%col)), $1-, $chr(3)) } alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ) return %x }