on $*:text:/^[!@]define .*/Si:#: { if (!$2) { notice $nick Please enter a word to lookup } else { inc %ID 1 set $+(%,def.target,%ID) $iif($left($1,1) == @,msg $chan,notice $nick) set $+(%,def.search,%ID) $replace($2-,$chr(32),+) sockopen $+(def.,%ID) dictionary.reference.com 80 } } on *:SOCKOPEN:def.*: { sockwrite -nt $sockname GET /search?r=2&q= $+ $eval($+(%,def.search,%ID),2) HTTP/1.1 sockwrite -nt $sockname Host: dictionary.reference.com $+ $crlf $+ $crlf } on *:SOCKREAD:def.*: { var %ID = $right($sockname,-4) if ($sockerr) { $eval($+(%,def.target,%ID),2) Socket error - Please try again later sockclose $sockname } else { var %read | sockread %read if (!$sockbr) { return } elseif ($regex(%read,/(
  • (.*)
  • )/)) %definiton = $regml(2) sockread %read $eval($+(%,def.target,%ID),2) Definition: %definition sockclose $sockname } elseif (No entry found isin $htmlfree(%read)) { $eval($+(%,def.target,%ID),2) Definition: No results found sockclose $sockname } } } on *:Disconnect:{ unset %ID unset %def.* } alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ) return %x }