From b47d0fb6335fc91e018a27f4cdae867169e0d459 Mon Sep 17 00:00:00 2001 From: KATO Tomoyuki Date: Tue, 9 Jul 2013 13:45:06 +0900 Subject: [PATCH] Add Docbook XML mode in tools/generatedocbook tools/generatepot uses Docbook XML mode. It replaces elements of several types with placeholder. eg: ps aux -> [aaa.xml] run ps aux. [aaa.pot] msgid "run ." msgstr "" Then, translatores translate strings with placeholder. eg: [ja.po] msgid "run ." msgstr " wo jikkou." So, tools/generatedocbook need to merge the tranlation strings, considering Docbook format. If not be considered, the strings containing a placeholder element remains untranslated because msgid does not match. eg: [aaa.xml] run ps aux. [ja.po] msgid "run ." <- not match msgstr " wo jikkou." Change-Id: Ieb32ed8bfb0b6880040e47e3700b812f81598d8a --- tools/generatedocbook | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tools/generatedocbook b/tools/generatedocbook index 87a736ea..a9f2c34d 100755 --- a/tools/generatedocbook +++ b/tools/generatedocbook @@ -14,6 +14,16 @@ from optparse import OptionParser import codecs from xml2po import Main +from xml2po.modes.docbook import docbookXmlMode + +class myDocbookXmlMode(docbookXmlMode): + def __init__(self): + self.lists = ['itemizedlist', 'orderedlist', 'variablelist', + 'segmentedlist', 'simplelist', 'calloutlist', 'varlistentry', 'userinput', + 'computeroutput','prompt','command','screen'] + self.objects = [ 'figure', 'textobject', 'imageobject', 'mediaobject', + 'screenshot','literallayout', 'programlisting' ] + default_mode = 'docbook' operation = 'merge' options = { @@ -68,6 +78,7 @@ def mergeSingleDocument(folder, language): outputpath = os.path.join(os.path.curdir, "generated", language, relpath) try: xml2po_main = Main(default_mode, operation, outputpath, options) + xml2po_main.current_mode = myDocbookXmlMode() xml2po_main.merge(mofile_tmppath, aXML) outputfiles.append(outputpath) except IOError: