diff --git a/setup/install.py b/setup/install.py index 3d82cb3183..540de730e6 100644 --- a/setup/install.py +++ b/setup/install.py @@ -6,7 +6,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import sys, os, textwrap +import sys, os, textwrap, subprocess from setup import Command, islinux, basenames, modules, functions @@ -33,7 +33,7 @@ class Develop(Command): description = 'Setup a development environment' MODE = 0755 - sub_commands = ['build'] + sub_commands = ['build', 'translations'] def add_options(self, parser): parser.set_usage(textwrap.dedent('''\ @@ -64,8 +64,12 @@ class Develop(Command): self.regain_privileges() self.find_locations(opts) self.write_templates(opts) + self.run_postinstall() self.success() + def run_postinstall(self): + subprocess.check_call(['calibre_postinstall']) + def success(self): self.info('\nDevelopment environment successfully setup') diff --git a/setup/translations.py b/setup/translations.py index eb70a5812b..5ba84c4a5e 100644 --- a/setup/translations.py +++ b/setup/translations.py @@ -76,7 +76,8 @@ class Translations(POT): self.info('\tCopying ISO 639 translations') shutil.copy2(iso639, dest) else: - self.warn('No ISO 639 translations for locale:', locale) + self.warn('No ISO 639 translations for locale:', locale, + '\nDo you have pycountry installed?') base = os.path.join(pyqt.qt_data_dir, 'translations') qt_translations = glob.glob(os.path.join(base, 'qt_*.qm')) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index a9f8e3d9f1..bda0a7ffb8 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -532,6 +532,7 @@ class ResizableDialog(QDialog): gui_thread = None + class Application(QApplication): def __init__(self, args): @@ -539,10 +540,9 @@ class Application(QApplication): QApplication.__init__(self, qargs) global gui_thread gui_thread = QThread.currentThread() - self.translator = QTranslator(self) - if set_qt_translator(self.translator): - print 1111111 - self.installTranslator(self.translator) + self._translator = QTranslator(self) + if set_qt_translator(self._translator): + self.installTranslator(self._translator) def is_ok_to_use_qt(): global gui_thread diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 5667a3ca9b..d023851f15 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -1821,12 +1821,12 @@ def init_qt(args): opts, args = parser.parse_args(args) if opts.with_library is not None and os.path.isdir(opts.with_library): prefs.set('library_path', os.path.abspath(opts.with_library)) - print 'Using library at', prefs['library_path'] + prints('Using library at', prefs['library_path']) + QCoreApplication.setOrganizationName(ORG_NAME) + QCoreApplication.setApplicationName(APP_UID) app = Application(args) actions = tuple(Main.create_application_menubar()) app.setWindowIcon(QIcon(':/library')) - QCoreApplication.setOrganizationName(ORG_NAME) - QCoreApplication.setApplicationName(APP_UID) return app, opts, args, actions def run_gui(opts, args, actions, listener, app): diff --git a/src/calibre/utils/localization.py b/src/calibre/utils/localization.py index e307af332f..cd3b1c75ef 100644 --- a/src/calibre/utils/localization.py +++ b/src/calibre/utils/localization.py @@ -115,6 +115,6 @@ def set_qt_translator(translator): for x in (lang, lang.split('_')[0]): p = os.path.join(messages_path(x), 'qt.qm') if os.path.exists(p): - return translator.loadFromData(open(p, 'rb').read()) + return translator.load(p) return False