Exemple #1
0
def wbr(value, max=35):
    """\
    Injects zero-width word break characters in long blocks of text that have
    no natural word break points.
    """
    value = re.sub(r'([^\s\u200b]{' + str(max) + r'})', '\\1\u200b', value)
    value = re.sub('\u200b$', '', value)
    return value
Exemple #2
0
def add_wbr_to_html(t):
    parts = []
    for part in re.split(r'(<[^>]*>)', t):
        if part == '': continue
        if part.startswith('<'):
            parts.append(part)
        else:
            part = html.unescape(part)
            part = re.sub(r'([^\s\u200b]{35})', '\\1\u200b', part)
            parts.append(html.escape(part))

    return ''.join(parts)