# HG changeset patch # User Martin Geisler # Date 2009-01-14 23:12:35 # Node ID 85ae7aaf08e9de213f3cbfb63cdde999ddc43bca # Parent a489e3a94443d63d29528764443dead205d98ef3 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. diff --git a/mercurial/i18n.py b/mercurial/i18n.py --- a/mercurial/i18n.py +++ b/mercurial/i18n.py @@ -7,7 +7,20 @@ This software may be used and distribute of the GNU General Public License, incorporated herein by reference. """ -import gettext -t = gettext.translation('hg', fallback=1) +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