eos themed talker and nickname tab.
alias ttest { say 14,1©15,1º0,1°4,1¨ $+ $motley($1-) $+ 4,1¨0,1°15,1º }
on &*:INPUT:*:{
if ($0) && ((/* !iswm $1) || ($ctrlenter)) && (($active ischan) || ($query($active)) || (=* iswm $active)) && ($window($active, 0) = 1) {
if ($regex($left($1,1),/^[.!@]/g)) { say $1- | halt }
else { say 9,1[3,1¨ $+ $motley($1-) $+ 3,1¨9,1] | halt }
}
}
alias -l motley {
set %co1 15
set %co2 14
var %x 1
while (%x <= $gettok($1-,0,32)) {
var %text1 $mid($gettok($1-, [ [ %x ] ],32),1,1)
var %text [ [ %text ] ] $replace($mid($gettok($1-, [ [ %x ] ],32),1,1),[ [ %text1 ] ], $+(,[ %co1 ],,[ [ %text1 ] ],,[ %co2 ],)) $+ $mid($gettok($1-, [ [ %x ] ],32),2,$calc($len($gettok($1-, [ [ %x ] ],32) - 1)))
var %text $replace(%text,.,9. $+ %co2,!,9! $+ %co2,$chr(44),9 $+ $chr(44) $+ $+ %co2,$chr(35),9 $+ $chr(35) $+ $+ %co2,$chr(34),9 $+ $chr(34) $+ $+ %co2,$chr(36),9 $+ $chr(36) $+ $+ %co2,$chr(37) $+ $+ %co2,9 $+ $chr(37) $+ $+ %co2,$chr(38),9 $+ $chr(38) $+ $+ %co2,$chr(39),9 $+ $chr(39) $+ $+ %co2,$chr(40),9 $+ $chr(40) $+ $+ %co2,$chr(41),9 $+ $chr(41) $+ $+ %co2,$chr(42),9 $+ $chr(42) $+ $+ %co2,$chr(43),9 $+ $chr(43) $+ $+ %co2,$chr(47),9 $+ $chr(47) $+ $+ %co2,$chr(58),9 $+ $chr(58) $+ $+ %co2,$chr(59),9 $+ $chr(59) $+ $+ %co2,$chr(60),9 $+ $chr(60) $+ $+ %co2,$chr(61),9 $+ $chr(61) $+ $+ %co2,$chr(62),9 $+ $chr(62) $+ $+ %co2,$chr(64),9 $+ $chr(64) $+ $+ %co2,$chr(91),9 $+ $chr(91) $+ $+ %co2,$chr(92),9 $+ $chr(92) $+ $+ %co2,$chr(93),9 $+ $chr(93) $+ $+ %co2,$chr(94),9 $+ $chr(94) $+ $+ %co2)
inc %x
}
if ($isid) { return 04,01 $nicktab(%Text) }
}
alias nicktabcheck { echo -agt 9[0N15ick0T15ab9]15 Test9: $nicktab($active,$1-) }
alias nicktab {
unset %nt:tok %nt:chan %nt:check %nt:return
var %nt:return
var %nt:chan $1
tokenize 32 $2
if (! isin $left($1,1)) || (. isin $left($1,1)) { return $1- | halt }
var %nt:tok $gettok($1-,0,32)
while (%nt:tok) {
var %nt:check $gettok($1-,%nt:tok,32)
if (%nt:check ison %nt:chan) {
if (! isin $right(%nt:check,1)) || (. isin $right(%nt:check,1)) || (, isin $right(%nt:check,1)) || (? isin $right(%nt:check,1)) { var %nt:checkend $right(%nt:check,1) | var %nt:check $remove(%nt:check,%nt:checkend) | var %nt:return 14,1©15,1º0,1°4,1¨ $+ %nt:check $+ 4,1¨0,1°15,1º $+ %nt:checkend %nt:return }
else { var %nt:return 14,1©15,1º0,1°4,1¨ $+ %nt:check $+ 4,1¨0,1°15,1º %nt:return }
}
elseif (%nt:check isnum) { var %nt:return 09 $+ %nt:check $+ $+ %co2 %nt:return }
else { var %nt:return %nt:check %nt:return }
dec %nt:tok
}
return %nt:return
}
alias say {
if ($isid) { return }
if ($status == disconnected) || (!$0) || (($active !ischan) && (!$query($active))) && (=* !iswm $active) {
.timer.kte 1 0 !say $1- | .timer.kte -e | halt
}
.!msg $active $nicktab($active,$1-)
set -u1 %:echo echo $color(own) -ati2
set -nu1 %::text $nicktab($active,$1-) | set -u1 %::target $active | set -u1 %::nick $me
set -nu1 %::me $me | set -nu1 %::server $server | set -nu1 %::port $port
set -nu1 %::pre 14.15.15.
set -nu1 %::c1 00 | set -nu1 %::c2 11 | set -nu1 %::c3 13 | set -nu1 %::c4 12
if (* iswm %::text) { set -nu1 %::parentext 14(15 $+ %::text $+ 14) }
if ($active ischan) {
set -u1 %::chan $active
if ($nick($active, $me).pnick != $me) { set -u1 %::cmode $left($ifmatch, 1) }
set -u1 %::cnick $nick($active, $me).color
%:echo 0( $+ $modecol(%::me,%::chan) $+ 0)15 %::text
}
else {
set -u1 %::cnick $cnick($me).color
%:echo 0( $+ $modecol(%::me,%::chan) $+ 0)15 %::text $+ %:comments
}
unset %:echo %::parentext %::target %::nick %::address %::chan %::cnick %::cmode %::me %::server %::port %::pre %::c? %::text
}