mercurial/i18n.py
author Martin Geisler <mg@daimi.au.dk>
Thu, 15 Jan 2009 00:12:35 +0100
changeset 7650 85ae7aaf08e9
parent 3888 660504812daf
child 7651 5b5036ef847a
permissions -rw-r--r--
i18n: lookup .mo files in private locale/ directory This default is to look for /usr/share/locale/xx/LC_MESSAGES/hg.mo for language xx, but this code will instead do the lookup from locale/ or mercurial/locale/ relative to the root of the Mercurial source tree.

"""
i18n.py - internationalization support for mercurial

Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>

This software may be used and distributed according to the terms
of the GNU General Public License, incorporated herein by reference.
"""

import gettext, sys, os

# modelled after templater.templatepath:
if hasattr(sys, 'frozen'):
    module = sys.executable
else:
    module = __file__

base = os.path.dirname(module)
for dir in ('.', '..'):
    localedir = os.path.normpath(os.path.join(base, dir, 'locale'))
    if os.path.isdir(localedir):
        break

t = gettext.translation('hg', localedir, fallback=True)
gettext = t.gettext
_ = gettext