view hgext/win32text.py @ 1805:2af98c4b2587

Fix bash_completion on Solaris TK Soh noticed that the awk that ships with Solaris doesn't allow you to define new functions. According to http://www.shelldorado.com/articles/awkcompat.html it looks like it also doesn't have some other stuff that we were using, like deletion of an array element and gsub. Rewrite the parsing of hg --debug help to work around that. This version doesn't filter aliases that are simple abbreviations for debug commands (not a big problem, since there are none right now).
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Tue, 28 Feb 2006 11:49:35 -0600
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,
    })