From 3bf1fbf1295f2fbd53584149b5cba65370bc8b33 Mon Sep 17 00:00:00 2001 From: Juraj Oravec Date: Tue, 25 Jun 2019 21:35:04 +0200 Subject: [PATCH] Add locale files Signed-off-by: Juraj Oravec --- Messages.sh | 11 +++++++++++ toolbartools/i18n.py | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 Messages.sh create mode 100644 toolbartools/i18n.py diff --git a/Messages.sh b/Messages.sh new file mode 100644 index 0000000..46328b4 --- /dev/null +++ b/Messages.sh @@ -0,0 +1,11 @@ +#! /bin/sh + +XGETTEXT_FLAGS_PYTHON="\ +--copyright-holder=This_file_is_part_of_KDE \ +--msgid-bugs-address=http://bugs.kde.org \ +--from-code=UTF-8 \ +-L Python \ +-ki18n:1 -ki18np:1,2 \ +" + +$XGETTEXT_PROGRAM $XGETTEXT_FLAGS_PYTHON `find ./toolbartools -name '*.py'` -o $podir/toolbartools.pot diff --git a/toolbartools/i18n.py b/toolbartools/i18n.py new file mode 100644 index 0000000..3db8440 --- /dev/null +++ b/toolbartools/i18n.py @@ -0,0 +1,40 @@ +# ============================================================ +# Falkon - Qt web browser +# Copyright (C) 2018 David Rosca +# Copyright (C) 2019 Juraj Oravec +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# 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 General Public License +# along with this program. If not, see . +# ============================================================ +import gettext +import os +from PySide2 import QtCore + +locale = QtCore.QLocale.system() +languages = [ + locale.name(), + locale.bcp47Name() +] +i = locale.name().find('_') +if i > 0: + languages.append(locale.name()[:i]) + +localedir = QtCore.QStandardPaths.locate( + QtCore.QStandardPaths.GenericDataLocation, + os.path.join(os.path.dirname(__file__), "locale"), + QtCore.QStandardPaths.LocateDirectory +) + +t = gettext.translation(__package__, localedir, languages, fallback=True) +i18n = t.gettext +i18np = t.ngettext