gnu: po4a: Update to 0.73.

* gnu/packages/gettext.scm (po4a): Update to 0.73.
[native-inputs]: Update docbook-xml to 4.5.
[source]: Remove the patch since it is merged in version 0.70.
* gnu/local.mk, gnu/packages/patches/po4a-partial-texinfo-menu-fix.patch:
Same as above.

Change-Id: Iefe13931415409e30d8da982dccc6e1adf1b2984
Signed-off-by: Christopher Baines <mail@cbaines.net>
This commit is contained in:
gemmaro 2024-06-18 22:22:54 +09:00 committed by Ludovic Courtès
parent be8352d190
commit f548a7b586
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 5 additions and 249 deletions

View file

@ -61,7 +61,7 @@
# Copyright © 2023 Andy Tai <atai@atai.org> # Copyright © 2023 Andy Tai <atai@atai.org>
# Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com> # Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
# Copyright © 2023 Bruno Victal <mirai@makinata.eu> # Copyright © 2023 Bruno Victal <mirai@makinata.eu>
# Copyright © 2023 gemmaro <gemmaro.dev@gmail.com> # Copyright © 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
# Copyright © 2023 Herman Rimm <herman@rimm.ee> # Copyright © 2023 Herman Rimm <herman@rimm.ee>
# Copyright © 2023 Troy Figiel <troy@troyfigiel.com> # Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
# Copyright © 2024 David Elsing <david.elsing@posteo.net> # Copyright © 2024 David Elsing <david.elsing@posteo.net>
@ -1953,7 +1953,6 @@ dist_patch_DATA = \
%D%/packages/patches/plib-CVE-2011-4620.patch \ %D%/packages/patches/plib-CVE-2011-4620.patch \
%D%/packages/patches/plib-CVE-2012-4552.patch \ %D%/packages/patches/plib-CVE-2012-4552.patch \
%D%/packages/patches/plotutils-spline-test.patch \ %D%/packages/patches/plotutils-spline-test.patch \
%D%/packages/patches/po4a-partial-texinfo-menu-fix.patch \
%D%/packages/patches/polkit-disable-systemd.patch \ %D%/packages/patches/polkit-disable-systemd.patch \
%D%/packages/patches/portaudio-audacity-compat.patch \ %D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \ %D%/packages/patches/portmidi-modular-build.patch \

View file

@ -11,7 +11,7 @@
;;; Copyright © 2019 Miguel <rosen644835@gmail.com> ;;; Copyright © 2019 Miguel <rosen644835@gmail.com>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 EuAndreh <eu@euandre.org> ;;; Copyright © 2020 EuAndreh <eu@euandre.org>
;;; Copyright © 2022 gemmaro <gemmaro.dev@gmail.com> ;;; Copyright © 2022, 2024 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023 Maxim Cournoyer maxim.cournoyer@gmail.com> ;;; Copyright © 2023 Maxim Cournoyer maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -237,7 +237,7 @@ (define-public mdpo
(define-public po4a (define-public po4a
(package (package
(name "po4a") (name "po4a")
(version "0.69") (version "0.73")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/mquinson/po4a" (uri (string-append "https://github.com/mquinson/po4a"
@ -245,8 +245,7 @@ (define-public po4a
version "/po4a-" version ".tar.gz")) version "/po4a-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"15llrfdp4ilbrxy65hmmxka86xj0mrbqfiyzv715wrk16vqszm3w")) "184f0cv0w3xa301gwm74srn5s6g8qdn3ksip84wpg8xjihnzh63g"))))
(patches (search-patches "po4a-partial-texinfo-menu-fix.patch"))))
(build-system perl-build-system) (build-system perl-build-system)
(arguments (arguments
(list (list
@ -292,7 +291,7 @@ (define-public po4a
libxslt libxslt
;; For tests. ;; For tests.
docbook-sgml-4.1 docbook-sgml-4.1
docbook-xml-4.1.2 docbook-xml-4.5
perl-test-pod perl-test-pod
(texlive-updmap.cfg))) (texlive-updmap.cfg)))
(inputs (inputs

View file

@ -1,242 +0,0 @@
Submitted upstream: https://github.com/mquinson/po4a/pull/437
From 43db5c0b14ec2a8ba44d338bce024df87256457b Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Thu, 27 Jul 2023 17:44:49 -0400
Subject: [PATCH] lib: Texinfo: Translate partial menu node names.
Fixes <https://issues.guix.gnu.org/64881>.
* lib/Locale/Po4a/Texinfo.pm (translate_buffer_menuentry): Refine
regexp, so that it matches menu entries lacking a description.
Only call 'translate_buffer' on the description if it was provided.
* t/fmt/texinfo/partialmenus.trans: New file.
* t/fmt/texinfo/partialmenus.texi: Likewise.
* t/fmt/texinfo/partialmenus.pot: Likewise.
* t/fmt/texinfo/partialmenus.po: Likewise.
* t/fmt/texinfo/partialmenus.norm: Likewise.
* t/fmt-texinfo.t: Register the new 'partialmenus' test.
---
lib/Locale/Po4a/Texinfo.pm | 7 +++---
t/fmt-texinfo.t | 2 +-
t/fmt/texinfo/partialmenus.norm | 21 +++++++++++++++++
t/fmt/texinfo/partialmenus.po | 40 ++++++++++++++++++++++++++++++++
t/fmt/texinfo/partialmenus.pot | 40 ++++++++++++++++++++++++++++++++
t/fmt/texinfo/partialmenus.texi | 14 +++++++++++
t/fmt/texinfo/partialmenus.trans | 21 +++++++++++++++++
7 files changed, 141 insertions(+), 4 deletions(-)
create mode 100644 t/fmt/texinfo/partialmenus.norm
create mode 100644 t/fmt/texinfo/partialmenus.po
create mode 100644 t/fmt/texinfo/partialmenus.pot
create mode 100644 t/fmt/texinfo/partialmenus.texi
create mode 100644 t/fmt/texinfo/partialmenus.trans
diff --git a/lib/Locale/Po4a/Texinfo.pm b/lib/Locale/Po4a/Texinfo.pm
index b4750699..1c3a4bae 100644
--- a/lib/Locale/Po4a/Texinfo.pm
+++ b/lib/Locale/Po4a/Texinfo.pm
@@ -336,7 +336,7 @@ sub translate_buffer_menuentry {
my $translated_buffer = "";
- if ( $buffer =~ m/^(.*?)(::)\s+(.*)$/s
+ if ( $buffer =~ m/^(.*?)(::)(?:\s+(.*))?$/s
or $buffer =~ m/^(.*?: .*?)(\.)\s+(.*)$/s )
{
my ( $name, $sep, $description ) = ( $1, $2, $3 );
@@ -347,8 +347,9 @@ sub translate_buffer_menuentry {
$translated_buffer .= ' ' x ( $menu_sep_width - 1 - $l );
$l = $menu_sep_width - 1;
}
- ( $t, @e ) = $self->translate_buffer( $description, $no_wrap, @env );
-
+ if ($description) {
+ ( $t, @e ) = $self->translate_buffer( $description, $no_wrap, @env );
+ }
# Replace newlines with space for proper wrapping
# See https://github.com/mquinson/po4a/issues/122
$t =~ s/\n/ /sg;
diff --git a/t/fmt-texinfo.t b/t/fmt-texinfo.t
index 4b067e43..d9ed5df3 100644
--- a/t/fmt-texinfo.t
+++ b/t/fmt-texinfo.t
@@ -10,7 +10,7 @@ use Testhelper;
my @tests;
-for my $test (qw(longmenu comments tindex)) {
+for my $test (qw(longmenu partialmenus comments tindex)) {
push @tests,
{
'format' => 'texinfo',
diff --git a/t/fmt/texinfo/partialmenus.norm b/t/fmt/texinfo/partialmenus.norm
new file mode 100644
index 00000000..99240682
--- /dev/null
+++ b/t/fmt/texinfo/partialmenus.norm
@@ -0,0 +1,21 @@
+\input texinfo
+@c ===========================================================================
+@c
+@c This file was generated with po4a. Translate the source file.
+@c
+@c ===========================================================================
+
+
+@c These menus do not contain a description, which used to cause a
+@c Texinfo menu entry to not be translated.
+@menu
+* A menu entry without any description:: A menu entry without any
+ description
+* Optional menu name: The menu node:: Optional menu name: The menu node
+@end menu
+
+@node A menu entry without any description
+@chapter A menu entry without any description
+
+@node The menu node
+@chapter Optional menu name
diff --git a/t/fmt/texinfo/partialmenus.po b/t/fmt/texinfo/partialmenus.po
new file mode 100644
index 00000000..31a14443
--- /dev/null
+++ b/t/fmt/texinfo/partialmenus.po
@@ -0,0 +1,40 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# 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"
+"POT-Creation-Date: 2023-07-27 17:29-0400\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=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: chapter
+#: partialmenus.texi:8 partialmenus.texi:10 partialmenus.texi:11
+#, no-wrap
+msgid "A menu entry without any description"
+msgstr "A MENU ENTRY WITHOUT ANY DESCRIPTION"
+
+#. type: menuentry
+#: partialmenus.texi:8
+msgid "Optional menu name: The menu node"
+msgstr "OPTIONAL MENU NAME: THE MENU NODE"
+
+#. type: node
+#: partialmenus.texi:13
+#, no-wrap
+msgid "The menu node"
+msgstr "THE MENU NODE"
+
+#. type: chapter
+#: partialmenus.texi:14
+#, no-wrap
+msgid "Optional menu name"
+msgstr "OPTIONAL MENU NAME"
diff --git a/t/fmt/texinfo/partialmenus.pot b/t/fmt/texinfo/partialmenus.pot
new file mode 100644
index 00000000..0379f805
--- /dev/null
+++ b/t/fmt/texinfo/partialmenus.pot
@@ -0,0 +1,40 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# 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"
+"POT-Creation-Date: 2023-08-16 09:47-0400\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=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: chapter
+#: partialmenus.texi:8 partialmenus.texi:10 partialmenus.texi:11
+#, no-wrap
+msgid "A menu entry without any description"
+msgstr ""
+
+#. type: menuentry
+#: partialmenus.texi:8
+msgid "Optional menu name: The menu node"
+msgstr ""
+
+#. type: node
+#: partialmenus.texi:13
+#, no-wrap
+msgid "The menu node"
+msgstr ""
+
+#. type: chapter
+#: partialmenus.texi:14
+#, no-wrap
+msgid "Optional menu name"
+msgstr ""
diff --git a/t/fmt/texinfo/partialmenus.texi b/t/fmt/texinfo/partialmenus.texi
new file mode 100644
index 00000000..f8663a2b
--- /dev/null
+++ b/t/fmt/texinfo/partialmenus.texi
@@ -0,0 +1,14 @@
+\input texinfo
+
+@c These menus do not contain a description, which used to cause a
+@c Texinfo menu entry to not be translated.
+@menu
+* A menu entry without any description::
+* Optional menu name: The menu node::
+@end menu
+
+@node A menu entry without any description
+@chapter A menu entry without any description
+
+@node The menu node
+@chapter Optional menu name
diff --git a/t/fmt/texinfo/partialmenus.trans b/t/fmt/texinfo/partialmenus.trans
new file mode 100644
index 00000000..0ef742a1
--- /dev/null
+++ b/t/fmt/texinfo/partialmenus.trans
@@ -0,0 +1,21 @@
+\input texinfo
+@c ===========================================================================
+@c
+@c This file was generated with po4a. Translate the source file.
+@c
+@c ===========================================================================
+
+
+@c These menus do not contain a description, which used to cause a
+@c Texinfo menu entry to not be translated.
+@menu
+* A MENU ENTRY WITHOUT ANY DESCRIPTION:: A MENU ENTRY WITHOUT ANY
+ DESCRIPTION
+* OPTIONAL MENU NAME: THE MENU NODE:: OPTIONAL MENU NAME: THE MENU NODE
+@end menu
+
+@node A MENU ENTRY WITHOUT ANY DESCRIPTION
+@chapter A MENU ENTRY WITHOUT ANY DESCRIPTION
+
+@node THE MENU NODE
+@chapter OPTIONAL MENU NAME
base-commit: 5b1cd768afdf4e9445812c5d43428495a0fde3c6
--
2.41.0