bug-gettext
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

xgettext and XML files - extracting strings


From: Jamenson Espindula
Subject: xgettext and XML files - extracting strings
Date: Tue, 25 Apr 2023 04:58:47 -0300

Hi.
Congratulations for the excellent software "GNU gettext"!

I just started learning "xgettext" from "GNU gettext".

There is a XML file (line numbers are not in original):

 = = = Begin XML file = = =

     1 <?xml version="1.0" encoding="ISO-8859-1"?>
     2 <!DOCTYPE bookinfo PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
     3   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
     4   <!ENTITY % general-entities SYSTEM "../general.ent">
     5   %general-entities;
     6 ]>
     7
     8 <bookinfo>
     9   <title>Linux From Scratch</title>
    10   <subtitle>Version &version;</subtitle>
    11   <subtitle>Published &releasedate;</subtitle>
    12
    13   <authorgroup>
    14     <author>
    15       <firstname>Created by Gerard</firstname>
    16       <surname>Beekmans</surname>
    17     </author>
    18     <author>
    19       <firstname>Managing Editor: Bruce</firstname>
    20       <surname>Dubbs</surname>
    21     </author>
    22
    23     <author revision="systemd">
    24       <firstname>Editor: Douglas R.</firstname>
    25       <surname>Reno</surname>
    26     </author>
    27
    28     <author revision="systemd">
    29       <firstname>Editor: DJ</firstname>
    30       <surname>Lucas</surname>
    31     </author>
    32   </authorgroup>
    33
    34   <copyright id="copyright">
    35     <year>&copyrightdate;</year>
    36     <holder>Gerard Beekmans</holder>
    37   </copyright>
    38
    39   <legalnotice>
    40
    41     <para>Copyright &copy; &copyrightdate;, Gerard Beekmans</para>
    42
    43     <para>All rights reserved.</para>
    44
    45     <para>This book is licensed under a <xref linkend="CC"/>.</para>
    46     <para>Computer instructions may be extracted from the book under the
    47           <xref linkend="MIT"/>.</para>
    48
    49     <para><trademark class='registered'>Linux</trademark> is a
registered trademark of
    50     Linus Torvalds.</para>
    51
    52   </legalnotice>
    53
    54 </bookinfo>

 = = = End XML file = = =

I tried to extract the strings. The POT file produced is:

 = = = Begin "bookinfo.pot" file = = =

# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-04-21 05:55-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:9
msgid "Linux From Scratch"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:10
msgid "Version &version;"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:11
msgid "Published &releasedate;"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:15
msgid "Created by Gerard"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:16
msgid "Beekmans"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:19
msgid "Managing Editor: Bruce"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:20
msgid "Dubbs"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:24
msgid "Editor: Douglas R."
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:25
msgid "Reno"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:29
msgid "Editor: DJ"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:30
msgid "Lucas"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:35
msgid "&copyrightdate;"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:36
msgid "Gerard Beekmans"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:41
msgid "Copyright &copy; &copyrightdate;, Gerard Beekmans"
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:43
msgid "All rights reserved."
msgstr ""

#: /home/jamenson/repos/upstream/lfs-git/prologue/bookinfo.xml:49
msgid "Linux"
msgstr ""

 = = = End "bookinfo.pot" file = = =

As you can see, lines 45 and 46 were skipped.

Here are the "ITS rules" and the "locator" files that are in effect:

 = = = Begin "lfs.its" file = = =

<?xml version="1.0"?>
<its:rules xmlns:its="http://www.w3.org/2005/11/its"; version="1.0">
  <its:translateRule selector="/book" translate="no"/>
  <its:translateRule selector="/bookinfo" translate="no"/>
  <its:translateRule selector="//title" translate="yes"/>
  <its:translateRule selector="//subtitle" translate="yes"/>
  <its:translateRule selector="//authorgroup" translate="yes"/>
  <its:translateRule selector="//copyright" translate="yes"/>
  <its:translateRule selector="//legalnotice" translate="yes"/>
  <its:translateRule selector="//message/p[@translatable = 'no']"
    translate="no"/>
</its:rules>

 = = = End "lfs.its" file = = =

 = = = Begin "lfs.loc" file = = =

<?xml version="1.0"?>
<locatingRules>
  <locatingRule name="LFS" pattern="*.xml" target="lfs.its"/>
</locatingRules>

 = = = End "lfs.loc" file = = =

Why were lines 45 and 46 skipped?

Thank you.

Jamenson Ferreira Espindula de Almeida Melo
Jaboatão dos Guararapes, Pernambuco, Brazil
GNU/Linux user # 166197
https://linuxcounter.net/cert/166197.png

Key fingerprint:
234D 1914 4224 7C53 BD13  6855 2AE0 25C0 08A8 6180



reply via email to

[Prev in Thread] Current Thread [Next in Thread]