texinfo-commits
[Top][All Lists]
Advanced

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

branch master updated: Set CHECK_HTMLXREF to get external manuals in EPU


From: Patrice Dumas
Subject: branch master updated: Set CHECK_HTMLXREF to get external manuals in EPUB
Date: Fri, 05 Aug 2022 06:32:58 -0400

This is an automated email from the git hooks/post-receive script.

pertusus pushed a commit to branch master
in repository texinfo.

The following commit(s) were added to refs/heads/master by this push:
     new d38c90eef7 Set CHECK_HTMLXREF to get external manuals in EPUB
d38c90eef7 is described below

commit d38c90eef7a79409dff511c2a517af9112393e6c
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Fri Aug 5 12:32:49 2022 +0200

    Set CHECK_HTMLXREF to get external manuals in EPUB
    
    * tp/ext/epub3.pm: external manuals need to be resolved to
    absolute URL, or the resource be present in the EPUB container
    which is not correct for another manual.  So set
    CHECK_HTMLXREF to have a warning if a manual has no absolute
    URL.
    Also set EXTERNAL_CROSSREF_EXTENSION to html.
---
 ChangeLog       | 11 +++++++++++
 tp/ext/epub3.pm | 29 +++++++++++++++++++++++++++--
 2 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 390283c1ed..fb799e33ab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2022-08-05  Patrice Dumas  <pertusus@free.fr>
+
+       Set CHECK_HTMLXREF to get external manuals in EPUB
+
+       * tp/ext/epub3.pm: external manuals need to be resolved to
+       absolute URL, or the resource be present in the EPUB container
+       which is not correct for another manual.  So set
+       CHECK_HTMLXREF to have a warning if a manual has no absolute
+       URL.
+       Also set EXTERNAL_CROSSREF_EXTENSION to html.
+
 2022-08-05  Patrice Dumas  <pertusus@free.fr>
 
        Replace HTMLXREF by HTMLXREF_FILE and add HTMLXREF_MODE
diff --git a/tp/ext/epub3.pm b/tp/ext/epub3.pm
index 8961f52c1c..5ca55c4eb1 100644
--- a/tp/ext/epub3.pm
+++ b/tp/ext/epub3.pm
@@ -31,11 +31,29 @@
 # the navigation information?
 # Use the navigation information as a page?  Tests show that it is not very 
good.
 # something special for indices?
-# cross manual references?  The HTML XREF specification does not make sense
-# for EPUB.
 # list of tables/list of floats
 # add landmarks?  Examples: epub:type="toc", epub:type="loi" (list of 
illustrations)
 #                           epub:type="bodymatter" (Start of Content)
+#
+# cross manual references
+# The links that point to the EPUB container (or maybe any
+# relative link, the standard is not easy to understand) need
+# to be in the container.  Other <a href= ...> links are foreign
+# resources, and are ok.  Therefore, it is better to specify
+# the external manuals as web HTML hyperlinks, and not as manuals
+# in a collection, as there is no possibility to have more than one
+# manual in an EPUB container, both because it is unclear how
+# to do that in EPUB, and the EPUB generating code put each manual
+# in an epub container file.  Therefore we set a warning for external
+# manuals not resolved using htmlxref.
+# Should there be a possibility to group manuals in a collection?
+# It seems that putting more than one manual in an EPUB container
+# is incorrect.  Could it be possible to refer to an manual in
+# an epub container, and to a specific file in that container?
+# (In that case, NODE_FILES would probably need to be set).
+# For now, external manuals not found in htmlxref are resolved
+# to a path that makes no sense:
+# EPUB/Pod-Simple-Texinfo_epub3/index.html
 
 use strict;
 
@@ -115,6 +133,13 @@ texinfo_set_from_init_file('COPIABLE_LINKS', 0);
 # also used hardcoded for the container.
 texinfo_set_from_init_file('EXTENSION', 'xhtml');
 
+# It is better for external manuals to be external resources with
+# an absolute URL, so we warn if a manual is not found through htmlxref.
+texinfo_set_from_init_file('CHECK_HTMLXREF', 1);
+
+# Better use html for external manuals than the xhtml EXTENSION
+texinfo_set_from_init_file('EXTERNAL_CROSSREF_EXTENSION', 'html');
+
 texinfo_set_from_init_file('JS_WEBLABELS_FILE', 'js_licenses.xhtml');
 
 texinfo_set_from_init_file('TOP_FILE', undef);



reply via email to

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