[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/Convert/Text.pm (%ignored_brace_comm
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/Convert/Text.pm (%ignored_brace_commands), tp/Texinfo/Convert/NodeNameNormalization.pm (%ignored_brace_commands): ignore sortas, seealso, seeentry. * tp/Texinfo/Structuring.pm (setup_index_entry_keys_formatting) (index_key, do_index_keys): split setup_index_entry_keys_formatting and index_key out of do_index_keys() such that the same code can be used in converters on individual index entries or subentries. * tp/Texinfo/Convert/LaTeX.pm (_index_entry): use Texinfo::Structuring: [...] |
Date: |
Tue, 24 Aug 2021 11:39:08 -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 4335211 * tp/Texinfo/Convert/Text.pm (%ignored_brace_commands),
tp/Texinfo/Convert/NodeNameNormalization.pm (%ignored_brace_commands): ignore
sortas, seealso, seeentry. * tp/Texinfo/Structuring.pm
(setup_index_entry_keys_formatting) (index_key, do_index_keys): split
setup_index_entry_keys_formatting and index_key out of do_index_keys() such
that the same code can be used in converters on individual index entries or
subentries. * tp/Texinfo/Convert/LaTeX.pm (_index_entry): use Te [...]
4335211 is described below
commit 4335211e0af17df1bafd1d9900ce61b46f3f1b98
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Tue Aug 24 17:38:57 2021 +0200
* tp/Texinfo/Convert/Text.pm (%ignored_brace_commands),
tp/Texinfo/Convert/NodeNameNormalization.pm
(%ignored_brace_commands): ignore sortas, seealso, seeentry.
* tp/Texinfo/Structuring.pm (setup_index_entry_keys_formatting)
(index_key, do_index_keys): split setup_index_entry_keys_formatting
and index_key out of do_index_keys() such that the same code
can be used in converters on individual index entries or
subentries.
* tp/Texinfo/Convert/LaTeX.pm (_index_entry): use
Texinfo::Structuring::index_key() to setup sorting string
for index entries in code. Protect sortas strings.
---
ChangeLog | 14 ++++
tp/Texinfo/Convert/LaTeX.pm | 39 +++++++-----
tp/Texinfo/Convert/Text.pm | 2 +-
tp/Texinfo/Structuring.pm | 74 ++++++++++++++--------
tp/t/09indices.t | 4 +-
.../def_syn_indices/res_latex/def_syn_indices.tex | 2 +-
tp/t/results/indices/explicit_sort_key.pl | 24 +++----
.../indices/seeentry/res_latex/seeentry.tex | 4 +-
tp/t/results/indices/subentry_and_sortas.pl | 44 ++++++-------
.../res_latex/subentry_and_sortas.tex | 4 +-
tp/t/results/latex_tests/indices.pl | 2 +-
.../latex_tests/indices/res_latex/indices.tex | 2 +-
.../layout/res_parser/formatting/formatting.html | 12 ++--
.../formatting/internal_links_formatting.txt | 4 +-
.../layout/res_parser/formatting_chm/chapter.html | 8 +--
.../layout/res_parser/formatting_chm/chapter2.html | 4 +-
.../res_parser/formatting_chm/formatting.hhk | 8 +--
.../res_parser/formatting_exotic/chapter.html | 8 +--
.../res_parser/formatting_exotic/chapter2.html | 4 +-
.../res_parser/formatting_fr_icons/formatting.html | 12 ++--
.../res_parser/formatting_html/formatting.html | 12 ++--
.../res_parser/formatting_html32/formatting.html | 12 ++--
.../formatting_html_no_texi2html/formatting.html | 12 ++--
.../res_parser/formatting_html_nodes/chapter.html | 8 +--
.../res_parser/formatting_html_nodes/chapter2.html | 4 +-
.../res_parser/formatting_latex/formatting.tex | 48 +++++++-------
.../res_parser/formatting_mathjax/formatting.html | 12 ++--
.../res_parser/formatting_nodes/chapter.html | 8 +--
.../res_parser/formatting_nodes/chapter2.html | 4 +-
.../formatting_weird_quotes/formatting.html | 12 ++--
.../res_parser/formatting_singular/chapter.html | 8 +--
.../res_parser/formatting_singular/chapter2.html | 4 +-
32 files changed, 232 insertions(+), 187 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 03f27ce..0727fd9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
2021-08-24 Patrice Dumas <pertusus@free.fr>
+ * tp/Texinfo/Convert/Text.pm (%ignored_brace_commands),
+ tp/Texinfo/Convert/NodeNameNormalization.pm
+ (%ignored_brace_commands): ignore sortas, seealso, seeentry.
+ * tp/Texinfo/Structuring.pm (setup_index_entry_keys_formatting)
+ (index_key, do_index_keys): split setup_index_entry_keys_formatting
+ and index_key out of do_index_keys() such that the same code
+ can be used in converters on individual index entries or
+ subentries.
+ * tp/Texinfo/Convert/LaTeX.pm (_index_entry): use
+ Texinfo::Structuring::index_key() to setup sorting string
+ for index entries in code. Protect sortas strings.
+
+2021-08-24 Patrice Dumas <pertusus@free.fr>
+
* tp/Texinfo/Convert/Converter.pm (convert_index_subentries):
use convert_tree() instead of _convert().
diff --git a/tp/Texinfo/Convert/LaTeX.pm b/tp/Texinfo/Convert/LaTeX.pm
index 0ef7270..05ae075 100644
--- a/tp/Texinfo/Convert/LaTeX.pm
+++ b/tp/Texinfo/Convert/LaTeX.pm
@@ -453,6 +453,7 @@ foreach my $accent_command (keys
%{$LaTeX_accent_commands{'math'}}) {
}
my %ignored_commands = %ignored_misc_commands;
+# processed as part of the index command or type formatting
foreach my $ignored_brace_commands (
'sortas', 'seeentry', 'seealso') {
$ignored_commands{$ignored_brace_commands} = 1;
@@ -1600,45 +1601,50 @@ sub _index_entry($$)
$in_code = 1;
}
#print STDERR "I ".Texinfo::Common::_print_element_tree_simple($root)."
".$entry_index_name."/".$index_name." ".$in_code." C
".$entry->{'index_at_command'}." T ".$entry->{'index_type_command'}.";
".join("|", sort(keys(%{$root->{'extra'}})))."\n";
+ # FIXME cache? In theory txiindexbackslashignore and consorts
+ # may change dynamically. But the current code does not set the
+ # values dynamically for now.
+ my ($options, $ignore_chars)
+ = Texinfo::Structuring::setup_index_entry_keys_formatting($self);
my $current_entry = $root;
- my $sortas;
+ my $current_sortas;
my $subentry_commands = [$root];
if (exists($root->{'extra'}->{'sortas'})) {
- $sortas = $root->{'extra'}->{'sortas'};
+ $current_sortas = $root->{'extra'}->{'sortas'};
}
- my $subentries = [[{'contents' => $entry->{'content_normalized'}},
$sortas]];
+ my $subentries = [[{'contents' => $entry->{'content_normalized'}},
+ $current_sortas]];
while ($current_entry->{'extra'}
and $current_entry->{'extra'}->{'subentry'}) {
$current_entry = $current_entry->{'extra'}->{'subentry'};
- my $sortas;
+ my $current_sortas;
if (exists($current_entry->{'extra'}->{'sortas'})) {
- $sortas = $current_entry->{'extra'}->{'sortas'};
+ $current_sortas = $current_entry->{'extra'}->{'sortas'};
}
- push @$subentries, [$current_entry->{'args'}->[0], $sortas];
+ push @$subentries, [$current_entry->{'args'}->[0], $current_sortas];
push @$subentry_commands, $current_entry;
}
_push_new_context($self, 'index_entry');
$self->{'formatting_context'}->[-1]->{'index'} = 1;
my @result;
foreach my $subentry_sortas (@$subentries) {
- my ($subentry, $sortas) = @$subentry_sortas;
+ my $sortas;
+ my ($subentry, $subentry_sortas) = @$subentry_sortas;
if ($in_code) {
$self->{'formatting_context'}->[-1]->{'code'} += 1;
}
my $index_entry = _convert($self, $subentry);
if ($in_code) {
$self->{'formatting_context'}->[-1]->{'code'} -= 1;
- # always use a string to sort with code as we use a command
- if (not defined($sortas)) {
- $sortas = _convert($self, $subentry);
- # another possibility could be to use
- #
_protect_index_text(Texinfo::Convert::NodeNameNormalization::transliterate_texinfo($subentry));
- # of Texinfo::Convert::Text
- }
+ # always setup a string to sort with code as we use a command
+ $sortas = Texinfo::Structuring::index_key($entry, $subentry,
+ $subentry_sortas, $options, $ignore_chars);
+ } else {
+ $sortas = $subentry_sortas;
}
my $result = '';
if (defined($sortas)) {
- $result = $sortas.'@';
+ $result = _protect_text($self, $sortas).'@';
}
if ($in_code) {
$result .= "\\texttt{$index_entry}";
@@ -2336,7 +2342,8 @@ sub _convert($$)
if ($command eq 'displaymath') {
push @{$self->{'formatting_context'}->[-1]->{'math_style'}},
'one-line';
# close all preformatted formats
- $preformatted_to_reopen =
[@{$self->{'formatting_context'}->[-1]->{'preformatted_context'}}];
+ $preformatted_to_reopen
+ =
[@{$self->{'formatting_context'}->[-1]->{'preformatted_context'}}];
$result .= _close_preformatted_stack($self, $preformatted_to_reopen);
$result .= "\$\$\n";
}
diff --git a/tp/Texinfo/Convert/Text.pm b/tp/Texinfo/Convert/Text.pm
index ca831fb..b66c6f4 100644
--- a/tp/Texinfo/Convert/Text.pm
+++ b/tp/Texinfo/Convert/Text.pm
@@ -54,7 +54,7 @@ $VERSION = '6.8dev';
# when they have no brace_command_arg, see below.
my %ignored_brace_commands;
foreach my $ignored_brace_command (#'xref','ref','pxref','inforef',
- 'anchor',
+ 'anchor', 'sortas', 'seealso', 'seeentry',
'footnote', 'shortcaption', 'caption', 'hyphenation', 'errormsg') {
$ignored_brace_commands{$ignored_brace_command} = 1;
}
diff --git a/tp/Texinfo/Structuring.pm b/tp/Texinfo/Structuring.pm
index 0d3dec5..247863c 100644
--- a/tp/Texinfo/Structuring.pm
+++ b/tp/Texinfo/Structuring.pm
@@ -1573,12 +1573,9 @@ sub _sort_index_entries_in_letter($$)
return $res;
}
-# Go through all the index entries and set 'key', the sort key, on
-# each one.
-sub do_index_keys($$)
+sub setup_index_entry_keys_formatting($)
{
my $self = shift;
- my $index_names = shift;
my $ignore_chars = '';
# '-' must come first to avoid e.g. [<-@] looking like a character range
@@ -1591,40 +1588,67 @@ sub do_index_keys($$)
$ignore_chars .= '@'
if defined $self->{'values'}->{'txiindexatsignignore'};
- my $options = {'sort_string' => 1};
- if ($self->get_conf('ENABLE_ENCODING')
- and $self->{'info'}->{'input_encoding_name'}) {
+ my $options = {'sort_string' => 1,
+ Texinfo::Common::_convert_text_options($self)};
+
+ # FIXME really useful? Already set according to OUTPUT_ENCODING_NAME
+ if ($self->get_conf('ENABLE_ENCODING')
+ and $self->{'info'}->{'input_encoding_name'}
+ and not defined($options->{'enabled_encoding'})) {
$options->{'enabled_encoding'} = $self->{'info'}->{'input_encoding_name'};
}
+ return $options, $ignore_chars;
+}
- if ($self->get_conf('ENABLE_ENCODING')) {
- if ($self->get_conf('OUTPUT_ENCODING_NAME')) {
- $options->{'enabled_encoding'} = $self->get_conf('OUTPUT_ENCODING_NAME');
+# can be used for subentries
+sub index_key($$$$;$)
+{
+ my $main_entry = shift;
+ my $entry_tree_element = shift;
+ my $sortas = shift;
+ my $options = shift;
+ my $ignore_chars = shift;
+
+ my $converter_options = {%$options};
+ $converter_options->{'code'} = $main_entry->{'in_code'};
+
+ my $entry_key;
+ if (defined($sortas)) {
+ $entry_key = $sortas;
+ } else {
+ $entry_key = Texinfo::Convert::Text::convert_to_text(
+ $entry_tree_element, $converter_options);
+ # FIXME do that for sortas too?
+ if (defined($ignore_chars) and $ignore_chars ne '') {
+ $entry_key =~ s/[$ignore_chars]//g;
}
}
- $options->{'expanded_formats_hash'} = $self->{'expanded_formats_hash'};
+ # This avoids varying results depending on whether the string is
+ # represented internally in UTF-8. See "the Unicode bug" in the
+ # "perlunicode" man page.
+ utf8::upgrade($entry_key);
+
+ return $entry_key;
+}
+
+# Go through all the index entries and set 'key', the sort key, on
+# each one.
+sub do_index_keys($$)
+{
+ my $self = shift;
+ my $index_names = shift;
+
+ my ($options, $ignore_chars) = setup_index_entry_keys_formatting($self);
foreach my $index_name (keys(%$index_names)) {
foreach my $entry (@{$index_names->{$index_name}->{'index_entries'}}) {
- $options->{'code'} = $entry->{'in_code'};
- if (defined $entry->{'sortas'}) {
- $entry->{'key'} = $entry->{'sortas'};
- } else {
- $entry->{'key'} = Texinfo::Convert::Text::convert_to_text(
- {'contents' => $entry->{'content'}}, $options);
- if ($ignore_chars) {
- $entry->{'key'} =~ s/[$ignore_chars]//g;
- }
- }
+ $entry->{'key'} = index_key($entry, {'contents' => $entry->{'content'}},
+ $entry->{'sortas'}, $options, $ignore_chars);
if ($entry->{'key'} !~ /\S/) {
$self->line_warn(sprintf(__("empty index key in \@%s"),
$entry->{'index_at_command'}),
$entry->{'command'}->{'line_nr'});
}
- # This avoids varying results depending on whether the string is
- # represented internally in UTF-8. See "the Unicode bug" in the
- # "perlunicode" man page.
- utf8::upgrade($entry->{'key'});
}
}
}
diff --git a/tp/t/09indices.t b/tp/t/09indices.t
index f0e8942..d018940 100644
--- a/tp/t/09indices.t
+++ b/tp/t/09indices.t
@@ -615,9 +615,9 @@ in a reuglar para @sortas{foo}. @code{inside another
@sortas{command}}.
@node chapter index
@chapter Index
-@cindex aaa @sortas{A} @subentry @sortas{B} bbb
+@cindex aaa @sortas{A---S} @subentry @sortas{B---S1} bbb
-@findex xxx @sortas{X} @subentry @sortas{X} zzz
+@findex xxx @sortas{X---S} @subentry @sortas{X---S1} zzz
@printindex cp
@printindex fn
diff --git a/tp/t/results/indices/def_syn_indices/res_latex/def_syn_indices.tex
b/tp/t/results/indices/def_syn_indices/res_latex/def_syn_indices.tex
index 16a17b6..06e1663 100644
--- a/tp/t/results/indices/def_syn_indices/res_latex/def_syn_indices.tex
+++ b/tp/t/results/indices/def_syn_indices/res_latex/def_syn_indices.tex
@@ -107,7 +107,7 @@ after
\index[fn]{index truc}%
-\index[codeidx]{a \emph{index entry} t\~{e} \^{\i{}}@\texttt{a \emph{index
entry} t\~{e} \^{\i{}}}}%
+\index[codeidx]{a index entry te\~{} i\^{}@\texttt{a \emph{index entry} t\~{e}
\^{\i{}}}}%
\index[fn]{cindex entry@\texttt{cindex entry}}%
diff --git a/tp/t/results/indices/explicit_sort_key.pl
b/tp/t/results/indices/explicit_sort_key.pl
index d190bc1..bcec385 100644
--- a/tp/t/results/indices/explicit_sort_key.pl
+++ b/tp/t/results/indices/explicit_sort_key.pl
@@ -393,7 +393,7 @@ $result_trees{'explicit_sort_key'} = {
'index_at_command' => 'SKindex',
'index_name' => 'SK',
'index_type_command' => 'SKindex',
- 'key' => 'aaainvalid nesting',
+ 'key' => 'aaa',
'node' => {},
'number' => 4
},
@@ -792,10 +792,10 @@ in a reuglar para @sortas{foo}. @code{inside another
@sortas{command}}.
$result_texts{'explicit_sort_key'} = '
-in a reuglar parafoo. inside anothercommand.
+in a reuglar para. inside another.
-and cmd inside.
-and cmdinside.
+.
+and cmd.
';
@@ -1000,10 +1000,10 @@ $result_converted{'plaintext'}->{'explicit_sort_key'} =
'in a reuglar para. \'i
$result_converted{'html_text'}->{'explicit_sort_key'} = '<div class="top"
id="Top">
<span id="SEC_Top"></span>
-<span id="index-Abbbbbbb-_0028first_0029"></span>
-<span id="index-Baaaaaaa-_0028second_0029"></span>
-<span id="index-0zero-sort-key"></span>
-<span id="index-aaainvalid-nesting"></span>
+<span id="index-bbbbbbb-_0028first_0029"></span>
+<span id="index-aaaaaaa-_0028second_0029"></span>
+<span id="index-zero-sort-key"></span>
+<span id="index-aaa"></span>
<p>in a reuglar para. <code>inside another</code>.
</p>
@@ -1022,14 +1022,14 @@ $result_converted{'html_text'}->{'explicit_sort_key'} =
'<div class="top" id="To
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left">
Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="t_h_SK_symbol-1">0</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-0zero-sort-key">zero sort
key</a>:</td><td> </td><td valign="top"><a href="#Top">Top</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-zero-sort-key">zero sort
key</a>:</td><td> </td><td valign="top"><a href="#Top">Top</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="t_h_SK_letter-A">A</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-Abbbbbbb-_0028first_0029">bbbbbbb
(first)</a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-aaainvalid-nesting"><b>aaa</b></a>:</td><td> </td><td
valign="top"><a href="#Top">Top</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-bbbbbbb-_0028first_0029">bbbbbbb
(first)</a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-aaa"><b>aaa</b></a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="t_h_SK_letter-B">B</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-Baaaaaaa-_0028second_0029">aaaaaaa
(second)</a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-aaaaaaa-_0028second_0029">aaaaaaa
(second)</a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#t_h_SK_symbol-1"><b>0</b></a>
diff --git a/tp/t/results/indices/seeentry/res_latex/seeentry.tex
b/tp/t/results/indices/seeentry/res_latex/seeentry.tex
index bf8daec..693d5a5 100644
--- a/tp/t/results/indices/seeentry/res_latex/seeentry.tex
+++ b/tp/t/results/indices/seeentry/res_latex/seeentry.tex
@@ -99,7 +99,7 @@ roundcorner=10pt}
\index[cp]{aaa|see{bbb}}%
\index[cp]{ddd|seealso{ccc}}%
-\index[fn]{f---aaa@\texttt{f{-}{-}{-}aaa}|see{f---bbb}}%
-\index[fn]{f---ddd@\texttt{f{-}{-}{-}ddd}|seealso{f---ccc}}%
+\index[fn]{f--aaa@\texttt{f{-}{-}{-}aaa}|see{f---bbb}}%
+\index[fn]{f--ddd@\texttt{f{-}{-}{-}ddd}|seealso{f---ccc}}%
\end{document}
diff --git a/tp/t/results/indices/subentry_and_sortas.pl
b/tp/t/results/indices/subentry_and_sortas.pl
index ed626d4..7f72051 100644
--- a/tp/t/results/indices/subentry_and_sortas.pl
+++ b/tp/t/results/indices/subentry_and_sortas.pl
@@ -205,7 +205,7 @@ $result_trees{'subentry_and_sortas'} = {
'contents' => [
{
'parent' => {},
- 'text' => 'A'
+ 'text' => 'A---S'
}
],
'parent' => {},
@@ -239,12 +239,12 @@ $result_trees{'subentry_and_sortas'} = {
'index_at_command' => 'cindex',
'index_name' => 'cp',
'index_type_command' => 'cindex',
- 'key' => 'A',
+ 'key' => 'A---S',
'node' => {},
'number' => 1,
- 'sortas' => 'A'
+ 'sortas' => 'A---S'
},
- 'sortas' => 'A',
+ 'sortas' => 'A---S',
'spaces_before_argument' => ' ',
'subentry' => {
'args' => [
@@ -256,7 +256,7 @@ $result_trees{'subentry_and_sortas'} = {
'contents' => [
{
'parent' => {},
- 'text' => 'B'
+ 'text' => 'B---S1'
}
],
'parent' => {},
@@ -293,7 +293,7 @@ $result_trees{'subentry_and_sortas'} = {
'cmdname' => 'subentry',
'extra' => {
'level' => 1,
- 'sortas' => 'B',
+ 'sortas' => 'B---S1',
'spaces_before_argument' => ' '
},
'line_nr' => {
@@ -338,7 +338,7 @@ $result_trees{'subentry_and_sortas'} = {
'contents' => [
{
'parent' => {},
- 'text' => 'X'
+ 'text' => 'X---S'
}
],
'parent' => {},
@@ -372,12 +372,12 @@ $result_trees{'subentry_and_sortas'} = {
'index_at_command' => 'findex',
'index_name' => 'fn',
'index_type_command' => 'findex',
- 'key' => 'X',
+ 'key' => 'X---S',
'node' => {},
'number' => 1,
- 'sortas' => 'X'
+ 'sortas' => 'X---S'
},
- 'sortas' => 'X',
+ 'sortas' => 'X---S',
'spaces_before_argument' => ' ',
'subentry' => {
'args' => [
@@ -389,7 +389,7 @@ $result_trees{'subentry_and_sortas'} = {
'contents' => [
{
'parent' => {},
- 'text' => 'X'
+ 'text' => 'X---S1'
}
],
'parent' => {},
@@ -426,7 +426,7 @@ $result_trees{'subentry_and_sortas'} = {
'cmdname' => 'subentry',
'extra' => {
'level' => 1,
- 'sortas' => 'X',
+ 'sortas' => 'X---S1',
'spaces_before_argument' => ' '
},
'line_nr' => {
@@ -607,9 +607,9 @@ $result_texis{'subentry_and_sortas'} = '@setfilename
subentry_and_sortas.info
@node chapter index
@chapter Index
-@cindex aaa @sortas{A} @subentry @sortas{B} bbb
+@cindex aaa @sortas{A---S} @subentry @sortas{B---S1} bbb
-@findex xxx @sortas{X} @subentry @sortas{X} zzz
+@findex xxx @sortas{X---S} @subentry @sortas{X---S1} zzz
@printindex cp
@printindex fn
@@ -805,9 +805,9 @@ Next: <a href="#chapter-index" accesskey="n"
rel="next">Index</a> [<a hre
</div>
<span id="Index"></span><h2 class="chapter">1 Index</h2>
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-index_cp_letter-A"><b>A</b></a>
@@ -816,7 +816,7 @@ Next: <a href="#chapter-index" accesskey="n"
rel="next">Index</a> [<a hre
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left">
Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-index_cp_letter-A">A</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a>:</td><td> </td><td valign="top"><a href="#chapter-index">chapter
index</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a>:</td><td> </td><td valign="top"><a href="#chapter-index">chapter
index</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-index_cp_letter-A"><b>A</b></a>
@@ -829,7 +829,7 @@ Next: <a href="#chapter-index" accesskey="n"
rel="next">Index</a> [<a hre
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left">
Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-index_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter-index">chapter index</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter-index">chapter index</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-index_fn_letter-X"><b>X</b></a>
@@ -927,9 +927,9 @@ $result_converted{'html_text'}->{'subentry_and_sortas'} = '
</div>
<span id="Index"></span><h2 class="chapter">1 Index</h2>
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#t_h_cp_letter-A"><b>A</b></a>
@@ -938,7 +938,7 @@ $result_converted{'html_text'}->{'subentry_and_sortas'} = '
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left">
Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="t_h_cp_letter-A">A</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a>:</td><td> </td><td valign="top"><a href="#chapter-index">chapter
index</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a>:</td><td> </td><td valign="top"><a href="#chapter-index">chapter
index</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#t_h_cp_letter-A"><b>A</b></a>
@@ -951,7 +951,7 @@ $result_converted{'html_text'}->{'subentry_and_sortas'} = '
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left">
Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="t_h_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter-index">chapter index</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter-index">chapter index</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#t_h_fn_letter-X"><b>X</b></a>
diff --git
a/tp/t/results/indices/subentry_and_sortas/res_latex/subentry_and_sortas.tex
b/tp/t/results/indices/subentry_and_sortas/res_latex/subentry_and_sortas.tex
index d01fc04..81a42b7 100644
--- a/tp/t/results/indices/subentry_and_sortas/res_latex/subentry_and_sortas.tex
+++ b/tp/t/results/indices/subentry_and_sortas/res_latex/subentry_and_sortas.tex
@@ -99,9 +99,9 @@ roundcorner=10pt}
\chapter{Index}
\label{anchor:chapter-index}%
-\index[cp]{A@aaa!B@bbb}%
+\index[cp]{A---S@aaa!B---S1@bbb}%
-\index[fn]{X@\texttt{xxx}!X@\texttt{zzz}}%
+\index[fn]{X---S@\texttt{xxx}!X---S1@\texttt{zzz}}%
\printindex[cp]
\printindex[fn]
diff --git a/tp/t/results/latex_tests/indices.pl
b/tp/t/results/latex_tests/indices.pl
index 451aa69..9addc50 100644
--- a/tp/t/results/latex_tests/indices.pl
+++ b/tp/t/results/latex_tests/indices.pl
@@ -859,7 +859,7 @@ $result_converted{'latex'}->{'indices'} = '
\\chapter{Index}
\\label{anchor:chapter}%
-\\index[cp]{$a"!"""@b$ """!"@ \\"{a} \\"{o}!a!"@b@sub$a"!"""@b$ sub """!"@
\\"{a} \\"{o}|seealso{$a"!"""@b$ """!"@ \\"{a} \\"{o}}}%
+\\index[cp]{$a"!"""@b$ """!"@ \\"{a} \\"{o}!a"!"""@b@sub$a"!"""@b$ sub """!"@
\\"{a} \\"{o}|seealso{$a"!"""@b$ """!"@ \\"{a} \\"{o}}}%
\\printindex[cp]
';
diff --git a/tp/t/results/latex_tests/indices/res_latex/indices.tex
b/tp/t/results/latex_tests/indices/res_latex/indices.tex
index cf5684b..be60eb1 100644
--- a/tp/t/results/latex_tests/indices/res_latex/indices.tex
+++ b/tp/t/results/latex_tests/indices/res_latex/indices.tex
@@ -98,7 +98,7 @@ roundcorner=10pt}
\chapter{Index}
\label{anchor:chapter}%
-\index[cp]{$a"!"""@b$ """!"@ \"{a} \"{o}!a!"@b@sub$a"!"""@b$ sub """!"@ \"{a}
\"{o}|seealso{$a"!"""@b$ """!"@ \"{a} \"{o}}}%
+\index[cp]{$a"!"""@b$ """!"@ \"{a} \"{o}!a"!"""@b@sub$a"!"""@b$ sub """!"@
\"{a} \"{o}|seealso{$a"!"""@b$ """!"@ \"{a} \"{o}}}%
\printindex[cp]
\end{document}
diff --git a/tp/tests/layout/res_parser/formatting/formatting.html
b/tp/tests/layout/res_parser/formatting/formatting.html
index 1e3bbda..a0b5303 100644
--- a/tp/tests/layout/res_parser/formatting/formatting.html
+++ b/tp/tests/layout/res_parser/formatting/formatting.html
@@ -5396,9 +5396,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5489,7 +5489,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5827,7 +5827,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -6067,7 +6067,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6403,7 +6403,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git
a/tp/tests/layout/res_parser/formatting/internal_links_formatting.txt
b/tp/tests/layout/res_parser/formatting/internal_links_formatting.txt
index a53c177..40983f8 100644
--- a/tp/tests/layout/res_parser/formatting/internal_links_formatting.txt
+++ b/tp/tests/layout/res_parser/formatting/internal_links_formatting.txt
@@ -17,7 +17,7 @@ formatting.html#index-_002d_002doption-1 cp -option
formatting.html#index-_002e cp .
formatting.html#index-_003f cp ?
formatting.html#index-a cp a
-formatting.html#index-aaaA cp A
+formatting.html#index-aaa cp A
formatting.html#index-a_002d_002d_002da cp a--a
formatting.html#index-copying-a_002d_002dasis cp a--asis
formatting.html#index-titlepage-a_002d_002dasis cp a--asis
@@ -259,7 +259,7 @@ formatting.html#index-truc fn truc
formatting.html#index-truc-1 fn truc
formatting.html#index-truc-2 fn truc
formatting.html#index-truc-3 fn truc
-formatting.html#index-xxxX fn X
+formatting.html#index-xxx fn X
formatting.html#index-copying-d_002d_002deftp_005fname tp d--eftp_name
formatting.html#index-titlepage-d_002d_002deftp_005fname tp
d--eftp_name
formatting.html#index-d_002d_002deftp_005fname tp d--eftp_name
diff --git a/tp/tests/layout/res_parser/formatting_chm/chapter.html
b/tp/tests/layout/res_parser/formatting_chm/chapter.html
index 15cb8d7..7dda572 100644
--- a/tp/tests/layout/res_parser/formatting_chm/chapter.html
+++ b/tp/tests/layout/res_parser/formatting_chm/chapter.html
@@ -3569,9 +3569,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -3662,7 +3662,7 @@ Invalid use of @':
<tr><td colspan="4"> </td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="formatting.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="formatting.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="formatting.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="formatting.html">Top section</a></td></tr>
@@ -4000,7 +4000,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> </td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> </td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_chm/chapter2.html
b/tp/tests/layout/res_parser/formatting_chm/chapter2.html
index 6a1efef..9fbe5be 100644
--- a/tp/tests/layout/res_parser/formatting_chm/chapter2.html
+++ b/tp/tests/layout/res_parser/formatting_chm/chapter2.html
@@ -800,7 +800,7 @@ ul.no-bullet {list-style: none}
<tr><td colspan="4"> </td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a">a</a></td><td> </td><td valign="top"><a
href="chapter.html">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="formatting.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="formatting.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="formatting.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="formatting.html">Top section</a></td></tr>
@@ -1136,7 +1136,7 @@ ul.no-bullet {list-style: none}
<tr><td></td><td valign="top"><a
href="chapter.html#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td colspan="4"> </td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td colspan="4"> </td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_chm/formatting.hhk
b/tp/tests/layout/res_parser/formatting_chm/formatting.hhk
index 8002853..f6a18b4 100644
--- a/tp/tests/layout/res_parser/formatting_chm/formatting.hhk
+++ b/tp/tests/layout/res_parser/formatting_chm/formatting.hhk
@@ -57,8 +57,8 @@
<param name="Local" value="chapter.html#index-a">
</OBJECT> </LI>
<LI> <OBJECT type="text/sitemap">
-<param name="Name" value="aaaA">
-<param name="Local" value="chapter.html#index-aaaA">
+<param name="Name" value="aaa">
+<param name="Local" value="chapter.html#index-aaa">
</OBJECT> </LI>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="a--a">
@@ -1025,8 +1025,8 @@
<param name="Local" value="chapter.html#index-truc-3">
</OBJECT> </LI>
<LI> <OBJECT type="text/sitemap">
-<param name="Name" value="xxxX">
-<param name="Local" value="chapter.html#index-xxxX">
+<param name="Name" value="xxx">
+<param name="Local" value="chapter.html#index-xxx">
</OBJECT> </LI>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="d--eftp_name">
diff --git a/tp/tests/layout/res_parser/formatting_exotic/chapter.html
b/tp/tests/layout/res_parser/formatting_exotic/chapter.html
index b0f9bcf..9359927 100644
--- a/tp/tests/layout/res_parser/formatting_exotic/chapter.html
+++ b/tp/tests/layout/res_parser/formatting_exotic/chapter.html
@@ -3585,9 +3585,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -3678,7 +3678,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -4016,7 +4016,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_exotic/chapter2.html
b/tp/tests/layout/res_parser/formatting_exotic/chapter2.html
index 444e171..8018868 100644
--- a/tp/tests/layout/res_parser/formatting_exotic/chapter2.html
+++ b/tp/tests/layout/res_parser/formatting_exotic/chapter2.html
@@ -816,7 +816,7 @@ ul.no-bullet {list-style: none}
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a">a</a></td><td> </td><td valign="top"><a
href="chapter.html">chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a
href="chapter.html">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a
href="chapter.html">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="chapter.html">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="chapter.html">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -1152,7 +1152,7 @@ ul.no-bullet {list-style: none}
<tr><td></td><td valign="top"><a
href="chapter.html#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="chapter.html">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a
href="chapter.html">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a
href="chapter.html">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_fr_icons/formatting.html
b/tp/tests/layout/res_parser/formatting_fr_icons/formatting.html
index 6cf97ec..a7b2455 100644
--- a/tp/tests/layout/res_parser/formatting_fr_icons/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_fr_icons/formatting.html
@@ -5396,9 +5396,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5489,7 +5489,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5827,7 +5827,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Aller à: </th><td><a
class="summary-letter" href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -6067,7 +6067,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6403,7 +6403,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Aller à: </th><td><a
class="summary-letter" href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_html/formatting.html
b/tp/tests/layout/res_parser/formatting_html/formatting.html
index 1e3bbda..a0b5303 100644
--- a/tp/tests/layout/res_parser/formatting_html/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_html/formatting.html
@@ -5396,9 +5396,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5489,7 +5489,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5827,7 +5827,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -6067,7 +6067,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6403,7 +6403,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_html32/formatting.html
b/tp/tests/layout/res_parser/formatting_html32/formatting.html
index b28c9c5..af7000b 100644
--- a/tp/tests/layout/res_parser/formatting_html32/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_html32/formatting.html
@@ -5266,9 +5266,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5359,7 +5359,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a--a</a></td><td> </td><td valign="top"><a
href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5697,7 +5697,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a
href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -5936,7 +5936,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a--a</a></td><td> </td><td valign="top"><a
href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6272,7 +6272,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git
a/tp/tests/layout/res_parser/formatting_html_no_texi2html/formatting.html
b/tp/tests/layout/res_parser/formatting_html_no_texi2html/formatting.html
index 74dc9da..e0fe12f 100644
--- a/tp/tests/layout/res_parser/formatting_html_no_texi2html/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_html_no_texi2html/formatting.html
@@ -3624,9 +3624,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -3717,7 +3717,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a>:</td><td> </td><td
valign="top"><a href="#Top">Top</a></td></tr>
@@ -4055,7 +4055,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter_fn_symbol-1"><b>-</b></a>
@@ -4221,7 +4221,7 @@ Previous: <a href="#chapter" accesskey="p"
rel="prev">chapter</a>, Up: <a href="
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a>:</td><td> </td><td
valign="top"><a href="#Top">Top</a></td></tr>
@@ -4557,7 +4557,7 @@ Previous: <a href="#chapter" accesskey="p"
rel="prev">chapter</a>, Up: <a href="
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a>:</td><td> </td><td
valign="top"><a href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a>:</td><td> </td><td valign="top"><a
href="#chapter">chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_html_nodes/chapter.html
b/tp/tests/layout/res_parser/formatting_html_nodes/chapter.html
index 423cbc7..31b0879 100644
--- a/tp/tests/layout/res_parser/formatting_html_nodes/chapter.html
+++ b/tp/tests/layout/res_parser/formatting_html_nodes/chapter.html
@@ -3585,9 +3585,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -3678,7 +3678,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -4016,7 +4016,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_html_nodes/chapter2.html
b/tp/tests/layout/res_parser/formatting_html_nodes/chapter2.html
index 0843119..70e03aa 100644
--- a/tp/tests/layout/res_parser/formatting_html_nodes/chapter2.html
+++ b/tp/tests/layout/res_parser/formatting_html_nodes/chapter2.html
@@ -816,7 +816,7 @@ ul.no-bullet {list-style: none}
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a">a</a></td><td> </td><td valign="top"><a
href="chapter.html">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -1152,7 +1152,7 @@ ul.no-bullet {list-style: none}
<tr><td></td><td valign="top"><a
href="chapter.html#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_latex/formatting.tex
b/tp/tests/layout/res_parser/formatting_latex/formatting.tex
index 129fe32..f9445f1 100644
--- a/tp/tests/layout/res_parser/formatting_latex/formatting.tex
+++ b/tp/tests/layout/res_parser/formatting_latex/formatting.tex
@@ -623,7 +623,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\index[cp]{index entry within deffn}%
\hbox{}-- cmde: truc
@@ -644,11 +644,11 @@ def--fn
\hbox{}-- cmde: \textbf{id ule} truc
-\index[fn]{\textbf{id ule}@\texttt{\textbf{id ule}}}%
+\index[fn]{id ule@\texttt{\textbf{id ule}}}%
\hbox{}-- cmde2: \textbf{id `\texttt{i}' ule} truc
-\index[fn]{\textbf{id `\texttt{i}' ule}@\texttt{\textbf{id `\texttt{i}' ule}}}%
+\index[fn]{id i ule@\texttt{\textbf{id `\texttt{i}' ule}}}%
\hbox{}-- \textbf{id `\texttt{i}' ule}:
@@ -713,7 +713,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\hbox{}-- cmde: truc
@@ -1627,7 +1627,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\index[cp]{index entry within deffn}%
\hbox{}-- cmde: truc
@@ -1648,11 +1648,11 @@ def--fn
\hbox{}-- cmde: \textbf{id ule} truc
-\index[fn]{\textbf{id ule}@\texttt{\textbf{id ule}}}%
+\index[fn]{id ule@\texttt{\textbf{id ule}}}%
\hbox{}-- cmde2: \textbf{id `\texttt{i}' ule} truc
-\index[fn]{\textbf{id `\texttt{i}' ule}@\texttt{\textbf{id `\texttt{i}' ule}}}%
+\index[fn]{id i ule@\texttt{\textbf{id `\texttt{i}' ule}}}%
\hbox{}-- \textbf{id `\texttt{i}' ule}:
@@ -1717,7 +1717,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\hbox{}-- cmde: truc
@@ -2646,7 +2646,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\index[cp]{index entry within deffn}%
\hbox{}-- cmde: truc
@@ -2667,11 +2667,11 @@ def--fn
\hbox{}-- cmde: \textbf{id ule} truc
-\index[fn]{\textbf{id ule}@\texttt{\textbf{id ule}}}%
+\index[fn]{id ule@\texttt{\textbf{id ule}}}%
\hbox{}-- cmde2: \textbf{id `\texttt{i}' ule} truc
-\index[fn]{\textbf{id `\texttt{i}' ule}@\texttt{\textbf{id `\texttt{i}' ule}}}%
+\index[fn]{id i ule@\texttt{\textbf{id `\texttt{i}' ule}}}%
\hbox{}-- \textbf{id `\texttt{i}' ule}:
@@ -2736,7 +2736,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\hbox{}-- cmde: truc
@@ -3648,7 +3648,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\index[cp]{index entry within deffn}%
\hbox{}-- cmde: truc
@@ -3669,11 +3669,11 @@ def--fn
\hbox{}-- cmde: \textbf{id ule} truc
-\index[fn]{\textbf{id ule}@\texttt{\textbf{id ule}}}%
+\index[fn]{id ule@\texttt{\textbf{id ule}}}%
\hbox{}-- cmde2: \textbf{id `\texttt{i}' ule} truc
-\index[fn]{\textbf{id `\texttt{i}' ule}@\texttt{\textbf{id `\texttt{i}' ule}}}%
+\index[fn]{id i ule@\texttt{\textbf{id `\texttt{i}' ule}}}%
\hbox{}-- \textbf{id `\texttt{i}' ule}:
@@ -3738,7 +3738,7 @@ def--fn
\hbox{}-- fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\hbox{}-- cmde: truc
@@ -4663,7 +4663,7 @@ def{-}{-}fn
\hbox{}{-}{-} fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\index[cp]{index entry within deffn}%
\hbox{}{-}{-} cmde: truc
@@ -4684,11 +4684,11 @@ def{-}{-}fn
\hbox{}{-}{-} cmde: \textbf{id ule} truc
-\index[fn]{\textbf{id ule}@\texttt{\textbf{id ule}}}%
+\index[fn]{id ule@\texttt{\textbf{id ule}}}%
\hbox{}{-}{-} cmde2: \textbf{id `\texttt{i}' ule} truc
-\index[fn]{\textbf{id `\texttt{i}' ule}@\texttt{\textbf{id `\texttt{i}' ule}}}%
+\index[fn]{id i ule@\texttt{\textbf{id `\texttt{i}' ule}}}%
\hbox{}{-}{-} \textbf{id `\texttt{i}' ule}:
@@ -4753,7 +4753,7 @@ def{-}{-}fn
\hbox{}{-}{-} fset: \emph{i} a g
-\index[fn]{\emph{i}@\texttt{\emph{i}}}%
+\index[fn]{i@\texttt{\emph{i}}}%
\hbox{}{-}{-} cmde: truc
@@ -5191,16 +5191,16 @@ Various deff lines
\index[cp]{aaa|see{bbb}}%
\index[cp]{ddd|seealso{ccc}}%
-\index[fn]{f---aaa@\texttt{f{-}{-}{-}aaa}|see{f---bbb}}%
-\index[fn]{f---ddd@\texttt{f{-}{-}{-}ddd}|seealso{f---ccc}}%
+\index[fn]{f--aaa@\texttt{f{-}{-}{-}aaa}|see{f---bbb}}%
+\index[fn]{f--ddd@\texttt{f{-}{-}{-}ddd}|seealso{f---ccc}}%
\index[cp]{A@aaa!B@bbb}%
\index[fn]{X@\texttt{xxx}!X@\texttt{zzz}}%
-\index[fn]{\hbox{}@\texttt{\hbox{}}}%
+\index[fn]{@\texttt{\hbox{}}}%
-\index[codeidx]{a \emph{index---entry} t\~{e} --- \^{\i{}}@\texttt{a
\emph{index{-}{-}{-}entry} t\~{e} {-}{-}{-} \^{\i{}}}}%
+\index[codeidx]{a index---entry te\~{} --- i\^{}@\texttt{a
\emph{index{-}{-}{-}entry} t\~{e} {-}{-}{-} \^{\i{}}}}%
\index[truc]{truc}%
diff --git a/tp/tests/layout/res_parser/formatting_mathjax/formatting.html
b/tp/tests/layout/res_parser/formatting_mathjax/formatting.html
index cea01fd..241749e 100644
--- a/tp/tests/layout/res_parser/formatting_mathjax/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_mathjax/formatting.html
@@ -5406,9 +5406,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5499,7 +5499,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5837,7 +5837,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -6077,7 +6077,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6413,7 +6413,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_nodes/chapter.html
b/tp/tests/layout/res_parser/formatting_nodes/chapter.html
index 423cbc7..31b0879 100644
--- a/tp/tests/layout/res_parser/formatting_nodes/chapter.html
+++ b/tp/tests/layout/res_parser/formatting_nodes/chapter.html
@@ -3585,9 +3585,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -3678,7 +3678,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -4016,7 +4016,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_nodes/chapter2.html
b/tp/tests/layout/res_parser/formatting_nodes/chapter2.html
index 0843119..70e03aa 100644
--- a/tp/tests/layout/res_parser/formatting_nodes/chapter2.html
+++ b/tp/tests/layout/res_parser/formatting_nodes/chapter2.html
@@ -816,7 +816,7 @@ ul.no-bullet {list-style: none}
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a">a</a></td><td> </td><td valign="top"><a
href="chapter.html">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.html#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.html">Top section</a></td></tr>
@@ -1152,7 +1152,7 @@ ul.no-bullet {list-style: none}
<tr><td></td><td valign="top"><a
href="chapter.html#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/layout/res_parser/formatting_weird_quotes/formatting.html
b/tp/tests/layout/res_parser/formatting_weird_quotes/formatting.html
index 24b13bb..59daaca 100644
--- a/tp/tests/layout/res_parser/formatting_weird_quotes/formatting.html
+++ b/tp/tests/layout/res_parser/formatting_weird_quotes/formatting.html
@@ -5396,9 +5396,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -5489,7 +5489,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -5827,7 +5827,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
@@ -6067,7 +6067,7 @@ Menu comment
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#Top">Top section</a></td></tr>
@@ -6403,7 +6403,7 @@ Menu comment
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/tex_html/res_parser/formatting_singular/chapter.html
b/tp/tests/tex_html/res_parser/formatting_singular/chapter.html
index 48e8c9b..87a1d5b 100644
--- a/tp/tests/tex_html/res_parser/formatting_singular/chapter.html
+++ b/tp/tests/tex_html/res_parser/formatting_singular/chapter.html
@@ -3911,9 +3911,9 @@ Invalid use of @':
-<span id="index-aaaA"></span>
+<span id="index-aaa"></span>
-<span id="index-xxxX"></span>
+<span id="index-xxx"></span>
<span id="index-"></span>
@@ -4004,7 +4004,7 @@ Invalid use of @':
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-a">a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.htm#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.htm">Top section</a></td></tr>
@@ -4342,7 +4342,7 @@ Invalid use of @':
<tr><td></td><td valign="top"><a
href="#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="#chapter">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-1_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="#chapter">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-1_fn_symbol-1"><b>-</b></a>
diff --git a/tp/tests/tex_html/res_parser/formatting_singular/chapter2.html
b/tp/tests/tex_html/res_parser/formatting_singular/chapter2.html
index f65a103..4d246db 100644
--- a/tp/tests/tex_html/res_parser/formatting_singular/chapter2.html
+++ b/tp/tests/tex_html/res_parser/formatting_singular/chapter2.html
@@ -842,7 +842,7 @@ ul.no-bullet {list-style: none}
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_cp_letter-A">A</th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a">a</a></td><td> </td><td valign="top"><a
href="chapter.html">1 chapter</a></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-aaaA">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-aaa">aaa,
bbb</a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-a_002d_002d_002da">a—a</a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="chapter.html#index-copying-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td></td><td valign="top"><a
href="index.htm#index-titlepage-a_002d_002dasis"><code>a--asis</code></a></td><td> </td><td
valign="top"><a href="index.htm">Top section</a></td></tr>
@@ -1178,7 +1178,7 @@ ul.no-bullet {list-style: none}
<tr><td></td><td valign="top"><a
href="chapter.html#index-truc-3"><code>truc</code></a></td><td> </td><td
valign="top"><a href="chapter.html">1 chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th id="chapter-2_fn_letter-X">X</th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="chapter.html#index-xxxX"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
+<tr><td></td><td valign="top"><a href="chapter.html#index-xxx"><code>xxx,
zzz</code></a></td><td> </td><td valign="top"><a href="chapter.html">1
chapter</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter"
href="#chapter-2_fn_symbol-1"><b>-</b></a>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/Convert/Text.pm (%ignored_brace_commands), tp/Texinfo/Convert/NodeNameNormalization.pm (%ignored_brace_commands): ignore sortas, seealso, seeentry. * tp/Texinfo/Structuring.pm (setup_index_entry_keys_formatting) (index_key, do_index_keys): split setup_index_entry_keys_formatting and index_key out of do_index_keys() such that the same code can be used in converters on individual index entries or subentries. * tp/Texinfo/Convert/LaTeX.pm (_index_entry): use Texinfo::Structuring: [...],
Patrice Dumas <=