From 51f54f5444cf147c6682d80c2537feb14e20ac95 Mon Sep 17 00:00:00 2001 From: steffen123 Date: Wed, 22 Sep 2010 17:26:25 +0200 Subject: [PATCH] refactor translation method into new file --- pyfpdb/GuiBulkImport.py | 15 ++++----------- pyfpdb/L10n.py | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 11 deletions(-) create mode 100644 pyfpdb/L10n.py diff --git a/pyfpdb/GuiBulkImport.py b/pyfpdb/GuiBulkImport.py index cd374545..a836e043 100755 --- a/pyfpdb/GuiBulkImport.py +++ b/pyfpdb/GuiBulkImport.py @@ -15,6 +15,9 @@ #along with this program. If not, see . #In the "official" distribution you can find the license in agpl-3.0.txt. +import L10n +_ = L10n.get_translator() + # Standard Library modules import os import sys @@ -33,17 +36,7 @@ import fpdb_import import Configuration import Exceptions -import locale -lang=locale.getdefaultlocale()[0][0:2] -if lang=="en": - def _(string): return string -else: - import gettext - try: - trans = gettext.translation("fpdb", localedir="locale", languages=[lang]) - trans.install() - except IOError: - def _(string): return string + class GuiBulkImport(): diff --git a/pyfpdb/L10n.py b/pyfpdb/L10n.py new file mode 100644 index 00000000..e5558118 --- /dev/null +++ b/pyfpdb/L10n.py @@ -0,0 +1,37 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +#Copyright 2010 Steffen Schaumburg +#This program is free software: you can redistribute it and/or modify +#it under the terms of the GNU Affero General Public License as published by +#the Free Software Foundation, version 3 of the License. +# +#This program is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +#GNU General Public License for more details. +# +#You should have received a copy of the GNU Affero General Public License +#along with this program. If not, see . +#In the "official" distribution you can find the license in agpl-3.0.txt. + +import locale +def pass_through(to_translate): return to_translate + +lang=locale.getdefaultlocale()[0][0:2] +if lang=="en": + translator=pass_through +else: + import gettext + try: + trans = gettext.translation("fpdb", localedir="locale", languages=[lang]) + trans.install() + translator=_ + except IOError: + translator=pass_through + +#def translate(to_translate): +# return _(to_translate) + +def get_translator(): + return translator