All pastes #910619 Raw Edit

mIRC theme for spit

public text v1 · immutable
·published 2008-02-20 01:58 UTC
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
}