[game-data-packager] 01/01: fix en_GB autodetection
Alexandre Detiste
detiste-guest at moszumanska.debian.org
Sun Nov 1 10:24:52 UTC 2015
This is an automated email from the git hooks/post-receive script.
detiste-guest pushed a commit to branch master
in repository game-data-packager.
commit 5550591a16170a784ea6ca7c6dbb90a7dc3528c3
Author: Alexandre Detiste <alexandre.detiste at gmail.com>
Date: Sun Nov 1 11:24:21 2015 +0100
fix en_GB autodetection
---
debian/changelog | 15 +++++++++++++++
game_data_packager/util.py | 36 ++++++++++++++++++++++++++----------
2 files changed, 41 insertions(+), 10 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 0e4c3ad..c011af6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,18 @@
+game-data-packager (44) UNRELEASED; urgency=medium
+
+ New game support:
+
+
+ Support for new languages and versions:
+
+
+ Other changes:
+
+ [ Alexandre Detiste ]
+ * fix en_GB auto-detection
+
+ -- Simon McVittie <smcv at debian.org> Sun, 01 Nov 2015 11:10:56 +0100
+
game-data-packager (43) unstable; urgency=medium
New game support:
diff --git a/game_data_packager/util.py b/game_data_packager/util.py
index 47a439b..7d39704 100644
--- a/game_data_packager/util.py
+++ b/game_data_packager/util.py
@@ -159,7 +159,10 @@ class PackageCache:
PACKAGE_CACHE = PackageCache()
-def prefered_lang():
+def prefered_langs():
+ if prefered_langs.langs is not None:
+ return prefered_langs.langs
+
lang_raw = []
if 'LANGUAGE' in os.environ:
lang_raw = os.getenv('LANGUAGE').split(':')
@@ -167,22 +170,35 @@ def prefered_lang():
lang_raw.append(os.getenv('LANG'))
lang_raw.append('en')
- lang_pref = []
+ prefered_langs.langs = []
for lang in lang_raw:
lang = lang.split('.')[0]
if not lang or lang == 'C':
continue
- if lang in ('en_GB', 'pt_BR'):
- lang_pref.append(lang)
- lang_pref.append(lang[0:2])
- return lang_pref
+ if lang in ('en_US', 'en_GB', 'pt_BR'):
+ prefered_langs.langs.append(lang)
+ lang = lang[0:2]
+ if lang not in prefered_langs.langs:
+ prefered_langs.langs.append(lang)
+
+ return prefered_langs.langs
+
+prefered_langs.langs = None
def lang_score(lang):
- langs = prefered_lang()
- if lang not in langs:
- return 0
+ langs = prefered_langs()
+
+ if lang in langs:
+ return len(langs) - langs.index(lang)
+
+ for l in langs:
+ if l == lang[0:2]:
+ score = len(langs) - langs.index(l)
+ if score > 1:
+ score -= 1
+ return score
- return len(langs) - langs.index(lang)
+ return 0
def ascii_safe(string, force=False):
if sys.stdout.encoding != 'UTF-8' or force:
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git
More information about the Pkg-games-commits
mailing list