本文整理汇总了Python中translate.convert.accesskey.extract函数的典型用法代码示例。如果您正苦于以下问题:Python extract函数的具体用法?Python extract怎么用?Python extract使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了extract函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: applytranslation
def applytranslation(key, propunit, inunit, mixedkeys):
"""applies the translation for key in the po unit to the prop unit"""
# this converts the po-style string to a prop-style string
value = inunit.target
# handle mixed keys
for labelsuffix in properties.labelsuffixes:
if key.endswith(labelsuffix):
if key in mixedkeys:
value, akey = accesskey.extract(value)
break
else:
for akeysuffix in properties.accesskeysuffixes:
if key.endswith(akeysuffix):
if key in mixedkeys:
label, value = accesskey.extract(value)
if not value:
warnings.warn("Could not find accesskey for %s" % key)
else:
original = propunit.source
# For the sake of diffs we keep the case of the
# accesskey the same if we know the translation didn't
# change. Casing matters in XUL.
if value == propunit.source and original.lower() == value.lower():
if original.isupper():
value = value.upper()
elif original.islower():
value = value.lower()
return value
示例2: applytranslation
def applytranslation(entity, dtdunit, inputunit, mixedentities):
"""applies the translation for entity in the po unit to the dtd unit"""
# this converts the po-style string to a dtd-style string
unquotedstr = inputunit.target
# check there aren't missing entities...
if len(unquotedstr.strip()) == 0:
return
# handle mixed entities
for labelsuffix in dtd.labelsuffixes:
if entity.endswith(labelsuffix):
if entity in mixedentities:
unquotedstr, akey = accesskey.extract(unquotedstr)
break
else:
for akeytype in dtd.accesskeysuffixes:
if entity.endswith(akeytype):
if entity in mixedentities:
label, unquotedstr = accesskey.extract(unquotedstr)
if not unquotedstr:
warnings.warn("Could not find accesskey for %s" % entity)
else:
original = dtd.unquotefromdtd(dtdunit.definition)
# For the sake of diffs we keep the case of the
# accesskey the same if we know the translation didn't
# change. Casing matters in XUL.
if unquotedstr == dtdunit.source and original.lower() == unquotedstr.lower():
if original.isupper():
unquotedstr = unquotedstr.upper()
elif original.islower():
unquotedstr = unquotedstr.lower()
if len(unquotedstr) > 0:
dtdunit.definition = dtd.quotefordtd(dtd.removeinvalidamps(entity, unquotedstr))
示例3: test_get_label_and_accesskey
def test_get_label_and_accesskey():
"""test that we can extract the label and accesskey components from an
accesskey+label string"""
assert accesskey.extract(u"") == (u"", u"")
assert accesskey.extract(u"File") == (u"File", u"")
assert accesskey.extract(u"&File") == (u"File", u"F")
assert accesskey.extract(u"~File", u"~") == (u"File", u"F")
assert accesskey.extract(u"_File", u"_") == (u"File", u"F")
示例4: test_unicode
def test_unicode():
"""test that we can do the same with unicode strings"""
assert accesskey.extract(u"Eḓiṱ") == (u"Eḓiṱ", u"")
assert accesskey.extract(u"E&ḓiṱ") == (u"Eḓiṱ", u"ḓ")
assert accesskey.extract(u"E_ḓiṱ", u"_") == (u"Eḓiṱ", u"ḓ")
label, akey = accesskey.extract(u"E&ḓiṱ")
assert label, akey == (u"Eḓiṱ", u"ḓ")
assert isinstance(label, unicode) and isinstance(akey, unicode)
示例5: test_end_of_string
def test_end_of_string():
"""test that we can handle an accesskey at the end of the string"""
assert accesskey.extract(u"Hlola&") == (u"Hlola&", u"")
示例6: test_empty_string
def test_empty_string():
"""test that we can handle and empty label+accesskey string"""
assert accesskey.extract(u"") == (u"", u"")
assert accesskey.extract(u"", u"~") == (u"", u"")
示例7: test_numeric
def test_numeric():
"""test combining and extracting numeric markers"""
assert accesskey.extract(u"&100%") == (u"100%", u"1")
assert accesskey.combine(u"100%", u"1") == u"&100%"
示例8: test_alternate_accesskey_marker
def test_alternate_accesskey_marker():
"""check that we can identify the accesskey if the marker is different"""
assert accesskey.extract(u"~File", u"~") == (u"File", u"F")
assert accesskey.extract(u"&File", u"~") == (u"&File", u"")
示例9: test_ignore_entities
def test_ignore_entities():
"""test that we don't get confused with entities and a & access key
marker"""
assert accesskey.extract(u"Set &browserName; as &Default") != (u"Set &browserName; as &Default", u"b")
assert accesskey.extract(u"Set &browserName; as &Default") == (u"Set &browserName; as Default", u"D")
示例10: test_extract_bad_accesskeys
def test_extract_bad_accesskeys():
"""Test what we do in situations that are bad fof accesskeys"""
# Space is not valid accesskey so we don't extract anything
assert accesskey.extract(u"More& Whitespace") == (u"More& Whitespace", u"")
示例11: test_accesskey_already_in_text
def test_accesskey_already_in_text():
"""test that we can combine if the accesskey is already in the text"""
assert accesskey.combine(u"Mail & Newsgroups", u"N") == u"Mail & &Newsgroups"
assert accesskey.extract(u"Mail & &Newsgroups") == (u"Mail & Newsgroups", u"N")