rendered paste body/* ****************************
********** load + input *********
******************************
*/
on *:START:{
updateLook
}
alias updateLook {
timestamp -ef 6«12hh6:12nn6:12ss 0tt6»
timestamp -eg 6«12hh6:12nn6:12ss 0tt6»
if (!$readini(owwTheme.ini,loaded,loaded)) {
hadd -m badchans chans #idle #mSL #mIRC #support #irchelp
color background 1
color normal 0
color action 6
color highlight 0
color listbox text 0
color listbox 1
color editbox text 0
color editbox 1
color own text 0
color whois text 0
color info text 12
color quit text 12
color treebar 1
color treebar text 0
font -dsgz -9 Tahoma
cnick * 4 @
cnick * 7 %
cnick * 0 +
cnick * 14
writeini owwTheme.ini loaded loaded already
}
}
on &*:INPUT:#:{
if (/* !iswm $1) || ($ctrlenter) {
msg $active $hs($$1-)
halt
}
}
on &*:INPUT:?:{
if (/* !iswm $1) || ($ctrlenter) {
msg $active $hs($$1-)
halt
}
}
/* ****************************
********* theme display *********
******************************
*/
alias msg {
!.msg $$1 $hs($$2-).msg
if ($show) {
if ($1 ischan || $query($1)) {
if ($1 ischan) {
echo -i12t $1 6«0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» $hs($2-)
}
else {
echo -i12t $1 6«0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» $hs($2-)
}
}
else {
echo -i12t --> $1 $+ ; $hs($2-)
}
}
}
alias describe {
!.describe $$1 $$2-
if ($show) {
if ($1 ischan || $query($1)) {
if ($1 ischan) {
echo -i12t $1 6 «0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» * $hs($2-)
}
else {
echo 6 -i12t $1 6 «0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» * $hs($2-)
}
}
else {
echo 6 -i12t $1 —> $1 $+ ; $hs($2-)
}
}
}
alias amsg {
!msg $left($regsubex($str(~,$chan(0)),/~/g,$iif(!$istok($hget(badchans,chans),$chan(\n),32),$chan(\n) $+ $chr(44))),-1) $hs($1-)
if ($show) {
var %i $chan(0)
while (%i) {
if (!$istok($hget(badchans,chans),$chan(%i),32) echo -i12t $chan(%i) 6«0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» $hs($1-)
dec %i
}
}
}
alias ame {
!describe $left($regsubex($str(~,$chan(0)),/~/g,$iif(!$istok($hget(badchans,chans),$chan(\n),32),$chan(\n) $+ $chr(44))),-1) $hs($1-)
if ($show) {
var %i $chan(0)
while (%i) {
if (!$istok($hget(badchans,chans),$chan(%i),32) echo -i12t $1 6 «0 $+($ncol($chan,$me),$cmod($chan,$me),$me) 6» * $hs($1-)
dec %i
}
}
}
on &^*:TEXT:*:#:{
haltdef
if ($regex($1-,/[a-zA-Z 0-9]*\b(?:[10]{8})+\b[a-zA-Z 0-9]*/)) tokenize 32 BINARY ** $b2t($1-)
tokenize 32 $hiliteName($1-)
if ($chilight($1-)) {
echo -lbfmti12c highlight $chan 6«0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» $hs($1-)
hilight $nick $chan normal $1-
if ($hget(away,reason)) && (!$hget(away,$address($nick,3))) {
hadd away $address($nick,3) told
notice $nick I am away with the reason: $hget(away,reason)
}
}
else {
echo -lbfmti12c normal $chan 6«0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» $hs($1-)
}
}
on &^*:TEXT:*:?:{
haltdef
tokenize 32 $hiliteName($1-)
if ($chilight($1-)) {
echo -lbfmti12c highlight $nick 6«0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» $hs($1-)
hilight $nick $nick normal $1-
if ($hget(away,reason)) && (!$hget(away,$address($nick,3))) {
hadd away $address($nick,3) told
notice $nick I am away with the reason: $hget(away,reason)
}
}
else {
echo -lbfmti12c normal $nick 6«0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» $hs($1-)
}
}
on &^*:ACTION:*:#:{
haltdef
tokenize 32 $hiliteName($1-)
if ($chilight($1-)) {
echo -lbfmti12c highlight $chan 6 «0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» * $hs($1-)
hilight $nick $chan action $1-
if ($hget(away,reason)) && (!$hget(away,$address($nick,3))) {
hadd away $address($nick,3) told
notice $nick I am away with the reason: $hget(away,reason)
}
}
else {
echo -lbfmti12c action $chan 6 «0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» * $hs($1-)
}
}
on &^*:ACTION:*:?:{
haltdef
tokenize 32 $hiliteName($1-)
if ($chilight($1-)) {
echo -lbfmti12c highlight $nick 6* «0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» * $hs($1-)
hilight $nick $null action $1-
if ($hget(away,reason)) && (!$hget(away,$address($nick,3))) {
hadd away $address($nick,3) told
notice $nick I am away with the reason: $hget(away,reason)
}
}
else {
echo -lbfmti12c action $nick 6* «0 $+($ncol($chan,$nick),$cmod($chan,$nick),$nick) 6» * $hs($1-)
}
}
on &^*:OPEN:?:*:{
echo $nick $timestamp
noop $tip(Query $nick,Query with $nick,$nick opened a query with you $twrap($1-,3),8,,,,)
}
/* ****************************
********* theme aliases *********
******************************
*/
alias twrap {
var %r,%size $calc(281 - $width($str( $chr(32),$2),$font,$size,0,1)),%i 1,%t $wrap($1,$font,$size,%size,1,0)
while (%i <= %t) {
var %r = %r $crlf $str( $chr(32),$2) $wrap($1,$font,$size,%size,1,%i)
inc %i
}
return %r
}
alias font return Tahoma
alias size return 12
alias hiliteName return $regsubex($1-,/\G((?:(?!\bspit[ _](?:water)?\b).)*)\b(spit[ _](?:water)?)?\b/ig,\14\2)
alias b2t $iif($isid,return,echo -a) $regsubex($1-,/([10]{1,8})/g,$chr($base(\1,2,10,0)))
alias t2b $iif($isid,return,echo -a) $regsubex($1-,/(.)/g,$base($asc(\1),10,2,8))
alias nCol { return $+ $nick($1,$2).color }
alias cMod {
if ($nick($1,$2).pnick != $2) { return $left($v1,1) }
else { return }
}
alias hs {
if (!$isid) halt
if (*c* iswmcs $chan($chan).mode) && ($prop == msg) return $1-
return $regsubex($1-,/(?<=^| |\x28)((?:(?:(?:https?|tcp|udp|ftp):\/\/)(?:(?:[^ ()]{2,}\.[^ ()]*)|(?:[^ ()]?\.[^ ()]+)))|(?:(?:www\.)(?:(?:\.[^ ()]{3,})|(?:\w\.[^ ()]{2,})|(?:[^ ()]{2,}\.[^ ()]+))))(?=$| |\x29)/ig,12\1)
}
alias hilight {
noop $tip(Hilighted : $2,Hilighted in $2 $+ !,$1 hilighted you in $2 $twrap($4-,3),8,,,,)
if ($2 != $active) || ($idle > 600) echo -mti12c $3 $hlwin $ncol($2,$$1) $+ $cmod($2,$$1) $+ $$1 $+ $+ $iif($3 == normal,;,*) $+ $2 $+ ; $hs($4-)
}
alias chilight {
if ($regex($1-,/\b(?:spit[ _](?:water)?)\b/i)) { return 1 }
}
alias hlwin {
if (!$window(@Hilights. $+ $cid)) { window -evk0n @Hilights. $+ $cid }
return @Hilights. $+ $cid
}
alias awin {
if (!$window(@Away. $+ $cid)) { window -evk0n @Away. $+ $cid }
return @Away. $+ $cid
}
alias say { msg $active $1- }
alias me { describe $active $1- }
alias tcase { return $regsubex($1-,/(?:^|\b|_)+([a-z])/g,$chr(32) $+ $upper(\1)) }
; *****************************
; ******** away systm *********
; *****************************
alias a away $1-
alias aw away $1-
alias away {
!away $1-
hadd -m away reason $1-
hadd away ctime $ctime
hadd away oldNick $me
nick $me $+ -Away
ame is now away. Reason: $1-
}
alias bk back $1-
alias b back $1-
alias back {
!away
nick $hget(away,oldNick)
ame is back from $hget(away,reason) $+ ! I was gone for $duration($calc($ctime - $hget(away,ctime)))
hfree away
}