hgext/win32text.py
author OHASHI Hideya <ohachige at gmail.com>
Wed, 13 Jun 2007 18:18:06 +0900
changeset 4690 ecea4de3104e
parent 1300 e58b1c9a0dec
child 4848 30762680fcd2
permissions -rw-r--r--
Enable to select encoding in hgrc web section This patch provides character encoding setting in each repository. After this patch, You can use multi encoding repositories with one mercurial server.

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,
    })