view hgext/win32text.py @ 2056:1f6d520557ec

Polished exception handling when importing extensions: - Warning about failed import is printed on one line. - For this warning the [extensions] section key is used, because the value doesn't have to be set. - Whan a --traceback is requested, exit immediately to not mix up problems when importing an extension with other problems.
author Thomas Arendsen Hein <thomas@intevation.de>
date Tue, 11 Apr 2006 07:08:16 +0200
parents e58b1c9a0dec
children 30762680fcd2
line wrap: on
line source

import mercurial.util

def dumbdecode(s, cmd):
    return s.replace('\n', '\r\n')

def dumbencode(s, cmd):
    return s.replace('\r\n', '\n')

def clevertest(s, cmd):
    if '\0' in s: return False
    return True

def cleverdecode(s, cmd):
    if clevertest(s, cmd):
        return dumbdecode(s, cmd)
    return s

def cleverencode(s, cmd):
    if clevertest(s, cmd):
        return dumbencode(s, cmd)
    return s

mercurial.util.filtertable.update({
    'dumbdecode:': dumbdecode,
    'dumbencode:': dumbencode,
    'cleverdecode:': cleverdecode,
    'cleverencode:': cleverencode,
    })