texinfo-commits
[Top][All Lists]
Advanced

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

branch master updated: * tp/Texinfo/Convert/HTML.pm (nodes_tree): use fi


From: Patrice Dumas
Subject: branch master updated: * tp/Texinfo/Convert/HTML.pm (nodes_tree): use first non Top node for Top node next if there is no menu information. Complete node prev of th eTop next node.
Date: Sun, 21 Feb 2021 07:54:31 -0500

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 0705137  * tp/Texinfo/Convert/HTML.pm (nodes_tree): use first non Top 
node for Top node next if there is no menu information. Complete node prev of 
th eTop next node.
0705137 is described below

commit 0705137fccbd6791c873dc7ca1c5c001f0fb9ab4
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sun Feb 21 13:53:52 2021 +0100

    * tp/Texinfo/Convert/HTML.pm (nodes_tree): use first non Top node
    for Top node next if there is no menu information.
    Complete node prev of th eTop next node.
---
 tp/Texinfo/Structuring.pm          | 5 +++++
 tp/t/results/sectioning/no_menu.pl | 8 +++++---
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/tp/Texinfo/Structuring.pm b/tp/Texinfo/Structuring.pm
index eba90da..bf93de6 100644
--- a/tp/Texinfo/Structuring.pm
+++ b/tp/Texinfo/Structuring.pm
@@ -611,15 +611,20 @@ sub nodes_tree($)
         }
       } else {
         # Special case for Top node.
+        # use first menu entry if available as next for Top
         if ($node->{'menu_child'}) {
           $node->{'node_next'} = $node->{'menu_child'};
           if (!$node->{'menu_child'}->{'extra'}->{'manual_content'}) {
             $node->{'menu_child'}->{'node_prev'} = $node;
           }
         } else {
+          # use the first non top node as next for Top
           foreach my $first_non_top_node (@{$self->{'nodes'}}) {
             if ($first_non_top_node ne $node) {
               $node->{'node_next'} = $first_non_top_node;
+              if (scalar(@{$first_non_top_node->{'extra'}->{'nodes_manuals'}}) 
== 1) {
+                $first_non_top_node->{'node_prev'} = $node;
+              }
               last;
             }
           }
diff --git a/tp/t/results/sectioning/no_menu.pl 
b/tp/t/results/sectioning/no_menu.pl
index 34baebd..d2a7410 100644
--- a/tp/t/results/sectioning/no_menu.pl
+++ b/tp/t/results/sectioning/no_menu.pl
@@ -526,6 +526,7 @@ $result_nodes{'no_menu'} = {
       'node_prev' => {},
       'node_up' => {}
     },
+    'node_prev' => {},
     'node_up' => {}
   }
 };
@@ -533,6 +534,7 @@ 
$result_nodes{'no_menu'}{'node_next'}{'node_next'}{'node_next'}{'node_prev'} = $
 $result_nodes{'no_menu'}{'node_next'}{'node_next'}{'node_next'}{'node_up'} = 
$result_nodes{'no_menu'};
 $result_nodes{'no_menu'}{'node_next'}{'node_next'}{'node_prev'} = 
$result_nodes{'no_menu'}{'node_next'};
 $result_nodes{'no_menu'}{'node_next'}{'node_next'}{'node_up'} = 
$result_nodes{'no_menu'};
+$result_nodes{'no_menu'}{'node_next'}{'node_prev'} = $result_nodes{'no_menu'};
 $result_nodes{'no_menu'}{'node_next'}{'node_up'} = $result_nodes{'no_menu'};
 
 $result_menus{'no_menu'} = {
@@ -562,7 +564,7 @@ File: ,  Node: Top,  Next: c1,  Up: (dir)
 * c3::
 
 
-File: ,  Node: c1,  Next: c2,  Up: Top
+File: ,  Node: c1,  Next: c2,  Prev: Top,  Up: Top
 
 1 c1
 ****
@@ -584,8 +586,8 @@ File: ,  Node: c3,  Prev: c2,  Up: Top
 Tag Table:
 Node: Top27
 Node: c1103
-Node: c2156
-Node: c3220
+Node: c2168
+Node: c3232
 
 End Tag Table
 



reply via email to

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