Changeset 600

Show
Ignore:
Timestamp:
17/04/09 14:11:50 (17 months ago)
Author:
athomas
Message:

Add support for console codes to the prompt.

Location:
cly/trunk
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • cly/trunk/cly/console.py

    r590 r600  
    3737cwrite getch cerror cfatal register_codec cinfo cjustify clen cprint cprintstrip 
    3838csplice cwarning cwraptext print_table rjustify termheight termwidth wraptoterm 
     39cencode cdecode 
    3940""".split() 
    4041 
     
    310311        return (_encode, _decode, _CodecStreamReader, _CodecStreamWriter) 
    311312    return codecs.register(inner_register) 
     313 
     314 
     315def cencode(text): 
     316    """Encode to CLY colour-encoded text.""" 
     317    return _encode(text)[0] 
     318 
     319 
     320def cdecode(text): 
     321    """Decode CLY colour-encoded text. 
     322 
     323    Use this to convert '^Bfoo^N' to the ANSI equivalent. 
     324    """ 
     325    return _decode(text)[0] 
    312326 
    313327 
  • cly/trunk/cly/interactive.py

    r591 r600  
    8383        raise NotImplementedError 
    8484 
     85    def _set_prompt(self, prompt): 
     86        self._prompt = prompt 
     87 
     88    def _get_prompt(self): 
     89        return self._prompt 
     90 
     91    prompt = property(lambda self: self._get_prompt(), 
     92                      lambda self, prompt: self._set_prompt(prompt)) 
     93 
    8594 
    8695class DumbInput(InputDriver): 
     
    150159 
    151160    cursor = property(lambda s: s._get_cursor(), lambda s, c: s._set_cursor(c)) 
     161 
     162    def _set_prompt(self, prompt): 
     163        self._prompt = console.cdecode(prompt) 
    152164 
    153165    # Internal methods 
  • cly/trunk/doc/api/builder.rst

    r599 r600  
    44.. automodule:: cly.builder 
    55   :members: 
    6    :noindex: