texinfo-commits
[Top][All Lists]
Advanced

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

branch master updated: Consider non ascii spaces to be characters for no


From: Patrice Dumas
Subject: branch master updated: Consider non ascii spaces to be characters for node name normalization
Date: Thu, 18 Aug 2022 15:49:55 -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 bde8869873 Consider non ascii spaces to be characters for node name 
normalization
bde8869873 is described below

commit bde88698737b1fbd8302e72ef847db906aa808b4
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Thu Aug 18 21:49:43 2022 +0200

    Consider non ascii spaces to be characters for node name normalization
    
    * tp/Texinfo/Convert/NodeNameNormalization.pm (_unicode_to_protected)
    (_unicode_to_file_name, _unicode_to_transliterate):
    use /a to consider non ascii spaces as characters.  Use /s as regex
    modifier to catch special spaces considered as newlines.
    
    * tp/Texinfo/Convert/NodeNameNormalization.pm: remove /o regex
    modifiers.
---
 ChangeLog                                          |  12 ++
 tp/Texinfo/Convert/NodeNameNormalization.pm        |  25 ++-
 tp/t/nodenormalization.t                           |  34 +--
 .../sectioning/in_menu_only_special_spaces_node.pl | 236 +++++++++++----------
 .../results/sectioning/only_special_spaces_node.pl | 147 +++++++------
 .../reference_to_only_special_spaces_node.pl       |  87 +++++---
 tp/t/results/sectioning/special_spaces_in_nodes.pl | 110 +++++-----
 7 files changed, 361 insertions(+), 290 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ae7053d74f..f617064714 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2022-08-17  Patrice Dumas  <pertusus@free.fr>
+
+       Consider non ascii spaces to be characters for node name normalization
+
+       * tp/Texinfo/Convert/NodeNameNormalization.pm (_unicode_to_protected)
+       (_unicode_to_file_name, _unicode_to_transliterate):
+       use /a to consider non ascii spaces as characters.  Use /s as regex
+       modifier to catch special spaces considered as newlines.
+
+       * tp/Texinfo/Convert/NodeNameNormalization.pm: remove /o regex
+       modifiers.
+
 2022-08-17  Patrice Dumas  <pertusus@free.fr>
 
        Multiple consecutive space transformed to one in node normalization
diff --git a/tp/Texinfo/Convert/NodeNameNormalization.pm 
b/tp/Texinfo/Convert/NodeNameNormalization.pm
index 25ede17e3c..50a93f2bda 100644
--- a/tp/Texinfo/Convert/NodeNameNormalization.pm
+++ b/tp/Texinfo/Convert/NodeNameNormalization.pm
@@ -25,6 +25,10 @@ package Texinfo::Convert::NodeNameNormalization;
 use 5.00405;
 use strict;
 
+# stop \s from matching non-ASCII spaces, etc.  \p{...} can still be
+# used to match Unicode character classes.
+use if $] >= 5.014, re => '/a';
+
 use Unicode::Normalize;
 use Text::Unidecode;
 
@@ -134,11 +138,13 @@ sub _unicode_to_protected($)
   my $text = shift;
   my $result = '';
   while ($text ne '') {
-    if ($text =~ s/^([A-Za-z0-9]+)//o) {
+    if ($text =~ s/^([A-Za-z0-9]+)//) {
       $result .= $1;
-    } elsif ($text =~ s/^ +//o) {
+    } elsif ($text =~ s/^ +//) {
       $result .= '-';
-    } elsif ($text =~ s/^(.)//o) {
+    # with /a some special spaces are not caught without /s, maybe because 
they are
+    # considered as newlines
+    } elsif ($text =~ s/^(.)//s) {
       $result .= _protect_unicode_char($1);
     } else {
       warn "Bug: unknown character _unicode_to_protected (likely in infinite 
loop)\n";
@@ -154,11 +160,12 @@ sub _unicode_to_file_name($)
   my $text = shift;
   my $result = '';
   while ($text ne '') {
-    if ($text =~ s/^([A-Za-z0-9_\.\-]+)//o) {
+    if ($text =~ s/^([A-Za-z0-9_\.\-]+)//) {
       $result .= $1;
-    } elsif ($text =~ s/^ +//o) {
+    } elsif ($text =~ s/^ +//) {
       $result .= '-';
-    } elsif ($text =~ s/^(.)//o) {
+    # /s is specified to caught special spaces considered as newlines too
+    } elsif ($text =~ s/^(.)//s) {
       $result .= _protect_unicode_char($1);
     } else {
       warn "Bug: unknown character _unicode_to_file_name (likely in infinite 
loop)\n";
@@ -178,9 +185,9 @@ sub _unicode_to_transliterate($;$)
   }
   my $result = '';
   while ($text ne '') {
-    if ($text =~ s/^([A-Za-z0-9 ]+)//o) {
+    if ($text =~ s/^([A-Za-z0-9 ]+)//) {
       $result .= $1;
-    } elsif ($text =~ s/^(.)//o) {
+    } elsif ($text =~ s/^(.)//s) {
       my $char = $1;
       if 
(exists($Texinfo::Convert::Unicode::unicode_simple_character_map{$char})) {
         $result .= $char;
@@ -241,7 +248,7 @@ sub _convert($;$)
   my $result = '';
   if (defined($element->{'text'})) {
     $result = $element->{'text'};
-    $result =~ s/\s+/ /go;
+    $result =~ s/\s+/ /g;
     $result = uc($result) if ($in_sc);
   }
   if ($element->{'cmdname'}) {
diff --git a/tp/t/nodenormalization.t b/tp/t/nodenormalization.t
index c5393198d4..204a07b54c 100644
--- a/tp/t/nodenormalization.t
+++ b/tp/t/nodenormalization.t
@@ -149,21 +149,31 @@ ok($normalized_manual =~ /^[\w\-]+$/, 'normalized tree is 
a valid id');
 
 # Now test some node normalizations
 
-my $texi_line = 'A @sc{sc} accents @"i @"{@dotless{i}} @`{@=E} @l{} @,{@\'C} 
@={@,{@~{n}}} @v{@\'{r}} @={@~{@dotless{i}}} @"y @dotless{i} @dotless{j} @,{C} 
@ogonek{E} @udotaccent{a} @tieaccent{a} @dotaccent{a} characters @l{} 
@exclamdown{} @aa{} @oe{} @comma{} @error{} @today{} @dots{} @enddots{} no 
brace commands @@ @: @. @  @* @} signs  -- --- `` \'\' !_"#$%&\'()*+-. 
/;<=>?[\\]^_`|~';
+SKIP: {
 
-my $line_tree = $parser->parse_texi_line($texi_line);
-my $normalized_line = normalize_node($line_tree);
-is ($normalized_line,
-'A-SC-accents-_00ef-_00ef-_1e14-_0142-_1e08-_0146_0303_0304-_0155_030c-_0129_0304-_00ff-_0131-_0237-_00c7-_0118-_1ea1-a_0361-_0227-characters-_0142-_00a1-_00e5-_0153-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e',
+  skip 'Perl too old: /a regex flag needed', 3 if ($] < 5.014);
+
+  # \x{2000}: EN QUAD space
+  # \x{a0}: NO-BREAK SPACE
+  # \x{180e}: MONGOLIAN VOWEL SEPARATOR
+  # \x{2003}: EM SPACE
+  # \x{85}: NEXT LINE (NEL)
+  my $texi_line = ' A @sc{sc} accents @"i @"{@dotless{i}} @`{@=E} @l{} 
@,{@\'C} @={@,{@~{n}}} @v{@\'{r}} @={@~{@dotless{i}}} @"y @dotless{i} 
@dotless{j} @,{C} @ogonek{E} @udotaccent{a} @tieaccent{a} @dotaccent{a} 
characters @l{} @exclamdown{} @aa{} @oe{} @comma{} @error{} @today{} @dots{} 
@enddots{} no brace commands @@ @: @. @       @* @} signs  -- --- `` \'\' 
!_"#$%&\'()*+-. /;<=>?[\\]^_`|~ spaces     '."\f \n 
\x{a0}\x{2003}\x{2000}\x{85}\x{180e}\n";
+
+  my $line_tree = $parser->parse_texi_line($texi_line);
+  my $normalized_line = normalize_node($line_tree);
+  is ($normalized_line,
+  
'-A-SC-accents-_00ef-_00ef-_1e14-_0142-_1e08-_0146_0303_0304-_0155_030c-_0129_0304-_00ff-_0131-_0237-_00c7-_0118-_1ea1-a_0361-_0227-characters-_0142-_00a1-_00e5-_0153-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e-spaces-_00a0_2003_2002_0085_180e-',
   'normalized complex line');
-my $transliterated_line = transliterate_texinfo($line_tree);
-is ($transliterated_line,
-'A-SC-accents-i-i-E-l-C-n-r-i-y-i-j-C-E-a-a-a-characters-l-_00a1-aa-oe-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e',
- 'transliterated complex line');
-my $transliterated_line_no_unidecode = transliterate_texinfo($line_tree, 1);
-is ($transliterated_line_no_unidecode,
-'A-SC-accents-i-i-_1e14-l-_1e08-n-r-i-y-i-j-C-E-a-a-a-characters-l-_00a1-aa-oe-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e',
+  my $transliterated_line = transliterate_texinfo($line_tree);
+  is ($transliterated_line,
+  
'-A-SC-accents-i-i-E-l-C-n-r-i-y-i-j-C-E-a-a-a-characters-l-_00a1-aa-oe-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e-spaces-',
+  'transliterated complex line');
+  my $transliterated_line_no_unidecode = transliterate_texinfo($line_tree, 1);
+  is ($transliterated_line_no_unidecode,
+'-A-SC-accents-i-i-_1e14-l-_1e08-n-r-i-y-i-j-C-E-a-a-a-characters-l-_00a1-aa-oe-_002c-error_002d_002d_003e-_2026-_002e_002e_002e-no-brace-commands-_0040-_002e-_007d-signs-_002d_002d-_002d_002d_002d-_0060_0060-_0027_0027-_0021_005f_0022_0023_0024_0025_0026_0027_0028_0029_002a_002b_002d_002e-_002f_003b_003c_003d_003e_003f_005b_005c_005d_005e_005f_0060_007c_007e-spaces-_00a0_2003_2002_0085_180e-',
   'transliterated complex line no unidecode');
+}
 
 my $top_no_space = 'tOp';
 my $top_tree = $parser->parse_texi_line($top_no_space);
diff --git a/tp/t/results/sectioning/in_menu_only_special_spaces_node.pl 
b/tp/t/results/sectioning/in_menu_only_special_spaces_node.pl
index badb1646a2..b6134b8fa1 100644
--- a/tp/t/results/sectioning/in_menu_only_special_spaces_node.pl
+++ b/tp/t/results/sectioning/in_menu_only_special_spaces_node.pl
@@ -148,7 +148,7 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => "-"
+                  "normalized" => "_2002_2003_2002"
                 }
               },
               "parent" => {},
@@ -294,7 +294,7 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => "-"
+                  "normalized" => "_0085_00a0_1680"
                 }
               },
               "parent" => {},
@@ -350,7 +350,7 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => "_180e-"
+                  "normalized" => "_180e_2003"
                 }
               },
               "parent" => {},
@@ -406,7 +406,7 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => "-"
+                  "normalized" => 
"_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000"
                 }
               },
               "parent" => {},
@@ -497,14 +497,18 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
       "cmdname" => "node",
       "contents" => [],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => "_2002_2003_2002"
           }
         ],
+        "normalized" => "_2002_2003_2002",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -685,14 +689,18 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
       "cmdname" => "node",
       "contents" => [],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => "_0085_00a0_1680"
           }
         ],
+        "normalized" => "_0085_00a0_1680",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -763,10 +771,10 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => "_180e-"
+            "normalized" => "_180e_2003"
           }
         ],
-        "normalized" => "_180e-",
+        "normalized" => "_180e_2003",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -835,14 +843,18 @@ $result_trees{'in_menu_only_special_spaces_node'} = {
         }
       ],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => 
"_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000"
           }
         ],
+        "normalized" => 
"_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -980,6 +992,7 @@ 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[2]{"contents"}[3]{
 $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[2]{"parent"} = 
$result_trees{'in_menu_only_special_spaces_node'};
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"args"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3];
+$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"extra"}{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0];
 $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[3]{"parent"} = 
$result_trees{'in_menu_only_special_spaces_node'};
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[4]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[4]{"args"}[0];
@@ -1000,6 +1013,7 @@ 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[8]{"contents"}[0]{
 $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[8]{"parent"} = 
$result_trees{'in_menu_only_special_spaces_node'};
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"args"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9];
+$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"extra"}{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0];
 $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[9]{"parent"} = 
$result_trees{'in_menu_only_special_spaces_node'};
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[10]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[10]{"args"}[0];
@@ -1018,6 +1032,7 @@ 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[12]{"parent"} = $r
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"args"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13];
+$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"extra"}{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0];
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0];
 $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[13]{"parent"} = 
$result_trees{'in_menu_only_special_spaces_node'};
 
$result_trees{'in_menu_only_special_spaces_node'}{"contents"}[14]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'in_menu_only_special_spaces_node'}{"contents"}[14]{"args"}[0];
@@ -1117,7 +1132,9 @@ $result_sectioning{'in_menu_only_special_spaces_node'} = {
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {},
+                  'extra' => {
+                    'normalized' => '_2002_2003_2002'
+                  },
                   'structure' => {}
                 }
               },
@@ -1168,7 +1185,10 @@ $result_sectioning{'in_menu_only_special_spaces_node'} = 
{
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {}
+                  'extra' => {
+                    'normalized' => '_0085_00a0_1680'
+                  },
+                  'structure' => {}
                 }
               },
               'structure' => {
@@ -1186,7 +1206,7 @@ $result_sectioning{'in_menu_only_special_spaces_node'} = {
                 'associated_node' => {
                   'cmdname' => 'node',
                   'extra' => {
-                    'normalized' => '_180e-'
+                    'normalized' => '_180e_2003'
                   },
                   'structure' => {}
                 }
@@ -1205,7 +1225,10 @@ $result_sectioning{'in_menu_only_special_spaces_node'} = 
{
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {}
+                  'extra' => {
+                    'normalized' => 
'_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000'
+                  },
+                  'structure' => {}
                 }
               },
               'structure' => {
@@ -1275,10 +1298,10 @@ $result_nodes{'in_menu_only_special_spaces_node'} = {
           'cmdname' => 'chapter',
           'extra' => {},
           'structure' => {
-            'section_number' => 5
+            'section_number' => 1
           }
         },
-        'normalized' => '_180e-'
+        'normalized' => '_2002_2003_2002'
       },
       'structure' => {
         'node_next' => {
@@ -1288,45 +1311,21 @@ $result_nodes{'in_menu_only_special_spaces_node'} = {
               'cmdname' => 'chapter',
               'extra' => {},
               'structure' => {
-                'section_number' => 6
-              }
-            }
-          }
-        },
-        'node_prev' => {
-          'cmdname' => 'node',
-          'extra' => {
-            'associated_section' => {
-              'cmdname' => 'chapter',
-              'extra' => {},
-              'structure' => {
-                'section_number' => 4
+                'section_number' => 2
               }
             }
           }
         },
+        'node_prev' => {},
         'node_up' => {}
       }
     },
-    'node_next' => {
-      'cmdname' => 'node',
-      'extra' => {
-        'associated_section' => {
-          'cmdname' => 'chapter',
-          'extra' => {},
-          'structure' => {
-            'section_number' => 1
-          }
-        }
-      },
-      'structure' => {
-        'node_prev' => {}
-      }
-    }
+    'node_next' => {}
   }
 };
+$result_nodes{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'node_prev'}
 = $result_nodes{'in_menu_only_special_spaces_node'};
 
$result_nodes{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'node_up'}
 = $result_nodes{'in_menu_only_special_spaces_node'};
-$result_nodes{'in_menu_only_special_spaces_node'}{'structure'}{'node_next'}{'structure'}{'node_prev'}
 = $result_nodes{'in_menu_only_special_spaces_node'};
+$result_nodes{'in_menu_only_special_spaces_node'}{'structure'}{'node_next'} = 
$result_nodes{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'};
 
 $result_menus{'in_menu_only_special_spaces_node'} = {
   'cmdname' => 'node',
@@ -1337,9 +1336,48 @@ $result_menus{'in_menu_only_special_spaces_node'} = {
     'menu_child' => {
       'cmdname' => 'node',
       'extra' => {
-        'normalized' => '_180e-'
+        'normalized' => '_2002_2003_2002'
       },
       'structure' => {
+        'menu_next' => {
+          'cmdname' => 'node',
+          'extra' => {
+            'normalized' => '_0085_00a0_1680'
+          },
+          'structure' => {
+            'menu_next' => {
+              'cmdname' => 'node',
+              'extra' => {
+                'normalized' => '_180e_2003'
+              },
+              'structure' => {
+                'menu_next' => {
+                  'cmdname' => 'node',
+                  'extra' => {
+                    'normalized' => 
'_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000'
+                  },
+                  'structure' => {
+                    'menu_prev' => {},
+                    'menu_up' => {},
+                    'menu_up_hash' => {
+                      'Top' => 1
+                    }
+                  }
+                },
+                'menu_prev' => {},
+                'menu_up' => {},
+                'menu_up_hash' => {
+                  'Top' => 1
+                }
+              }
+            },
+            'menu_prev' => {},
+            'menu_up' => {},
+            'menu_up_hash' => {
+              'Top' => 1
+            }
+          }
+        },
         'menu_up' => {},
         'menu_up_hash' => {
           'Top' => 1
@@ -1348,6 +1386,12 @@ $result_menus{'in_menu_only_special_spaces_node'} = {
     }
   }
 };
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_prev'}
 = 
$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_next'};
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_up'}
 = $result_menus{'in_menu_only_special_spaces_node'};
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_prev'}
 = 
$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'};
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_next'}{'structure'}{'menu_up'}
 = $result_menus{'in_menu_only_special_spaces_node'};
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_prev'}
 = $result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'};
+$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_next'}{'structure'}{'menu_up'}
 = $result_menus{'in_menu_only_special_spaces_node'};
 
$result_menus{'in_menu_only_special_spaces_node'}{'structure'}{'menu_child'}{'structure'}{'menu_up'}
 = $result_menus{'in_menu_only_special_spaces_node'};
 
 $result_errors{'in_menu_only_special_spaces_node'} = [
@@ -1369,15 +1413,6 @@ $result_errors{'in_menu_only_special_spaces_node'} = [
     'text' => 'empty node name in menu entry',
     'type' => 'error'
   },
-  {
-    'error_line' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 15,
-    'macro' => '',
-    'text' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'",
-    'type' => 'error'
-  },
   {
     'error_line' => 'empty argument in @node
 ',
@@ -1395,51 +1430,6 @@ $result_errors{'in_menu_only_special_spaces_node'} = [
     'macro' => '',
     'text' => 'empty argument in @node',
     'type' => 'error'
-  },
-  {
-    'error_line' => "empty node name after expansion `\x{85}\x{a0}\x{1680}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 24,
-    'macro' => '',
-    'text' => "empty node name after expansion `\x{85}\x{a0}\x{1680}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "empty node name after expansion 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 30,
-    'macro' => '',
-    'text' => "empty node name after expansion 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "\@menu reference to nonexistent node 
`\x{2000}\x{2001}\x{2002}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 6,
-    'macro' => '',
-    'text' => "\@menu reference to nonexistent node 
`\x{2000}\x{2001}\x{2002}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "\@menu reference to nonexistent node 
`\x{85}\x{a0}\x{1680}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 9,
-    'macro' => '',
-    'text' => "\@menu reference to nonexistent node `\x{85}\x{a0}\x{1680}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "\@menu reference to nonexistent node 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'
-",
-    'file_name' => 'in_menu_only_special_spaces_node.texi',
-    'line_nr' => 11,
-    'macro' => '',
-    'text' => "\@menu reference to nonexistent node 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'",
-    'type' => 'error'
   }
 ];
 
@@ -1451,7 +1441,7 @@ $result_floats{'in_menu_only_special_spaces_node'} = {};
 $result_converted{'info'}->{'in_menu_only_special_spaces_node'} = 'This is , 
produced from in_menu_only_special_spaces_node.texi.
 
 
-File: ,  Node: Top,  Next: ,  Up: (dir)
+File: ,  Node: Top,  Next:    ,  Up: (dir)
 
 top
 ***
@@ -1465,6 +1455,9 @@ top
 * ᠎ ::
 *        

   ::
 
+
+File: ,  Node:    ,  Next: ,  Prev: Top,  Up: Top
+
 1 EN QUAD| | EM QUAD| | EN SPACE| |
 ***********************************
 
@@ -1474,15 +1467,21 @@ top
 3 CARRIAGE RETURN|'."\r".'|
 ********************
 
+
+File: ,  Node: …  ,  Next: ᠎ ,  Prev: ,  Up: Top
+
 4 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |
 **********************************************************
 
 
-File: ,  Node: ᠎ ,  Next: ,  Prev: ,  Up: Top
+File: ,  Node: ᠎ ,  Next:        

   ,  Prev: …  ,  Up: Top
 
 5 MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |
 ******************************************
 
+
+File: ,  Node:        

   ,  Prev: ᠎ ,  Up: Top
+
 6 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| 
| PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH 
SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | IDEOGRAPHIC 
SPACE| |
 
******************************************************************************************************************************************************************************************************************************************************
 
@@ -1490,7 +1489,10 @@ File: ,  Node: ᠎ ,  Next: ,  Prev: ,  Up: Top
 
 Tag Table:
 Node: Top64
-Node: ᠎ 580
+Node:    227
+Node: …  525
+Node: ᠎ 708
+Node:        

   895
 
 End Tag Table
 
@@ -1523,25 +1525,25 @@ 
$result_converted{'html'}->{'in_menu_only_special_spaces_node'} = '<!DOCTYPE htm
 <div class="top-level-extent" id="Top">
 <div class="nav-panel">
 <p>
-Next: <a href="" accesskey="n" rel="next">EN QUAD| | EM QUAD| | EN SPACE| 
|</a> &nbsp; </p>
+Next: <a href="#g_t_2002_2003_2002" accesskey="n" rel="next">EN QUAD| | EM 
QUAD| | EN SPACE| |</a> &nbsp; </p>
 </div>
 <h1 class="top" id="top">top</h1>
 
 
 
 <ul class="mini-toc">
-<li>EN QUAD| | EM QUAD| | EN SPACE| |</li>
+<li><a href="#g_t_2002_2003_2002" accesskey="1">EN QUAD| | EM QUAD| | EN 
SPACE| |</a></li>
 <li>CHARACTER TABULATION|      | FORM FEED|&#12;| LINE TABULATION||</li>
 <li>CARRIAGE RETURN|'."\r".'|</li>
-<li>NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</li>
-<li><a href="#g_t_180e-" accesskey="5">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| 
|</a></li>
-<li>THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE 
SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE SEPARATOR|
| 
PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | 
IDEOGRAPHIC SPACE| |</li>
+<li><a href="#g_t_0085_00a0_1680" accesskey="4">NEXT LINE (NEL)|…| NO-BREAK 
SPACE| | OGHAM SPACE MARK| |</a></li>
+<li><a href="#g_t_180e_2003" accesskey="5">MONGOLIAN VOWEL SEPARATOR|᠎| EM 
SPACE| |</a></li>
+<li><a href="#g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000" 
accesskey="6">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | 
FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE 
SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM 
MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a></li>
 </ul>
 <hr>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" id="g_t_2002_2003_2002">
 <div class="nav-panel">
 <p>
-Previous: <a href="#Top" accesskey="p" rel="prev">top</a> &nbsp; </p>
+Next: <a href="" accesskey="n" rel="next">CHARACTER TABULATION|        | FORM 
FEED|&#12;| LINE TABULATION||</a>, Previous: <a href="#Top" accesskey="p" 
rel="prev">top</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> &nbsp; 
</p>
 </div>
 <h2 class="chapter" 
id="EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c">1 EN QUAD| | EM 
QUAD| | EN SPACE| |</h2>
 
@@ -1565,31 +1567,31 @@ Previous: <a href="#Top" accesskey="p" 
rel="prev">top</a> &nbsp; </p>
 
 <hr>
 </div>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" id="g_t_0085_00a0_1680">
 <div class="nav-panel">
 <p>
- &nbsp; </p>
+Next: <a href="#g_t_180e_2003" accesskey="n" rel="next">MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</a>, Previous: <a href="" accesskey="p" 
rel="prev">CARRIAGE RETURN|'."\r".'|</a>, Up: <a href="#Top" accesskey="u" 
rel="up">top</a> &nbsp; </p>
 </div>
-<h2 class="chapter" 
id="NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c">4
 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</h2>
+<h2 class="chapter" 
id="NEXT-LINE-_0028NEL_0029_007c_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c">4
 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</h2>
 
 <hr>
 </div>
-<div class="chapter-level-extent" id="g_t_180e-">
+<div class="chapter-level-extent" id="g_t_180e_2003">
 <div class="nav-panel">
 <p>
-Next: <a href="" accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM 
SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | 
HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | 
MEDIUM MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a>, Previous: <a href="" 
accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| 
|</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> &nbsp; </p>
+Next: <a 
href="#g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000" 
accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| | FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE 
SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM 
MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a>, Previous: <a 
href="#g_t_0085_00a0_1680" accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK 
SPACE| | OGHAM SPACE MARK| |</a>, Up: <a hre [...]
 </div>
 <h2 class="chapter" 
id="MONGOLIAN-VOWEL-SEPARATOR_007c_007c-EM-SPACE_007c-_007c">5 MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</h2>
 
 <hr>
 </div>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" 
id="g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000">
 <div class="nav-panel">
 <p>
- &nbsp; </p>
+Previous: <a href="#g_t_180e_2003" accesskey="p" rel="prev">MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> 
&nbsp; </p>
 </div>
 
-<h2 class="chapter" 
id="THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c-FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c-HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c-NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c">6
 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| | 
PUNCTUATION SPACE| [...]
+<h2 class="chapter" 
id="THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c-FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c-HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c_000a_007c-PARAGRAPH-SEPARATOR_007c_000a_000a_007c-NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c_005b_003f_005d_007c-IDEOGRAPHIC-SPACE_007c-_007c">6
 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE  [...]
 
 </div>
 </div>
diff --git a/tp/t/results/sectioning/only_special_spaces_node.pl 
b/tp/t/results/sectioning/only_special_spaces_node.pl
index fb8398b22f..92a1b48045 100644
--- a/tp/t/results/sectioning/only_special_spaces_node.pl
+++ b/tp/t/results/sectioning/only_special_spaces_node.pl
@@ -122,14 +122,18 @@ $result_trees{'only_special_spaces_node'} = {
       "cmdname" => "node",
       "contents" => [],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => "_2002_2003_2002"
           }
         ],
+        "normalized" => "_2002_2003_2002",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -310,14 +314,18 @@ $result_trees{'only_special_spaces_node'} = {
       "cmdname" => "node",
       "contents" => [],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => "_0085_00a0_1680"
           }
         ],
+        "normalized" => "_0085_00a0_1680",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -388,10 +396,10 @@ $result_trees{'only_special_spaces_node'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => "_180e-"
+            "normalized" => "_180e_2003"
           }
         ],
-        "normalized" => "_180e-",
+        "normalized" => "_180e_2003",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -460,14 +468,18 @@ $result_trees{'only_special_spaces_node'} = {
         }
       ],
       "extra" => {
+        "node_content" => [
+          {}
+        ],
         "nodes_manuals" => [
           {
             "node_content" => [
               {}
             ],
-            "normalized" => "-"
+            "normalized" => 
"_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000"
           }
         ],
+        "normalized" => 
"_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -540,6 +552,7 @@ 
$result_trees{'only_special_spaces_node'}{"contents"}[2]{"contents"}[0]{"parent"
 $result_trees{'only_special_spaces_node'}{"contents"}[2]{"parent"} = 
$result_trees{'only_special_spaces_node'};
 
$result_trees{'only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[3]{"args"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"parent"} 
= $result_trees{'only_special_spaces_node'}{"contents"}[3];
+$result_trees{'only_special_spaces_node'}{"contents"}[3]{"extra"}{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0];
 
$result_trees{'only_special_spaces_node'}{"contents"}[3]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[3]{"args"}[0]{"contents"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[3]{"parent"} = 
$result_trees{'only_special_spaces_node'};
 
$result_trees{'only_special_spaces_node'}{"contents"}[4]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[4]{"args"}[0];
@@ -560,6 +573,7 @@ 
$result_trees{'only_special_spaces_node'}{"contents"}[8]{"contents"}[0]{"parent"
 $result_trees{'only_special_spaces_node'}{"contents"}[8]{"parent"} = 
$result_trees{'only_special_spaces_node'};
 
$result_trees{'only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[9]{"args"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"parent"} 
= $result_trees{'only_special_spaces_node'}{"contents"}[9];
+$result_trees{'only_special_spaces_node'}{"contents"}[9]{"extra"}{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0];
 
$result_trees{'only_special_spaces_node'}{"contents"}[9]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[9]{"args"}[0]{"contents"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[9]{"parent"} = 
$result_trees{'only_special_spaces_node'};
 
$result_trees{'only_special_spaces_node'}{"contents"}[10]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[10]{"args"}[0];
@@ -578,6 +592,7 @@ 
$result_trees{'only_special_spaces_node'}{"contents"}[12]{"parent"} = $result_tr
 
$result_trees{'only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[13]{"args"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"parent"} 
= $result_trees{'only_special_spaces_node'}{"contents"}[13];
 
$result_trees{'only_special_spaces_node'}{"contents"}[13]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[13];
+$result_trees{'only_special_spaces_node'}{"contents"}[13]{"extra"}{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0];
 
$result_trees{'only_special_spaces_node'}{"contents"}[13]{"extra"}{"nodes_manuals"}[0]{"node_content"}[0]
 = 
$result_trees{'only_special_spaces_node'}{"contents"}[13]{"args"}[0]{"contents"}[0];
 $result_trees{'only_special_spaces_node'}{"contents"}[13]{"parent"} = 
$result_trees{'only_special_spaces_node'};
 
$result_trees{'only_special_spaces_node'}{"contents"}[14]{"args"}[0]{"contents"}[0]{"parent"}
 = $result_trees{'only_special_spaces_node'}{"contents"}[14]{"args"}[0];
@@ -659,7 +674,9 @@ $result_sectioning{'only_special_spaces_node'} = {
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {},
+                  'extra' => {
+                    'normalized' => '_2002_2003_2002'
+                  },
                   'structure' => {}
                 }
               },
@@ -710,7 +727,10 @@ $result_sectioning{'only_special_spaces_node'} = {
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {}
+                  'extra' => {
+                    'normalized' => '_0085_00a0_1680'
+                  },
+                  'structure' => {}
                 }
               },
               'structure' => {
@@ -728,7 +748,7 @@ $result_sectioning{'only_special_spaces_node'} = {
                 'associated_node' => {
                   'cmdname' => 'node',
                   'extra' => {
-                    'normalized' => '_180e-'
+                    'normalized' => '_180e_2003'
                   },
                   'structure' => {}
                 }
@@ -747,7 +767,10 @@ $result_sectioning{'only_special_spaces_node'} = {
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {}
+                  'extra' => {
+                    'normalized' => 
'_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000'
+                  },
+                  'structure' => {}
                 }
               },
               'structure' => {
@@ -813,15 +836,30 @@ $result_nodes{'only_special_spaces_node'} = {
           'structure' => {
             'section_number' => 1
           }
-        }
+        },
+        'normalized' => '_2002_2003_2002'
       },
       'structure' => {
-        'node_prev' => {}
+        'node_next' => {
+          'cmdname' => 'node',
+          'extra' => {
+            'associated_section' => {
+              'cmdname' => 'chapter',
+              'extra' => {},
+              'structure' => {
+                'section_number' => 2
+              }
+            }
+          }
+        },
+        'node_prev' => {},
+        'node_up' => {}
       }
     }
   }
 };
 
$result_nodes{'only_special_spaces_node'}{'structure'}{'node_next'}{'structure'}{'node_prev'}
 = $result_nodes{'only_special_spaces_node'};
+$result_nodes{'only_special_spaces_node'}{'structure'}{'node_next'}{'structure'}{'node_up'}
 = $result_nodes{'only_special_spaces_node'};
 
 $result_menus{'only_special_spaces_node'} = {
   'cmdname' => 'node',
@@ -832,15 +870,6 @@ $result_menus{'only_special_spaces_node'} = {
 };
 
 $result_errors{'only_special_spaces_node'} = [
-  {
-    'error_line' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'
-",
-    'file_name' => 'only_special_spaces_node.texi',
-    'line_nr' => 5,
-    'macro' => '',
-    'text' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'",
-    'type' => 'error'
-  },
   {
     'error_line' => 'empty argument in @node
 ',
@@ -858,33 +887,6 @@ $result_errors{'only_special_spaces_node'} = [
     'macro' => '',
     'text' => 'empty argument in @node',
     'type' => 'error'
-  },
-  {
-    'error_line' => "empty node name after expansion `\x{85}\x{a0}\x{1680}'
-",
-    'file_name' => 'only_special_spaces_node.texi',
-    'line_nr' => 14,
-    'macro' => '',
-    'text' => "empty node name after expansion `\x{85}\x{a0}\x{1680}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "empty node name after expansion 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'
-",
-    'file_name' => 'only_special_spaces_node.texi',
-    'line_nr' => 20,
-    'macro' => '',
-    'text' => "empty node name after expansion 
`\x{2004}\x{2005}\x{2006}\x{2007}\x{2008}\x{2009}\x{200a}\x{2028}\x{2029}\x{202f}\x{205f}\x{3000}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "warning: node `\x{180e}\x{2003}' unreferenced
-",
-    'file_name' => 'only_special_spaces_node.texi',
-    'line_nr' => 17,
-    'macro' => '',
-    'text' => "node `\x{180e}\x{2003}' unreferenced",
-    'type' => 'warning'
   }
 ];
 
@@ -896,14 +898,20 @@ $result_floats{'only_special_spaces_node'} = {};
 $result_converted{'info'}->{'only_special_spaces_node'} = 'This is , produced 
from only_special_spaces_node.texi.
 
 
-File: ,  Node: Top,  Next: ,  Up: (dir)
+File: ,  Node: Top,  Next:    ,  Up: (dir)
 
 top
 ***
 
 * Menu:
 
+*    ::
+* …  ::
 * ᠎ ::
+*        

   ::
+
+
+File: ,  Node:    ,  Next: ,  Prev: Top,  Up: Top
 
 1 EN QUAD| | EM QUAD| | EN SPACE| |
 ***********************************
@@ -914,15 +922,21 @@ top
 3 CARRIAGE RETURN|'."\r".'|
 ********************
 
+
+File: ,  Node: …  ,  Next: ᠎ ,  Prev: ,  Up: Top
+
 4 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |
 **********************************************************
 
 
-File: ,  Node: ᠎ ,  Next: ,  Prev: ,  Up: Top
+File: ,  Node: ᠎ ,  Next:        

   ,  Prev: …  ,  Up: Top
 
 5 MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |
 ******************************************
 
+
+File: ,  Node:        

   ,  Prev: ᠎ ,  Up: Top
+
 6 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| 
| PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH 
SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | IDEOGRAPHIC 
SPACE| |
 
******************************************************************************************************************************************************************************************************************************************************
 
@@ -930,7 +944,10 @@ File: ,  Node: ᠎ ,  Next: ,  Prev: ,  Up: Top
 
 Tag Table:
 Node: Top56
-Node: ᠎ 491
+Node:    205
+Node: …  503
+Node: ᠎ 686
+Node:        

   873
 
 End Tag Table
 
@@ -963,23 +980,23 @@ $result_converted{'html'}->{'only_special_spaces_node'} = 
'<!DOCTYPE html>
 <div class="top-level-extent" id="Top">
 <div class="nav-panel">
 <p>
-Next: <a href="" accesskey="n" rel="next">EN QUAD| | EM QUAD| | EN SPACE| 
|</a> &nbsp; </p>
+Next: <a href="#g_t_2002_2003_2002" accesskey="n" rel="next">EN QUAD| | EM 
QUAD| | EN SPACE| |</a> &nbsp; </p>
 </div>
 <h1 class="top" id="top">top</h1>
 
 <ul class="mini-toc">
-<li>EN QUAD| | EM QUAD| | EN SPACE| |</li>
+<li><a href="#g_t_2002_2003_2002" accesskey="1">EN QUAD| | EM QUAD| | EN 
SPACE| |</a></li>
 <li>CHARACTER TABULATION|      | FORM FEED|&#12;| LINE TABULATION||</li>
 <li>CARRIAGE RETURN|'."\r".'|</li>
-<li>NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</li>
-<li><a href="#g_t_180e-" accesskey="5">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| 
|</a></li>
-<li>THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE 
SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE SEPARATOR|
| 
PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | 
IDEOGRAPHIC SPACE| |</li>
+<li><a href="#g_t_0085_00a0_1680" accesskey="4">NEXT LINE (NEL)|…| NO-BREAK 
SPACE| | OGHAM SPACE MARK| |</a></li>
+<li><a href="#g_t_180e_2003" accesskey="5">MONGOLIAN VOWEL SEPARATOR|᠎| EM 
SPACE| |</a></li>
+<li><a href="#g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000" 
accesskey="6">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | 
FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE 
SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM 
MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a></li>
 </ul>
 <hr>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" id="g_t_2002_2003_2002">
 <div class="nav-panel">
 <p>
-Previous: <a href="#Top" accesskey="p" rel="prev">top</a> &nbsp; </p>
+Next: <a href="" accesskey="n" rel="next">CHARACTER TABULATION|        | FORM 
FEED|&#12;| LINE TABULATION||</a>, Previous: <a href="#Top" accesskey="p" 
rel="prev">top</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> &nbsp; 
</p>
 </div>
 <h2 class="chapter" 
id="EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c">1 EN QUAD| | EM 
QUAD| | EN SPACE| |</h2>
 
@@ -1003,31 +1020,31 @@ Previous: <a href="#Top" accesskey="p" 
rel="prev">top</a> &nbsp; </p>
 
 <hr>
 </div>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" id="g_t_0085_00a0_1680">
 <div class="nav-panel">
 <p>
- &nbsp; </p>
+Next: <a href="#g_t_180e_2003" accesskey="n" rel="next">MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</a>, Previous: <a href="" accesskey="p" 
rel="prev">CARRIAGE RETURN|'."\r".'|</a>, Up: <a href="#Top" accesskey="u" 
rel="up">top</a> &nbsp; </p>
 </div>
-<h2 class="chapter" 
id="NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c">4
 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</h2>
+<h2 class="chapter" 
id="NEXT-LINE-_0028NEL_0029_007c_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c">4
 NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</h2>
 
 <hr>
 </div>
-<div class="chapter-level-extent" id="g_t_180e-">
+<div class="chapter-level-extent" id="g_t_180e_2003">
 <div class="nav-panel">
 <p>
-Next: <a href="" accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM 
SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | 
HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | 
MEDIUM MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a>, Previous: <a href="" 
accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| 
|</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> &nbsp; </p>
+Next: <a 
href="#g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000" 
accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| | FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| | HAIR SPACE| | LINE 
SEPARATOR|
| PARAGRAPH SEPARATOR|
| NARROW NO-BREAK SPACE| | MEDIUM 
MATHEMATICAL SPACE| | IDEOGRAPHIC SPACE| |</a>, Previous: <a 
href="#g_t_0085_00a0_1680" accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK 
SPACE| | OGHAM SPACE MARK| |</a>, Up: <a hre [...]
 </div>
 <h2 class="chapter" 
id="MONGOLIAN-VOWEL-SEPARATOR_007c_007c-EM-SPACE_007c-_007c">5 MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</h2>
 
 <hr>
 </div>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" 
id="g_t_2004_2005_2006_2007_2008_2009_200a_2028_2029_202f_205f_3000">
 <div class="nav-panel">
 <p>
- &nbsp; </p>
+Previous: <a href="#g_t_180e_2003" accesskey="p" rel="prev">MONGOLIAN VOWEL 
SEPARATOR|᠎| EM SPACE| |</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> 
&nbsp; </p>
 </div>
 
-<h2 class="chapter" 
id="THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c-FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c-HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c-NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c">6
 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE SPACE| | 
PUNCTUATION SPACE| [...]
+<h2 class="chapter" 
id="THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c-FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c-HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c_000a_007c-PARAGRAPH-SEPARATOR_007c_000a_000a_007c-NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c_005b_003f_005d_007c-IDEOGRAPHIC-SPACE_007c-_007c">6
 THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| | FIGURE  [...]
 
 </div>
 </div>
diff --git a/tp/t/results/sectioning/reference_to_only_special_spaces_node.pl 
b/tp/t/results/sectioning/reference_to_only_special_spaces_node.pl
index a96705c36f..85ea651f50 100644
--- a/tp/t/results/sectioning/reference_to_only_special_spaces_node.pl
+++ b/tp/t/results/sectioning/reference_to_only_special_spaces_node.pl
@@ -127,14 +127,18 @@ $result_trees{'reference_to_only_special_spaces_node'} = {
       'cmdname' => 'node',
       'contents' => [],
       'extra' => {
+        'node_content' => [
+          {}
+        ],
         'nodes_manuals' => [
           {
             'node_content' => [
               {}
             ],
-            'normalized' => '-'
+            'normalized' => '_2002_2003_2002'
           }
         ],
+        'normalized' => '_2002_2003_2002',
         'spaces_before_argument' => ' '
       },
       'parent' => {},
@@ -203,11 +207,12 @@ $result_trees{'reference_to_only_special_spaces_node'} = {
               'cmdname' => 'ref',
               'contents' => [],
               'extra' => {
+                'label' => {},
                 'node_argument' => {
                   'node_content' => [
                     {}
                   ],
-                  'normalized' => '-'
+                  'normalized' => '_2002_2003_2002'
                 }
               },
               'parent' => {},
@@ -286,7 +291,7 @@ $result_trees{'reference_to_only_special_spaces_node'} = {
             'node_content' => [
               {}
             ],
-            'normalized' => '-'
+            'normalized' => '_2002_2003_2002'
           }
         ],
         'spaces_before_argument' => ' '
@@ -408,11 +413,12 @@ $result_trees{'reference_to_only_special_spaces_node'} = {
               'cmdname' => 'ref',
               'contents' => [],
               'extra' => {
+                'label' => {},
                 'node_argument' => {
                   'node_content' => [
                     {}
                   ],
-                  'normalized' => '-'
+                  'normalized' => '_2002_2003_2002'
                 }
               },
               'parent' => {},
@@ -484,6 +490,7 @@ 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[2]{'contents'
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[2]{'parent'} 
= $result_trees{'reference_to_only_special_spaces_node'};
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'args'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'args'}[0]{'parent'}
 = $result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3];
+$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'extra'}{'node_content'}[0]
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'args'}[0]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'args'}[0]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3]{'parent'} 
= $result_trees{'reference_to_only_special_spaces_node'};
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'args'}[0];
@@ -493,6 +500,7 @@ 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'args'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'args'}[1];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'args'}[1]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0];
+$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'extra'}{'label'}
 = $result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'extra'}{'node_argument'}{'node_content'}[0]
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[4]{'contents'}[1];
@@ -518,6 +526,7 @@ 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[1]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[1]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[1];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[1]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0];
+$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'extra'}{'label'}
 = $result_trees{'reference_to_only_special_spaces_node'}{'contents'}[3];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'extra'}{'node_argument'}{'node_content'}[0]
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1];
 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'reference_to_only_special_spaces_node'}{'contents'}[6]{'contents'}[1];
@@ -584,7 +593,9 @@ $result_sectioning{'reference_to_only_special_spaces_node'} 
= {
               'extra' => {
                 'associated_node' => {
                   'cmdname' => 'node',
-                  'extra' => {},
+                  'extra' => {
+                    'normalized' => '_2002_2003_2002'
+                  },
                   'structure' => {}
                 }
               },
@@ -651,15 +662,30 @@ $result_nodes{'reference_to_only_special_spaces_node'} = {
           'structure' => {
             'section_number' => 1
           }
-        }
+        },
+        'normalized' => '_2002_2003_2002'
       },
       'structure' => {
-        'node_prev' => {}
+        'node_next' => {
+          'cmdname' => 'node',
+          'extra' => {
+            'associated_section' => {
+              'cmdname' => 'chapter',
+              'extra' => {},
+              'structure' => {
+                'section_number' => 2
+              }
+            }
+          }
+        },
+        'node_prev' => {},
+        'node_up' => {}
       }
     }
   }
 };
 
$result_nodes{'reference_to_only_special_spaces_node'}{'structure'}{'node_next'}{'structure'}{'node_prev'}
 = $result_nodes{'reference_to_only_special_spaces_node'};
+$result_nodes{'reference_to_only_special_spaces_node'}{'structure'}{'node_next'}{'structure'}{'node_up'}
 = $result_nodes{'reference_to_only_special_spaces_node'};
 
 $result_menus{'reference_to_only_special_spaces_node'} = {
   'cmdname' => 'node',
@@ -671,40 +697,31 @@ $result_menus{'reference_to_only_special_spaces_node'} = {
 
 $result_errors{'reference_to_only_special_spaces_node'} = [
   {
-    'error_line' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'
-",
-    'file_name' => 'reference_to_only_special_spaces_node.texi',
-    'line_nr' => 5,
-    'macro' => '',
-    'text' => "empty node name after expansion `\x{2000}\x{2001}\x{2002}'",
-    'type' => 'error'
-  },
-  {
-    'error_line' => "empty node name after expansion 
`\@code{\x{2000}\x{2001}\x{2002}}'
+    'error_line' => "\@node `\@code{\x{2000}\x{2001}\x{2002}}' previously 
defined
 ",
     'file_name' => 'reference_to_only_special_spaces_node.texi',
     'line_nr' => 10,
     'macro' => '',
-    'text' => "empty node name after expansion 
`\@code{\x{2000}\x{2001}\x{2002}}'",
+    'text' => "\@node `\@code{\x{2000}\x{2001}\x{2002}}' previously defined",
     'type' => 'error'
   },
   {
-    'error_line' => "\@ref reference to nonexistent node 
`\x{2000}\x{2001}\x{2002}'
-",
+    'error_line' => 'here is the previous definition as @node
+',
     'file_name' => 'reference_to_only_special_spaces_node.texi',
-    'line_nr' => 8,
+    'line_nr' => 5,
     'macro' => '',
-    'text' => "\@ref reference to nonexistent node `\x{2000}\x{2001}\x{2002}'",
+    'text' => 'here is the previous definition as @node',
     'type' => 'error'
   },
   {
-    'error_line' => "\@ref reference to nonexistent node 
`\@code{\x{2000}\x{2001}\x{2002}}'
+    'error_line' => "warning: \@ref to `\@code{\x{2000}\x{2001}\x{2002}}', 
different from node name `\x{2000}\x{2001}\x{2002}'
 ",
     'file_name' => 'reference_to_only_special_spaces_node.texi',
     'line_nr' => 13,
     'macro' => '',
-    'text' => "\@ref reference to nonexistent node 
`\@code{\x{2000}\x{2001}\x{2002}}'",
-    'type' => 'error'
+    'text' => "\@ref to `\@code{\x{2000}\x{2001}\x{2002}}', different from 
node name `\x{2000}\x{2001}\x{2002}'",
+    'type' => 'warning'
   }
 ];
 
@@ -716,13 +733,18 @@ $result_floats{'reference_to_only_special_spaces_node'} = 
{};
 $result_converted{'info'}->{'reference_to_only_special_spaces_node'} = 'This 
is , produced from reference_to_only_special_spaces_node.texi.
 
 
-File: ,  Node: Top,  Next: ,  Up: (dir)
+File: ,  Node: Top,  Next:    ,  Up: (dir)
 
 top
 ***
 
 * Menu:
 
+*    ::
+
+
+File: ,  Node:    ,  Next: ,  Prev: Top,  Up: Top
+
 1 EN QUAD| | EM QUAD| | EN SPACE| |
 ***********************************
 
@@ -737,6 +759,7 @@ top
 
 Tag Table:
 Node: Top69
+Node:    154
 
 End Tag Table
 
@@ -769,23 +792,23 @@ 
$result_converted{'html'}->{'reference_to_only_special_spaces_node'} = '<!DOCTYP
 <div class="top-level-extent" id="Top">
 <div class="nav-panel">
 <p>
-Next: <a href="" accesskey="n" rel="next">EN QUAD| | EM QUAD| | EN SPACE| 
|</a> &nbsp; </p>
+Next: <a href="#g_t_2002_2003_2002" accesskey="n" rel="next">EN QUAD| | EM 
QUAD| | EN SPACE| |</a> &nbsp; </p>
 </div>
 <h1 class="top" id="top">top</h1>
 
 <ul class="mini-toc">
-<li>EN QUAD| | EM QUAD| | EN SPACE| |</li>
+<li><a href="#g_t_2002_2003_2002" accesskey="1">EN QUAD| | EM QUAD| | EN 
SPACE| |</a></li>
 <li><code class="code">EN QUAD| | EM QUAD| | EN SPACE| |</code></li>
 </ul>
 <hr>
-<div class="chapter-level-extent">
+<div class="chapter-level-extent" id="g_t_2002_2003_2002">
 <div class="nav-panel">
 <p>
-Previous: <a href="#Top" accesskey="p" rel="prev">top</a> &nbsp; </p>
+Next: <a href="" accesskey="n" rel="next"><code class="code">EN QUAD| | EM 
QUAD| | EN SPACE| |</code></a>, Previous: <a href="#Top" accesskey="p" 
rel="prev">top</a>, Up: <a href="#Top" accesskey="u" rel="up">top</a> &nbsp; 
</p>
 </div>
 <h2 class="chapter" 
id="EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c">1 EN QUAD| | EM 
QUAD| | EN SPACE| |</h2>
 
-<p>&lsquo;   &rsquo;.
+<p><a class="ref" href="#g_t_2002_2003_2002">   </a>.
 </p>
 <hr>
 </div>
@@ -796,7 +819,7 @@ Previous: <a href="#Top" accesskey="p" rel="prev">top</a> 
&nbsp; </p>
 </div>
 <h2 class="chapter" 
id="EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c-1">2 <code 
class="code">EN QUAD| | EM QUAD| | EN SPACE| |</code></h2>
 
-<p>&lsquo;<code class="code">   </code>&rsquo;.
+<p><a class="ref" href="#g_t_2002_2003_2002"><code class="code">   </code></a>.
 </p>
 
 </div>
diff --git a/tp/t/results/sectioning/special_spaces_in_nodes.pl 
b/tp/t/results/sectioning/special_spaces_in_nodes.pl
index cd84f54f2e..a72e451521 100644
--- a/tp/t/results/sectioning/special_spaces_in_nodes.pl
+++ b/tp/t/results/sectioning/special_spaces_in_nodes.pl
@@ -56,10 +56,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => "Top-"
+            "normalized" => "Top_2002"
           }
         ],
-        "normalized" => "Top-",
+        "normalized" => "Top_2002",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -130,10 +130,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c"
+            "normalized" => 
"EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c"
           }
         ],
-        "normalized" => 
"EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c",
+        "normalized" => 
"EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -339,7 +339,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"
+                  "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"
                 }
               },
               "parent" => {},
@@ -395,7 +395,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c"
+                  "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c"
                 }
               },
               "parent" => {},
@@ -451,7 +451,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c"
+                  "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c"
                 }
               },
               "parent" => {},
@@ -507,7 +507,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c"
+                  "normalized" => 
"FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c"
                 }
               },
               "parent" => {},
@@ -563,7 +563,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c"
+                  "normalized" => 
"HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c"
                 }
               },
               "parent" => {},
@@ -619,7 +619,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c"
+                  "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c"
                 }
               },
               "parent" => {},
@@ -811,10 +811,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"
+            "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"
           }
         ],
-        "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c",
+        "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -857,10 +857,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c"
+            "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c"
           }
         ],
-        "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c",
+        "normalized" => 
"MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -903,10 +903,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c"
+            "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c"
           }
         ],
-        "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c",
+        "normalized" => 
"THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -949,10 +949,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c"
+            "normalized" => 
"FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c"
           }
         ],
-        "normalized" => 
"FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c",
+        "normalized" => 
"FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -995,10 +995,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c"
+            "normalized" => 
"HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c"
           }
         ],
-        "normalized" => 
"HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c",
+        "normalized" => 
"HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -1054,7 +1054,7 @@ $result_trees{'special_spaces_in_nodes'} = {
                   "node_content" => [
                     {}
                   ],
-                  "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"
+                  "normalized" => 
"NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"
                 }
               },
               "parent" => {},
@@ -1087,10 +1087,10 @@ $result_trees{'special_spaces_in_nodes'} = {
             "node_content" => [
               {}
             ],
-            "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c"
+            "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c"
           }
         ],
-        "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c",
+        "normalized" => 
"NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c",
         "spaces_before_argument" => " "
       },
       "parent" => {},
@@ -1362,7 +1362,7 @@ $result_sectioning{'special_spaces_in_nodes'} = {
           'associated_node' => {
             'cmdname' => 'node',
             'extra' => {
-              'normalized' => 'Top-'
+              'normalized' => 'Top_2002'
             },
             'structure' => {}
           }
@@ -1375,7 +1375,7 @@ $result_sectioning{'special_spaces_in_nodes'} = {
                 'associated_node' => {
                   'cmdname' => 'node',
                   'extra' => {
-                    'normalized' => 
'EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c'
+                    'normalized' => 
'EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c'
                   },
                   'structure' => {}
                 }
@@ -1410,7 +1410,7 @@ $result_nodes{'special_spaces_in_nodes'} = {
       'extra' => {},
       'structure' => {}
     },
-    'normalized' => 'Top-'
+    'normalized' => 'Top_2002'
   },
   'structure' => {
     'node_next' => {
@@ -1429,7 +1429,7 @@ $result_nodes{'special_spaces_in_nodes'} = {
             'extra' => {}
           }
         ],
-        'normalized' => 
'EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c'
+        'normalized' => 
'EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c'
       },
       'structure' => {
         'menu_child' => {
@@ -1447,37 +1447,37 @@ $result_nodes{'special_spaces_in_nodes'} = {
                 'node_next' => {
                   'cmdname' => 'node',
                   'extra' => {
-                    'normalized' => 
'NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c'
+                    'normalized' => 
'NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c'
                   },
                   'structure' => {
                     'node_next' => {
                       'cmdname' => 'node',
                       'extra' => {
-                        'normalized' => 
'MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c'
+                        'normalized' => 
'MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c'
                       },
                       'structure' => {
                         'node_next' => {
                           'cmdname' => 'node',
                           'extra' => {
-                            'normalized' => 
'THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c'
+                            'normalized' => 
'THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c'
                           },
                           'structure' => {
                             'node_next' => {
                               'cmdname' => 'node',
                               'extra' => {
-                                'normalized' => 
'FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c'
+                                'normalized' => 
'FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c'
                               },
                               'structure' => {
                                 'node_next' => {
                                   'cmdname' => 'node',
                                   'extra' => {
-                                    'normalized' => 
'HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c'
+                                    'normalized' => 
'HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c'
                                   },
                                   'structure' => {
                                     'node_next' => {
                                       'cmdname' => 'node',
                                       'extra' => {
-                                        'normalized' => 
'NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c'
+                                        'normalized' => 
'NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c'
                                       },
                                       'structure' => {
                                         'node_prev' => {},
@@ -1536,7 +1536,7 @@ 
$result_nodes{'special_spaces_in_nodes'}{'structure'}{'node_next'}{'structure'}{
 $result_menus{'special_spaces_in_nodes'} = {
   'cmdname' => 'node',
   'extra' => {
-    'normalized' => 'Top-'
+    'normalized' => 'Top_2002'
   },
   'structure' => {}
 };
@@ -1650,27 +1650,27 @@ $result_converted{'html'}->{'special_spaces_in_nodes'} 
= '<!DOCTYPE html>
 <meta name="distribution" content="global">
 <meta name="viewport" content="width=device-width,initial-scale=1">
 
-<link href="#Top-" rel="start" title="Top ">
+<link href="#Top_2002" rel="start" title="Top ">
 
 
 </head>
 
 <body lang="en">
-<div class="top-level-extent" id="Top-">
+<div class="top-level-extent" id="Top_2002">
 <div class="nav-panel">
 <p>
-Next: <a href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" 
accesskey="n" rel="next">chap</a> &nbsp; </p>
+Next: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="n" rel="next">chap</a> &nbsp; </p>
 </div>
 <h1 class="top" id="top">top</h1>
 
 <ul class="mini-toc">
-<li><a href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" 
accesskey="1">chap</a></li>
+<li><a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="1">chap</a></li>
 </ul>
 <hr>
-<div class="chapter-level-extent" 
id="EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c">
+<div class="chapter-level-extent" 
id="EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c">
 <div class="nav-panel">
 <p>
-Up: <a href="#Top-" accesskey="u" rel="up">top</a> &nbsp; </p>
+Up: <a href="#Top_2002" accesskey="u" rel="up">top</a> &nbsp; </p>
 </div>
 <h2 class="chapter" id="chap">1 chap</h2>
 
@@ -1679,60 +1679,60 @@ Up: <a href="#Top-" accesskey="u" rel="up">top</a> 
&nbsp; </p>
 <hr>
 <a class="node-id" 
id="CHARACTER-TABULATION_007c-_007c-FORM-FEED_007c-_007c-LINE-TABULATION_007c-_007c"></a><div
 class="nav-panel">
 <p>
-Next: <a href="#CARRIAGE-RETURN_007c-_007c" accesskey="n" rel="next">CARRIAGE 
RETURN|'."\r".'|</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" accesskey="u" 
rel="up">chap</a> &nbsp; </p>
+Next: <a href="#CARRIAGE-RETURN_007c-_007c" accesskey="n" rel="next">CARRIAGE 
RETURN|'."\r".'|</a>, Up: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="u" rel="up">chap</a> &nbsp; </p>
 </div>
 <h4 class="node">CHARACTER TABULATION| | FORM FEED|&#12;| LINE TABULATION|
|</h4>
 
 <hr>
 <a class="node-id" id="CARRIAGE-RETURN_007c-_007c"></a><div class="nav-panel">
 <p>
-Next: <a 
href="#NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"
 accesskey="n" rel="next">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE 
MARK| |</a>, Previous: <a 
href="#CHARACTER-TABULATION_007c-_007c-FORM-FEED_007c-_007c-LINE-TABULATION_007c-_007c"
 accesskey="p" rel="prev">CHARACTER TABULATION|       | FORM FEED|&#12;| LINE 
TABULATION||</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" accesskey="u" 
rel="up">chap</a> [...]
+Next: <a 
href="#NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"
 accesskey="n" rel="next">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE 
MARK| |</a>, Previous: <a 
href="#CHARACTER-TABULATION_007c-_007c-FORM-FEED_007c-_007c-LINE-TABULATION_007c-_007c"
 accesskey="p" rel="prev">CHARACTER TABULATION|   | FORM FEED|&#12;| LINE 
TABULATION||</a>, Up: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accessk [...]
 </div>
 <h4 class="node">CARRIAGE RETURN|'."\r".'|</h4>
 
 <hr>
-<a class="node-id" 
id="NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"></a><div
 class="nav-panel">
+<a class="node-id" 
id="NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"></a><div
 class="nav-panel">
 <p>
-Next: <a href="#MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c" 
accesskey="n" rel="next">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |</a>, 
Previous: <a href="#CARRIAGE-RETURN_007c-_007c" accesskey="p" 
rel="prev">CARRIAGE RETURN|'."\r".'|</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" accesskey="u" 
rel="up">chap</a> &nbsp; </p>
+Next: <a 
href="#MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c" 
accesskey="n" rel="next">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |</a>, 
Previous: <a href="#CARRIAGE-RETURN_007c-_007c" accesskey="p" 
rel="prev">CARRIAGE RETURN|'."\r".'|</a>, Up: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="u" rel="up">chap</a> &nbsp; </p>
 </div>
 <h4 class="node">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</h4>
 
 <hr>
-<a class="node-id" 
id="MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c"></a><div 
class="nav-panel">
+<a class="node-id" 
id="MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c"></a><div 
class="nav-panel">
 <p>
-Next: <a 
href="#THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c"
 accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| |</a>, Previous: <a 
href="#NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c"
 accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE 
MARK| |</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007 [...]
+Next: <a 
href="#THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c"
 accesskey="n" rel="next">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| |</a>, Previous: <a 
href="#NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c"
 accesskey="p" rel="prev">NEXT LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE 
MARK| |</a>, Up: <a href="#EN-QUAD_007c_2002_007c-EM-QUAD_0 [...]
 </div>
 <h4 class="node">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |</h4>
 
 <hr>
-<a class="node-id" 
id="THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c"></a><div
 class="nav-panel">
+<a class="node-id" 
id="THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c"></a><div
 class="nav-panel">
 <p>
-Next: <a 
href="#FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c"
 accesskey="n" rel="next">FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| 
|</a>, Previous: <a 
href="#MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c-_007c" 
accesskey="p" rel="prev">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" accesskey="u" 
rel="up">chap</a> &nbsp; </p>
+Next: <a 
href="#FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c"
 accesskey="n" rel="next">FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| 
|</a>, Previous: <a 
href="#MONGOLIAN-VOWEL-SEPARATOR_007c_180e_007c-EM-SPACE_007c_2003_007c" 
accesskey="p" rel="prev">MONGOLIAN VOWEL SEPARATOR|᠎| EM SPACE| |</a>, Up: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="u" rel="up">chap</a> &nbsp; </p>
 </div>
 <h4 class="node">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM SPACE| 
|</h4>
 
 <hr>
-<a class="node-id" 
id="FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c"></a><div
 class="nav-panel">
+<a class="node-id" 
id="FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c"></a><div
 class="nav-panel">
 <p>
-Next: <a 
href="#HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c"
 accesskey="n" rel="next">HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|

|</a>, Previous: <a 
href="#THREE_002dPER_002dEM-SPACE_007c-_007c-FOUR_002dPER_002dEM-SPACE_007c-_007c-SIX_002dPER_002dEM-SPACE_007c-_007c"
 accesskey="p" rel="prev">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| |</a>, Up: <a 
href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" accesskey="u" 
[...]
+Next: <a 
href="#HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c"
 accesskey="n" rel="next">HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|

|</a>, Previous: <a 
href="#THREE_002dPER_002dEM-SPACE_007c_2004_007c-FOUR_002dPER_002dEM-SPACE_007c_2005_007c-SIX_002dPER_002dEM-SPACE_007c_2006_007c"
 accesskey="p" rel="prev">THREE-PER-EM SPACE| | FOUR-PER-EM SPACE| | SIX-PER-EM 
SPACE| |</a>, Up: <a href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN 
[...]
 </div>
 <h4 class="node">FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| |</h4>
 
 <hr>
-<a class="node-id" 
id="HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c"></a><div
 class="nav-panel">
+<a class="node-id" 
id="HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c"></a><div
 class="nav-panel">
 <p>
-Next: <a 
href="#NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c"
 accesskey="n" rel="next">NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | 
IDEOGRAPHIC SPACE| |</a>, Previous: <a 
href="#FIGURE-SPACE_007c-_007c-PUNCTUATION-SPACE_007c-_007c-THIN-SPACE_007c-_007c"
 accesskey="p" rel="prev">FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| 
|</a>, Up: <a href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" 
accesskey="u" rel [...]
+Next: <a 
href="#NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c"
 accesskey="n" rel="next">NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | 
IDEOGRAPHIC SPACE| |</a>, Previous: <a 
href="#FIGURE-SPACE_007c_2007_007c-PUNCTUATION-SPACE_007c_2008_007c-THIN-SPACE_007c_2009_007c"
 accesskey="p" rel="prev">FIGURE SPACE| | PUNCTUATION SPACE| | THIN SPACE| 
|</a>, Up: <a href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPA [...]
 </div>
 <h4 class="node">HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|
|</h4>
 
 <hr>
-<a class="node-id" 
id="NARROW-NO_002dBREAK-SPACE_007c-_007c-MEDIUM-MATHEMATICAL-SPACE_007c-_007c-IDEOGRAPHIC-SPACE_007c-_007c"></a><div
 class="nav-panel">
+<a class="node-id" 
id="NARROW-NO_002dBREAK-SPACE_007c_202f_007c-MEDIUM-MATHEMATICAL-SPACE_007c_205f_007c-IDEOGRAPHIC-SPACE_007c_3000_007c"></a><div
 class="nav-panel">
 <p>
-Previous: <a 
href="#HAIR-SPACE_007c-_007c-LINE-SEPARATOR_007c-_007c-PARAGRAPH-SEPARATOR_007c-_007c"
 accesskey="p" rel="prev">HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|

|</a>, Up: <a href="#EN-QUAD_007c-_007c-EM-QUAD_007c-_007c-EN-SPACE_007c-_007c" 
accesskey="u" rel="up">chap</a> &nbsp; </p>
+Previous: <a 
href="#HAIR-SPACE_007c_200a_007c-LINE-SEPARATOR_007c_2028_007c-PARAGRAPH-SEPARATOR_007c_2029_007c"
 accesskey="p" rel="prev">HAIR SPACE| | LINE SEPARATOR|
| PARAGRAPH SEPARATOR|

|</a>, Up: <a 
href="#EN-QUAD_007c_2002_007c-EM-QUAD_007c_2003_007c-EN-SPACE_007c_2002_007c" 
accesskey="u" rel="up">chap</a> &nbsp; </p>
 </div>
 <h4 class="node">NARROW NO-BREAK SPACE| | MEDIUM MATHEMATICAL SPACE| | 
IDEOGRAPHIC SPACE| |</h4>
 
-<p><a class="ref" 
href="#NEXT-LINE-_0028NEL_0029_007c-_007c-NO_002dBREAK-SPACE_007c-_007c-OGHAM-SPACE-MARK_007c-_007c">NEXT
 LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</a>
+<p><a class="ref" 
href="#NEXT-LINE-_0028NEL_0029_007c_0085_007c-NO_002dBREAK-SPACE_007c_00a0_007c-OGHAM-SPACE-MARK_007c_1680_007c">NEXT
 LINE (NEL)|…| NO-BREAK SPACE| | OGHAM SPACE MARK| |</a>
 </p>
 </div>
 </div>



reply via email to

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