diff options
Diffstat (limited to 'IRC')
| -rwxr-xr-x | IRC/asybot.py | 8 | ||||
| -rwxr-xr-x | IRC/index | 2 | ||||
| -rw-r--r-- | IRC/translate_colors.py | 31 | 
3 files changed, 38 insertions, 3 deletions
| diff --git a/IRC/asybot.py b/IRC/asybot.py index df758ed..2cb533e 100755 --- a/IRC/asybot.py +++ b/IRC/asybot.py @@ -2,7 +2,7 @@  #  # //Reaktor/IRC/asybot.py  # - +from translate_colors import translate_colors  def is_executable(x):    import os    return os.path.exists(x) and os.access(x, os.X_OK) @@ -24,6 +24,9 @@ formatter = logging.Formatter( '%(filename)s: %(levelname)s: %(message)s')  hdlr.setFormatter(formatter)  log.addHandler(hdlr) +# s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g -- removes color codes + +  class asybot(asychat):    def __init__(self, server, port, nickname, targets, **kwargs):      asychat.__init__(self) @@ -110,6 +113,7 @@ class asybot(asychat):      def PRIVMSG(text):        for line in self.wrapper.wrap(text):          msg = 'PRIVMSG %s :%s' % (','.join(params), line) +        log.info(msg)          self.push(msg)          sleep(1) @@ -151,7 +155,7 @@ class asybot(asychat):            return          pid = p.pid          for line in iter(p.stdout.readline,""): -          PRIVMSG(line) +          PRIVMSG(translate_colors(line))            log.debug('%s stdout: %s' % (pid, line))           p.wait()          elapsed = time() - start @@ -3,4 +3,4 @@ set -xeuf  # cd //Reaktor  cd $(dirname $(readlink -f $0))/.. -host=irc.freenode.net target='#krebsco' python IRC/asybot.py "$@" +host=irc.freenode.net target='#krebs' python IRC/asybot.py "$@" diff --git a/IRC/translate_colors.py b/IRC/translate_colors.py new file mode 100644 index 0000000..bd71661 --- /dev/null +++ b/IRC/translate_colors.py @@ -0,0 +1,31 @@ + + +COLOR_MAP = { +    "\x1b[0m" :  "\x0F", # reset +    "\x1b[37m" : "\x0300", +    "\x1b[30m" : "\x0301", +    "\x1b[34m" : "\x0302", +    "\x1b[32m" : "\x0303", +    "\x1b[31m" : "\x0304", +    "\x1b[33m" : "\x0305", +    "\x1b[35m" : "\x0306", +    "\x1b[33m" : "\x0307", +    "\x1b[33m" : "\x0308", +    "\x1b[32m" : "\x0309", +    "\x1b[36m" : "\x0310", +    "\x1b[36m" : "\x0311", +    "\x1b[34m" : "\x0312", +    "\x1b[31m" : "\x0313", +    "\x1b[30m" : "\x0314", +    "\x1b[37m" : "\x0315", +    "\x1b[1m" :  "\x02", # bold on +    "\x1b[22m" : "\x02" # bold off +  } +def translate_colors (line): +  for color,replace in COLOR_MAP.items(): +    line = line.replace(color,replace) +  return line + +if __name__ == "__main__": +  import sys +  print (translate_colors(sys.stdin.read())) | 
