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 (_convert_printindex


From: Patrice Dumas
Subject: branch master updated: * tp/Texinfo/Convert/HTML.pm (_convert_printindex_command), tp/Texinfo/XS/convert/convert_html.c (convert_printindex_command): if the first command in the first index entry in a letter is a no arg command, format the command, possibly using the upper case command to format the letter.
Date: Sat, 03 Feb 2024 17:53:38 -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 58c18a4740 * tp/Texinfo/Convert/HTML.pm (_convert_printindex_command), 
tp/Texinfo/XS/convert/convert_html.c (convert_printindex_command): if the first 
command in the first index entry in a letter is a no arg command, format the 
command, possibly using the upper case command to format the letter.
58c18a4740 is described below

commit 58c18a4740a2a6795f71d86690987d218b0f8b83
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sat Feb 3 23:53:29 2024 +0100

    * tp/Texinfo/Convert/HTML.pm (_convert_printindex_command),
    tp/Texinfo/XS/convert/convert_html.c (convert_printindex_command): if
    the first command in the first index entry in a letter is a no
    arg command, format the command, possibly using the upper case command
    to format the letter.
    
    * tp/Texinfo/XS/main/manipulate_indices.c (strip_index_ignore_chars)
    (index_entry_element_sort_string, new_index_entry_text_or_command)
    (idx_leading_text_or_command)
    (index_entry_first_letter_text_or_command),
    tp/Texinfo/XS/main/manipulate_indices.h (INDEX_ENTRY_TEXT_OR_COMMAND):
    add strip_index_ignore_chars based onindex_entry_element_sort_string
    code.  Implement index_entry_first_letter_text_or_command in C.
    
    * test_files_generated_list, tp/t/html_tests.t
    (letter_command_in_index, U_in_index): new tests with @-commands in
    index entries that should be used for letter formatting.
---
 ChangeLog                                          |  20 +
 tp/Makefile.tres                                   |   2 +
 tp/Texinfo/Convert/HTML.pm                         |  20 +-
 tp/Texinfo/Indices.pm                              |  11 +-
 tp/Texinfo/XS/convert/convert_html.c               |  63 ++-
 tp/Texinfo/XS/main/manipulate_indices.c            | 224 +++++++-
 tp/Texinfo/XS/main/manipulate_indices.h            |   8 +
 tp/t/html_tests.t                                  |  30 ++
 tp/t/results/html_tests/U_in_index.pl              | 574 +++++++++++++++++++++
 tp/t/results/html_tests/letter_command_in_index.pl | 573 ++++++++++++++++++++
 .../encoding_index_ascii/res_html/chap.html        |  18 +-
 .../res_html/chap.html                             |  18 +-
 .../encoding_index_latin1/res_html/chap.html       |  18 +-
 .../res_html/chap.html                             |  12 +-
 .../indices/encoding_index_utf8/res_html/chap.html |  18 +-
 15 files changed, 1525 insertions(+), 84 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 17f8bfdacb..af45365ab1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2024-02-03  Patrice Dumas  <pertusus@free.fr>
+
+       * tp/Texinfo/Convert/HTML.pm (_convert_printindex_command),
+       tp/Texinfo/XS/convert/convert_html.c (convert_printindex_command): if
+       the first command in the first index entry in a letter is a no
+       arg command, format the command, possibly using the upper case command 
+       to format the letter.
+
+       * tp/Texinfo/XS/main/manipulate_indices.c (strip_index_ignore_chars)
+       (index_entry_element_sort_string, new_index_entry_text_or_command)
+       (idx_leading_text_or_command)
+       (index_entry_first_letter_text_or_command),
+       tp/Texinfo/XS/main/manipulate_indices.h (INDEX_ENTRY_TEXT_OR_COMMAND):
+       add strip_index_ignore_chars based onindex_entry_element_sort_string
+       code.  Implement index_entry_first_letter_text_or_command in C.
+
+       * test_files_generated_list, tp/t/html_tests.t
+       (letter_command_in_index, U_in_index): new tests with @-commands in
+       index entries that should be used for letter formatting.
+
 2024-02-03  Patrice Dumas  <pertusus@free.fr>
 
        * tp/Texinfo/Common.pm (is_content_empty): do not consider text set to
diff --git a/tp/Makefile.tres b/tp/Makefile.tres
index 1d8f441f90..2549a860f7 100644
--- a/tp/Makefile.tres
+++ b/tp/Makefile.tres
@@ -542,6 +542,7 @@ test_files_generated_list = 
$(test_tap_files_generated_list) \
   t/results/heading/heading_in_copying.pl \
   t/results/heading/heading_in_example.pl \
   t/results/heading/heading_in_quotation.pl \
+  t/results/html_tests/U_in_index.pl \
   t/results/html_tests/acronym_in_node_and_section.pl \
   t/results/html_tests/automatic_menus.pl \
   t/results/html_tests/base_for_css_info_in_init_test.pl \
@@ -668,6 +669,7 @@ test_files_generated_list = 
$(test_tap_files_generated_list) \
   t/results/html_tests/itemize_arguments/res_html \
   t/results/html_tests/itemize_arguments_enable_encoding.pl \
   t/results/html_tests/itemize_arguments_enable_encoding/res_html \
+  t/results/html_tests/letter_command_in_index.pl \
   t/results/html_tests/mathjax_with_texinfo.pl \
   t/results/html_tests/mathjax_with_texinfo_enable_encoding.pl \
   t/results/html_tests/mathjax_with_texinfo_enable_encoding/res_latex \
diff --git a/tp/Texinfo/Convert/HTML.pm b/tp/Texinfo/Convert/HTML.pm
index c47cc6fa55..40a10bc19c 100644
--- a/tp/Texinfo/Convert/HTML.pm
+++ b/tp/Texinfo/Convert/HTML.pm
@@ -6652,13 +6652,23 @@ sub _convert_printindex_command($$$$)
           = Texinfo::Indices::index_entry_first_letter_text_or_command(
                                                              $first_entry);
       }
-      #if ($letter_command) {
-      #  $formatted_letter = $self->convert_tree($letter_command,
-      #                                          "index letter $letter 
command");
-      #} else {
+
+      if ($letter_command and !$accent_commands{$letter_command->{'cmdname'}}
+          and $letter_command->{'cmdname'} ne 'U'
+          # special case, the uppercasing of that command is not done
+          # if as a command, while it is done correctly in $letter
+          and $letter_command->{'cmdname'} ne 'ss') {
+        my $cmdname = $letter_command->{'cmdname'};
+        if ($letter_no_arg_commands{$cmdname}
+            and $letter_no_arg_commands{uc($cmdname)}) {
+          $letter_command = {'cmdname' => uc($cmdname)};
+        }
+        $formatted_letter = $self->convert_tree($letter_command,
+                                                "index letter $letter 
command");
+      } else {
         $formatted_letter
          = &{$self->formatting_function('format_protect_text')}($self, 
$letter);
-      #}
+      }
       $formatted_letters{$letter} = $formatted_letter;
 
       $result_index_entries .= '<tr>' .
diff --git a/tp/Texinfo/Indices.pm b/tp/Texinfo/Indices.pm
index 8336723a10..1bd54c1c22 100644
--- a/tp/Texinfo/Indices.pm
+++ b/tp/Texinfo/Indices.pm
@@ -543,8 +543,9 @@ sub sort_indices_by_index($$$$;$)
   return ($sorted_index_entries, $index_entries_sort_strings);
 }
 
+# Return the first non empty text or textual @-command.
 # NOTE quotes and dash are not handled especially and it is not known
-# if the text was in code or not
+# if the text was in code or not.
 sub _idx_leading_text_or_command($$);
 sub _idx_leading_text_or_command($$)
 {
@@ -609,14 +610,16 @@ sub _idx_leading_text_or_command($$)
 }
 
 # TODO document
+# Return the leading text or textual command that could be used
+# for sorting.
 sub index_entry_first_letter_text_or_command($;$)
 {
   my $index_entry = shift;
-  my $entry_key = shift;
+  # only used for debugging
+  #my $entry_key = shift;
 
   if (!defined($index_entry)) {
-    # FIXME cluck
-    return (undef, undef);
+    confess ("index_entry_first_letter_text_or_command: undef index_entry");
   }
 
   my $index_entry_element = $index_entry->{'entry_element'};
diff --git a/tp/Texinfo/XS/convert/convert_html.c 
b/tp/Texinfo/XS/convert/convert_html.c
index 61d87bcd4a..d9796d44aa 100644
--- a/tp/Texinfo/XS/convert/convert_html.c
+++ b/tp/Texinfo/XS/convert/convert_html.c
@@ -13169,15 +13169,62 @@ convert_printindex_command (CONVERTER *self, const 
enum command_id cmd,
       if (entries_text.end > 0)
         {
           char *formatted_letter;
+          ELEMENT *letter_command = 0;
+          enum command_id letter_cmd = 0;
 
-          /* TODO cf perl */
-          {
-            TEXT text_letter;
-            text_init (&text_letter);
-            text_append (&text_letter, "");
-            format_protect_text (self, letter, &text_letter);
-            formatted_letter = text_letter.text;
-          }
+          if (first_entry)
+            {
+              INDEX_ENTRY_TEXT_OR_COMMAND *entry_text_or_command
+                = index_entry_first_letter_text_or_command (first_entry);
+
+              if (entry_text_or_command)
+                {
+                  letter_command = entry_text_or_command->command;
+
+                  free (entry_text_or_command->text);
+                  free (entry_text_or_command);
+
+                  if (letter_command)
+                    letter_cmd = element_builtin_data_cmd (letter_command);
+                }
+            }
+
+          if (letter_command
+              && (!(builtin_command_data[letter_cmd].flags & CF_accent))
+              && letter_cmd != CM_U
+            /* special case, the uppercasing of that command is not done
+               if as a command, while it is done correctly in letter */
+              && letter_cmd != CM_ss)
+            {
+              ELEMENT *formatted_command;
+              char *explanation;
+              if (html_commands_data[letter_cmd].upper_case_cmd)
+                {
+                   formatted_command = new_element (ET_NONE);
+                   formatted_command->cmd
+                      = html_commands_data[letter_cmd].upper_case_cmd;
+                }
+              else
+                formatted_command = letter_command;
+
+              xasprintf (&explanation, "index letter %s command", letter);
+              add_to_element_list (&self->tree_to_build, formatted_command);
+              formatted_letter
+                = html_convert_tree (self, formatted_command, explanation);
+              remove_element_from_list (&self->tree_to_build,
+                                        formatted_command);
+              if (formatted_command != letter_command)
+                destroy_element (formatted_command);
+              free (explanation);
+            }
+          else
+            {
+              TEXT text_letter;
+              text_init (&text_letter);
+              text_append (&text_letter, "");
+              format_protect_text (self, letter, &text_letter);
+              formatted_letter = text_letter.text;
+            }
 
           formatted_letters[i] = formatted_letter;
 
diff --git a/tp/Texinfo/XS/main/manipulate_indices.c 
b/tp/Texinfo/XS/main/manipulate_indices.c
index 2a315219cd..7d34822fc7 100644
--- a/tp/Texinfo/XS/main/manipulate_indices.c
+++ b/tp/Texinfo/XS/main/manipulate_indices.c
@@ -25,6 +25,7 @@
 #include "tree_types.h"
 #include "document_types.h"
 #include "converter_types.h"
+#include "tree.h"
 #include "utils.h"
 #include "extra.h"
 #include "errors.h"
@@ -134,6 +135,8 @@ destroy_merged_indices (MERGED_INDICES *merged_indices)
   free (merged_indices);
 }
 
+
+
 void
 destroy_indices_sorted_by_letter (
          INDEX_SORTED_BY_LETTER *indices_entries_by_letter)
@@ -180,6 +183,36 @@ index_content_element (const ELEMENT *element, int 
prefer_reference_element)
    }
 }
 
+static char *
+strip_index_ignore_chars (const char *string, const char *index_ignore_chars)
+{
+  TEXT result_text;
+  const char *p = string;
+  text_init (&result_text);
+  /* in particular to be consistent with convert_to_text, which returned
+     variable is never NUL */
+  text_append (&result_text, "");
+
+  while (*p)
+    {
+      int n = strspn (p, index_ignore_chars);
+      if (n)
+        {
+          p += n;
+        }
+      if (*p)
+        {
+          /* store a character */
+          int char_len = 1;
+          while ((p[char_len] & 0xC0) == 0x80)
+            char_len++;
+          text_append_n (&result_text, p, char_len);
+          p += char_len;
+        }
+    }
+  return result_text.text;
+}
+
 char *
 index_entry_element_sort_string (const INDEX_ENTRY *main_entry,
                                  const ELEMENT *index_entry_element,
@@ -212,32 +245,10 @@ index_entry_element_sort_string (const INDEX_ENTRY 
*main_entry,
                                             "index_ignore_chars");
   if (index_ignore_chars)
     {
-      TEXT sort_string_text;
-      char *p = sort_string;
-      text_init (&sort_string_text);
-      /* to be consistent with convert_to_text, which returned variable is
-         never NUL */
-      text_append (&sort_string_text, "");
-
-      while (*p)
-        {
-          int n = strspn (p, index_ignore_chars);
-          if (n)
-            {
-              p += n;
-            }
-          if (*p)
-            {
-              /* store a character */
-              int char_len = 1;
-              while ((p[char_len] & 0xC0) == 0x80)
-                char_len++;
-              text_append_n (&sort_string_text, p, char_len);
-              p += char_len;
-            }
-        }
+      char *sort_string_text = strip_index_ignore_chars (sort_string,
+                                                     index_ignore_chars);
       free (sort_string);
-      sort_string = sort_string_text.text;
+      sort_string = sort_string_text;
     }
   return sort_string;
 }
@@ -805,3 +816,166 @@ sort_indices_by_letter (ERROR_MESSAGE_LIST 
*error_messages,
   return sorted_index_entries;
 }
 
+static INDEX_ENTRY_TEXT_OR_COMMAND *
+new_index_entry_text_or_command (const char *text, ELEMENT *command)
+{
+  INDEX_ENTRY_TEXT_OR_COMMAND *result = (INDEX_ENTRY_TEXT_OR_COMMAND *)
+     malloc (sizeof (INDEX_ENTRY_TEXT_OR_COMMAND));
+
+  if (text)
+    result->text = strdup (text);
+  else
+    result->text = 0;
+  result->command = command;
+
+  return result;
+}
+
+
+
+/* Return the first non empty text or textual @-command.
+   To be freed by caller.
+   NOTE quotes and dash are not handled especially and it is not known
+   if the text was in code or not. */
+static INDEX_ENTRY_TEXT_OR_COMMAND *
+idx_leading_text_or_command (ELEMENT *tree, const char *ignore_chars)
+{
+  size_t i;
+
+  if (tree->contents.number <= 0)
+    return new_index_entry_text_or_command (0, 0);
+
+  for (i = 0; i < tree->contents.number; i++)
+    {
+      ELEMENT *content = tree->contents.list[i];
+
+      if (content->cmd)
+        {
+          enum command_id data_cmd = element_builtin_data_cmd (content);
+
+          if (builtin_command_data[data_cmd].other_flags & 
CF_formatted_nobrace)
+            {
+              if (ignore_chars && data_cmd == CM_AT_SIGN
+                  && strchr (ignore_chars, '@'))
+                continue;
+              return new_index_entry_text_or_command (0, content);
+            }
+          else
+            {
+              if (builtin_command_data[data_cmd].flags & CF_brace)
+                {
+                  int brace_command_type = builtin_command_data[data_cmd].data;
+
+                  if ((builtin_command_data[data_cmd].other_flags
+                       & CF_non_formatted_brace)
+                      || data_cmd == CM_footnote
+                      || data_cmd == CM_dmn
+                      || data_cmd == CM_value
+                      || (builtin_command_data[data_cmd].other_flags
+                          & CF_in_index))
+                    continue;
+                  else if (brace_command_type == BRACE_accent
+                           || brace_command_type == BRACE_noarg
+                           || data_cmd == CM_U)
+                    {
+                      return new_index_entry_text_or_command (0, content);
+                    }
+                  else if (brace_command_type != BRACE_inline)
+                    {
+                      if (content->args.number > 0)
+                        {
+                          return idx_leading_text_or_command (
+                                                   content->args.list[0],
+                                                              ignore_chars);
+                        }
+                    }
+                  else
+                    {
+                      int status;
+                      int expand_index
+                       = lookup_extra_integer (content, "expand_index", 
&status);
+                      if (expand_index > 0)
+                        return idx_leading_text_or_command (
+                                         content->args.list[expand_index],
+                                                            ignore_chars);
+
+                    }
+                }
+              else if ((builtin_command_data[data_cmd].other_flags
+                        & CF_formatted_line)
+                       && data_cmd != CM_page
+                       && content->args.number > 0)
+                {
+                   return idx_leading_text_or_command (
+                                                   content->args.list[0],
+                                                              ignore_chars);
+                }
+            }
+        }
+      else if (content->text.end > 0
+               && content->text.text[strspn (content->text.text,
+                                             whitespace_chars)] != '\0')
+        {
+          char *p = content->text.text;
+          p += strspn (p, whitespace_chars);
+          if (ignore_chars)
+            {
+              char *text = strip_index_ignore_chars (p, ignore_chars);
+              INDEX_ENTRY_TEXT_OR_COMMAND *result = 0;
+
+              if (text[strspn (text, whitespace_chars)] != '\0')
+                result = new_index_entry_text_or_command (text, 0);
+
+              free (text);
+
+              if (result)
+                return result;
+            }
+          else
+            return new_index_entry_text_or_command (p, 0);
+        }
+      else if (content->contents.number > 0)
+        return idx_leading_text_or_command (content, ignore_chars);
+    }
+  return new_index_entry_text_or_command (0, 0);
+}
+
+/* Return the leading text or textual command that could be used
+   for sorting.
+   To be freed by caller.
+*/
+INDEX_ENTRY_TEXT_OR_COMMAND *
+index_entry_first_letter_text_or_command (INDEX_ENTRY *index_entry)
+{
+  ELEMENT *index_entry_element = index_entry->entry_element;
+  char *sortas = lookup_extra_string (index_entry_element, "sortas");
+
+  INDEX_ENTRY_TEXT_OR_COMMAND *result;
+
+  if (sortas)
+    {
+      return new_index_entry_text_or_command (sortas, 0);
+    }
+  else
+    {
+      ELEMENT *entry_tree_element
+         = index_content_element (index_entry_element, 0);
+      char *index_ignore_chars = lookup_extra_string (index_entry_element,
+                                                      "index_ignore_chars");
+      ELEMENT *parsed_element;
+
+      if (entry_tree_element->contents.number <= 0)
+        {
+          parsed_element = new_element (ET_NONE);
+          add_to_contents_as_array (parsed_element, index_entry_element);
+        }
+      else
+        parsed_element = entry_tree_element;
+
+      result = idx_leading_text_or_command(parsed_element, index_ignore_chars);
+      if (parsed_element != entry_tree_element)
+        destroy_element (parsed_element);
+
+      return result;
+    }
+}
diff --git a/tp/Texinfo/XS/main/manipulate_indices.h 
b/tp/Texinfo/XS/main/manipulate_indices.h
index 1655972208..e558a9040a 100644
--- a/tp/Texinfo/XS/main/manipulate_indices.h
+++ b/tp/Texinfo/XS/main/manipulate_indices.h
@@ -32,6 +32,11 @@ typedef struct INDICES_SORTABLE_ENTRIES {
     INDEX_SORTABLE_ENTRIES *indices;
 } INDICES_SORTABLE_ENTRIES;
 
+typedef struct INDEX_ENTRY_TEXT_OR_COMMAND {
+    char *text;
+    ELEMENT *command;
+} INDEX_ENTRY_TEXT_OR_COMMAND;
+
 MERGED_INDICES *merge_indices (INDEX **index_names);
 void destroy_merged_indices (MERGED_INDICES *merged_indices);
 
@@ -50,4 +55,7 @@ INDEX_SORTED_BY_LETTER *sort_indices_by_letter (
                         ERROR_MESSAGE_LIST *error_messages,
                         OPTIONS *options, const MERGED_INDICES *merged_indices,
                         INDEX **indices_information);
+
+INDEX_ENTRY_TEXT_OR_COMMAND *index_entry_first_letter_text_or_command
+                                                (INDEX_ENTRY *index_entry);
 #endif
diff --git a/tp/t/html_tests.t b/tp/t/html_tests.t
index 8ebf766366..986c4cbb9d 100644
--- a/tp/t/html_tests.t
+++ b/tp/t/html_tests.t
@@ -299,6 +299,36 @@ in @code{documentdescri---ption} --- @bullet{} @enddots{} 
@verb{:"verb:} @aa{} @
 @cindex entry
 @printindex cp
 ', {'test_split' => 'section'}, {'USE_NODES', 0}],
+['letter_command_in_index',
+'@node Top
+@top top
+
+@node chap
+@chapter Chapter
+
+@cindex @TH{}
+
+@cindex @l{}
+
+@cindex @^e
+
+@printindex cp
+'],
+['U_in_index',
+'@node Top
+@top top
+
+@node chap
+@chapter Chapter
+
+@cindex @U{0131} dotless i
+
+@cindex @U{0074} letter t
+
+@cindex @U{00B5} greek letter mu
+
+@printindex cp
+'],
 ['menu',
 '
 @node Top
diff --git a/tp/t/results/html_tests/U_in_index.pl 
b/tp/t/results/html_tests/U_in_index.pl
new file mode 100644
index 0000000000..da0afdbb64
--- /dev/null
+++ b/tp/t/results/html_tests/U_in_index.pl
@@ -0,0 +1,574 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'U_in_index'} = {
+  'contents' => [
+    {
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'Top'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'extra' => {
+        'is_target' => 1,
+        'normalized' => 'Top'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 1
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'top'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'top',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {},
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 2
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'chap'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'extra' => {
+        'is_target' => 1,
+        'isindex' => 1,
+        'normalized' => 'chap'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 4
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'Chapter'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'chapter',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'text' => '0131'
+                        }
+                      ],
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'U',
+                  'source_info' => {
+                    'line_nr' => 7
+                  }
+                },
+                {
+                  'text' => ' dotless i'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              1
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 7
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'text' => '0074'
+                        }
+                      ],
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'U',
+                  'source_info' => {
+                    'line_nr' => 9
+                  }
+                },
+                {
+                  'text' => ' letter t'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              2
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 9
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'text' => '00B5'
+                        }
+                      ],
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'U',
+                  'source_info' => {
+                    'line_nr' => 11
+                  }
+                },
+                {
+                  'text' => ' greek letter mu'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              3
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 11
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'text' => 'cp'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'printindex',
+          'extra' => {
+            'misc_args' => [
+              'cp'
+            ]
+          },
+          'info' => {
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 13
+          }
+        }
+      ],
+      'extra' => {
+        'section_number' => '1'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 5
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'U_in_index'}{'contents'}[4]{'contents'}[1]{'extra'}{'element_node'}
 = $result_trees{'U_in_index'}{'contents'}[3];
+$result_trees{'U_in_index'}{'contents'}[4]{'contents'}[3]{'extra'}{'element_node'}
 = $result_trees{'U_in_index'}{'contents'}[3];
+$result_trees{'U_in_index'}{'contents'}[4]{'contents'}[5]{'extra'}{'element_node'}
 = $result_trees{'U_in_index'}{'contents'}[3];
+
+$result_texis{'U_in_index'} = '@node Top
+@top top
+
+@node chap
+@chapter Chapter
+
+@cindex @U{0131} dotless i
+
+@cindex @U{0074} letter t
+
+@cindex @U{00B5} greek letter mu
+
+@printindex cp
+';
+
+
+$result_texts{'U_in_index'} = 'top
+***
+
+1 Chapter
+*********
+
+
+
+
+';
+
+$result_sectioning{'U_in_index'} = {
+  'extra' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'top',
+        'extra' => {
+          'associated_node' => {
+            'cmdname' => 'node',
+            'extra' => {
+              'normalized' => 'Top'
+            }
+          },
+          'section_childs' => [
+            {
+              'cmdname' => 'chapter',
+              'extra' => {
+                'associated_node' => {
+                  'cmdname' => 'node',
+                  'extra' => {
+                    'isindex' => 1,
+                    'normalized' => 'chap'
+                  }
+                },
+                'section_directions' => {
+                  'up' => {}
+                },
+                'section_level' => 1,
+                'section_number' => '1',
+                'toplevel_directions' => {
+                  'prev' => {},
+                  'up' => {}
+                }
+              }
+            }
+          ],
+          'section_level' => 0,
+          'sectioning_root' => {},
+          'toplevel_directions' => {}
+        }
+      }
+    ],
+    'section_level' => -1
+  }
+};
+$result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'section_directions'}{'up'}
 = $result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'toplevel_directions'}{'prev'}
 = $result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'toplevel_directions'}{'up'}
 = $result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'U_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'sectioning_root'}
 = $result_sectioning{'U_in_index'};
+
+$result_nodes{'U_in_index'} = [
+  {
+    'cmdname' => 'node',
+    'extra' => {
+      'associated_section' => {
+        'cmdname' => 'top',
+        'extra' => {}
+      },
+      'node_directions' => {
+        'next' => {
+          'cmdname' => 'node',
+          'extra' => {
+            'associated_section' => {
+              'cmdname' => 'chapter',
+              'extra' => {
+                'section_number' => '1'
+              }
+            },
+            'isindex' => 1,
+            'node_directions' => {
+              'prev' => {},
+              'up' => {}
+            },
+            'normalized' => 'chap'
+          }
+        }
+      },
+      'normalized' => 'Top'
+    }
+  },
+  {}
+];
+$result_nodes{'U_in_index'}[0]{'extra'}{'node_directions'}{'next'}{'extra'}{'node_directions'}{'prev'}
 = $result_nodes{'U_in_index'}[0];
+$result_nodes{'U_in_index'}[0]{'extra'}{'node_directions'}{'next'}{'extra'}{'node_directions'}{'up'}
 = $result_nodes{'U_in_index'}[0];
+$result_nodes{'U_in_index'}[1] = 
$result_nodes{'U_in_index'}[0]{'extra'}{'node_directions'}{'next'};
+
+$result_menus{'U_in_index'} = [
+  {
+    'extra' => {
+      'normalized' => 'Top'
+    }
+  },
+  {
+    'extra' => {
+      'normalized' => 'chap'
+    }
+  }
+];
+
+$result_errors{'U_in_index'} = [];
+
+
+$result_floats{'U_in_index'} = {};
+
+
+$result_indices_sort_strings{'U_in_index'} = {
+  'cp' => [
+    '0074 letter t',
+    '00B5 greek letter mu',
+    '0131 dotless i'
+  ]
+};
+
+
+
+$result_converted{'html'}->{'U_in_index'} = '<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>top</title>
+
+<meta name="description" content="top">
+<meta name="keywords" content="top">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+<link href="#chap" rel="index" title="chap">
+<style type="text/css">
+<!--
+a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
+a.summary-letter-printindex {text-decoration: none}
+span:hover a.copiable-link {visibility: visible}
+td.printindex-index-entry {vertical-align: top}
+td.printindex-index-section {vertical-align: top; padding-left: 1em}
+th.entries-header-printindex {text-align:left}
+th.sections-header-printindex {text-align:left; padding-left: 1em}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<div class="top-level-extent" id="Top">
+<div class="nav-panel">
+<p>
+Next: <a href="#chap" accesskey="n" rel="next">Chapter</a> &nbsp; [<a 
href="#chap" title="Index" rel="index">Index</a>]</p>
+</div>
+<h1 class="top" id="top"><span>top<a class="copiable-link" href="#top"> 
&para;</a></span></h1>
+
+<ul class="mini-toc">
+<li><a href="#chap" accesskey="1">Chapter</a></li>
+</ul>
+<hr>
+<div class="chapter-level-extent" id="chap">
+<div class="nav-panel">
+<p>
+Previous: <a href="#Top" accesskey="p" rel="prev">top</a>, Up: <a href="#Top" 
accesskey="u" rel="up">top</a> &nbsp; [<a href="#chap" title="Index" 
rel="index">Index</a>]</p>
+</div>
+<h2 class="chapter" id="Chapter"><span>1 Chapter<a class="copiable-link" 
href="#Chapter"> &para;</a></span></h2>
+
+<a class="index-entry-id" id="index-0131-dotless-i"></a>
+
+<a class="index-entry-id" id="index-0074-letter-t"></a>
+
+<a class="index-entry-id" id="index-00B5-greek-letter-mu"></a>
+
+<div class="printindex cp-printindex">
+<table class="cp-entries-printindex" border="0">
+<tr><td></td><th class="entries-header-printindex">Index Entry</th><th 
class="sections-header-printindex">Section</th></tr>
+<tr><td colspan="3"><hr></td></tr>
+<tr><th id="chap_cp_symbol-1">0</th></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-0074-letter-t">&#x0074; letter t</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-00B5-greek-letter-mu">&#x00B5; greek letter mu</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-0131-dotless-i">&#x0131; dotless i</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
+<tr><td colspan="3"><hr></td></tr>
+</table>
+</div>
+</div>
+</div>
+
+
+
+</body>
+</html>
+';
+
+1;
diff --git a/tp/t/results/html_tests/letter_command_in_index.pl 
b/tp/t/results/html_tests/letter_command_in_index.pl
new file mode 100644
index 0000000000..cdd95f7c78
--- /dev/null
+++ b/tp/t/results/html_tests/letter_command_in_index.pl
@@ -0,0 +1,573 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'letter_command_in_index'} = {
+  'contents' => [
+    {
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'Top'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'extra' => {
+        'is_target' => 1,
+        'normalized' => 'Top'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 1
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'top'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'top',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        }
+      ],
+      'extra' => {},
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 2
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'chap'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'node',
+      'extra' => {
+        'is_target' => 1,
+        'isindex' => 1,
+        'normalized' => 'chap'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 4
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'Chapter'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => {
+              'text' => '
+'
+            }
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'chapter',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'TH',
+                  'source_info' => {
+                    'line_nr' => 7
+                  }
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              1
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 7
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'l',
+                  'source_info' => {
+                    'line_nr' => 9
+                  }
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              2
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 9
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'text' => 'e'
+                        }
+                      ],
+                      'type' => 'following_arg'
+                    }
+                  ],
+                  'cmdname' => '^',
+                  'source_info' => {
+                    'line_nr' => 11
+                  }
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'cindex',
+          'extra' => {
+            'element_node' => {},
+            'index_entry' => [
+              'cp',
+              3
+            ]
+          },
+          'info' => {
+            'command_name' => 'cindex',
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 11
+          },
+          'type' => 'index_entry_command'
+        },
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'text' => 'cp'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => {
+                  'text' => '
+'
+                }
+              },
+              'type' => 'line_arg'
+            }
+          ],
+          'cmdname' => 'printindex',
+          'extra' => {
+            'misc_args' => [
+              'cp'
+            ]
+          },
+          'info' => {
+            'spaces_before_argument' => {
+              'text' => ' '
+            }
+          },
+          'source_info' => {
+            'line_nr' => 13
+          }
+        }
+      ],
+      'extra' => {
+        'section_number' => '1'
+      },
+      'info' => {
+        'spaces_before_argument' => {
+          'text' => ' '
+        }
+      },
+      'source_info' => {
+        'line_nr' => 5
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'letter_command_in_index'}{'contents'}[4]{'contents'}[1]{'extra'}{'element_node'}
 = $result_trees{'letter_command_in_index'}{'contents'}[3];
+$result_trees{'letter_command_in_index'}{'contents'}[4]{'contents'}[3]{'extra'}{'element_node'}
 = $result_trees{'letter_command_in_index'}{'contents'}[3];
+$result_trees{'letter_command_in_index'}{'contents'}[4]{'contents'}[5]{'extra'}{'element_node'}
 = $result_trees{'letter_command_in_index'}{'contents'}[3];
+
+$result_texis{'letter_command_in_index'} = '@node Top
+@top top
+
+@node chap
+@chapter Chapter
+
+@cindex @TH{}
+
+@cindex @l{}
+
+@cindex @^e
+
+@printindex cp
+';
+
+
+$result_texts{'letter_command_in_index'} = 'top
+***
+
+1 Chapter
+*********
+
+
+
+
+';
+
+$result_sectioning{'letter_command_in_index'} = {
+  'extra' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'top',
+        'extra' => {
+          'associated_node' => {
+            'cmdname' => 'node',
+            'extra' => {
+              'normalized' => 'Top'
+            }
+          },
+          'section_childs' => [
+            {
+              'cmdname' => 'chapter',
+              'extra' => {
+                'associated_node' => {
+                  'cmdname' => 'node',
+                  'extra' => {
+                    'isindex' => 1,
+                    'normalized' => 'chap'
+                  }
+                },
+                'section_directions' => {
+                  'up' => {}
+                },
+                'section_level' => 1,
+                'section_number' => '1',
+                'toplevel_directions' => {
+                  'prev' => {},
+                  'up' => {}
+                }
+              }
+            }
+          ],
+          'section_level' => 0,
+          'sectioning_root' => {},
+          'toplevel_directions' => {}
+        }
+      }
+    ],
+    'section_level' => -1
+  }
+};
+$result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'section_directions'}{'up'}
 = $result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'toplevel_directions'}{'prev'}
 = $result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'section_childs'}[0]{'extra'}{'toplevel_directions'}{'up'}
 = $result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0];
+$result_sectioning{'letter_command_in_index'}{'extra'}{'section_childs'}[0]{'extra'}{'sectioning_root'}
 = $result_sectioning{'letter_command_in_index'};
+
+$result_nodes{'letter_command_in_index'} = [
+  {
+    'cmdname' => 'node',
+    'extra' => {
+      'associated_section' => {
+        'cmdname' => 'top',
+        'extra' => {}
+      },
+      'node_directions' => {
+        'next' => {
+          'cmdname' => 'node',
+          'extra' => {
+            'associated_section' => {
+              'cmdname' => 'chapter',
+              'extra' => {
+                'section_number' => '1'
+              }
+            },
+            'isindex' => 1,
+            'node_directions' => {
+              'prev' => {},
+              'up' => {}
+            },
+            'normalized' => 'chap'
+          }
+        }
+      },
+      'normalized' => 'Top'
+    }
+  },
+  {}
+];
+$result_nodes{'letter_command_in_index'}[0]{'extra'}{'node_directions'}{'next'}{'extra'}{'node_directions'}{'prev'}
 = $result_nodes{'letter_command_in_index'}[0];
+$result_nodes{'letter_command_in_index'}[0]{'extra'}{'node_directions'}{'next'}{'extra'}{'node_directions'}{'up'}
 = $result_nodes{'letter_command_in_index'}[0];
+$result_nodes{'letter_command_in_index'}[1] = 
$result_nodes{'letter_command_in_index'}[0]{'extra'}{'node_directions'}{'next'};
+
+$result_menus{'letter_command_in_index'} = [
+  {
+    'extra' => {
+      'normalized' => 'Top'
+    }
+  },
+  {
+    'extra' => {
+      'normalized' => 'chap'
+    }
+  }
+];
+
+$result_errors{'letter_command_in_index'} = [];
+
+
+$result_floats{'letter_command_in_index'} = {};
+
+
+$result_indices_sort_strings{'letter_command_in_index'} = {
+  'cp' => [
+    'e^',
+    'l',
+    'TH'
+  ]
+};
+
+
+
+$result_converted{'html'}->{'letter_command_in_index'} = '<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>top</title>
+
+<meta name="description" content="top">
+<meta name="keywords" content="top">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+<link href="#chap" rel="index" title="chap">
+<style type="text/css">
+<!--
+a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
+a.summary-letter-printindex {text-decoration: none}
+span:hover a.copiable-link {visibility: visible}
+td.printindex-index-entry {vertical-align: top}
+td.printindex-index-section {vertical-align: top; padding-left: 1em}
+th.entries-header-printindex {text-align:left}
+th.sections-header-printindex {text-align:left; padding-left: 1em}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<div class="top-level-extent" id="Top">
+<div class="nav-panel">
+<p>
+Next: <a href="#chap" accesskey="n" rel="next">Chapter</a> &nbsp; [<a 
href="#chap" title="Index" rel="index">Index</a>]</p>
+</div>
+<h1 class="top" id="top"><span>top<a class="copiable-link" href="#top"> 
&para;</a></span></h1>
+
+<ul class="mini-toc">
+<li><a href="#chap" accesskey="1">Chapter</a></li>
+</ul>
+<hr>
+<div class="chapter-level-extent" id="chap">
+<div class="nav-panel">
+<p>
+Previous: <a href="#Top" accesskey="p" rel="prev">top</a>, Up: <a href="#Top" 
accesskey="u" rel="up">top</a> &nbsp; [<a href="#chap" title="Index" 
rel="index">Index</a>]</p>
+</div>
+<h2 class="chapter" id="Chapter"><span>1 Chapter<a class="copiable-link" 
href="#Chapter"> &para;</a></span></h2>
+
+<a class="index-entry-id" id="index-TH"></a>
+
+<a class="index-entry-id" id="index-l"></a>
+
+<a class="index-entry-id" id="index-e"></a>
+
+<div class="printindex cp-printindex">
+<table class="cp-letters-header-printindex"><tr><th>Jump to: &nbsp; 
</th><td><a class="summary-letter-printindex" 
href="#chap_cp_letter-E"><b>E</b></a>
+ &nbsp; 
+<a class="summary-letter-printindex" 
href="#chap_cp_letter-L-1"><b>&#321;</b></a>
+ &nbsp; 
+<a class="summary-letter-printindex" 
href="#chap_cp_letter-TH-2"><b>&THORN;</b></a>
+ &nbsp; 
+</td></tr></table>
+<table class="cp-entries-printindex" border="0">
+<tr><td></td><th class="entries-header-printindex">Index Entry</th><th 
class="sections-header-printindex">Section</th></tr>
+<tr><td colspan="3"><hr></td></tr>
+<tr><th id="chap_cp_letter-E">E</th></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-e">&ecirc;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
+<tr><td colspan="3"><hr></td></tr>
+<tr><th id="chap_cp_letter-L-1">&#321;</th></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-l">&#322;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
+<tr><td colspan="3"><hr></td></tr>
+<tr><th id="chap_cp_letter-TH-2">&THORN;</th></tr>
+<tr><td></td><td class="printindex-index-entry"><a 
href="#index-TH">&THORN;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
+<tr><td colspan="3"><hr></td></tr>
+</table>
+<table class="cp-letters-footer-printindex"><tr><th>Jump to: &nbsp; 
</th><td><a class="summary-letter-printindex" 
href="#chap_cp_letter-E"><b>E</b></a>
+ &nbsp; 
+<a class="summary-letter-printindex" 
href="#chap_cp_letter-L-1"><b>&#321;</b></a>
+ &nbsp; 
+<a class="summary-letter-printindex" 
href="#chap_cp_letter-TH-2"><b>&THORN;</b></a>
+ &nbsp; 
+</td></tr></table>
+</div>
+</div>
+</div>
+
+
+
+</body>
+</html>
+';
+
+1;
diff --git a/tp/t/results/indices/encoding_index_ascii/res_html/chap.html 
b/tp/t/results/indices/encoding_index_ascii/res_html/chap.html
index b4e8bcb126..7f20d0edd2 100644
--- a/tp/t/results/indices/encoding_index_ascii/res_html/chap.html
+++ b/tp/t/results/indices/encoding_index_ascii/res_html/chap.html
@@ -98,17 +98,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
@@ -178,13 +178,13 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
 <tr><th id="chap_cp_symbol-2">,</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_002c">,</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-3">!</th></tr>
+<tr><th id="chap_cp_symbol-3">&iexcl;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_00a1">&iexcl;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-4">'</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027">&rsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-5">&quot;</th></tr>
+<tr><th id="chap_cp_symbol-5">&ldquo;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_201c">&ldquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060_0060">&ldquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027_0027">&rdquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
@@ -196,7 +196,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
 <tr><th id="chap_cp_symbol-7">`</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060">&lsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-8">&gt;</th></tr>
+<tr><th id="chap_cp_symbol-8">&ge;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_003e_003d">&ge;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-9">0</th></tr>
@@ -303,17 +303,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
diff --git 
a/tp/t/results/indices/encoding_index_ascii_enable_encoding/res_html/chap.html 
b/tp/t/results/indices/encoding_index_ascii_enable_encoding/res_html/chap.html
index b4e8bcb126..7f20d0edd2 100644
--- 
a/tp/t/results/indices/encoding_index_ascii_enable_encoding/res_html/chap.html
+++ 
b/tp/t/results/indices/encoding_index_ascii_enable_encoding/res_html/chap.html
@@ -98,17 +98,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
@@ -178,13 +178,13 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
 <tr><th id="chap_cp_symbol-2">,</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_002c">,</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-3">!</th></tr>
+<tr><th id="chap_cp_symbol-3">&iexcl;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_00a1">&iexcl;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-4">'</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027">&rsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-5">&quot;</th></tr>
+<tr><th id="chap_cp_symbol-5">&ldquo;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_201c">&ldquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060_0060">&ldquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027_0027">&rdquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
@@ -196,7 +196,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
 <tr><th id="chap_cp_symbol-7">`</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060">&lsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-8">&gt;</th></tr>
+<tr><th id="chap_cp_symbol-8">&ge;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_003e_003d">&ge;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-9">0</th></tr>
@@ -303,17 +303,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">top</a> &nbsp; [<a href=
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
diff --git a/tp/t/results/indices/encoding_index_latin1/res_html/chap.html 
b/tp/t/results/indices/encoding_index_latin1/res_html/chap.html
index cb3106b4f1..756820acfd 100644
--- a/tp/t/results/indices/encoding_index_latin1/res_html/chap.html
+++ b/tp/t/results/indices/encoding_index_latin1/res_html/chap.html
@@ -98,17 +98,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
@@ -178,13 +178,13 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
 <tr><th id="chap_cp_symbol-2">,</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_002c">,</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-3">!</th></tr>
+<tr><th id="chap_cp_symbol-3">&iexcl;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_00a1">&iexcl;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-4">'</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027">&rsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-5">&quot;</th></tr>
+<tr><th id="chap_cp_symbol-5">&ldquo;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_201c">&ldquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060_0060">&ldquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027_0027">&rdquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
@@ -196,7 +196,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
 <tr><th id="chap_cp_symbol-7">`</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060">&lsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-8">&gt;</th></tr>
+<tr><th id="chap_cp_symbol-8">&ge;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_003e_003d">&ge;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-9">0</th></tr>
@@ -303,17 +303,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
diff --git 
a/tp/t/results/indices/encoding_index_latin1_enable_encoding/res_html/chap.html 
b/tp/t/results/indices/encoding_index_latin1_enable_encoding/res_html/chap.html
index 6415443c9f..6a2b3ecb3d 100644
--- 
a/tp/t/results/indices/encoding_index_latin1_enable_encoding/res_html/chap.html
+++ 
b/tp/t/results/indices/encoding_index_latin1_enable_encoding/res_html/chap.html
@@ -102,7 +102,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  � 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  � 
@@ -110,7 +110,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>�</b></a>
  � 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>&ge;</b></a>
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-10"><b>0</b></a>
  � 
@@ -194,7 +194,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
 <tr><th id="chap_cp_symbol-4">'</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027">&rsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-5">&quot;</th></tr>
+<tr><th id="chap_cp_symbol-5">&ldquo;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_201c">&ldquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060_0060">&ldquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027_0027">&rdquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
@@ -209,7 +209,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
 <tr><th id="chap_cp_symbol-8">�</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_00b0">�</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-9">&gt;</th></tr>
+<tr><th id="chap_cp_symbol-9">&ge;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_003e_003d">&ge;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-10">0</th></tr>
@@ -327,7 +327,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  � 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  � 
@@ -335,7 +335,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index latin1</a
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>�</b></a>
  � 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>&ge;</b></a>
  � 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-10"><b>0</b></a>
  � 
diff --git a/tp/t/results/indices/encoding_index_utf8/res_html/chap.html 
b/tp/t/results/indices/encoding_index_utf8/res_html/chap.html
index 30ec780f55..a867f3849e 100644
--- a/tp/t/results/indices/encoding_index_utf8/res_html/chap.html
+++ b/tp/t/results/indices/encoding_index_utf8/res_html/chap.html
@@ -98,17 +98,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index utf8</a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 
@@ -178,13 +178,13 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index utf8</a>
 <tr><th id="chap_cp_symbol-2">,</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_002c">,</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-3">!</th></tr>
+<tr><th id="chap_cp_symbol-3">&iexcl;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_00a1">&iexcl;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-4">'</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027">&rsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-5">&quot;</th></tr>
+<tr><th id="chap_cp_symbol-5">&ldquo;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_201c">&ldquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060_0060">&ldquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0027_0027">&rdquo;</a></td><td 
class="printindex-index-section"><a href="#chap">chap</a></td></tr>
@@ -196,7 +196,7 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index utf8</a>
 <tr><th id="chap_cp_symbol-7">`</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_0060">&lsquo;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
-<tr><th id="chap_cp_symbol-8">&gt;</th></tr>
+<tr><th id="chap_cp_symbol-8">&ge;</th></tr>
 <tr><td></td><td class="printindex-index-entry"><a 
href="#index-_003e_003d">&ge;</a></td><td class="printindex-index-section"><a 
href="#chap">chap</a></td></tr>
 <tr><td colspan="3"><hr></td></tr>
 <tr><th id="chap_cp_symbol-9">0</th></tr>
@@ -303,17 +303,17 @@ Previous: <a href="index.html" accesskey="p" 
rel="prev">encoding index utf8</a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-2"><b>,</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-3"><b>!</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-3"><b>&iexcl;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-4"><b>'</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-5"><b>&quot;</b></a>
+<a class="summary-letter-printindex" 
href="#chap_cp_symbol-5"><b>&ldquo;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-6"><b>@</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-7"><b>`</b></a>
  &nbsp; 
-<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&gt;</b></a>
+<a class="summary-letter-printindex" href="#chap_cp_symbol-8"><b>&ge;</b></a>
  &nbsp; 
 <a class="summary-letter-printindex" href="#chap_cp_symbol-9"><b>0</b></a>
  &nbsp; 



reply via email to

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