1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-05 00:02:29 -04:00
PySolFC/pysollib/mygettext.py
2018-09-01 18:40:50 +03:00

51 lines
1.4 KiB
Python

import gettext
import sys
import six
def n_(x):
return x
def fix_gettext():
def ugettext(message):
# unicoded gettext
if not isinstance(message, six.text_type):
message = six.text_type(message, 'utf-8')
domain = gettext._current_domain
try:
t = gettext.translation(domain,
gettext._localedirs.get(domain, None))
except IOError:
return message
if sys.version_info >= (3, 0):
return t.gettext(message)
else:
return t.ugettext(message)
gettext.ugettext = ugettext
def ungettext(msgid1, msgid2, n):
# unicoded ngettext
if not isinstance(msgid1, six.text_type):
msgid1 = six.text_type(msgid1, 'utf-8')
if not isinstance(msgid2, six.text_type):
msgid2 = six.text_type(msgid2, 'utf-8')
domain = gettext._current_domain
try:
t = gettext.translation(domain,
gettext._localedirs.get(domain, None))
except IOError:
if n == 1:
return msgid1
else:
return msgid2
if sys.version_info >= (3, 0):
return t.ngettext(msgid1, msgid2, n)
else:
return t.ungettext(msgid1, msgid2, n)
gettext.ungettext = ungettext
fix_gettext()
_ = gettext.ugettext