alias syntax { ; change colors here, zero padding isnt necessary var %ident = 4 | ; identifiers var %vars = 7 | ; variables var %comm = 2 | ; commands and switches var %paren = 6 | ; identifier syntax characters eg. ,() var %chars = 3 | ; command syntax characters eg. [] {} | ; do not change the following! unless you really want to var %__ident = /(?<=^|[ ,(])(\$(?!\?)[^\s\50]*?|#)(?=[,) ]|$)/gS, $& %_vars = /(?<=^|[ ,(])(%\C*?)(?=[,) ]|$)/g, $& %_comm = /(?<=^| )(?:(?<=[{|] )|(?=\/+))(\S*(?: -\w+)?)/g, $& %_chars = /(?<=^| )([[\]{}|])(?= |$)/g, $& %_$? = /(?<=^|[ ,\50])(\$\?[!*]?(?:=?")?)(?(?<=")(\C*?)(")|)/g, $& %_ident = /(?<=^|[\17,( ])(\$[^\s(]*(?=\())(\(((?:[^()]*+|(?2))*)\))/g noop $regsub($1-,%__ident,$syn(%ident),%o) $regsub(%o,%_vars,$syn(%vars),%o) $regsub(%o,%_comm,$syn(%comm),%o) $& $regsub(%o,%_chars,$syn(%chars),%o) $regsub(%o,%_$?,$+($syn(%ident),\2,$syn(%ident,\3)),%o) while ($regsubex(%o,%_ident,$+( [ $syn(%ident) ] , [ $syn(%paren,$cr) ] ,$replace(\3,$chr(44),$+($chr(3),%paren,$chr(44),$chr(15))) , [ $syn(%paren,$lf) ] )) != %o) %o = $v1 $iif($isid,RETURNEX,echo -ag) $replace(%o,$cr,$chr(40),$lf,$chr(41)) } alias -l syn return $+($chr(3),$1,$iif($2,$2,\1),$chr(15)) on &*:input:*:{ if ($left($1,1) !isin $readini($mircini,text,commandchar) /) || ($ctrlenter) $& && ($istok(channel chat query,$window($active).type,32)) { say $$syntax($1-) halt } } on &^*:text:*:*:{ echo -mbflirtc norm $iif(#,#,$nick) $+(<,$iif($left($nick(#,$nick).pnick,1) isin $prefix,$v1),$nick,>) $$syntax($1-) halt }