def _repl(): while True: lang = self.lang or raw_input(color("Lang: ", "magenta")) try: lang = get_lang(lang) logger.info("** " + color(type(lang).__name__, "green") + " is selected") break except Exception, e: logger.error(color(e, "red")) self.lang = None
def _repl(): while True: lang = self.lang or raw_input(color('Lang: ', 'magenta')) try: lang = get_lang(lang) logger.info('** ' + color(type(lang).__name__, 'green') + ' is selected') break except Exception, e: logger.error(color(e, 'red')) self.lang = None
def _repl(): while True: lang = self.lang or raw_input(color('Lang: ', 'magenta')) try: lang = get_lang(lang) logger.info('** ' + color(type(lang).__name__, 'green') + \ ' is selected') break except HangulizeError, e: logger.error(color(e, 'red')) self.lang = None
def run(self): langs = hangulize.langs.get_list() examples = [] for lang in (x.replace('.', '_') for x in langs): mod = getattr(__import__('tests.%s' % lang), lang) case = [x for x in dir(mod) if x.endswith('TestCase') and \ not x.startswith('Hangulize')][0] examples += getattr(mod, case).get_examples().keys() print_('Supported languages:', end=' ') print_(color(len(langs), 'cyan')) print_('Prepared examples:', end=' ') print_(color(len(examples), 'cyan'))
def assert_examples(self, examples, lang=None, logger=None): cls = type(self) # store examples if getattr(cls, '_store_examples', False): cls._stored_examples.update(examples) return errors = [] lang = lang or self.lang if isinstance(lang, basestring): lang = hangulize.get_lang(lang) try: lang_name = type(lang).__name__ except AttributeError: lang_name = 'AnonymouseLanguage' for word, want in examples.items(): try: got = lang.hangulize(word, logger=logger) assert want == got except self.failureException: errors.append((word, want, got)) if errors: def form(error): return " * '%s' should be '%s', but '%s' was given" % ( color(error[0], 'cyan'), color(error[1], 'green'), color(error[2], 'red') ) errors = map(form, errors) msg = color(lang_name, 'yellow') + '\n' + '\n'.join(errors) raise HangulizeAssertionError(msg.encode('utf-8'))
def _repl(): while True: lang = self.lang or raw_input(color('Lang: ', 'magenta')) try: lang = get_lang(lang) logger.info('** ' + color(type(lang).__name__, 'green') + ' is selected') break except Exception as e: logger.error(color(e, 'red')) self.lang = None while True: string = raw_input(color('==> ', 'cyan')) if not string: logger.info('** ' + color('End', 'green')) break yield lang.hangulize(string.decode(encoding), logger=logger)
def handle(self, record): msg = self.readably(record.msg) # keywords maxlen = max([len(x) for x in self.color_map.keys()]) def deco(color_name): def replace(m): pad = ' ' * (maxlen - len(m.group(1))) return color(m.group(1), color_name) + pad return replace for keyword, color_name in self.color_map.items(): msg = re.sub(r'(?<=\t)(%s)' % keyword, deco(color_name), msg) # result msg = re.sub(r'(?<=^\=\>)(.*)$', color(r'\1', 'yellow'), msg) # step msg = re.sub(r'^(>>|\.\.)', color(r'\1', 'blue'), msg) msg = re.sub(r'^(=>)', color(r'\1', 'magenta'), msg) # arrow msg = re.sub(r'(->)(?= [^ ]+$)', color(r'\1', 'black'), msg) record.msg = msg return logging.StreamHandler.handle(self, record)
def run(self): import sys logger = make_logger() encoding = sys.stdout.encoding def _repl(): while True: lang = self.lang or raw_input(color('Lang: ', 'magenta')) try: lang = get_lang(lang) logger.info('** ' + color(type(lang).__name__, 'green') + \ ' is selected') break except HangulizeError, e: logger.error(color(e, 'red')) self.lang = None while True: string = raw_input(color('==> ', 'cyan')) if not string: logger.info('** ' + color('end', 'green')) break yield lang.hangulize(string.decode(encoding), logger=logger)
def run(self): import sys logger = make_logger() encoding = sys.stdout.encoding def _repl(): while True: lang = self.lang or raw_input(color("Lang: ", "magenta")) try: lang = get_lang(lang) logger.info("** " + color(type(lang).__name__, "green") + " is selected") break except Exception, e: logger.error(color(e, "red")) self.lang = None while True: string = raw_input(color("==> ", "cyan")) if not string: logger.info("** " + color("End", "green")) break yield lang.hangulize(string.decode(encoding), logger=logger)
def handle(self, record): msg = self.readably(record.msg) # keywords maxlen = max([len(x) for x in self.color_map.keys()]) def deco(color_name): def replace(m): pad = " " * (maxlen - len(m.group(1))) return color(m.group(1), color_name) + pad return replace for keyword, color_name in self.color_map.items(): msg = re.sub(r"(?<=\t)(%s)" % keyword, deco(color_name), msg) # result msg = re.sub(r"(?<=^\=\>)(.*)$", color(r"\1", "yellow"), msg) # step msg = re.sub(r"^(>>|\.\.)", color(r"\1", "blue"), msg) msg = re.sub(r"^(=>)", color(r"\1", "magenta"), msg) # arrow msg = re.sub(r"(->)(?= [^ ]+$)", color(r"\1", "black"), msg) record.msg = msg return logging.StreamHandler.handle(self, record)
def replace(m): pad = ' ' * (maxlen - len(m.group(1))) return color(m.group(1), color_name) + pad
def form(error): return " * '%s' should be '%s', but '%s' was given" % ( color(error[0], 'cyan'), color(error[1], 'green'), color(error[2], 'red') )