alias colortext { var %pos = 1, %color = 04, %result = $chr(3) while (%pos <= $len($1-)) { %result = %result $+ %color $+ $mid($1-,%pos,1) $+ $chr(3) inc %pos %color = $nextcolor(%color) } if ($isid) return %result else say %result } alias -l nextcolor { if ($$1 == 04) return 07 elseif ($$1 == 07) return 08 elseif ($$1 == 08) return 09 elseif ($$1 == 09) return 11 elseif ($$1 == 11) return 12 elseif ($$1 == 12) return 02 elseif ($$1 == 02) return 06 elseif ($$1 == 06) return 13 elseif ($$1 == 13) return 04 } alias rainbow { var %pos = 1, %color = 04, %result = $chr(3) while (%pos <= $len($1-)) { %result = %result $+ %color $+ $mid($1-,%pos,1) $+ $chr(3) inc %pos %color = $nextcolor(%color) } if ($isid) return %result else say %result } alias -l nextcolor { if ($$1 == 04) return 07 elseif ($$1 == 07) return 08 elseif ($$1 == 08) return 09 elseif ($$1 == 09) return 11 elseif ($$1 == 11) return 12 elseif ($$1 == 12) return 02 elseif ($$1 == 02) return 06 elseif ($$1 == 06) return 13 elseif ($$1 == 13) return 04 }