From e12df01212ea60aac11fd4e3754dfb0cbc0fb486 Mon Sep 17 00:00:00 2001 From: Frank Brehm Date: Fri, 26 Nov 2021 12:37:23 +0100 Subject: [PATCH] Starting with translations --- .gitignore | 1 + compile-xlate-msgs.sh | 18 ++ lib/pp_admintools/xlate.py | 2 +- locale/de_DE/LC_MESSAGES/pp_admintools.po | 278 ++++++++++++++++++++++ locale/en_US/LC_MESSAGES/pp_admintools.po | 274 +++++++++++++++++++++ locale/pp_admintools.pot | 273 +++++++++++++++++++++ xtract-xlate-msgs.sh | 53 +++++ 7 files changed, 898 insertions(+), 1 deletion(-) create mode 100755 compile-xlate-msgs.sh create mode 100644 locale/de_DE/LC_MESSAGES/pp_admintools.po create mode 100644 locale/en_US/LC_MESSAGES/pp_admintools.po create mode 100644 locale/pp_admintools.pot create mode 100755 xtract-xlate-msgs.sh diff --git a/.gitignore b/.gitignore index c643eaa..1862afa 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ MANIFEST .idea *.whl *.retry +*.mo tmp/* .bundle/ vendor/ diff --git a/compile-xlate-msgs.sh b/compile-xlate-msgs.sh new file mode 100755 index 0000000..a26dfa0 --- /dev/null +++ b/compile-xlate-msgs.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +set -e +set -u + +base_dir=$( dirname "$0" ) +cd "${base_dir}" ||exit 99 + +locale_dir="locale" +locale_domain="pp_admintools" +# pot_file="${locale_dir}/${locale_domain}.pot" +# po_with="99" +# my_address="${DEBEMAIL:-frank@brehm-online.com}" + +pybabel compile --domain "${locale_domain}" \ + --directory "${locale_dir}" \ + --statistics + diff --git a/lib/pp_admintools/xlate.py b/lib/pp_admintools/xlate.py index 770ff82..07e0805 100644 --- a/lib/pp_admintools/xlate.py +++ b/lib/pp_admintools/xlate.py @@ -27,7 +27,7 @@ import babel import babel.lists from babel.support import Translations -DOMAIN = 'fb_pdnstools' +DOMAIN = 'pp_admintools' LOG = logging.getLogger(__name__) diff --git a/locale/de_DE/LC_MESSAGES/pp_admintools.po b/locale/de_DE/LC_MESSAGES/pp_admintools.po new file mode 100644 index 0000000..c08e6ff --- /dev/null +++ b/locale/de_DE/LC_MESSAGES/pp_admintools.po @@ -0,0 +1,278 @@ +# German (Germany) translations for pp_admintools. +# Copyright (C) 2021 Frank Brehm, Digitas Pixelpark Berlin +# This file is distributed under the same license as the pp_admintools project. +# Frank Brehm , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: pp_admintools 0.8.0\n" +"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n" +"POT-Creation-Date: 2021-11-26 11:54+0100\n" +"PO-Revision-Date: 2021-11-26 12:00+0100\n" +"Last-Translator: FULL NAME \n" +"Language: de_DE\n" +"Language-Team: de_DE \n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.8.0\n" + +#: lib/pp_admintools/cfg_app.py:143 lib/pp_admintools/cfg_app.py:149 +msgid "Invalid configuration stem {!r} given." +msgstr "Ungültiger Konfigurations-Stammname {!r} angegeben." + +#: lib/pp_admintools/cfg_app.py:190 +msgid "{c} on setting encoding {v!r}: {e}" +msgstr "{c} beim Setzen der Kodierung {v!r}: {e}" + +#: lib/pp_admintools/cfg_app.py:244 +msgid "Mailing options" +msgstr "E-Mail-Optionen" + +#: lib/pp_admintools/cfg_app.py:248 lib/pp_admintools/cfg_app.py:254 lib/pp_admintools/cfg_app.py:260 +msgid "ADDRESS" +msgstr "ADRESSE" + +#: lib/pp_admintools/cfg_app.py:249 +msgid "Mail addresses of all recipients for mails generated by this script." +msgstr "Mailadressen aller Empfänger von Mails, die von diesem Skript generiert werden." + +#: lib/pp_admintools/cfg_app.py:255 +msgid "Mail addresses of all CC recipients for mails generated by this script." +msgstr "Mailadressen aller CC-Empfänger von Mails, die von diesem Skript generiert werden." + +#: lib/pp_admintools/cfg_app.py:261 +msgid "Reply mail address for mails generated by this script." +msgstr "Antwort-Mailadresse von Mails, die von diesem Skript generiert werden." + +#: lib/pp_admintools/cfg_app.py:266 +msgid "METHOD" +msgstr "METHODE" + +#: lib/pp_admintools/cfg_app.py:267 +msgid "Method for sending the mails generated by this script. Valid values: {v}, default: {d!r}." +msgstr "Methode zum Senden von Mails, die von diesem Skript generiert werden. Gültige Werte: {v}, Vorgabe: {d!r}." + +#: lib/pp_admintools/cfg_app.py:276 +msgid "SERVER" +msgstr "SERVER" + +#: lib/pp_admintools/cfg_app.py:277 +msgid "" +"Mail server for submitting generated by this script if the mail method of this script is 'smtp'." +" Default: {!r}." +msgstr "" +"Der Mailserver zur Übermittlung der von diesem Skript generierten Mails, wenn die Mail-Methode " +"'smtp' ist. Vorgabe: {!r}." + +#: lib/pp_admintools/cfg_app.py:285 +msgid "PORT" +msgstr "PORT" + +#: lib/pp_admintools/cfg_app.py:286 +msgid "" +"The port to use for submitting generated by this script if the mail method of this script is " +"'smtp'. Default: {}." +msgstr "" +"Der zu verwendende Port zur Übermittlung der von diesem Skript generierten Mails, wenn die " +"Mail-Methode 'smtp' ist. Vorgabe: {}." + +#: lib/pp_admintools/cfg_app.py:291 +msgid "Config file options" +msgstr "Konfigurationsdatei-Optionen" + +#: lib/pp_admintools/cfg_app.py:295 lib/pp_admintools/cfg_app.py:303 +msgid "FILE" +msgstr "DATEI" + +#: lib/pp_admintools/cfg_app.py:296 +msgid "Configuration files to use additional to the standard configuration files." +msgstr "Zusätzlich zu den Standard-Konfigurationsdateien zu verwendende Konfigurationsdateien." + +#: lib/pp_admintools/cfg_app.py:304 +msgid "Configuration file for logging in JSON format. See {!r} how the structures has to be defined." +msgstr "Konfigurationsdatei zum Loggen im JSON format. Siehe {!r}, wie die Struktur definiert werden muss." + +#: lib/pp_admintools/cfg_app.py:311 +msgid "ENCODING" +msgstr "KODIERUNG" + +#: lib/pp_admintools/cfg_app.py:312 +#, python-format +msgid "The encoding character set of the configuration files (default: %(default)r)." +msgstr "Der Kodierungs-Zeichensatz der Konfigurationsdateien (Vorgabe: %(default)r)." + +#: lib/pp_admintools/cfg_app.py:345 lib/pp_admintools/cfg_app.py:391 lib/pp_admintools/cfg_app.py:425 +#: lib/pp_admintools/cfg_app.py:500 +msgid "Searching for {!r} ..." +msgstr "Suche nach {!r} …" + +#: lib/pp_admintools/cfg_app.py:411 +msgid "Log config files:" +msgstr "Log-Konfigurationsdateien:" + +#: lib/pp_admintools/cfg_app.py:432 +msgid "No read access to {!r}." +msgstr "Kein Lesezugriff auf {!r}." + +#: lib/pp_admintools/cfg_app.py:438 +msgid "Reading and evaluating {!r} ..." +msgstr "Lese und evaluiere {!r} …" + +#: lib/pp_admintools/cfg_app.py:454 +msgid "Evaluated configuration from JSON:" +msgstr "Evaluierte Konfiguration aus JSON:" + +#: lib/pp_admintools/cfg_app.py:458 +msgid "Wrong file {!r} - " +msgstr "Falsche Datei {!r} - " + +#: lib/pp_admintools/cfg_app.py:503 +msgid "Config file {!r} not found." +msgstr "Die Konfigurationsdatei {!r} wurde nicht gefunden." + +#: lib/pp_admintools/cfg_app.py:506 +msgid "Reading {!r} ..." +msgstr "Lese {!r} …" + +#: lib/pp_admintools/cfg_app.py:517 +msgid "Wrong configuration in {!r} found: " +msgstr "Falsche Konfiguration in {!r} gefunden: " + +#: lib/pp_admintools/cfg_app.py:519 +msgid "Configuration error" +msgstr "Konfigurationsfehler" + +#: lib/pp_admintools/cfg_app.py:530 +msgid "Evaluated config from {!r}:" +msgstr "Evaluierte Konfiguration aus {!r}:" + +#: lib/pp_admintools/cfg_app.py:534 +msgid "Evaluated config total:" +msgstr "Evaluierte Gesamtkonfiguration:" + +#: lib/pp_admintools/cfg_app.py:557 +msgid "There are errors in configuration." +msgstr "Es gibt Fehler in der Konfiguration." + +#: lib/pp_admintools/cfg_app.py:560 +msgid "There are no errors in configuration." +msgstr "In der Konfiguration gibt es keine Fehler." + +#: lib/pp_admintools/cfg_app.py:568 lib/pp_admintools/cfg_app.py:591 +msgid "Evaluating config section {!r}:" +msgstr "Evaluiere Konfigurations-Abschnitt {!r}:" + +#: lib/pp_admintools/cfg_app.py:615 +msgid "Found invalid recipient mail address {!r} in configuration." +msgstr "Ungültige Empfänger-Mailadresse {!r} in der Konfiguration gefunden." + +#: lib/pp_admintools/cfg_app.py:631 +msgid "CC addresses:" +msgstr "CC-Adressen:" + +#: lib/pp_admintools/cfg_app.py:637 +msgid "Found invalid cc mail address {!r} in configuration." +msgstr "Ungültige CC-Mailadresse {!r} in der Konfiguration gefunden." + +#: lib/pp_admintools/cfg_app.py:655 +msgid "Found invalid reply mail address {!r} in configuration." +msgstr "Ungültige Antwort-Mailadresse {!r} in der Konfiguration gefunden." + +#: lib/pp_admintools/cfg_app.py:670 +msgid "Found invalid mail method {!r} in configuration." +msgstr "Ungültige Mail-Methode {!r} in der Konfiguration gefunden." + +#: lib/pp_admintools/cfg_app.py:695 lib/pp_admintools/cfg_app.py:699 +msgid "Found invalid SMTP port number {!r} in configuration." +msgstr "Ungültige SMTP-Port-Nummer {!r} in der Konfiguration gefunden." + +#: lib/pp_admintools/cfg_app.py:722 +msgid "Got invalid SMTP port number {!r}." +msgstr "Ungültige SMTP-Port-Nummer {!r} erhalten." + +#: lib/pp_admintools/cfg_app.py:740 +msgid "Got invalid recipient mail address {!r}." +msgstr "Ungültige Empfänger-Mailadresse {!r} erhalten." + +#: lib/pp_admintools/cfg_app.py:761 +msgid "Got invalid CC mail address {!r}." +msgstr "Ungültige CC-Mailadresse {!r} erhalten." + +#: lib/pp_admintools/cfg_app.py:776 +msgid "Got invalid reply mail address {!r}." +msgstr "Ungültige CC-Mailadresse {!r} erhalten." + +#: lib/pp_admintools/cfg_app.py:807 +msgid "Mail to send:" +msgstr "Die zu sendende Mail:" + +#: lib/pp_admintools/cfg_app.py:840 +msgid "Did not found sendmail executable." +msgstr "Kein ausführbares Programm 'sendmail' gefunden." + +#: lib/pp_admintools/cfg_app.py:846 +msgid "Executing: {}" +msgstr "Führe aus: {}" + +#: lib/pp_admintools/cfg_app.py:872 +msgid "Checking, whether {!r} is a local zone." +msgstr "Überprüfe, ob {!r} eine lokale Zune ist." + +#: lib/pp_admintools/cfg_app.py:876 +msgid "Zone {zone!r} has the local TLD {tld!r}." +msgstr "Die Zone {zone!r} hat eine lokale TLD {tld!r}." + +#: lib/pp_admintools/cfg_app.py:882 +msgid "Zone {zone!r} has the local base name {n!r}." +msgstr "Die Zone {zone!r} hat einen lokalen Basisnamen: {n!r}." + +#: lib/pp_admintools/cfg_app.py:888 +msgid "Zone {zone!r} has the public TLD {tld!r}." +msgstr "Die Zone {zone!r} hat eine öffentliche TLD {tld!r}." + +#: lib/pp_admintools/cfg_app.py:898 +msgid "Got IPv4 tupels from zone {!r}:" +msgstr "Habe IPv4 Tupels von Zone {!r} erhalten:" + +#: lib/pp_admintools/cfg_app.py:913 +msgid "Could not interprete reverse IPv4 zone {!r}." +msgstr "Konnte Revers-IPv4-Zone {!r} nicht interpretieren." + +#: lib/pp_admintools/cfg_app.py:917 +msgid "Got IPv4 network address of zone {zone!r}: {nw!r}." +msgstr "Habe IPv4-Netzwerkadresse von Zone {zone!r} erhalten: {nw!r}." + +#: lib/pp_admintools/cfg_app.py:923 +msgid "The network {nw!r} of zone {zone!r} is allocated for public networks." +msgstr "Die Netzwerkadresse {nw!r} von Zone {zone!r} ist für öffentliche Netze bestimmt." + +#: lib/pp_admintools/cfg_app.py:926 +msgid "The network {nw!r} of zone {zone!r} is allocated for local networks." +msgstr "Die Netzwerkadresse {nw!r} von Zone {zone!r} ist für lokale Netze bestimmt." + +#: lib/pp_admintools/cfg_app.py:932 +msgid "Zone {!r} seems to be a reverse zone for a public network." +msgstr "Die Zone {!r} scheint eine Reverse-Zone eines öffentlichen Netzwerks zu sein." + +#: lib/pp_admintools/xlate.py:97 +msgid "Module directory: {!r}" +msgstr "Modul-Verzeichnis: {!r}" + +#: lib/pp_admintools/xlate.py:98 +msgid "Base directory: {!r}" +msgstr "Basis-Verzeichnis: {!r}" + +#: lib/pp_admintools/xlate.py:99 +msgid "Locale directory: {!r}" +msgstr "Verzeichnis für Locales: {!r}" + +#: lib/pp_admintools/xlate.py:100 +msgid "Locale domain: {!r}" +msgstr "Locale-Domäne: {!r}" + +#: lib/pp_admintools/xlate.py:101 +msgid "Found .mo-file: {!r}" +msgstr "Gefundene .mo-Datei: {!r}" + diff --git a/locale/en_US/LC_MESSAGES/pp_admintools.po b/locale/en_US/LC_MESSAGES/pp_admintools.po new file mode 100644 index 0000000..6db8621 --- /dev/null +++ b/locale/en_US/LC_MESSAGES/pp_admintools.po @@ -0,0 +1,274 @@ +# English (United States) translations for pp_admintools. +# Copyright (C) 2021 Frank Brehm, Digitas Pixelpark Berlin +# This file is distributed under the same license as the pp_admintools project. +# Frank Brehm , 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: pp_admintools 0.8.0\n" +"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n" +"POT-Creation-Date: 2021-11-26 11:54+0100\n" +"PO-Revision-Date: 2021-11-26 11:54+0100\n" +"Last-Translator: FULL NAME \n" +"Language: en_US\n" +"Language-Team: en_US \n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.8.0\n" + +#: lib/pp_admintools/cfg_app.py:143 lib/pp_admintools/cfg_app.py:149 +msgid "Invalid configuration stem {!r} given." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:190 +msgid "{c} on setting encoding {v!r}: {e}" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:244 +msgid "Mailing options" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:248 lib/pp_admintools/cfg_app.py:254 lib/pp_admintools/cfg_app.py:260 +msgid "ADDRESS" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:249 +msgid "Mail addresses of all recipients for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:255 +msgid "Mail addresses of all CC recipients for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:261 +msgid "Reply mail address for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:266 +msgid "METHOD" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:267 +msgid "Method for sending the mails generated by this script. Valid values: {v}, default: {d!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:276 +msgid "SERVER" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:277 +msgid "" +"Mail server for submitting generated by this script if the mail method of this script is 'smtp'." +" Default: {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:285 +msgid "PORT" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:286 +msgid "" +"The port to use for submitting generated by this script if the mail method of this script is " +"'smtp'. Default: {}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:291 +msgid "Config file options" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:295 lib/pp_admintools/cfg_app.py:303 +msgid "FILE" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:296 +msgid "Configuration files to use additional to the standard configuration files." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:304 +msgid "Configuration file for logging in JSON format. See {!r} how the structures has to be defined." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:311 +msgid "ENCODING" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:312 +#, python-format +msgid "The encoding character set of the configuration files (default: %(default)r)." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:345 lib/pp_admintools/cfg_app.py:391 lib/pp_admintools/cfg_app.py:425 +#: lib/pp_admintools/cfg_app.py:500 +msgid "Searching for {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:411 +msgid "Log config files:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:432 +msgid "No read access to {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:438 +msgid "Reading and evaluating {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:454 +msgid "Evaluated configuration from JSON:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:458 +msgid "Wrong file {!r} - " +msgstr "" + +#: lib/pp_admintools/cfg_app.py:503 +msgid "Config file {!r} not found." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:506 +msgid "Reading {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:517 +msgid "Wrong configuration in {!r} found: " +msgstr "" + +#: lib/pp_admintools/cfg_app.py:519 +msgid "Configuration error" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:530 +msgid "Evaluated config from {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:534 +msgid "Evaluated config total:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:557 +msgid "There are errors in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:560 +msgid "There are no errors in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:568 lib/pp_admintools/cfg_app.py:591 +msgid "Evaluating config section {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:615 +msgid "Found invalid recipient mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:631 +msgid "CC addresses:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:637 +msgid "Found invalid cc mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:655 +msgid "Found invalid reply mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:670 +msgid "Found invalid mail method {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:695 lib/pp_admintools/cfg_app.py:699 +msgid "Found invalid SMTP port number {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:722 +msgid "Got invalid SMTP port number {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:740 +msgid "Got invalid recipient mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:761 +msgid "Got invalid CC mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:776 +msgid "Got invalid reply mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:807 +msgid "Mail to send:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:840 +msgid "Did not found sendmail executable." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:846 +msgid "Executing: {}" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:872 +msgid "Checking, whether {!r} is a local zone." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:876 +msgid "Zone {zone!r} has the local TLD {tld!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:882 +msgid "Zone {zone!r} has the local base name {n!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:888 +msgid "Zone {zone!r} has the public TLD {tld!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:898 +msgid "Got IPv4 tupels from zone {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:913 +msgid "Could not interprete reverse IPv4 zone {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:917 +msgid "Got IPv4 network address of zone {zone!r}: {nw!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:923 +msgid "The network {nw!r} of zone {zone!r} is allocated for public networks." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:926 +msgid "The network {nw!r} of zone {zone!r} is allocated for local networks." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:932 +msgid "Zone {!r} seems to be a reverse zone for a public network." +msgstr "" + +#: lib/pp_admintools/xlate.py:97 +msgid "Module directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:98 +msgid "Base directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:99 +msgid "Locale directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:100 +msgid "Locale domain: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:101 +msgid "Found .mo-file: {!r}" +msgstr "" + diff --git a/locale/pp_admintools.pot b/locale/pp_admintools.pot new file mode 100644 index 0000000..85397bc --- /dev/null +++ b/locale/pp_admintools.pot @@ -0,0 +1,273 @@ +# Translations template for pp_admintools. +# Copyright (C) 2021 Frank Brehm, Digitas Pixelpark Berlin +# This file is distributed under the same license as the pp_admintools project. +# Frank Brehm , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pp_admintools 0.8.0\n" +"Report-Msgid-Bugs-To: frank.brehm@pixelpark.com\n" +"POT-Creation-Date: 2021-11-26 11:54+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.8.0\n" + +#: lib/pp_admintools/cfg_app.py:143 lib/pp_admintools/cfg_app.py:149 +msgid "Invalid configuration stem {!r} given." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:190 +msgid "{c} on setting encoding {v!r}: {e}" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:244 +msgid "Mailing options" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:248 lib/pp_admintools/cfg_app.py:254 lib/pp_admintools/cfg_app.py:260 +msgid "ADDRESS" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:249 +msgid "Mail addresses of all recipients for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:255 +msgid "Mail addresses of all CC recipients for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:261 +msgid "Reply mail address for mails generated by this script." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:266 +msgid "METHOD" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:267 +msgid "Method for sending the mails generated by this script. Valid values: {v}, default: {d!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:276 +msgid "SERVER" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:277 +msgid "" +"Mail server for submitting generated by this script if the mail method of this script is 'smtp'." +" Default: {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:285 +msgid "PORT" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:286 +msgid "" +"The port to use for submitting generated by this script if the mail method of this script is " +"'smtp'. Default: {}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:291 +msgid "Config file options" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:295 lib/pp_admintools/cfg_app.py:303 +msgid "FILE" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:296 +msgid "Configuration files to use additional to the standard configuration files." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:304 +msgid "Configuration file for logging in JSON format. See {!r} how the structures has to be defined." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:311 +msgid "ENCODING" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:312 +#, python-format +msgid "The encoding character set of the configuration files (default: %(default)r)." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:345 lib/pp_admintools/cfg_app.py:391 lib/pp_admintools/cfg_app.py:425 +#: lib/pp_admintools/cfg_app.py:500 +msgid "Searching for {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:411 +msgid "Log config files:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:432 +msgid "No read access to {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:438 +msgid "Reading and evaluating {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:454 +msgid "Evaluated configuration from JSON:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:458 +msgid "Wrong file {!r} - " +msgstr "" + +#: lib/pp_admintools/cfg_app.py:503 +msgid "Config file {!r} not found." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:506 +msgid "Reading {!r} ..." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:517 +msgid "Wrong configuration in {!r} found: " +msgstr "" + +#: lib/pp_admintools/cfg_app.py:519 +msgid "Configuration error" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:530 +msgid "Evaluated config from {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:534 +msgid "Evaluated config total:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:557 +msgid "There are errors in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:560 +msgid "There are no errors in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:568 lib/pp_admintools/cfg_app.py:591 +msgid "Evaluating config section {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:615 +msgid "Found invalid recipient mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:631 +msgid "CC addresses:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:637 +msgid "Found invalid cc mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:655 +msgid "Found invalid reply mail address {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:670 +msgid "Found invalid mail method {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:695 lib/pp_admintools/cfg_app.py:699 +msgid "Found invalid SMTP port number {!r} in configuration." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:722 +msgid "Got invalid SMTP port number {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:740 +msgid "Got invalid recipient mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:761 +msgid "Got invalid CC mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:776 +msgid "Got invalid reply mail address {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:807 +msgid "Mail to send:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:840 +msgid "Did not found sendmail executable." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:846 +msgid "Executing: {}" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:872 +msgid "Checking, whether {!r} is a local zone." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:876 +msgid "Zone {zone!r} has the local TLD {tld!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:882 +msgid "Zone {zone!r} has the local base name {n!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:888 +msgid "Zone {zone!r} has the public TLD {tld!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:898 +msgid "Got IPv4 tupels from zone {!r}:" +msgstr "" + +#: lib/pp_admintools/cfg_app.py:913 +msgid "Could not interprete reverse IPv4 zone {!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:917 +msgid "Got IPv4 network address of zone {zone!r}: {nw!r}." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:923 +msgid "The network {nw!r} of zone {zone!r} is allocated for public networks." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:926 +msgid "The network {nw!r} of zone {zone!r} is allocated for local networks." +msgstr "" + +#: lib/pp_admintools/cfg_app.py:932 +msgid "Zone {!r} seems to be a reverse zone for a public network." +msgstr "" + +#: lib/pp_admintools/xlate.py:97 +msgid "Module directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:98 +msgid "Base directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:99 +msgid "Locale directory: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:100 +msgid "Locale domain: {!r}" +msgstr "" + +#: lib/pp_admintools/xlate.py:101 +msgid "Found .mo-file: {!r}" +msgstr "" + diff --git a/xtract-xlate-msgs.sh b/xtract-xlate-msgs.sh new file mode 100755 index 0000000..5dd49c0 --- /dev/null +++ b/xtract-xlate-msgs.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +set -e +set -u + +base_dir=$( dirname "$0" ) +cd "${base_dir}" || exit 99 + +locale_dir="locale" +locale_domain="pp_admintools" +pot_file="${locale_dir}/${locale_domain}.pot" +po_with="99" +my_address="${DEBEMAIL:-frank.brehm@pixelpark.com}" + +pkg_version=$( grep -E '^\s*__version__' lib/pp_admintools/global_version.py | sed -e 's/.*=[ ]*//' -e "s/'//g" ) +echo "Package-Version: '${pkg_version}'" + +pybabel extract bin/* lib \ + -o "${pot_file}" \ + -F etc/babel.ini \ + --width=${po_with} \ + --sort-by-file \ + --msgid-bugs-address="${my_address}" \ + --copyright-holder="Frank Brehm, Digitas Pixelpark Berlin" \ + --project="${locale_domain}" \ + --version="${pkg_version}" + +sed -i -e "s/FIRST AUTHOR/Frank Brehm/g" -e "s//<${my_address}>/g" "${pot_file}" + +for lang in de_DE en_US ; do + po_file="${locale_dir}/${lang}/LC_MESSAGES/${locale_domain}.po" + if [[ ! -f "${po_file}" ]] ; then + pybabel init --domain "${locale_domain}" \ + --input-file "${pot_file}" \ + --output-dir "${locale_dir}" \ + --locale "${lang}" \ + --width ${po_with} + else + pybabel update --domain "${locale_domain}" \ + --input-file "${pot_file}" \ + --output-dir "${locale_dir}" \ + --locale "${lang}" \ + --width ${po_with} \ + --ignore-obsolete \ + --update-header-comment + fi + + # Updating project version + sed -i -e "s/^\(\"Project-Id-Version:[ ][ ]*[^ ][^ ]*[ ][ ]*\)[^ \\][^ \\]*/\1${pkg_version}/i" "${po_file}" + +done + +# vim: ts=4 list -- 2.39.5