diff --git a/pyfpdb/Anonymise.py b/pyfpdb/Anonymise.py index a4d72339..3281fa3f 100755 --- a/pyfpdb/Anonymise.py +++ b/pyfpdb/Anonymise.py @@ -23,9 +23,17 @@ import HandHistoryConverter import Configuration import sys -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 (options, argv) = Options.fpdb_options() config = Configuration.Config() diff --git a/pyfpdb/BetfairToFpdb.py b/pyfpdb/BetfairToFpdb.py index 34316de2..07ee2612 100755 --- a/pyfpdb/BetfairToFpdb.py +++ b/pyfpdb/BetfairToFpdb.py @@ -22,9 +22,17 @@ import sys import logging from HandHistoryConverter import * -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 # Betfair HH format diff --git a/pyfpdb/Card.py b/pyfpdb/Card.py index 81edfb9c..576a7b38 100755 --- a/pyfpdb/Card.py +++ b/pyfpdb/Card.py @@ -15,9 +15,17 @@ #along with this program. If not, see . #In the "official" distribution you can find the license in agpl-3.0.txt. -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 # From fpdb_simple card_map = { "0": 0, "2": 2, "3" : 3, "4" : 4, "5" : 5, "6" : 6, "7" : 7, "8" : 8, diff --git a/pyfpdb/Configuration.py b/pyfpdb/Configuration.py index 38b4544d..53ccaa56 100755 --- a/pyfpdb/Configuration.py +++ b/pyfpdb/Configuration.py @@ -36,6 +36,18 @@ import re import xml.dom.minidom from xml.dom.minidom import Node +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 + import logging, logging.config import ConfigParser diff --git a/pyfpdb/GuiBulkImport.py b/pyfpdb/GuiBulkImport.py index a40f8929..9b88a12f 100755 --- a/pyfpdb/GuiBulkImport.py +++ b/pyfpdb/GuiBulkImport.py @@ -33,9 +33,17 @@ import fpdb_import import Configuration import Exceptions -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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/GuiDatabase.py b/pyfpdb/GuiDatabase.py index 2529643b..0f7cdab1 100755 --- a/pyfpdb/GuiDatabase.py +++ b/pyfpdb/GuiDatabase.py @@ -35,9 +35,17 @@ import Exceptions import Database import SQL -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 GuiDatabase: diff --git a/pyfpdb/GuiLogView.py b/pyfpdb/GuiLogView.py index af8c3d34..f42db9e2 100755 --- a/pyfpdb/GuiLogView.py +++ b/pyfpdb/GuiLogView.py @@ -30,9 +30,17 @@ import logging # logging has been set up in fpdb.py or HUD_main.py, use their settings: log = logging.getLogger("logview") -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 MAX_LINES = 100000 # max lines to display in window EST_CHARS_PER_LINE = 150 # used to guesstimate number of lines in log file diff --git a/pyfpdb/HUD_main.pyw b/pyfpdb/HUD_main.pyw index cc90a641..590f9291 100755 --- a/pyfpdb/HUD_main.pyw +++ b/pyfpdb/HUD_main.pyw @@ -60,9 +60,18 @@ elif os.name == 'nt': #import Tables import Hud -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +import locale +lang=locale.getdefaultlocale()[0][0:2] +print "lang:", lang +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 # get config and set up logger c = Configuration.Config(file=options.config, dbname=options.dbname) diff --git a/pyfpdb/HandHistoryConverter.py b/pyfpdb/HandHistoryConverter.py index 8265dbfd..eb1d7de8 100644 --- a/pyfpdb/HandHistoryConverter.py +++ b/pyfpdb/HandHistoryConverter.py @@ -41,9 +41,17 @@ import Hand from Exceptions import FpdbParseError import Configuration -#import gettext -#trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -#trans.install() +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 import pygtk import gtk diff --git a/pyfpdb/ImapFetcher.py b/pyfpdb/ImapFetcher.py index ee267cf9..006f9894 100755 --- a/pyfpdb/ImapFetcher.py +++ b/pyfpdb/ImapFetcher.py @@ -22,9 +22,17 @@ from imaplib import IMAP4, IMAP4_SSL import PokerStarsSummary -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 def splitPokerStarsSummaries(emailText): splitSummaries=emailText.split("\nPokerStars Tournament #")[1:] diff --git a/pyfpdb/Options.py b/pyfpdb/Options.py index 23656ff2..11ef9d43 100644 --- a/pyfpdb/Options.py +++ b/pyfpdb/Options.py @@ -19,9 +19,17 @@ import sys from optparse import OptionParser # http://docs.python.org/library/optparse.html -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 def fpdb_options(): diff --git a/pyfpdb/Tables.py b/pyfpdb/Tables.py index c33b1828..3ffc7d1a 100755 --- a/pyfpdb/Tables.py +++ b/pyfpdb/Tables.py @@ -29,8 +29,19 @@ import os import sys import re -# Win32 modules +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 +# Win32 modules if os.name == 'nt': import win32gui import win32process @@ -220,7 +231,7 @@ def discover_nt(c): tw.site = "Full Tilt" else: tw.site = "Unknown" - sys.stderr.write("Found unknown table = %s" % tw.title) + sys.stderr.write(_("Found unknown table = %s") % tw.title) if tw.site != "Unknown": eval("%s(tw)" % c.supported_sites[tw.site].decoder) else: @@ -247,7 +258,7 @@ def discover_nt_by_name(c, tablename): if 'Chat:' in titles[hwnd]: continue # Some sites (FTP? PS? Others?) have seperable or seperately constructed chat windows if ' - Table ' in titles[hwnd]: continue # Absolute table Chat window.. sigh. TODO: Can we tell what site we're trying to discover for somehow in here, so i can limit this check just to AP searches? temp = decode_windows(c, titles[hwnd], hwnd) - print "attach to window", temp + print _("attach to window"), temp return temp return None @@ -434,5 +445,5 @@ if __name__=="__main__": for t in tables.keys(): print tables[t] - print "press enter to continue" + print _("press enter to continue") sys.stdin.readline() diff --git a/pyfpdb/Tables_Demo.py b/pyfpdb/Tables_Demo.py index 33a586aa..f583ae48 100755 --- a/pyfpdb/Tables_Demo.py +++ b/pyfpdb/Tables_Demo.py @@ -36,9 +36,17 @@ import gobject import Configuration from HandHistoryConverter import getTableTitleRe -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 # get the correct module for the current os if os.name == 'posix': diff --git a/pyfpdb/TourneyFilters.py b/pyfpdb/TourneyFilters.py index 774c64c7..92b86ef3 100644 --- a/pyfpdb/TourneyFilters.py +++ b/pyfpdb/TourneyFilters.py @@ -45,9 +45,9 @@ class TourneyFilters(Filters.Filters): self.conf = db.config self.display = display - self.filterText = {'playerstitle':'Hero:', 'sitestitle':'Sites:', 'seatstitle':'Number of Players:', - 'seatsbetween':'Between:', 'seatsand':'And:', 'datestitle':'Date:', - 'tourneyTypesTitle':'Tourney Type'} + self.filterText = {'playerstitle':_('Hero:'), 'sitestitle':_('Sites:'), 'seatstitle':_('Number of Players:'), + 'seatsbetween':_('Between:'), 'seatsand':_('And:'), 'datestitle':_('Date:'), + 'tourneyTypesTitle':_('Tourney Type')} gen = self.conf.get_general_params() self.day_start = 0 @@ -102,7 +102,7 @@ class TourneyFilters(Filters.Filters): if len(result) == 1: self.siteid[site] = result[0][0] else: - print "Either 0 or more than one site matched (%s) - EEK" % site + print _("Either 0 or more than one site matched (%s) - EEK") % site # For use in date ranges. self.start_date = gtk.Entry(max=12) diff --git a/pyfpdb/fpdb.pyw b/pyfpdb/fpdb.pyw index 4860dee1..f0d73b8f 100755 --- a/pyfpdb/fpdb.pyw +++ b/pyfpdb/fpdb.pyw @@ -20,9 +20,17 @@ import sys import re import Queue -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 # if path is set to use an old version of python look for a new one: # (does this work in linux?) diff --git a/pyfpdb/locale/de_DE/LC_MESSAGES/fpdb.mo b/pyfpdb/locale/de/LC_MESSAGES/fpdb.mo similarity index 100% rename from pyfpdb/locale/de_DE/LC_MESSAGES/fpdb.mo rename to pyfpdb/locale/de/LC_MESSAGES/fpdb.mo diff --git a/pyfpdb/windows_make_bats.py b/pyfpdb/windows_make_bats.py index 976040c1..39449fc7 100755 --- a/pyfpdb/windows_make_bats.py +++ b/pyfpdb/windows_make_bats.py @@ -17,9 +17,17 @@ # create .bat scripts in windows to try out different gtk dirs -import gettext -trans = gettext.translation("fpdb", localedir="locale", languages=["de_DE"]) -trans.install() +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 try: