[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/Convert/Info.pm (output): encode dir
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/Convert/Info.pm (output): encode directory name before creating. |
Date: |
Wed, 02 Mar 2022 09:51:11 -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 a5a617a9e8 * tp/Texinfo/Convert/Info.pm (output): encode directory
name before creating.
a5a617a9e8 is described below
commit a5a617a9e803d7544de8924e215eb755dc671055
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Wed Mar 2 15:49:17 2022 +0100
* tp/Texinfo/Convert/Info.pm (output): encode directory name
before creating.
---
ChangeLog | 5 +
tp/Makefile.am | 2 +
tp/TODO | 55 ++-
tp/Texinfo/Convert/Info.pm | 4 +-
tp/t/formats_encodings.t | 6 +
.../manual_simple_latin1_with_error.texi | 13 +
.../input_files/manual_simple_utf8_with_error.texi | 11 +
.../manual_simple_latin1_with_error.pl | 471 +++++++++++++++++++++
.../res_html/Chapitre.html | 36 ++
.../res_html/esseule.html | 31 ++
.../res_html/index.html | 43 ++
.../res_info/manual_simple_latin1_with_error.info | 37 ++
.../manual_simple_utf8_with_error.pl | 426 +++++++++++++++++++
.../res_html/Chapitre.html | 36 ++
.../res_html/esseule.html | 31 ++
.../res_html/index.html | 42 ++
.../res_info/manual_simple_utf8_with_error.info | 37 ++
tp/tests/Makefile.am | 2 +
tp/tests/formatting/list-of-tests | 1 +
"tp/tests/included_lat\356n1.texi" | 4 +
tp/tests/other/Makefile.am | 1 +
tp/tests/other/list-of-tests | 5 +
.../manual_include_accented_file_name_latin1.texi | 11 +
.../manual_include_accented_file_name_latin1.1 | 0
.../manual_include_accented_file_name_latin1.2 | 1 +
.../manual_include_accented_file_name_latin1.info | 25 ++
...her_manual_include_accented_file_name_latin1.sh | 25 ++
27 files changed, 1343 insertions(+), 18 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 6273ed226c..37ffd0656e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2022-03-01 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/Convert/Info.pm (output): encode directory name
+ before creating.
+
2022-03-01 Gavin Smith <gavinsmith0123@gmail.com>
Encoding of #line argument in XS parser.
diff --git a/tp/Makefile.am b/tp/Makefile.am
index af5f24bcca..3cf247b34e 100644
--- a/tp/Makefile.am
+++ b/tp/Makefile.am
@@ -202,6 +202,8 @@ test_files = \
t/input_files/index_split.texi \
t/input_files/japanese_utf8.texi \
t/input_files/japanese_shift_jis.texi \
+ t/input_files/manual_simple_utf8_with_error.texi \
+ t/input_files/manual_simple_latin1_with_error.texi \
t/input_files/minimal_empty_empty.texi \
t/input_files/minimal_empty_with_bye.texi \
t/input_files/minimal_empty_with_input.texi \
diff --git a/tp/TODO b/tp/TODO
index e5dbfcbfc4..8c92ef7a79 100644
--- a/tp/TODO
+++ b/tp/TODO
@@ -34,38 +34,60 @@ bytes. To check that they can never be upgraded + document
Can come from parse_texi_file, CPP line or @include file, through
$self->{'input'}, and $source_info, ends up in the tree in source_info
and in error messages through line_warn line_error.
- $source_info->{'file_name'} passed through
+ $source_info->{'file_name'} passed through
$self->{'info'}->{'input_file_name'}
$self->{'info'}->{'input_directory'}
* XS Parser seems ok
-check with latin1
-CPP directive with encoded characters, UTF8 Texinfo manual
+Tests in non utf8 locales
+
+Tests ok
+
+t/formats_encodings.t manual_simple_utf8_with_error
+utf8 manual with errors involving non ascii strings
+./texi2any.pl ./t/input_files/manual_simple_utf8_with_error.texi
+
+t/formats_encodings.t manual_simple_latin1_with_error
+latin1 manual with errors involving non ascii strings
+./texi2any.pl ./t/input_files/manual_simple_latin1_with_error.texi
+
+tests/formatting cpp_lines
+CPP directive with non ascii characters, utf8 manual
./texi2any.pl -I ./t/include/ ./t/input_files/cpp_lines.texi
accentêd:7: warning: làng is not a valid language code
The file is UTF-8 encoded, the @documentencoding is obeyed which leads
-to an incorrect encoding, in the Parser, to UTF-8, and not to the latin1
+in the Parser, to an UTF-8 encoding of include file name, and not to the latin1
encoding which should be used for the output messages encoding.
This output is by (Gavin) design.
-Tests more interesting in non utf8 locale
-./texi2any.pl --set TEXINFO_OUTPUT_FORMAT=debugtree --set USE_NODES=0 -o
résultat/encodé.txt ./t/input_files/simplest_no_node_section.texi
-
+many_input_files/output_dir_file_non_ascii.sh
+non ascii output directory, utf8 manual
./texi2any.pl -o encodé/ ./t/input_files/simplest.texi
-+ need to have file names/file content encoded in the non utf8 locale
test of non ascii included file name in utf8 locale is already in formatting:
formatting/osé.texi:@include included_akçentêd.texi
-But the test needs also to be done in non utf8 locale
-./texi2any.pl include_acc.texi
+./texi2any.pl --force -I tests/ tests/formatting/os*.texi
+The file name is utf-8 encoded in messages, which is expected as we do not
+decode/encode file names from the command linr for messages
+osé.texi:15: warning: undefined flag: vùr
-CPP line directive with accented characters already in tests:
-./t/input_files/cpp_lines.texi
-But the test needs also to be done in non utf8 locale (still TODO for XS
Parser)
-./texi2any.pl cpp_line_latin1.texi
+t/80include.t cpp_line_latin1
+CPP directive with non ascii characters, latin1 manual
+./texi2any.pl --force ./t/input_files/cpp_line_latin1.texi
+Issue to add 'tests/included_lat'$'\356''n1.texi' in make dist
+tests/other manual_include_accented_file_name_latin1
+./texi2any.pl --force -I tests/
tests/other/manual_include_accented_file_name_latin1.texi
+
+
+additional tests TODO
++ need to have file names/file content encoded in the non utf8 locale
++ the test needs also to be done in non utf8 locale
+
+tests/many_input_files/tex_l2h_output_dir_non_ascii.sh
+tests/many_input_files/tex_t4ht_output_dir_non_ascii.sh
test l2h and tex4ht with non ascii file names in non utf8 locale.
corresponds to tex_l2h_output_dir_non_ascii.sh
tex_t4ht_output_dir_non_ascii.sh.
@@ -77,8 +99,7 @@ epub tests would also be interesting in 8 byte locale, with
File Names and Paths MUST be UTF-8 [Unicode] encoded.
First step would be to force that.
-
-
+Test more interesting in non utf8 locale
Add tests even if not as interesting in UTF8 locale as in non UTF8?
./texi2any.pl --set TEXINFO_OUTPUT_FORMAT=debugtree --set USE_NODES=0 -o
résultat/encodé.txt ./t/input_files/simplest_no_node_section.texi
@@ -109,7 +130,7 @@ html_image_file_location_name: $image_path
Document new return of html_image_file_location_name
-Document
+Document
LOCALE_OUTPUT_ENCODING_NAME.
Add DOC_ENCODING_FOR_INPUT_FILE_NAME,
DOC_ENCODING_FOR_OUTPUT_FILE_NAME,
diff --git a/tp/Texinfo/Convert/Info.pm b/tp/Texinfo/Convert/Info.pm
index 338156bd86..bbf07d67fb 100644
--- a/tp/Texinfo/Convert/Info.pm
+++ b/tp/Texinfo/Convert/Info.pm
@@ -59,8 +59,10 @@ sub output($)
my ($output_file, $destination_directory, $output_filename,
$document_name, $input_basefile) = $self->determine_files_and_directory();
+ my ($encoded_destination_directory, $dir_encoding)
+ = $self->encoded_output_file_name($destination_directory);
my ($succeeded, $created_directory)
- = $self->create_destination_directory($destination_directory);
+ = $self->create_destination_directory($encoded_destination_directory);
return undef unless $succeeded;
# for format_node
diff --git a/tp/t/formats_encodings.t b/tp/t/formats_encodings.t
index e4bb8c9215..ad93a7c0cf 100644
--- a/tp/t/formats_encodings.t
+++ b/tp/t/formats_encodings.t
@@ -351,6 +351,12 @@ undef, {'test_file' => 'japanese_shift_jis.texi'}
['sample_utf8',
undef, {'test_file' => 'sample_utf8.texi'}
],
+['manual_simple_utf8_with_error',
+undef, {'test_file' => 'manual_simple_utf8_with_error.texi'}
+],
+['manual_simple_latin1_with_error',
+undef, {'test_file' => 'manual_simple_latin1_with_error.texi'}
+],
['at_commands_in_refs_utf8',
'@setfilename at_commands_in_refs_utf8.info
@documentencoding utf-8
diff --git a/tp/t/input_files/manual_simple_latin1_with_error.texi
b/tp/t/input_files/manual_simple_latin1_with_error.texi
new file mode 100644
index 0000000000..0b00d780db
--- /dev/null
+++ b/tp/t/input_files/manual_simple_latin1_with_error.texi
@@ -0,0 +1,13 @@
+\input texinfo.tex
+
+@documentencoding iso-8859-1
+
+@node Top
+@top Test�
+
+@node �sseul�
+
+@node Chapitr�
+@chapter Chapitr�
+
+@value{non_conn�e}
diff --git a/tp/t/input_files/manual_simple_utf8_with_error.texi
b/tp/t/input_files/manual_simple_utf8_with_error.texi
new file mode 100644
index 0000000000..f8d2dd5901
--- /dev/null
+++ b/tp/t/input_files/manual_simple_utf8_with_error.texi
@@ -0,0 +1,11 @@
+\input texinfo.tex
+
+@node Top
+@top Testé
+
+@node ésseulé
+
+@node Chapitré
+@chapter Chapitré
+
+@value{non_connùe}
diff --git a/tp/t/results/formats_encodings/manual_simple_latin1_with_error.pl
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error.pl
new file mode 100644
index 0000000000..1e68a66ec2
--- /dev/null
+++ b/tp/t/results/formats_encodings/manual_simple_latin1_with_error.pl
@@ -0,0 +1,471 @@
+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{'manual_simple_latin1_with_error'} = {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '\\input texinfo.tex
+',
+ 'type' => 'text_before_beginning'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'text_before_beginning'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'preamble_before_beginning'
+ },
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'iso-8859-1'
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'documentencoding',
+ 'extra' => {
+ 'input_encoding_name' => 'iso-8859-1',
+ 'input_perl_encoding' => 'iso-8859-1',
+ 'spaces_before_argument' => ' ',
+ 'text_arg' => 'iso-8859-1'
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 3,
+ 'macro' => ''
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'preamble_before_content'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'before_node_section'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'Top'
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Top'
+ }
+ ],
+ 'normalized' => 'Top',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 5,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Test\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'top',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 6,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "\x{e9}sseul\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => '_00e9sseul_00e9'
+ }
+ ],
+ 'normalized' => '_00e9sseul_00e9',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 8,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Chapitr\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Chapitr_00e9'
+ }
+ ],
+ 'normalized' => 'Chapitr_00e9',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 10,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Chapitr\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'chapter',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ },
+ {
+ 'cmdname' => 'value',
+ 'contents' => [],
+ 'parent' => {},
+ 'type' => "non_conn\x{f9}e"
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+'
+ }
+ ],
+ 'extra' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 11,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'type' => 'document_root'
+};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[0]{'contents'}[1]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'args'}[0]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'contents'}[1]{'parent'}
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'contents'}[1]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[0]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[1];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[1]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[2]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[2]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[2];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[2]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[2];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[2]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[3];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[3];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[3]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[4];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[4]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'args'}[0];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'contents'}[1]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'contents'}[2]{'parent'}
= $result_trees{'manual_simple_latin1_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_latin1_with_error'}{'contents'}[5]{'parent'} =
$result_trees{'manual_simple_latin1_with_error'};
+
+$result_texis{'manual_simple_latin1_with_error'} = '\\input texinfo.tex
+
+@documentencoding iso-8859-1
+
+@node Top
+@top Testé
+
+@node ésseulé
+
+@node Chapitré
+@chapter Chapitré
+
+@value{non_connùe}
+';
+
+
+$result_texts{'manual_simple_latin1_with_error'} = '
+Testé
+*****
+
+
+1 Chapitré
+**********
+
+
+';
+
+$result_sectioning{'manual_simple_latin1_with_error'} = {
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'top',
+ 'extra' => {
+ 'associated_node' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'structure' => {}
+ }
+ },
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'chapter',
+ 'extra' => {
+ 'associated_node' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Chapitr_00e9'
+ },
+ 'structure' => {}
+ }
+ },
+ 'structure' => {
+ 'section_level' => 1,
+ 'section_number' => 1,
+ 'section_up' => {},
+ 'toplevel_prev' => {},
+ 'toplevel_up' => {}
+ }
+ }
+ ],
+ 'section_level' => 0,
+ 'section_up' => {}
+ }
+ }
+ ],
+ 'section_level' => -1
+ }
+};
+$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
=
$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_prev'}
=
$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_up'}
=
$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_latin1_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
= $result_sectioning{'manual_simple_latin1_with_error'};
+
+$result_nodes{'manual_simple_latin1_with_error'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'associated_section' => {
+ 'cmdname' => 'top',
+ 'extra' => {},
+ 'structure' => {}
+ },
+ 'normalized' => 'Top'
+ },
+ 'structure' => {
+ 'node_next' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'associated_section' => {
+ 'cmdname' => 'chapter',
+ 'extra' => {},
+ 'structure' => {
+ 'section_number' => 1
+ }
+ },
+ 'normalized' => 'Chapitr_00e9'
+ },
+ 'structure' => {
+ 'node_prev' => {},
+ 'node_up' => {}
+ }
+ }
+ }
+};
+$result_nodes{'manual_simple_latin1_with_error'}{'structure'}{'node_next'}{'structure'}{'node_prev'}
= $result_nodes{'manual_simple_latin1_with_error'};
+$result_nodes{'manual_simple_latin1_with_error'}{'structure'}{'node_next'}{'structure'}{'node_up'}
= $result_nodes{'manual_simple_latin1_with_error'};
+
+$result_menus{'manual_simple_latin1_with_error'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'structure' => {}
+};
+
+$result_errors{'manual_simple_latin1_with_error'} = [
+ {
+ 'error_line' => "warning: undefined flag: non_conn\x{f9}e
+",
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 13,
+ 'macro' => '',
+ 'text' => "undefined flag: non_conn\x{f9}e",
+ 'type' => 'warning'
+ },
+ {
+ 'error_line' => "warning: node `\x{e9}sseul\x{e9}' unreferenced
+",
+ 'file_name' => 'manual_simple_latin1_with_error.texi',
+ 'line_nr' => 8,
+ 'macro' => '',
+ 'text' => "node `\x{e9}sseul\x{e9}' unreferenced",
+ 'type' => 'warning'
+ }
+];
+
+
+$result_floats{'manual_simple_latin1_with_error'} = {};
+
+
+1;
diff --git
a/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/Chapitre.html
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/Chapitre.html
new file mode 100644
index 0000000000..417c56e5d5
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/Chapitre.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<title>Chapitr� (Test�)</title>
+
+<meta name="description" content="Chapitr� (Test�)">
+<meta name="keywords" content="Chapitr� (Test�)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="index.html" rel="start" title="Top">
+<link href="index.html" rel="up" title="Top">
+<link href="index.html" rel="prev" title="Top">
+
+
+</head>
+
+<body lang="en">
+<div class="chapter-level-extent" id="Chapitr_00e9">
+<div class="nav-panel">
+<p>
+Previous: <a href="index.html" accesskey="p" rel="prev">Test�</a>, Up: <a
href="index.html" accesskey="u" rel="up">Test�</a> </p>
+</div>
+<hr>
+<h2 class="chapter" id="Chapitre">1 Chapitr�</h2>
+
+{No value for ‘non_conn�e’}
+</div>
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/esseule.html
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/esseule.html
new file mode 100644
index 0000000000..ca11d5bbb3
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/esseule.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<title>�sseul� (Test�)</title>
+
+<meta name="description" content="�sseul� (Test�)">
+<meta name="keywords" content="�sseul� (Test�)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="index.html" rel="start" title="Top">
+
+
+</head>
+
+<body lang="en">
+<a class="node-id" id="g_t_00e9sseul_00e9"></a><div class="nav-panel">
+<p>
+ </p>
+</div>
+<hr>
+<h4 class="node">�sseul�</h4>
+
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/index.html
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/index.html
new file mode 100644
index 0000000000..3630ac815c
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_html/index.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<title>Top (Test�)</title>
+
+<meta name="description" content="Top (Test�)">
+<meta name="keywords" content="Top (Test�)">
+<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="Chapitre.html" rel="next" title="Chapitr�">
+
+
+</head>
+
+<body lang="en">
+
+<div class="top-level-extent" id="Top">
+<div class="nav-panel">
+<p>
+Next: <a href="Chapitre.html" accesskey="n" rel="next">Chapitr�</a> </p>
+</div>
+<hr>
+<h1 class="top" id="Teste">Test�</h1>
+
+<ul class="mini-toc">
+<li><a href="Chapitre.html" accesskey="1">Chapitr�</a></li>
+</ul>
+</div>
+<hr>
+<div class="nav-panel">
+<p>
+Next: <a href="Chapitre.html" accesskey="n" rel="next">Chapitr�</a> </p>
+</div>
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_info/manual_simple_latin1_with_error.info
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_info/manual_simple_latin1_with_error.info
new file mode 100644
index 0000000000..97bfbd0d58
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_latin1_with_error/res_info/manual_simple_latin1_with_error.info
@@ -0,0 +1,37 @@
+This is manual_simple_latin1_with_error.info, produced from
+manual_simple_latin1_with_error.texi.
+
+
+File: manual_simple_latin1_with_error.info, Node: Top, Next: Chapitr�, Up:
(dir)
+
+Test�
+*****
+
+* Menu:
+
+* Chapitr�::
+
+
+File: manual_simple_latin1_with_error.info, Node: �sseul�
+
+
+File: manual_simple_latin1_with_error.info, Node: Chapitr�, Prev: Top, Up:
Top
+
+1 Chapitr�
+**********
+
+{No value for 'non_conn�e'}
+
+
+
+Tag Table:
+Node: Top99
+Node: �sseul�222
+Node: Chapitr�284
+
+End Tag Table
+
+
+Local Variables:
+coding: iso-8859-1
+End:
diff --git a/tp/t/results/formats_encodings/manual_simple_utf8_with_error.pl
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error.pl
new file mode 100644
index 0000000000..ffe7420065
--- /dev/null
+++ b/tp/t/results/formats_encodings/manual_simple_utf8_with_error.pl
@@ -0,0 +1,426 @@
+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{'manual_simple_utf8_with_error'} = {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '\\input texinfo.tex
+',
+ 'type' => 'text_before_beginning'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'text_before_beginning'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'preamble_before_beginning'
+ },
+ {
+ 'contents' => [],
+ 'parent' => {},
+ 'type' => 'preamble_before_content'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'before_node_section'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'Top'
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Top'
+ }
+ ],
+ 'normalized' => 'Top',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 3,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Test\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'top',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 4,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "\x{e9}sseul\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => '_00e9sseul_00e9'
+ }
+ ],
+ 'normalized' => '_00e9sseul_00e9',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 6,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Chapitr\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [],
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Chapitr_00e9'
+ }
+ ],
+ 'normalized' => 'Chapitr_00e9',
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 8,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => "Chapitr\x{e9}"
+ }
+ ],
+ 'extra' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'parent' => {},
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'chapter',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ },
+ {
+ 'cmdname' => 'value',
+ 'contents' => [],
+ 'parent' => {},
+ 'type' => "non_conn\x{f9}e"
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+'
+ }
+ ],
+ 'extra' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'parent' => {},
+ 'source_info' => {
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 9,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'type' => 'document_root'
+};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[0]{'contents'}[1]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'contents'}[1]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[0]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'args'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[1];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[1]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[2]{'args'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[2]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[2];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[2]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[2];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[2]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'args'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[3];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[3];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[3]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'args'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[4];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'extra'}{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'args'}[0]{'contents'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[4]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'args'}[0];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'args'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'contents'}[0]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'contents'}[1]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'contents'}[2]{'parent'}
= $result_trees{'manual_simple_utf8_with_error'}{'contents'}[5];
+$result_trees{'manual_simple_utf8_with_error'}{'contents'}[5]{'parent'} =
$result_trees{'manual_simple_utf8_with_error'};
+
+$result_texis{'manual_simple_utf8_with_error'} = '\\input texinfo.tex
+
+@node Top
+@top Testé
+
+@node ésseulé
+
+@node Chapitré
+@chapter Chapitré
+
+@value{non_connùe}
+';
+
+
+$result_texts{'manual_simple_utf8_with_error'} = 'Testé
+*****
+
+
+1 Chapitré
+**********
+
+
+';
+
+$result_sectioning{'manual_simple_utf8_with_error'} = {
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'top',
+ 'extra' => {
+ 'associated_node' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'structure' => {}
+ }
+ },
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'chapter',
+ 'extra' => {
+ 'associated_node' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Chapitr_00e9'
+ },
+ 'structure' => {}
+ }
+ },
+ 'structure' => {
+ 'section_level' => 1,
+ 'section_number' => 1,
+ 'section_up' => {},
+ 'toplevel_prev' => {},
+ 'toplevel_up' => {}
+ }
+ }
+ ],
+ 'section_level' => 0,
+ 'section_up' => {}
+ }
+ }
+ ],
+ 'section_level' => -1
+ }
+};
+$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
=
$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_prev'}
=
$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_up'}
=
$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'manual_simple_utf8_with_error'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
= $result_sectioning{'manual_simple_utf8_with_error'};
+
+$result_nodes{'manual_simple_utf8_with_error'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'associated_section' => {
+ 'cmdname' => 'top',
+ 'extra' => {},
+ 'structure' => {}
+ },
+ 'normalized' => 'Top'
+ },
+ 'structure' => {
+ 'node_next' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'associated_section' => {
+ 'cmdname' => 'chapter',
+ 'extra' => {},
+ 'structure' => {
+ 'section_number' => 1
+ }
+ },
+ 'normalized' => 'Chapitr_00e9'
+ },
+ 'structure' => {
+ 'node_prev' => {},
+ 'node_up' => {}
+ }
+ }
+ }
+};
+$result_nodes{'manual_simple_utf8_with_error'}{'structure'}{'node_next'}{'structure'}{'node_prev'}
= $result_nodes{'manual_simple_utf8_with_error'};
+$result_nodes{'manual_simple_utf8_with_error'}{'structure'}{'node_next'}{'structure'}{'node_up'}
= $result_nodes{'manual_simple_utf8_with_error'};
+
+$result_menus{'manual_simple_utf8_with_error'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'structure' => {}
+};
+
+$result_errors{'manual_simple_utf8_with_error'} = [
+ {
+ 'error_line' => "warning: undefined flag: non_conn\x{f9}e
+",
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 11,
+ 'macro' => '',
+ 'text' => "undefined flag: non_conn\x{f9}e",
+ 'type' => 'warning'
+ },
+ {
+ 'error_line' => "warning: node `\x{e9}sseul\x{e9}' unreferenced
+",
+ 'file_name' => 'manual_simple_utf8_with_error.texi',
+ 'line_nr' => 6,
+ 'macro' => '',
+ 'text' => "node `\x{e9}sseul\x{e9}' unreferenced",
+ 'type' => 'warning'
+ }
+];
+
+
+$result_floats{'manual_simple_utf8_with_error'} = {};
+
+
+1;
diff --git
a/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/Chapitre.html
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/Chapitre.html
new file mode 100644
index 0000000000..9af4805aec
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/Chapitre.html
@@ -0,0 +1,36 @@
+<!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>Chapitré (Testé)</title>
+
+<meta name="description" content="Chapitré (Testé)">
+<meta name="keywords" content="Chapitré (Testé)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="index.html" rel="start" title="Top">
+<link href="index.html" rel="up" title="Top">
+<link href="index.html" rel="prev" title="Top">
+
+
+</head>
+
+<body lang="en">
+<div class="chapter-level-extent" id="Chapitr_00e9">
+<div class="nav-panel">
+<p>
+Previous: <a href="index.html" accesskey="p" rel="prev">Testé</a>, Up: <a
href="index.html" accesskey="u" rel="up">Testé</a> </p>
+</div>
+<hr>
+<h2 class="chapter" id="Chapitre">1 Chapitré</h2>
+
+{No value for ‘non_connùe’}
+</div>
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/esseule.html
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/esseule.html
new file mode 100644
index 0000000000..f1e1501fcf
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/esseule.html
@@ -0,0 +1,31 @@
+<!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>ésseulé (Testé)</title>
+
+<meta name="description" content="ésseulé (Testé)">
+<meta name="keywords" content="ésseulé (Testé)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="index.html" rel="start" title="Top">
+
+
+</head>
+
+<body lang="en">
+<a class="node-id" id="g_t_00e9sseul_00e9"></a><div class="nav-panel">
+<p>
+ </p>
+</div>
+<hr>
+<h4 class="node">ésseulé</h4>
+
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/index.html
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/index.html
new file mode 100644
index 0000000000..1555765b23
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_html/index.html
@@ -0,0 +1,42 @@
+<!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 (Testé)</title>
+
+<meta name="description" content="Top (Testé)">
+<meta name="keywords" content="Top (Testé)">
+<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="Chapitre.html" rel="next" title="Chapitré">
+
+
+</head>
+
+<body lang="en">
+<div class="top-level-extent" id="Top">
+<div class="nav-panel">
+<p>
+Next: <a href="Chapitre.html" accesskey="n" rel="next">Chapitré</a> </p>
+</div>
+<hr>
+<h1 class="top" id="Teste">Testé</h1>
+
+<ul class="mini-toc">
+<li><a href="Chapitre.html" accesskey="1">Chapitré</a></li>
+</ul>
+</div>
+<hr>
+<div class="nav-panel">
+<p>
+Next: <a href="Chapitre.html" accesskey="n" rel="next">Chapitré</a> </p>
+</div>
+
+
+
+</body>
+</html>
diff --git
a/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_info/manual_simple_utf8_with_error.info
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_info/manual_simple_utf8_with_error.info
new file mode 100644
index 0000000000..ac95e8b7e7
--- /dev/null
+++
b/tp/t/results/formats_encodings/manual_simple_utf8_with_error/res_info/manual_simple_utf8_with_error.info
@@ -0,0 +1,37 @@
+This is manual_simple_utf8_with_error.info, produced from
+manual_simple_utf8_with_error.texi.
+
+
+File: manual_simple_utf8_with_error.info, Node: Top, Next: Chapitré, Up:
(dir)
+
+Testé
+*****
+
+* Menu:
+
+* Chapitré::
+
+
+File: manual_simple_utf8_with_error.info, Node: ésseulé
+
+
+File: manual_simple_utf8_with_error.info, Node: Chapitré, Prev: Top, Up: Top
+
+1 Chapitré
+**********
+
+{No value for ‘non_connùe’}
+
+
+
+Tag Table:
+Node: Top95
+Node: ésseulé219
+Node: Chapitré281
+
+End Tag Table
+
+
+Local Variables:
+coding: utf-8
+End:
diff --git a/tp/tests/Makefile.am b/tp/tests/Makefile.am
index cff570e931..11e8b1afcb 100644
--- a/tp/tests/Makefile.am
+++ b/tp/tests/Makefile.am
@@ -61,5 +61,7 @@ tex-html-checks tex-html-check: all
other-checks: all
$(MAKE) $(AM_MAKEFLAGS) check OTHER_TESTS=yes
TESTS='$(type_other_one_test_files_generated_list)' SUBDIRS=
+# FIXME add
+# included_lat*n1.texi
EXTRA_DIST = run_parser_all.sh parser_tests.sh \
$(one_test_files_generated_list) coverage_macro.texi included_akçentêd.texi
diff --git a/tp/tests/formatting/list-of-tests
b/tp/tests/formatting/list-of-tests
index 5bbcd7a3bc..e93f8459d6 100644
--- a/tp/tests/formatting/list-of-tests
+++ b/tp/tests/formatting/list-of-tests
@@ -23,3 +23,4 @@ non_ascii_command_line osé.texi --html --split=Mekanïk
--document-language=Des
# test for the copying of image with non ascii characters for epub
non_ascii_test_epub osé.texi --init epub3.pm -c 'EPUB_CREATE_CONTAINER 0'
+
diff --git "a/tp/tests/included_lat\356n1.texi"
"b/tp/tests/included_lat\356n1.texi"
new file mode 100644
index 0000000000..7c5cc48ea2
--- /dev/null
+++ "b/tp/tests/included_lat\356n1.texi"
@@ -0,0 +1,4 @@
+
+o� �l @'e.
+
+@unknowncmd
diff --git a/tp/tests/other/Makefile.am b/tp/tests/other/Makefile.am
index f77ee99a65..3d6230849f 100644
--- a/tp/tests/other/Makefile.am
+++ b/tp/tests/other/Makefile.am
@@ -1,5 +1,6 @@
EXTRA_DIST = \
highlight_example.texi \
+ manual_include_accented_file_name_latin1.texi \
list-of-tests res_parser_html
DISTCLEANFILES = tests.log tests.out
diff --git a/tp/tests/other/list-of-tests b/tp/tests/other/list-of-tests
index b3a23008f1..e192e1d87b 100644
--- a/tp/tests/other/list-of-tests
+++ b/tp/tests/other/list-of-tests
@@ -1,3 +1,8 @@
# formats :_html
highlight_syntax_example highlight_example.texi --html
--init=highlight_syntax.pm
+
+# test of non utf8 encoded file name in non utf8 document
+# FIXME here because the included file can not be in dist
+manual_include_accented_file_name_latin1
manual_include_accented_file_name_latin1.texi --info
+
diff --git a/tp/tests/other/manual_include_accented_file_name_latin1.texi
b/tp/tests/other/manual_include_accented_file_name_latin1.texi
new file mode 100644
index 0000000000..4a7c197478
--- /dev/null
+++ b/tp/tests/other/manual_include_accented_file_name_latin1.texi
@@ -0,0 +1,11 @@
+\input texinfo @c -*-texinfo-*-
+@documentencoding ISO-8859-1
+
+@top top
+@node Top
+
+This is a very simple texi manual @ <>.
+
+@include included_lat�n1.texi
+
+@bye
diff --git
a/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.1
b/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.1
new file mode 100644
index 0000000000..e69de29bb2
diff --git
a/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.2
b/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.2
new file mode 100644
index 0000000000..dbed70f47d
--- /dev/null
+++
b/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.2
@@ -0,0 +1 @@
+included_lat�n1.texi:4: unknown command `unknowncmd'
diff --git
a/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.info
b/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.info
new file mode 100644
index 0000000000..e79ffbb0a0
--- /dev/null
+++
b/tp/tests/other/res_parser_html/manual_include_accented_file_name_latin1/manual_include_accented_file_name_latin1.info
@@ -0,0 +1,25 @@
+This is manual_include_accented_file_name_latin1.info, produced by
+texi2any version from manual_include_accented_file_name_latin1.texi.
+
+top
+***
+
+
+File: manual_include_accented_file_name_latin1.info, Node: Top, Up: (dir)
+
+This is a very simple texi manual <>.
+
+ o� �l �.
+
+
+
+
+Tag Table:
+Node: Top146
+
+End Tag Table
+
+
+Local Variables:
+coding: iso-8859-1
+End:
diff --git
a/tp/tests/test_scripts/other_manual_include_accented_file_name_latin1.sh
b/tp/tests/test_scripts/other_manual_include_accented_file_name_latin1.sh
new file mode 100755
index 0000000000..14b274c6fa
--- /dev/null
+++ b/tp/tests/test_scripts/other_manual_include_accented_file_name_latin1.sh
@@ -0,0 +1,25 @@
+#! /bin/sh
+# This file generated by maintain/regenerate_cmd_tests.sh
+
+if test z"$srcdir" = "z"; then
+ srcdir=.
+fi
+
+one_test_logs_dir=test_log
+
+
+
+if test "z$OTHER_TESTS" != z"yes"; then
+ echo "Skipping other tests that are not easily reproducible"
+ exit 77
+fi
+
+dir=other
+name='manual_include_accented_file_name_latin1'
+mkdir -p $dir
+
+"$srcdir"/run_parser_all.sh -dir $dir $name
+exit_status=$?
+cat $dir/$one_test_logs_dir/$name.log
+exit $exit_status
+
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/Convert/Info.pm (output): encode directory name before creating.,
Patrice Dumas <=