From d2b1dcb3466ed5476094d9ff445d1df1b4ed14ff Mon Sep 17 00:00:00 2001 From: Stefan Pluecken Date: Fri, 18 Nov 2005 04:52:18 +0000 Subject: [PATCH] menu.xml and setup.xml are now translatable the .po-generation is really bad Makefile-code --- lib/python/Screens/Menu.py | 6 +- lib/python/Screens/Setup.py | 2 +- po/Makefile | 10 +- po/de.po | 514 ++++++++++++++++++++++-------------- po/xml2po.py | 12 +- 5 files changed, 342 insertions(+), 202 deletions(-) diff --git a/lib/python/Screens/Menu.py b/lib/python/Screens/Menu.py index 9eefddf7..7554d814 100644 --- a/lib/python/Screens/Menu.py +++ b/lib/python/Screens/Menu.py @@ -87,14 +87,14 @@ class Menu(Screen): self.session.open(Setup, dialog) def addMenu(self, destList, node): - MenuTitle = getValbyAttr(node, "text") + MenuTitle = _(getValbyAttr(node, "text")) if MenuTitle != "": #check for title a = boundFunction(self.session.open, Menu, node, node.childNodes) #TODO add check if !empty(node.childNodes) destList.append((MenuTitle, a)) def addItem(self, destList, node): - ItemText = getValbyAttr(node, "text") + ItemText = _(getValbyAttr(node, "text")) if ItemText != "": #check for name for x in node.childNodes: if x.nodeType != xml.dom.minidom.Element.nodeType: @@ -147,7 +147,7 @@ class Menu(Screen): a = getValbyAttr(parent, "title") if a == "": #if empty use name - a = getValbyAttr(parent, "text") + a = _(getValbyAttr(parent, "text")) self["title"] = Header(a) class MainMenu(Menu): diff --git a/lib/python/Screens/Setup.py b/lib/python/Screens/Setup.py index c6df96a1..b47418d8 100644 --- a/lib/python/Screens/Setup.py +++ b/lib/python/Screens/Setup.py @@ -38,7 +38,7 @@ class Setup(Screen): if x.nodeType != xml.dom.minidom.Element.nodeType: continue elif x.tagName == 'item': - ItemText = getValbyAttr(x, "text") + ItemText = _(getValbyAttr(x, "text")) b = eval(XMLTools.mergeText(x.childNodes)); print "item " + ItemText + " " + b.configPath if b == "": diff --git a/po/Makefile b/po/Makefile index 84bf78ee..df5f303e 100644 --- a/po/Makefile +++ b/po/Makefile @@ -16,8 +16,11 @@ default: enigma2.pot $(LANGPO) merge $(LANGMO) cp en.mo en/LC_MESSAGES/enigma2.mo merge: - msgmerge -N -U enigma2.pot menu.pot - msgmerge -N -U enigma2.pot setup.pot +# msgmerge -N -U enigma2.pot menu.pot +# msgmerge -N -U enigma2.pot setup.pot + msguniq -o enigma2uniq.pot enigma2.pot + rm enigma2.pot + mv enigma2uniq.pot enigma2.pot msgmerge -N -U de.po enigma2.pot enigma2.pot: @@ -35,8 +38,7 @@ enigma2.pot: ../lib/python/Components/Language.py \ ../lib/python/Components/EventInfo.py \ ../lib/python/Components/Network.py - ./xml2po.py ../data/menu.xml >> menu.pot - ./xml2po.py ../data/setup.xml >> setup.pot + ./xml2po.py ../data/ >> enigma2.pot %.mo: %.po diff --git a/po/de.po b/po/de.po index c8a50602..6bf65290 100644 --- a/po/de.po +++ b/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: tuxbox-enigma 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-11-18 04:59+0100\n" +"POT-Creation-Date: 2005-11-18 05:48+0100\n" "PO-Revision-Date: 2005-11-17 20:53+0100\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -16,293 +16,425 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../data/setup.xml -msgid "Invert" -msgstr "Intervieren" +#: ../lib/python/Screens/EventView.py:58 +#, python-format +msgid "%d min" +msgstr "" -#: ../data/setup.xml -msgid "Hide error windows" -msgstr "Fehlerfenster verstecken" +#: ../lib/python/Screens/About.py:25 +#, python-format +msgid "%s (%s, %d MB free)" +msgstr "" -#: ../data/setup.xml -msgid "Delay" -msgstr "Verzoegerung" +#: ../lib/python/Screens/TimerEdit.py:25 +msgid "Add" +msgstr "" -#: ../data/setup.xml -msgid "WSS" +#: ../lib/python/Screens/HarddiskSetup.py:30 +msgid "Bus: " msgstr "" -#: ../data/setup.xml -msgid "use power delta" +#: ../lib/python/Screens/HarddiskSetup.py:29 +msgid "Capacity: " msgstr "" -#: ../data/setup.xml -msgid "Latitude" -msgstr "Breitengrad" +#: ../lib/python/Components/SetupDevices.py:21 +msgid "Classic" +msgstr "" -#: ../data/setup.xml -msgid "Setup Lock" -msgstr "Setup Sperre" +#: ../lib/python/Screens/Satconfig.py:30 ../lib/python/Screens/Satconfig.py:48 +#: ../lib/python/Screens/Satconfig.py:57 ../data/ +msgid "Configmode" +msgstr "Konfigurationsmodus" -#: ../data/setup.xml -msgid "Soundcarrier" +#: ../lib/python/Components/SetupDevices.py:21 +msgid "Default" msgstr "" -#: ../data/setup.xml -msgid "Color Format" -msgstr "Farbformat" +#: ../lib/python/Screens/TimerEdit.py:24 +msgid "Delete" +msgstr "" -#: ../data/setup.xml -msgid "Channel" -msgstr "Kanal" +#: ../lib/python/Screens/About.py:22 +msgid "Detected HDD:" +msgstr "" -#: ../data/setup.xml -msgid "Repeat" -msgstr "Wiederholung" +#: ../lib/python/Screens/About.py:14 +msgid "Detected NIMs:" +msgstr "" -#: ../data/setup.xml -msgid "Language" -msgstr "Sprache" +#: ../lib/python/Components/SetupDevices.py:38 +#: ../lib/python/Components/SetupDevices.py:39 +#: ../lib/python/Components/SetupDevices.py:43 +#: ../lib/python/Components/SetupDevices.py:44 +#: ../lib/python/Components/SetupDevices.py:45 +#: ../lib/python/Components/SetupDevices.py:46 +#: ../lib/python/Components/SetupDevices.py:47 +msgid "Disable" +msgstr "" -#: ../data/setup.xml -msgid "Keyboard Map" -msgstr "Tastaturlayout" +#: ../lib/python/Screens/Satconfig.py:33 ../lib/python/Screens/Satconfig.py:46 +msgid "Diseqcmode" +msgstr "" -#: ../data/setup.xml -msgid "TV System" -msgstr "Fernsehnorm" +#: ../lib/python/Components/SetupDevices.py:38 +#: ../lib/python/Components/SetupDevices.py:39 +#: ../lib/python/Components/SetupDevices.py:43 +#: ../lib/python/Components/SetupDevices.py:44 +#: ../lib/python/Components/SetupDevices.py:45 +#: ../lib/python/Components/SetupDevices.py:46 +#: ../lib/python/Components/SetupDevices.py:47 +msgid "Enable" +msgstr "" -#: ../data/setup.xml -msgid "Show Satposition" -msgstr "Zeige Satposition" +#: ../lib/python/Components/SetupDevices.py:24 +#: ../lib/python/Components/Language.py:9 +msgid "English" +msgstr "" -#: ../data/setup.xml -msgid "Aspect Ratio" -msgstr "Breitenverhältnis" +#: ../lib/python/Screens/ScanSetup.py:76 +msgid "Frequency" +msgstr "" -#: ../data/setup.xml -msgid "DiSEqC" +#: ../lib/python/Screens/NetworkSetup.py:44 ../data/ +msgid "Gateway" msgstr "" -#: ../data/setup.xml -msgid "Netmask" -msgstr "Netzmaske" +#: ../lib/python/Components/SetupDevices.py:24 +#: ../lib/python/Components/Language.py:10 +msgid "German" +msgstr "" -#: ../data/setup.xml -msgid "Contrast" -msgstr "Kontrast" +#: ../lib/python/Screens/NetworkSetup.py:42 ../data/ +msgid "IP Address" +msgstr "IP Adresse" -#: ../data/setup.xml -msgid "Alpha" +#: ../lib/python/Screens/HarddiskSetup.py:31 +msgid "Initialize" msgstr "" -#: ../data/setup.xml -msgid "Parental Lock" -msgstr "Jugendschutz" +#: ../lib/python/Screens/HarddiskSetup.py:18 +msgid "Initializing Harddisk..." +msgstr "" -#: ../data/setup.xml -msgid "AC3 default" +#: ../lib/python/Screens/ScanSetup.py:77 +msgid "Inversion" msgstr "" -#: ../data/setup.xml -msgid "Sound" -msgstr "Ton" +#: ../lib/python/Screens/Satconfig.py:24 ../data/ +msgid "Latitude" +msgstr "Breitengrad" -#: ../data/setup.xml -msgid "Fast zapping" -msgstr "Schnelles Umschalten" +#: ../lib/python/Screens/Satconfig.py:23 ../data/ +msgid "Longitude" +msgstr "Laengengrad" -#: ../data/setup.xml -msgid "Modulator" +#: ../lib/python/Screens/HarddiskSetup.py:28 +msgid "Model: " msgstr "" -#: ../data/setup.xml -msgid "Brightness" -msgstr "Helligkeit" +#: ../lib/python/Screens/NetworkSetup.py:45 ../data/ +msgid "Nameserver" +msgstr "" -#: ../data/setup.xml -msgid "Standby" +#: ../lib/python/Screens/NetworkSetup.py:43 ../data/ +msgid "Netmask" +msgstr "Netzmaske" + +#: ../lib/python/Screens/Satconfig.py:15 +msgid "Port A" msgstr "" -#: ../data/setup.xml -msgid "Finetune" -msgstr "Feineinstellung" +#: ../lib/python/Screens/Satconfig.py:18 +msgid "Port B" +msgstr "" -#: ../data/setup.xml -msgid "Activate network settings" -msgstr "Aktiviere Netzwerkeinstellungen" +#: ../lib/python/Screens/Satconfig.py:20 +msgid "Port C" +msgstr "" -#: ../data/setup.xml -msgid "Longitude" -msgstr "Laengengrad" +#: ../lib/python/Screens/Satconfig.py:21 +msgid "Port D" +msgstr "" -#: ../data/setup.xml -msgid "Configmode" -msgstr "Konfigurationsmodus" +#: ../lib/python/Screens/ScanSetup.py:75 ../lib/python/Screens/Satconfig.py:13 +msgid "Satellite" +msgstr "" + +#: ../lib/python/Screens/InfoBar.py:72 +msgid "Stop playing this movie?" +msgstr "" -#: ../data/setup.xml +#: ../lib/python/Screens/ScanSetup.py:78 +msgid "Symbolrate" +msgstr "" + +#: ../lib/python/Screens/NetworkSetup.py:40 +#: ../lib/python/Screens/NetworkSetup.py:52 ../data/ msgid "Use DHCP" msgstr "Adresse automatisch beziehen (DHCP)" -#: ../data/setup.xml -msgid "Keymap" +#: ../lib/python/Components/Network.py:134 +msgid "no" msgstr "" -#: ../data/setup.xml -msgid "Testmode" +#: ../lib/python/Screens/HarddiskSetup.py:57 +msgid "no HDD found" msgstr "" -#: ../data/setup.xml -msgid "Tuner-Slot" +#: ../lib/python/Screens/About.py:27 +msgid "none" msgstr "" -#: ../data/setup.xml -msgid "Nameserver" +#: ../lib/python/Screens/EventView.py:43 +msgid "unknown service" msgstr "" -#: ../data/setup.xml -msgid "VCR Switch" +#: ../lib/python/Screens/Ci.py:39 +msgid "waiting for CI..." msgstr "" -#: ../data/setup.xml -msgid "IP Address" -msgstr "IP Adresse" +#: ../lib/python/Components/EventInfo.py:43 +msgid "waiting for event data..." +msgstr "" -#: ../data/setup.xml -msgid "Skip confirmations" +#: ../lib/python/Components/Network.py:15 +#: ../lib/python/Components/Network.py:134 +msgid "yes" msgstr "" -#: ../data/setup.xml -msgid "Timezone" -msgstr "Zeitzone" +#: ../data/ +msgid "Information" +msgstr "" -#: ../data/setup.xml -msgid "Record Splitsize" +#: ../data/ +msgid "Network" msgstr "" -#: ../data/setup.xml -msgid "Gateway" +#: ../data/ +msgid "Service" msgstr "" -#: ../data/setup.xml -msgid "Auto show inforbar" +#: ../data/ +msgid "Invert" +msgstr "Intervieren" + +#: ../data/ +msgid "Games / Plugins" msgstr "" -#~ msgid "%s (%s, %d MB free)" -#~ msgstr "%s (%s, %d MB frei)" +#: ../data/ +msgid "Hide error windows" +msgstr "Fehlerfenster verstecken" -#~ msgid "Bus: " -#~ msgstr "Personennahverkehr: " +#: ../data/ +msgid "Delay" +msgstr "Verzoegerung" -#~ msgid "Capacity: " -#~ msgstr "Kapazitaet: " +#: ../data/ +msgid "WSS" +msgstr "" -#~ msgid "Classic" -#~ msgstr "klassisch" +#: ../data/ +msgid "use power delta" +msgstr "" -#~ msgid "Default" -#~ msgstr "Standard" +#: ../data/ +msgid "Language" +msgstr "Sprache" -#, fuzzy -#~ msgid "Delete" -#~ msgstr "Standard" +#: ../data/ +msgid "Setup Lock" +msgstr "Setup Sperre" -#~ msgid "Detected HDD:" -#~ msgstr "Erkannte Festplatten:" +#: ../data/ +msgid "Soundcarrier" +msgstr "" -#~ msgid "Detected NIMs:" -#~ msgstr "Erkannte Tuner:" +#: ../data/ +msgid "Aspect Ratio" +msgstr "Breitenverhaeltnis" -#~ msgid "Disable" -#~ msgstr "Aus" +#: ../data/ +msgid "Manual Scan" +msgstr "" -#~ msgid "Diseqcmode" -#~ msgstr "Diseqc-Modus" +#: ../data/ +msgid "Contrast" +msgstr "Kontrast" -#~ msgid "Enable" -#~ msgstr "Ein" +#: ../data/ +msgid "Repeat" +msgstr "Wiederholung" -#~ msgid "English" -#~ msgstr "Englisch" +#: ../data/ +msgid "Finetune" +msgstr "Feineinstellung" -#~ msgid "Frequency" -#~ msgstr "Frequenz" +#: ../data/ +msgid "Expert" +msgstr "" -#~ msgid "German" -#~ msgstr "Deutsch" +#: ../data/ +msgid "Keyboard Map" +msgstr "Tastaturlayout" -#~ msgid "Initialize" -#~ msgstr "Initialisiere" +#: ../data/ +msgid "TV System" +msgstr "Fernsehnorm" -#~ msgid "Initializing Harddisk..." -#~ msgstr "Initialisiere Festplatte..." +#: ../data/ +msgid "Auto show inforbar" +msgstr "" -#~ msgid "Model: " -#~ msgstr "Modell: " +#: ../data/ +msgid "Show Satposition" +msgstr "Zeige Satposition" -#~ msgid "Satellite" -#~ msgstr "Satellit" +#: ../data/ +msgid "Mainmenu" +msgstr "Hauptmenue" -#~ msgid "no" -#~ msgstr "nein" +#: ../data/ +msgid "Standby / Restart" +msgstr "Standby / Neustart" -#~ msgid "no HDD found" -#~ msgstr "keine Festplatte gefunden" +#: ../data/ +msgid "Deep Standby" +msgstr "Tiefschlaf" -#~ msgid "unknown service" -#~ msgstr "unbekannter Dienst" +#: ../data/ +msgid "Channel" +msgstr "Kanal" -#~ msgid "waiting for CI..." -#~ msgstr "warte auf das CI..." +#: ../data/ +msgid "Alpha" +msgstr "" -#, fuzzy -#~ msgid "waiting for event data..." -#~ msgstr "warte auf Programmdaten..." +#: ../data/ +msgid "OSD" +msgstr "" -#~ msgid "yes" -#~ msgstr "ja" +#: ../data/ +msgid "Restart" +msgstr "Neustart" -#~ msgid "Mainmenu" -#~ msgstr "Hauptmenue" +#: ../data/ +msgid "AC3 default" +msgstr "" -#~ msgid "Timer" -#~ msgstr "Zeitgesteuerte Aufnamen" +#: ../data/ +msgid "Sound" +msgstr "Ton" -#~ msgid "About..." -#~ msgstr "Ueber..." +#: ../data/ +msgid "Fast zapping" +msgstr "Schnelles Umschalten" -#~ msgid "Games / Plugins" -#~ msgstr "Spiele / Erweiterungen" +#: ../data/ +msgid "Modulator" +msgstr "" -#~ msgid "Setup" -#~ msgstr "Einstellungen" +#: ../data/ +msgid "Brightness" +msgstr "Helligkeit" -#~ msgid "Service Searching" -#~ msgstr "Kanalsuche" +#: ../data/ +msgid "Standby" +msgstr "" -#~ msgid "Satelliteconfig" -#~ msgstr "Satelliteneinstellungen" +#: ../data/ +msgid "Setup" +msgstr "Einstellungen" -#~ msgid "Automatic Scan" -#~ msgstr "Automatische Suche" +#: ../data/ +msgid "Activate network settings" +msgstr "Aktiviere Netzwerkeinstellungen" -#~ msgid "Manual Scan" -#~ msgstr "Manuelle Suche" +#: ../data/ +msgid "Timer" +msgstr "" -#~ msgid "Harddisk" -#~ msgstr "Festplatte" +#: ../data/ +msgid "System" +msgstr "" -#~ msgid "Network" -#~ msgstr "Netzwerk" +#: ../data/ +msgid "Keymap" +msgstr "Tastenlayout" -#~ msgid "Expert" -#~ msgstr "Experten" +#: ../data/ +msgid "Video Audio" +msgstr "" -#~ msgid "Standby / Restart" -#~ msgstr "Standby / Neustart" +#: ../data/ +msgid "Automatic Scan" +msgstr "Automatische Suche" -#~ msgid "Restart" -#~ msgstr "Neustart" +#: ../data/ +msgid "Tuner-Slot" +msgstr "" + +#: ../data/ +msgid "UHF Modulator" +msgstr "" + +#: ../data/ +msgid "Color Format" +msgstr "Farbformat" + +#: ../data/ +msgid "DiSEqC" +msgstr "" + +#: ../data/ +msgid "Service Searching" +msgstr "Kanalsuche" + +#: ../data/ +msgid ".oO Movie Player Oo." +msgstr "" -#~ msgid "Deep Standby" -#~ msgstr "Tiefschlaf" +#: ../data/ +msgid "Harddisk" +msgstr "Festplatte" + +#: ../data/ +msgid "VCR Switch" +msgstr "" + +#: ../data/ +msgid "Satelliteconfig" +msgstr "Setelliteneinstellungen" + +#: ../data/ +msgid "Parental Lock" +msgstr "Jugendschutz" + +#: ../data/ +msgid "LCD" +msgstr "" + +#: ../data/ +msgid "Skip confirmations" +msgstr "" + +#: ../data/ +msgid "Timezone" +msgstr "Zeitzone" + +#: ../data/ +msgid "About..." +msgstr "Ueber" + +#: ../data/ +msgid "Record Splitsize" +msgstr "" + +#: ../data/ +msgid "Common Interface" +msgstr "" + +#: ../data/ +msgid "Testmode" +msgstr "" diff --git a/po/xml2po.py b/po/xml2po.py index 3fef7f82..382f2d89 100755 --- a/po/xml2po.py +++ b/po/xml2po.py @@ -1,5 +1,6 @@ #!/usr/bin/python import sys +import os from xml.sax import make_parser from xml.sax.handler import ContentHandler @@ -12,14 +13,19 @@ class parseXML(ContentHandler): if (attrs.has_key('text')): attrlist[attrs.get('text', "")] = "foo" -sys.argv[1] - parser = make_parser() attrlist = {} + contentHandler = parseXML(attrlist) parser.setContentHandler(contentHandler) -parser.parse(sys.argv[1]) + +dir = os.listdir(sys.argv[1]) +for x in dir: + if (str(x[-4:]) == ".xml"): + parser.parse(sys.argv[1] + str(x)) + +#parser.parse(sys.argv[1]) for k, v in attrlist.items(): print -- 2.30.2