view mercurial/i18n.py @ 7650:85ae7aaf08e9

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.
author Martin Geisler <mg@daimi.au.dk>
date Thu, 15 Jan 2009 00:12:35 +0100
parents 660504812daf
children 5b5036ef847a
line wrap: on
line source

"""
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