[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/tp Texinfo/Convert/DocBook.pm Texinfo/C...
From: |
Patrice Dumas |
Subject: |
texinfo/tp Texinfo/Convert/DocBook.pm Texinfo/C... |
Date: |
Sun, 09 Sep 2012 16:51:47 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 12/09/09 16:51:47
Modified files:
tp/Texinfo/Convert: DocBook.pm XML.pm
tp/t : converters_tests.t test_utils.pl
tp/tests/formatting/res_parser/cond_xml: cond.xml
Added files:
tp/t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook:
char_latin1_utf8_in_refs.xml
tp/t/results/converters_tests/char_latin1_latin1_in_refs/res_xml:
char_latin1_utf8_in_refs.xml
Log message:
Add an encoding information to xml output files, if needed.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Convert/DocBook.pm?cvsroot=texinfo&r1=1.50&r2=1.51
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Convert/XML.pm?cvsroot=texinfo&r1=1.83&r2=1.84
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/converters_tests.t?cvsroot=texinfo&r1=1.38&r2=1.39
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/test_utils.pl?cvsroot=texinfo&r1=1.120&r2=1.121
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook/char_latin1_utf8_in_refs.xml?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/converters_tests/char_latin1_latin1_in_refs/res_xml/char_latin1_utf8_in_refs.xml?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/tests/formatting/res_parser/cond_xml/cond.xml?cvsroot=texinfo&r1=1.3&r2=1.4
Patches:
Index: Texinfo/Convert/DocBook.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Convert/DocBook.pm,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -b -r1.50 -r1.51
--- Texinfo/Convert/DocBook.pm 4 Aug 2012 22:45:44 -0000 1.50
+++ Texinfo/Convert/DocBook.pm 9 Sep 2012 16:51:46 -0000 1.51
@@ -317,6 +317,11 @@
$self->_set_global_multiple_commands(-1);
+ my $encoding = '';
+ if ($self->{'encoding_name'} and $self->{'encoding_name'} ne 'utf-8') {
+ $encoding = " encoding=\"$self->{'encoding_name'}\" ";
+ }
+
my $id;
if ($self->{'output_file'} ne '') {
my $output_filename = $self->{'output_filename'};
@@ -325,7 +330,7 @@
$id = '';
}
- my $header = '<?xml version="1.0"?>
+ my $header = "<?xml version=\"1.0\"${encoding}?>".'
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
<!ENTITY tex "TeX">
<!ENTITY latex "LaTeX">
Index: Texinfo/Convert/XML.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Convert/XML.pm,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -b -r1.83 -r1.84
--- Texinfo/Convert/XML.pm 9 Sep 2012 11:10:21 -0000 1.83
+++ Texinfo/Convert/XML.pm 9 Sep 2012 16:51:46 -0000 1.84
@@ -270,7 +270,7 @@
my $fh;
if (! $self->{'output_file'} eq '') {
- $fh = $self->Texinfo::Common::open_out ($self->{'output_file'});
+ $fh = $self->Texinfo::Common::open_out($self->{'output_file'});
if (!$fh) {
$self->document_error(sprintf($self->__("Could not open %s for writing:
%s"),
$self->{'output_file'}, $!));
@@ -279,7 +279,13 @@
}
$self->_set_global_multiple_commands(-1);
- my $header = '<?xml version="1.0"?>
+
+ my $encoding = '';
+ if ($self->{'encoding_name'} and $self->{'encoding_name'} ne 'utf-8') {
+ $encoding = " encoding=\"$self->{'encoding_name'}\" ";
+ }
+
+ my $header = "<?xml version=\"1.0\"${encoding}?>".'
<!DOCTYPE texinfo PUBLIC "-//GNU//DTD TexinfoML V4.12//EN"
"http://www.gnu.org/software/texinfo/dtd/4.12/texinfo.dtd">
<texinfo xml:lang="' . $self->get_conf('documentlanguage') ."\">\n";
if ($self->{'output_file'} ne '') {
Index: t/converters_tests.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/converters_tests.t,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -b -r1.38 -r1.39
--- t/converters_tests.t 5 Sep 2012 22:15:50 -0000 1.38
+++ t/converters_tests.t 9 Sep 2012 16:51:46 -0000 1.39
@@ -841,6 +841,10 @@
'line_breaks' => 1,
);
+my %xml_file_tests = (
+ 'char_latin1_latin1_in_refs' => 1,
+);
+
foreach my $test (@test_cases) {
push @{$test->[2]->{'test_formats'}}, 'plaintext';
if ($html_tests{$test->[0]}) {
@@ -861,6 +865,9 @@
foreach my $test (@file_tests) {
push @{$test->[2]->{'test_formats'}}, 'file_html';
push @{$test->[2]->{'test_formats'}}, 'file_info';
+ if ($xml_file_tests{$test->[0]}) {
+ push @{$test->[2]->{'test_formats'}}, ('file_xml', 'file_docbook');
+ }
}
our ($arg_test_case, $arg_generate, $arg_debug);
Index: t/test_utils.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/test_utils.pl,v
retrieving revision 1.120
retrieving revision 1.121
diff -u -b -r1.120 -r1.121
--- t/test_utils.pl 23 Aug 2012 18:14:31 -0000 1.120
+++ t/test_utils.pl 9 Sep 2012 16:51:47 -0000 1.121
@@ -99,7 +99,9 @@
'file_html' => \&convert_to_html,
'html_text' => \&convert_to_html,
'xml' => \&convert_to_xml,
+ 'file_xml' => \&convert_to_xml,
'docbook' => \&convert_to_docbook,
+ 'file_docbook' => \&convert_to_docbook,
'debugcount' => \&debugcount,
);
@@ -530,11 +532,17 @@
my $converter =
Texinfo::Convert::XML->converter ({'DEBUG' => $self->{'DEBUG'},
'parser' => $parser,
- 'OUTFILE' => '',
'output_format' => 'xml',
%$converter_options });
- my $result = $converter->convert($tree);
- die if (!defined($result));
+
+ my $result;
+ if (defined($converter_options->{'OUTFILE'})
+ and $converter_options->{'OUTFILE'} eq '') {
+ $result = $converter->convert($tree);
+ } else {
+ $result = $converter->output($tree);
+ $result = undef if (defined($result and $result eq ''));
+ }
my ($errors, $error_nrs) = $converter->errors();
return ($errors, $result);
}
@@ -555,11 +563,16 @@
my $converter =
Texinfo::Convert::DocBook->converter ({'DEBUG' => $self->{'DEBUG'},
'parser' => $parser,
- 'OUTFILE' => '',
'output_format' => 'docbook',
%$converter_options });
- my $result = $converter->convert($tree);
- die if (!defined($result));
+ my $result;
+ if (defined($converter_options->{'OUTFILE'})
+ and $converter_options->{'OUTFILE'} eq '') {
+ $result = $converter->convert($tree);
+ } else {
+ $result = $converter->output($tree);
+ $result = undef if (defined($result and $result eq ''));
+ }
my ($errors, $error_nrs) = $converter->errors();
return ($errors, $result);
}
Index: tests/formatting/res_parser/cond_xml/cond.xml
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/tests/formatting/res_parser/cond_xml/cond.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- tests/formatting/res_parser/cond_xml/cond.xml 3 Sep 2012 21:58:51
-0000 1.3
+++ tests/formatting/res_parser/cond_xml/cond.xml 9 Sep 2012 16:51:47
-0000 1.4
@@ -26,4 +26,5 @@
<para>This is ifnottex text.
</para>
+<bye></bye>
</texinfo>
Index:
t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook/char_latin1_utf8_in_refs.xml
===================================================================
RCS file:
t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook/char_latin1_utf8_in_refs.xml
diff -N
t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook/char_latin1_utf8_in_refs.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++
t/results/converters_tests/char_latin1_latin1_in_refs/res_docbook/char_latin1_utf8_in_refs.xml
9 Sep 2012 16:51:47 -0000 1.1
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+ <!ENTITY tex "TeX">
+ <!ENTITY latex "LaTeX">
+]>
+<book id="char_latin1_utf8_in_refs.xml" lang="en">
+
+
+<chapter label="" id="Top">
+<title>top</title>
+
+<index role="cp"></index>
+
+
+</chapter>
+<chapter label="1"
id="_00e4-_00eb-_00ef-_00f6-_00fc-_00ff-_00c4-_00cb-_00cf-_00d6-_00dc">
+<title>ä ë ï ö ü ÿ Ä Ë Ï Ö Ü</title>
+
+</chapter>
+<chapter label="2" id="_00e9">
+<title>é</title>
+
+</chapter>
+<chapter label="3" id="_00e0-_00e8-_00f9">
+<title>à è ù</title>
+
+</chapter>
+<chapter label="4"
id="_00e2-_00ea-_00ee-_00f4-_00fb-_00c2-_00ca-_00ce-_00d4-_00db">
+<title>â ê î ô û Â Ê Î Ô Û</title>
+
+</chapter>
+<chapter label="5" id="_00e7">
+<title>ç</title>
+
+<para><link
linkend="_00e4-_00eb-_00ef-_00f6-_00fc-_00ff-_00c4-_00cb-_00cf-_00d6-_00dc">ä ë
ï ö ü ÿ Ä Ë Ï Ö Ü</link>
+<link linkend="_00e9">é</link>
+<link linkend="_00e0-_00e8-_00f9">à è ù</link>
+<link linkend="_00e2-_00ea-_00ee-_00f4-_00fb-_00c2-_00ca-_00ce-_00d4-_00db">â
ê î ô û Â Ê Î Ô Û</link>
+<link linkend="_00e7">ç</link>
+</para>
+<indexterm role="cp"><primary>ä ë ï ö ü ÿ</primary></indexterm>
+<indexterm role="cp"><primary>Ä Ë Ï Ö Ü</primary></indexterm>
+<indexterm role="cp"><primary>é</primary></indexterm>
+<indexterm role="cp"><primary>è</primary></indexterm>
+<indexterm role="cp"><primary>â ê î ô û Â Ê Î Ô Û</primary></indexterm>
+<indexterm role="cp"><primary>ç</primary></indexterm>
+
+</chapter>
+</book>
Index:
t/results/converters_tests/char_latin1_latin1_in_refs/res_xml/char_latin1_utf8_in_refs.xml
===================================================================
RCS file:
t/results/converters_tests/char_latin1_latin1_in_refs/res_xml/char_latin1_utf8_in_refs.xml
diff -N
t/results/converters_tests/char_latin1_latin1_in_refs/res_xml/char_latin1_utf8_in_refs.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++
t/results/converters_tests/char_latin1_latin1_in_refs/res_xml/char_latin1_utf8_in_refs.xml
9 Sep 2012 16:51:47 -0000 1.1
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE texinfo PUBLIC "-//GNU//DTD TexinfoML V4.12//EN"
"http://www.gnu.org/software/texinfo/dtd/4.12/texinfo.dtd">
+<texinfo xml:lang="en">
+<filename file="char_latin1_utf8_in_refs.xml"></filename>
+<preamble>\input texinfo
+
+</preamble><setfilename file="char_latin1_utf8_in_refs.info" spaces="
">char_latin1_utf8_in_refs.info</setfilename>
+
+<documentencoding encoding="iso-8859-1" spaces="
">iso-8859-1</documentencoding>
+
+<node name="Top" spaces=" "><nodename>Top</nodename><nodenext automatic="on">ä
ë ï ö ü ÿ Ä Ë Ï Ö Ü</nodenext><nodeup automatic="on">(dir)</nodeup></node>
+<top spaces=" "><sectiontitle>top</sectiontitle>
+
+<printindex value="cp" line=" cp"></printindex>
+
+<menu endspaces=" ">
+<menuentry leadingtext="* "><menunode separator="::">ä ë ï ö ü ÿ Ä Ë Ï Ö
Ü</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode
separator="::">é</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode
separator="::">à è ù</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode
separator="::">â ê î ô û Â Ê Î Ô Û</menunode><menudescription><pre
xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode
separator="::">ç</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry></menu>
+
+</top>
+<node name="_00e4-_00eb-_00ef-_00f6-_00fc-_00ff-_00c4-_00cb-_00cf-_00d6-_00dc"
spaces=" "><nodename>ä ë ï ö ü ÿ Ä Ë Ï Ö Ü</nodename><nodenext
automatic="on">é</nodenext><nodeprev automatic="on">Top</nodeprev><nodeup
automatic="on">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>ä ë ï ö ü ÿ Ä Ë Ï Ö Ü</sectiontitle>
+
+</chapter>
+<node name="_00e9" spaces=" "><nodename>é</nodename><nodenext automatic="on">à
è ù</nodenext><nodeprev automatic="on">ä ë ï ö ü ÿ Ä Ë Ï Ö Ü</nodeprev><nodeup
automatic="on">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>é</sectiontitle>
+
+</chapter>
+<node name="_00e0-_00e8-_00f9" spaces=" "><nodename>à è ù</nodename><nodenext
automatic="on">â ê î ô û Â Ê Î Ô Û</nodenext><nodeprev
automatic="on">é</nodeprev><nodeup automatic="on">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>à è ù</sectiontitle>
+
+</chapter>
+<node name="_00e2-_00ea-_00ee-_00f4-_00fb-_00c2-_00ca-_00ce-_00d4-_00db"
spaces=" "><nodename>â ê î ô û Â Ê Î Ô Û</nodename><nodenext
automatic="on">ç</nodenext><nodeprev automatic="on">à è ù</nodeprev><nodeup
automatic="on">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>â ê î ô û Â Ê Î Ô Û</sectiontitle>
+
+</chapter>
+<node name="_00e7" spaces=" "><nodename>ç</nodename><nodeprev automatic="on">â
ê î ô û Â Ê Î Ô Û</nodeprev><nodeup automatic="on">Top</nodeup></node>
+<chapter spaces=" "><sectiontitle>ç</sectiontitle>
+
+<para><ref><xrefnodename>ä ë ï ö ü ÿ Ä Ë Ï Ö Ü</xrefnodename></ref>
+<ref><xrefnodename>é</xrefnodename></ref>
+<ref><xrefnodename>à è ù</xrefnodename></ref>
+<ref><xrefnodename>â ê î ô û Â Ê Î Ô Û</xrefnodename></ref>
+<ref><xrefnodename>ç</xrefnodename></ref>
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp">ä ë ï ö ü
ÿ</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp">Ä Ë Ï Ö
Ü</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp">é</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp">è</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp">â ê î ô û Â Ê Î Ô
Û</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp">ç</indexterm></cindex>
+
+</chapter>
+<bye></bye>
+</texinfo>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- texinfo/tp Texinfo/Convert/DocBook.pm Texinfo/C...,
Patrice Dumas <=