]> git.pld-linux.org Git - packages/calibre.git/blobdiff - calibre-locales.patch
- rebuild with icu 58.2
[packages/calibre.git] / calibre-locales.patch
index 4476da566a5a5b21de020b316c2538878ac383dd..a35a01e764d415ca18211990a5fdf20ca2ce082a 100644 (file)
@@ -1,78 +1,53 @@
---- calibre/src/calibre/utils/localization.py~ 2012-01-13 05:32:13.000000000 +0100
-+++ calibre/src/calibre/utils/localization.py  2012-01-17 09:35:01.311333439 +0100
-@@ -49,20 +49,20 @@
-         lang = 'en'
-     return lang
+--- calibre/setup/translations.py.wiget        2013-12-06 05:13:34.000000000 +0100
++++ calibre/setup/translations.py      2013-12-09 09:28:32.349958101 +0100
+@@ -143,7 +143,7 @@ class Translations(POT):  # {{{
  
-+    def messages_path(lang):
-+        return ('/usr/share/locale/%s/LC_MESSAGES'%lang)
-+
- def get_lc_messages_path(lang):
-     hlang = None
--    if zf_exists():
--        if lang in available_translations():
--            hlang = lang
--        else:
--            xlang = lang.split('_')[0]
--            if xlang in available_translations():
--                hlang = xlang
--    return hlang
--
--def zf_exists():
--    return os.path.exists(P('localization/locales.zip',
--                allow_user_override=False))
-+    if lang in available_translations():
-+        hlang = lang
-+    else:
-+        xlang = lang.split('_')[0]
-+        if xlang in available_translations():
-+            hlang = xlang
-+        if hlang is not None:
-+            return messages_path(hlang)
-+        return None
+     def mo_file(self, po_file):
+         locale = os.path.splitext(os.path.basename(po_file))[0]
+-        return locale, os.path.join(self.DEST, locale, 'messages.mo')
++        return locale, os.path.join(self.DEST, locale, 'LC_MESSAGES', 'messages.mo')
  
- def set_translators():
-     # To test different translations invoke as
-@@ -84,18 +84,12 @@
-                 buf = cStringIO.StringIO(buf.getvalue())
+     def run(self, opts):
+         self.iso639_errors = []
+@@ -174,7 +175,6 @@ class Translations(POT):  # {{{
+     def run(self, opts):
+         self.compile_main_translations()
+         self.compile_content_server_translations()
+-        self.freeze_locales()
+         self.compile_user_manual_translations()
  
-         if mpath is not None:
--            from zipfile import ZipFile
--            with ZipFile(P('localization/locales.zip',
--                allow_user_override=False), 'r') as zf:
--                if buf is None:
--                    buf = cStringIO.StringIO(zf.read(mpath + '/messages.mo'))
--                if mpath == 'nds':
--                    mpath = 'de'
--                isof = mpath + '/iso639.mo'
--                try:
--                    iso639 = cStringIO.StringIO(zf.read(isof))
--                except:
--                    pass # No iso639 translations for this lang
-+            if buf is None:
-+                buf = open(os.path.join(mpath, 'calibre.mo'), 'rb')
-+            mpath = mpath.replace(os.sep+'nds'+os.sep, os.sep+'de'+os.sep)
-+            isof = os.path.join(mpath, 'calibre_iso639.mo')
-+            if os.path.exists(isof):
-+                iso639 = open(isof, 'rb')
+     def compile_group(self, files, handle_stats=None, file_ok=None, action_per_file=None):
+@@ -198,15 +198,6 @@ class Translations(POT):  # {{{
+                     # raise SystemExit(1)
+                 rmap[msgstr] = msgid
  
-         t = None
-         if buf is not None:
---- calibre/src/calibre/translations/dynamic.py.orig    2012-01-13 05:32:13.000000000 +0100
-+++ calibre/src/calibre/translations/dynamic.py 2012-01-17 09:37:53.594649557 +0100
-@@ -5,10 +5,10 @@
+-    def freeze_locales(self):
+-        zf = self.DEST + '.zip'
+-        from calibre import CurrentDir
+-        from calibre.utils.zipfile import ZipFile, ZIP_DEFLATED
+-        with ZipFile(zf, 'w', ZIP_DEFLATED) as zf:
+-            with CurrentDir(self.DEST):
+-                zf.add_dir('.')
+-        shutil.rmtree(self.DEST)
+-
+     @property
+     def stats(self):
+         return self.j(self.d(self.DEST), 'stats.pickle')
+--- calibre/src/calibre/translations/dynamic.py.wiget  2013-12-06 05:13:34.000000000 +0100
++++ calibre/src/calibre/translations/dynamic.py        2013-12-09 09:28:32.349958101 +0100
+@@ -5,10 +5,10 @@ Dynamic language lookup of translations
  __license__   = 'GPL v3'
  __copyright__ = '2008, Marshall T. Vandegrift <llasram@gmail.com>'
-
 +import os
  import cStringIO
  from gettext import GNUTranslations
  from calibre.utils.localization import get_lc_messages_path
 -from zipfile import ZipFile
-
  __all__ = ['translate']
-
-@@ -21,15 +21,10 @@
+@@ -21,15 +21,10 @@ def translate(lang, text):
      else:
          mpath = get_lc_messages_path(lang)
          if mpath is not None:
 -                else:
 -                    trans = GNUTranslations(buf)
 -                    _CACHE[lang] = trans
-+           p = os.path.join(mpath, 'messages.mo')
++           p = os.path.join(mpath, 'calibre.mo')
 +           if os.path.exists(p):
 +               trans = GNUTranslations(open(p, 'rb'))
 +               _CACHE[lang] = trans
      if trans is None:
          return getattr(__builtins__, '_', lambda x: x)(text)
      return trans.ugettext(text)
---- calibre/setup/translations.py.orig 2011-08-26 18:36:51.000000000 +0200
-+++ calibre/setup/translations.py      2011-08-27 12:55:49.997229244 +0200
-@@ -131,7 +131,7 @@
+--- calibre/src/calibre/utils/localization.py.wiget    2013-12-06 05:13:34.000000000 +0100
++++ calibre/src/calibre/utils/localization.py  2013-12-09 09:31:05.694326467 +0100
+@@ -74,21 +74,20 @@ def get_lang():
+     return get_lang()[:2].lower() in {'he', 'ar'}
  
-     def mo_file(self, po_file):
-         locale = os.path.splitext(os.path.basename(po_file))[0]
--        return locale, os.path.join(self.DEST, locale, 'messages.mo')
-+        return locale, os.path.join(self.DEST, locale, 'LC_MESSAGES', 'messages.mo')
  
-     def run(self, opts):
-         for f in self.po_files():
-@@ -139,8 +139,9 @@
-             base = os.path.dirname(dest)
-             if not os.path.exists(base):
-                 os.makedirs(base)
--            self.info('\tCompiling translations for', locale)
--            subprocess.check_call(['msgfmt', '-o', dest, f])
-+            if self.newer(dest, f):
-+                self.info('\tCompiling translations for', locale)
-+                subprocess.check_call(['msgfmt', '-o', dest, f])
-             iscpo = {'bn':'bn_IN', 'zh_HK':'zh_CN'}.get(locale, locale)
-             iso639 = self.j(self.d(self.SRC), 'setup', 'iso_639',
-                     '%s.po'%iscpo)
-@@ -155,16 +156,6 @@
-                 self.warn('No ISO 639 translations for locale:', locale)
-         self.write_stats()
--        self.freeze_locales()
++def messages_path(lang):
++    return ('/usr/share/locale/%s/LC_MESSAGES'%lang)
++
+ def get_lc_messages_path(lang):
+     hlang = None
+-    if zf_exists():
+-        if lang in available_translations():
+-            hlang = lang
+-        else:
+-            xlang = lang.split('_')[0].lower()
+-            if xlang in available_translations():
+-                hlang = xlang
+-    return hlang
 -
--    def freeze_locales(self):
--        zf = self.DEST + '.zip'
--        from calibre import CurrentDir
--        from calibre.utils.zipfile import ZipFile, ZIP_DEFLATED
--        with ZipFile(zf, 'w', ZIP_DEFLATED) as zf:
--            with CurrentDir(self.DEST):
--                zf.add_dir('.')
--        shutil.rmtree(self.DEST)
+-
+-def zf_exists():
+-    return os.path.exists(P('localization/locales.zip',
+-                allow_user_override=False))
++    if lang in available_translations():
++        hlang = lang
++    else:
++        xlang = lang.split('_')[0]
++        if xlang in available_translations():
++            hlang = xlang
++    if hlang is not None:
++        return messages_path(hlang)
++    return None
+ _lang_trans = None
+@@ -99,13 +99,14 @@
+ _lang_trans = None
+ def get_all_translators():
+-    from zipfile import ZipFile
+-    with ZipFile(P('localization/locales.zip', allow_user_override=False), 'r') as zf:
+-        for lang in available_translations():
+-            mpath = get_lc_messages_path(lang)
+-            if mpath is not None:
+-                buf = cStringIO.StringIO(zf.read(mpath + '/messages.mo'))
+-                yield lang, GNUTranslations(buf)
++    for lang in available_translations():
++        mpath = get_lc_messages_path(lang)
++        if mpath is not None:
++            try:
++                buf = open(os.path.join(mpath, 'calibre.mo'), 'rb')
++                yield lang, GNUTranslations(buf)
++            except:
++                pass
+ lcdata = {
+     u'abday': (u'Sun', u'Mon', u'Tue', u'Wed', u'Thu', u'Fri', u'Sat'),
+@@ -145,21 +145,20 @@
+                 buf = cStringIO.StringIO(buf.getvalue())
+         if mpath is not None:
+-            from zipfile import ZipFile
+-            with ZipFile(P('localization/locales.zip',
+-                allow_user_override=False), 'r') as zf:
+-                if buf is None:
+-                    buf = cStringIO.StringIO(zf.read(mpath + '/messages.mo'))
++            if buf is None:
++                try:
++                    buf = open(os.path.join(mpath, 'calibre.mo'), 'rb')
++                except:
++                    pass  # No translations for this lang
+                 if mpath == 'nds':
+                     mpath = 'de'
+-                isof = mpath + '/iso639.mo'
+                 try:
+-                    iso639 = cStringIO.StringIO(zf.read(isof))
++                    iso639 = open(os.path.join(mpath, 'calibre_iso639.mo'), 'rb')
+                 except:
+                     pass  # No iso639 translations for this lang
+                 if buf is not None:
+                     try:
+-                        lcdata = cPickle.loads(zf.read(mpath + '/lcdata.pickle'))
++                        lcdata = cPickle.loads(open(os.path.join(mpath, 'calibre_lcdata.pickle')))
+                     except:
+                         pass  # No lcdata
  
-     @property
-     def stats(self):
This page took 0.128851 seconds and 4 git commands to generate.