[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/tp Texinfo/Parser.pm t/results/coverage...
From: |
Patrice Dumas |
Subject: |
texinfo/tp Texinfo/Parser.pm t/results/coverage... |
Date: |
Mon, 01 Nov 2010 07:49:05 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 10/11/01 07:49:04
Modified files:
tp/Texinfo : Parser.pm
tp/t/results/coverage: block_commands.pl
tp/t/results/coverage_braces: caption_not_closed.pl
Log message:
Associate caption and float.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.134&r2=1.135
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage/block_commands.pl?cvsroot=texinfo&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage_braces/caption_not_closed.pl?cvsroot=texinfo&r1=1.8&r2=1.9
Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.134
retrieving revision 1.135
diff -u -b -r1.134 -r1.135
--- Texinfo/Parser.pm 31 Oct 2010 23:54:28 -0000 1.134
+++ Texinfo/Parser.pm 1 Nov 2010 07:49:04 -0000 1.135
@@ -3185,6 +3185,37 @@
}
$current = $current->{'args'}->[-1];
if ($context_brace_commands{$command}) {
+ if ($command eq 'caption' or $command eq 'shortcaption') {
+ my $float;
+ if (!$current->{'parent'}->{'parent'}
+ or !$current->{'parent'}->{'parent'}->{'cmdname'}
+ or $current->{'parent'}->{'parent'}->{'cmdname'} ne
'float') {
+ $float = $current->{'parent'};
+ while ($float->{'parent'} and !($float->{'cmdname'}
+ and $float->{'cmdname'} eq
'float')) {
+ $float = $float->{'parent'};
+ }
+ if (!($float->{'cmdname'} and $float->{'cmdname'} eq
'float')) {
+ _line_error($self, sprintf($self->__("address@hidden is
not meaningful outside address@hidden' environment"),
+ $command), $line_nr);
+ $float = undef;
+ } else {
+ _line_warn($self, sprintf($self->__("address@hidden should
be right below address@hidden'"),
+ $command), $line_nr);
+ }
+ } else {
+ $float = $current->{'parent'}->{'parent'};
+ }
+ if ($float) {
+ if ($float->{'extra'}->{$command}) {
+ _line_warn($self, sprintf($self->__("Ignoring multiple
address@hidden"),
+ $command), $line_nr);
+ } else {
+ $current->{'parent'}->{'extra'}->{'float'} = $float;
+ $float->{'extra'}->{$command} = $current->{'parent'};
+ }
+ }
+ }
push @{$self->{'context_stack'}},
$current->{'parent'}->{'cmdname'};
$line =~ s/([^\S\n]*)//;
$current->{'type'} = 'brace_command_context';
@@ -3230,9 +3261,11 @@
and $current->{'parent'}->{'cmdname'}
and (exists
$brace_commands{$current->{'parent'}->{'cmdname'}}
or
$self->{'definfoenclose'}->{$current->{'parent'}->{'cmdname'}})) {
- # for math
+ # for math and footnote out of paragraph
if ($context_brace_commands{$current->{'parent'}->{'cmdname'}}) {
- pop @{$self->{'context_stack'}};
+ my $context_command = pop @{$self->{'context_stack'}};
+ die "BUG: def_context $context_command
"._print_current($current)
+ if ($context_command ne $current->{'parent'}->{'cmdname'});
}
# first is the arg.
$self->_isolate_last_space($current)
@@ -3260,7 +3293,9 @@
and $brace_commands{$current->{'parent'}->{'cmdname'}}
and
$context_brace_commands{$current->{'parent'}->{'cmdname'}}
and
$context_brace_commands{$current->{'parent'}->{'cmdname'}} eq
$self->{'context_stack'}->[-1]) {
- pop @{$self->{'context_stack'}};
+ my $context_command = pop @{$self->{'context_stack'}};
+ die "BUG: def_context $context_command
"._print_current($current)
+ if ($context_command ne $current->{'parent'}->{'cmdname'});
print STDERR "CLOSING address@hidden>{'parent'}->{'cmdname'}\n"
if ($self->{'debug'});
$current = $current->{'parent'}->{'parent'};
}
Index: t/results/coverage/block_commands.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/coverage/block_commands.pl,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- t/results/coverage/block_commands.pl 30 Oct 2010 20:50:37 -0000
1.18
+++ t/results/coverage/block_commands.pl 1 Nov 2010 07:49:04 -0000
1.19
@@ -197,6 +197,9 @@
],
'cmdname' => 'caption',
'contents' => [],
+ 'extra' => {
+ 'float' => {}
+ },
'parent' => {}
},
{
@@ -206,6 +209,7 @@
}
],
'extra' => {
+ 'caption' => {},
'node_content' => [
{}
],
@@ -265,8 +269,10 @@
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'args'}[0]{'contents'}[2]{'contents'}[0]{'parent'}
=
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'args'}[0]{'contents'}[2];
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'args'}[0]{'contents'}[2]{'parent'}
= $result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'args'}[0];
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'args'}[0]{'parent'}
= $result_trees{'block_commands'}{'contents'}[7]{'contents'}[3];
+$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'extra'}{'float'}
= $result_trees{'block_commands'}{'contents'}[7];
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3]{'parent'} =
$result_trees{'block_commands'}{'contents'}[7];
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[4]{'parent'} =
$result_trees{'block_commands'}{'contents'}[7];
+$result_trees{'block_commands'}{'contents'}[7]{'extra'}{'caption'} =
$result_trees{'block_commands'}{'contents'}[7]{'contents'}[3];
$result_trees{'block_commands'}{'contents'}[7]{'extra'}{'node_content'}[0] =
$result_trees{'block_commands'}{'contents'}[7]{'args'}[1]{'contents'}[1];
$result_trees{'block_commands'}{'contents'}[7]{'extra'}{'type'}{'content'}[0]
= $result_trees{'block_commands'}{'contents'}[7]{'args'}[0]{'contents'}[1];
$result_trees{'block_commands'}{'contents'}[7]{'parent'} =
$result_trees{'block_commands'};
Index: t/results/coverage_braces/caption_not_closed.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/coverage_braces/caption_not_closed.pl,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- t/results/coverage_braces/caption_not_closed.pl 30 Oct 2010 20:50:41
-0000 1.8
+++ t/results/coverage_braces/caption_not_closed.pl 1 Nov 2010 07:49:04
-0000 1.9
@@ -101,10 +101,14 @@
],
'cmdname' => 'caption',
'contents' => [],
+ 'extra' => {
+ 'float' => {}
+ },
'parent' => {}
}
],
'extra' => {
+ 'caption' => {},
'type' => {
'content' => [
{}
@@ -151,7 +155,9 @@
$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'args'}[0]{'contents'}[2]{'parent'}
= $result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'args'}[0];
$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'args'}[0]{'contents'}[3]{'parent'}
= $result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'args'}[0];
$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1];
+$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'extra'}{'float'}
= $result_trees{'caption_not_closed'}{'contents'}[0];
$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1]{'parent'} =
$result_trees{'caption_not_closed'}{'contents'}[0];
+$result_trees{'caption_not_closed'}{'contents'}[0]{'extra'}{'caption'} =
$result_trees{'caption_not_closed'}{'contents'}[0]{'contents'}[1];
$result_trees{'caption_not_closed'}{'contents'}[0]{'extra'}{'type'}{'content'}[0]
= $result_trees{'caption_not_closed'}{'contents'}[0]{'args'}[0]{'contents'}[1];
$result_trees{'caption_not_closed'}{'contents'}[0]{'parent'} =
$result_trees{'caption_not_closed'};
$result_trees{'caption_not_closed'}{'contents'}[1]{'parent'} =
$result_trees{'caption_not_closed'};
- texinfo/tp Texinfo/Parser.pm t/results/coverage...,
Patrice Dumas <=