[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/tp Texinfo/Parser.pm t/60macro.t t/resu...
From: |
Patrice Dumas |
Subject: |
texinfo/tp Texinfo/Parser.pm t/60macro.t t/resu... |
Date: |
Wed, 06 Oct 2010 21:22:48 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 10/10/06 21:22:48
Modified files:
tp/Texinfo : Parser.pm
tp/t : 60macro.t
tp/t/results/columnfractions: empty.pl empty_comment.pl good.pl
good_comment.pl
good_space_comment.pl
not_fraction.pl wrong_command.pl
tp/t/results/coverage: multitable.pl
tp/t/results/macro: arg_body_expansion_order.pl
arg_not_closed.pl complex_argument.pl
implicit_quoting_one_arg.pl
macro_in_macro_arg.pl macro_zero.pl
nested_macro_call.pl no_macrobody.pl
protect_in_body_one_arg.pl
two_macros_on_a_line.pl
tp/t/results/value_and_macro: comma_value_in_macro_arg.pl
value_in_macro_body.pl
value_in_macro_formal_arg.pl
Added files:
tp/t/results/macro: macro_in_line_commands.pl
Log message:
Treat @columnfractions as a regular misc command.
When not at the end of a line, but there is no more text on the line,
take the next text element.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.47&r2=1.48
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/60macro.t?cvsroot=texinfo&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/empty.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/empty_comment.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/good.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/good_comment.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/good_space_comment.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/not_fraction.pl?cvsroot=texinfo&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/columnfractions/wrong_command.pl?cvsroot=texinfo&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage/multitable.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/arg_body_expansion_order.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/arg_not_closed.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/complex_argument.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/implicit_quoting_one_arg.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_in_macro_arg.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_zero.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/nested_macro_call.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/no_macrobody.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/protect_in_body_one_arg.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/two_macros_on_a_line.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_in_line_commands.pl?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/value_and_macro/comma_value_in_macro_arg.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/value_and_macro/value_in_macro_body.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/value_and_macro/value_in_macro_formal_arg.pl?cvsroot=texinfo&r1=1.2&r2=1.3
Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -b -r1.47 -r1.48
--- Texinfo/Parser.pm 5 Oct 2010 22:41:39 -0000 1.47
+++ Texinfo/Parser.pm 6 Oct 2010 21:22:47 -0000 1.48
@@ -98,6 +98,8 @@
# special
'definfoenclose' => {'arg' => 5},
'alias' => {'arg' => '3'},
+ # number of arguments is not known in advance.
+ 'columnfractions' => {'arg' => '1'},
# file names
'setfilename' => {'arg' => 'line'},
'verbatiminclude'=> {'arg' => 'line'},
@@ -433,7 +435,7 @@
}
foreach my $misc_not_begin_line ('comment', 'c', 'sp', 'refill',
- 'noindent', 'indent') {
+ 'noindent', 'indent', 'columnfractions') {
delete $begin_line_commands{$misc_not_begin_line};
}
@@ -885,8 +887,10 @@
while (@$text) {
my $new_text = shift @$text;
- # FIXME error? Or accept? Or nothing special?
- #next if ($new_text = '');
+ # This may happen with user defined macro, although it is unclear in
+ # which case. Example in macro/expansion_order
+ #next if ($new_text eq '');
+ #die if ($new_text eq '');
$new_line .= $new_text;
$line_nr = shift @$lines_array;
@@ -1005,6 +1009,174 @@
return $result;
}
+sub _end_line($$$)
+{
+ my $self = shift;
+ my $current = shift;
+ my $line_nr = shift;
+ if ($current->{'type'}
+ and ($current->{'type'} eq 'menu_entry_name'
+ or $current->{'type'} eq 'menu_entry_node')) {
+ my $empty_menu_entry_node = 0;
+ my $end_comment;
+ if ($current->{'type'} eq 'menu_entry_node') {
+ if (@{$current->{'contents'}}
+ and $current->{'contents'}->[-1]->{'cmdname'}
+ and ($current->{'contents'}->[-1]->{'cmdname'} eq 'c'
+ or $current->{'contents'}->[-1]->{'cmdname'} eq 'comment')) {
+ $end_comment = pop @{$current->{'contents'}};
+ }
+ if (address@hidden>{'contents'}}) {
+ $empty_menu_entry_node = 1;
+ push @{$current->{'contents'}}, $end_comment if ($end_comment);
+ }
+ }
+ # we abort the menu entry if there is no node name
+ if ($empty_menu_entry_node
+ or $current->{'type'} eq 'menu_entry_name') {
+ print STDERR "FINALLY NOT MENU ENTRY\n" if ($self->{'debug'});
+ my $menu = $current->{'parent'}->{'parent'};
+ my $menu_entry = pop @{$menu->{'contents'}};
+ if (@{$menu->{'contents'}} and $menu->{'contents'}->[-1]->{'type'}
+ and $menu->{'contents'}->[-1]->{'type'} eq 'menu_comment') {
+ $current = $menu->{'contents'}->[-1];
+ } else {
+ push @{$menu->{'contents'}}, {'type' => 'menu_comment',
+ 'parent' => $menu,
+ 'contents' => [] };
+ $current = $menu->{'contents'}->[-1];
+ }
+ while (@{$menu_entry->{'args'}}) {
+ my $arg = shift @{$menu_entry->{'args'}};
+ if (defined($arg->{'text'})) {
+ $current = _merge_text ($self, $current, $arg->{'text'});
+ } else {
+ while (@{$arg->{'contents'}}) {
+ my $content = shift @{$arg->{'contents'}};
+ if (defined($content->{'text'})) {
+ $current = _merge_text ($self, $current,
+ $content->{'text'});
+ $content = undef;
+ } else {
+ $content->{'parent'} = $current;
+ push @{$current->{'contents'}}, $content;
+ }
+ }
+ }
+ $arg = undef;
+ }
+ $menu_entry = undef;
+ } else {
+ print STDERR "MENU ENTRY END LINE\n" if ($self->{'debug'});
+ $current = $current->{'parent'};
+ push @{$current->{'args'}}, { 'type' => 'menu_entry_description',
+ 'contents' => [],
+ 'parent' => $current };
+ $current = $current->{'args'}->[-1];
+ if (defined($end_comment)) {
+ $end_comment->{'parent'} = $current;
+ push @{$current->{'contents'}}, $end_comment;
+ }
+ }
+ # def line
+ } elsif ($current->{'parent'}
+ and $current->{'parent'}->{'type'}
+ and $current->{'parent'}->{'type'} eq 'def_line') {
+ my $def_context = pop @{$self->{'context_stack'}};
+ die "BUG: def_context $def_context "._print_current($current)
+ if ($def_context ne 'def');
+ $current = $current->{'parent'}->{'parent'};
+ # other block command lines
+ } elsif ($current->{'type'}
+ and $current->{'type'} eq 'block_line_arg') {
+ # @multitable args
+ if ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
+ and $current->{'parent'}->{'cmdname'} eq 'multitable') {
+ my $line_arg = $current;
+ my @prototype_rows;
+ my @other_contents;
+ # rearrange the row specifications as args, which mostly
+ # implies splitting non-bracketed text and reparenting.
+ foreach my $content (@{$current->{'contents'}}) {
+ if ($content->{'type'} and $content->{'type'} eq 'bracketed') {
+ $content->{'parent'} = $current->{'parent'};
+ push @prototype_rows, $content;
+ } elsif ($content->{'text'}) {
+ if ($content->{'text'} =~ /\S/) {
+ foreach my $prototype(split /\s+/, $content->{'text'}) {
+ push @prototype_rows, { 'text' => $prototype,
+ 'parent' => $current->{'parent'},
+ 'type' => 'row_prototype' };
+ }
+ }
+ } else {
+ if (!$content->{'cmdname'}) {
+ _line_warn ($self, sprintf($self->
+ __("Unexpected argument on address@hidden line: %s"),
+ $current->{'cmdname'},
+ tree_to_texi( { $content->{'contents'} })), $line_nr);
+ push @other_contents, $content;
+ } elsif ($content->{'cmdname'} eq 'c'
+ and $content->{'cmdname'} eq 'comment') {
+ push @other_contents, $content;
+ } else {
+ push @prototype_rows, $content;
+ }
+ $content->{'parent'} = $current->{'parent'};
+ }
+ }
+
+ $current = $current->{'parent'};
+ $current->{'special'}->{'max_columns'} = scalar(@prototype_rows);
+ if (!scalar(@prototype_rows)) {
+ $self->_line_warn ($self->__("empty multitable"), $line_nr);
+ }
+ $current->{'args'} = address@hidden;
+ $current->{'contents'} = address@hidden;
+ # this is in order to have $current->{'parent'} being the multitable
+
+ $current = $line_arg;
+ }
+ $current = $current->{'parent'};
+ if ($current->{'cmdname'}
+ and $block_item_commands{$current->{'cmdname'}}) {
+ push @{$current->{'contents'}}, { 'type' => 'before_item',
+ 'contents' => [], 'parent', $current };
+ $current = $current->{'contents'}->[-1];
+ }
+ # misc command line arguments
+ } elsif ($current->{'type'}
+ and $current->{'type'} eq 'misc_line_arg') {
+ # first parent is the @command, second is the parent
+ $current = $current->{'parent'};
+ my $misc_cmd = $current;
+ my $command = $current->{'cmdname'};
+ print STDERR "MISC END address@hidden>{'cmdname'}\n" if ($self->{'debug'});
+ if ($self->{'misc_commands'}->{$current->{'cmdname'}}->{'arg'}
+ and $self->{'misc_commands'}->{$current->{'cmdname'}}->{'arg'} =~
/^\d$/) {
+ my $args = _parse_line_command_args ($self, $current, $line_nr);
+ $current->{'special'}->{'misc_args'} = $args if (defined($args));
+ }
+ $current = $current->{'parent'};
+ if ($command eq 'columnfractions') {
+ # in a multitable, we are in a block_line_arg
+ if (!$current->{'parent'} or !$current->{'parent'}->{'cmdname'}
+ or $current->{'parent'}->{'cmdname'} ne 'multitable') {
+ # FIXME error message
+ } else {
+ $current = $current->{'parent'};
+ $current->{'special'}->{'max_columns'} = 0;
+ $current->{'special'}->{'max_columns'} =
+ scalar(@{$misc_cmd->{'special'}->{'misc_args'}})
+ if (defined($misc_cmd->{'special'}->{'misc_args'}));
+ push @{$current->{'contents'}}, { 'type' => 'before_item',
+ 'contents' => [], 'parent', $current };
+ $current = $current->{'contents'}->[-1];
+ }
+ }
+ }
+ return $current;
+}
#c 'menu_entry'
#c 'menu_entry'
# t 'menu_entry_leading_text'
@@ -1237,10 +1409,14 @@
$arguments, $line_nr);
print STDERR "MACROBODY: $expanded".'||||||'."\n"
if ($self->{'debug'});
+ # empty result. It is ignored here.
+ next if ($expanded eq '');
my $expanded_lines = _text_to_lines($expanded);
print STDERR "MACRO EXPANSION LINES: ".join('|', @$expanded_lines)
- ."\nEND LINES\n" if ($self->{'debug'});
+ ."|\nEND LINES\n" if ($self->{'debug'});
chomp ($expanded_lines->[-1]);
+ pop @$expanded_lines if ($expanded_lines->[-1] eq '');
+ next if (address@hidden);
my $new_lines_nr = _complete_line_nr($expanded_lines,
$line_nr->{'line_nr'}, $line_nr->{'file_name'},
$expanded_macro->{'args'}->[0]->{'text'}, 1);
@@ -1495,6 +1671,9 @@
# be very wise...
$current->{'remaining_args'} = 4 if ($command eq 'node');
$current = $current->{'args'}->[-1];
+ } elsif ($line eq '') {
+ $current = _end_line($self, $current, $line_nr);
+ last;
}
last NEXT_LINE if ($command eq 'bye');
@@ -1573,11 +1752,6 @@
'parent' => $current } ];
$current->{'remaining_args'} = $arg_number -1 if ($arg_number);
$current = $current->{'args'}->[-1];
- if ($command eq 'multitable'
- and $line =~ s/address@hidden//) {
- # both an argument and an @-command
- $current->{'cmdname'} = 'columnfractions';
- }
} else {
push @{$self->{'context_stack'}}, 'preformatted'
if ($preformatted_commands{$command});
@@ -1607,6 +1781,10 @@
} elsif ($no_brace_commands{$command}) {
push @{$current->{'contents'}},
{ 'cmdname' => $command, 'parent' => $current };
+ if ($command eq "\n") {
+ $current = _end_line($self, $current, $line_nr);
+ last;
+ }
} else {
_line_error ($self, sprintf($self->__("Unknown command `%s'"),
$command), $line_nr);
@@ -1711,6 +1889,10 @@
'contents' => [],
'parent' => $current };
$current = $current->{'args'}->[-1];
+ if ($line eq '') {
+ $current = _end_line($self, $current, $line_nr);
+ last;
+ }
}
# end of menu_entry_name
} elsif ($separator eq ':' and $current->{'type'}
@@ -1741,6 +1923,10 @@
'parent' => $current };
}
$current = $current->{'args'}->[-1];
+ if ($line eq '') {
+ $current = _end_line($self, $current, $line_nr);
+ last;
+ }
} else {
$current = _merge_text ($self, $current, $separator);
}
@@ -1752,223 +1938,18 @@
if ($self->{'debug'}) {
print STDERR "END LINE: ". _print_current($current)."\n";
}
- if ($line ne "\n"
- and !($line eq '')) {
- # and !($current->{'contents'} and @{$current->{'contents'}}
- # and $current->{'contents'}->[-1]
- # and $current->{'contents'}->[-1]->{'cmdname'}
- # and $current->{'contents'}->[-1]->{'cmdname'} eq "\n"
- # and $line eq ''
- # )
- # and !($line eq '' and !scalar(@$text))) {
- _line_warn ($self, "BUG spurious suff on line. Remaining text:
@$text", $line_nr);
- die "Remaining line: |$line|\n";
+ if ($line ne "\n" and scalar(@$text)) {
+ die "Remaining line: |$line|\n" if ($line ne '');
+ print STDERR "END OF TEXT not at end of line/text\n"
+ if ($self->{'debug'});
+ $line = shift @$text;
+ $line_nr = shift @$lines_array;
+ next;
}
if ($line =~ s/^(\n)//) {
$current = _merge_text ($self, $current, $1);
}
- if ($current->{'type'}
- and ($current->{'type'} eq 'menu_entry_name'
- or $current->{'type'} eq 'menu_entry_node')) {
- my $empty_menu_entry_node = 0;
- my $end_comment;
- if ($current->{'type'} eq 'menu_entry_node') {
- if (@{$current->{'contents'}}
- and $current->{'contents'}->[-1]->{'cmdname'}
- and ($current->{'contents'}->[-1]->{'cmdname'} eq 'c'
- or $current->{'contents'}->[-1]->{'cmdname'} eq
'comment')) {
- $end_comment = pop @{$current->{'contents'}};
- }
- if (address@hidden>{'contents'}}) {
- $empty_menu_entry_node = 1;
- push @{$current->{'contents'}}, $end_comment if ($end_comment);
- }
- }
- # we abort the menu entry if there is no node name
- if ($empty_menu_entry_node
- or $current->{'type'} eq 'menu_entry_name') {
- print STDERR "FINALLY NOT MENU ENTRY\n" if ($self->{'debug'});
- my $menu = $current->{'parent'}->{'parent'};
- my $menu_entry = pop @{$menu->{'contents'}};
- if (@{$menu->{'contents'}} and $menu->{'contents'}->[-1]->{'type'}
- and $menu->{'contents'}->[-1]->{'type'} eq 'menu_comment') {
- $current = $menu->{'contents'}->[-1];
- } else {
- push @{$menu->{'contents'}}, {'type' => 'menu_comment',
- 'parent' => $menu,
- 'contents' => [] };
- $current = $menu->{'contents'}->[-1];
- }
- while (@{$menu_entry->{'args'}}) {
- my $arg = shift @{$menu_entry->{'args'}};
- if (defined($arg->{'text'})) {
- $current = _merge_text ($self, $current, $arg->{'text'});
- } else {
- while (@{$arg->{'contents'}}) {
- my $content = shift @{$arg->{'contents'}};
- if (defined($content->{'text'})) {
- $current = _merge_text ($self, $current,
- $content->{'text'});
- $content = undef;
- } else {
- $content->{'parent'} = $current;
- push @{$current->{'contents'}}, $content;
- }
- }
- }
- $arg = undef;
- }
- $menu_entry = undef;
- } else {
- print STDERR "MENU ENTRY END LINE\n" if ($self->{'debug'});
- $current = $current->{'parent'};
- push @{$current->{'args'}}, { 'type' => 'menu_entry_description',
- 'contents' => [],
- 'parent' => $current };
- $current = $current->{'args'}->[-1];
- if (defined($end_comment)) {
- $end_comment->{'parent'} = $current;
- push @{$current->{'contents'}}, $end_comment;
- }
- }
- # def line
- } elsif ($current->{'parent'}
- and $current->{'parent'}->{'type'}
- and $current->{'parent'}->{'type'} eq 'def_line') {
- my $def_context = pop @{$self->{'context_stack'}};
- die "BUG: def_context $def_context "._print_current($current)
- if ($def_context ne 'def');
- $current = $current->{'parent'}->{'parent'};
- # other block command lines
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'block_line_arg') {
- # @multitable @columnfractions
- if ($current->{'cmdname'}
- and $current->{'cmdname'} eq 'columnfractions') {
- # the columnfraction content should be text only, maybe
- # followed by a comment.
- #print STDERR "COLUMNFRACTIONS: ".Data::Dumper->Dump([$current],
['$columnfractions']) if ($self->{'debug'});
- my @fractions;
- my $other_contents;
- if (address@hidden>{'contents'}}) {
- _line_error ($self, sprintf($self->__("Empty address@hidden"),
- $current->{'cmdname'}), $line_nr);
-
- } elsif (!defined($current->{'contents'}->[0]->{'text'})) {
- _line_error ($self, sprintf($self->
- __("address@hidden accepts only fractions as
argument"),
- $current->{'cmdname'}), $line_nr);
- $other_contents = $current->{'contents'};
-
- } else {
- my $fraction_argument = shift @{$current->{'contents'}};
- # verify that the only remaining argument is a comment
- if (@{$current->{'contents'}}
- and (!$current->{'contents'}->[0]->{'cmdname'}
- or ($current->{'contents'}->[0]->{'cmdname'} ne 'c'
- and $current->{'contents'}->[0]->{'cmdname'}
- ne 'comment'))) {
- _line_warn ($self, sprintf($self->
- __("Unexpected argument on address@hidden line: %s"),
- $current->{'cmdname'},
- tree_to_texi( { $current->{'contents'} })), $line_nr);
- }
- $other_contents = $current->{'contents'};
- # now parse the fractions
- my @possible_fractions = split (/\s+/,
- $fraction_argument->{'text'});
- foreach my $fraction (@possible_fractions) {
- if ($fraction =~ /^(\d*\.\d+)|(\d+)\.?$/) {
- push @fractions, $fraction;
- } else {
- _line_error ($self, sprintf($self->
- __("column fraction not a number: %s"),
- $fraction), $line_nr);
- }
- }
- }
- $current = $current->{'parent'};
- $current->{'special'}->{'max_columns'} = scalar(@fractions);
- $current->{'args'} = [ { 'cmdname' => 'columnfractions',
- 'parent' => $current } ];
- foreach my $content (@$other_contents) {
- $content->{'parent'} = $current;
- push @{$current->{'args'}}, $content;
- }
- $current = $current->{'args'}->[0];
- foreach my $fraction (@fractions) {
- push @{$current->{'args'}},
- { 'type' => 'fraction', 'text' => $fraction,
- 'parent' => $current };
- }
- # @multitable args
- } elsif ($current->{'parent'} and $current->{'parent'}->{'cmdname'}
- and $current->{'parent'}->{'cmdname'} eq 'multitable') {
- my $line_arg = $current;
- my @prototype_rows;
- my @other_contents;
- # rearrange the row specifications as args, which mostly
- # implies splitting non-bracketed text and reparenting.
- foreach my $content (@{$current->{'contents'}}) {
- if ($content->{'type'} and $content->{'type'} eq 'bracketed') {
- $content->{'parent'} = $current->{'parent'};
- push @prototype_rows, $content;
- } elsif ($content->{'text'}) {
- if ($content->{'text'} =~ /\S/) {
- foreach my $prototype(split /\s+/, $content->{'text'}) {
- push @prototype_rows, { 'text' => $prototype,
- 'parent' => $current->{'parent'},
- 'type' => 'row_prototype' };
- }
- }
- } else {
- if (!$content->{'cmdname'}) {
- _line_warn ($self, sprintf($self->
- __("Unexpected argument on address@hidden line: %s"),
- $current->{'cmdname'},
- tree_to_texi( { $content->{'contents'} })), $line_nr);
- push @other_contents, $content;
- } elsif ($content->{'cmdname'} eq 'c'
- and $content->{'cmdname'} eq 'comment') {
- push @other_contents, $content;
- } else {
- push @prototype_rows, $content;
- }
- $content->{'parent'} = $current->{'parent'};
- }
- }
-
- $current = $current->{'parent'};
- $current->{'special'}->{'max_columns'} = scalar(@prototype_rows);
- if (!scalar(@prototype_rows)) {
- $self->_line_warn ($self->__("empty multitable"), $line_nr);
- }
- $current->{'args'} = address@hidden;
- $current->{'contents'} = address@hidden;
- # this is in order to have $current->{'parent'} being the
multitable
-
- $current = $line_arg;
- }
- $current = $current->{'parent'};
- if ($current->{'cmdname'}
- and $block_item_commands{$current->{'cmdname'}}) {
- push @{$current->{'contents'}}, { 'type' => 'before_item',
- 'contents' => [], 'parent', $current };
- $current = $current->{'contents'}->[-1];
- }
- # misc command line arguments
- } elsif ($current->{'type'}
- and $current->{'type'} eq 'misc_line_arg') {
- # first parent is the @command, second is the parent
- $current = $current->{'parent'};
- print STDERR "MISC END address@hidden>{'cmdname'}\n" if
($self->{'debug'});
- if ($self->{'misc_commands'}->{$current->{'cmdname'}}->{'arg'}
- and $self->{'misc_commands'}->{$current->{'cmdname'}}->{'arg'}
=~ /^\d$/) {
- my $args = _parse_line_command_args ($self, $current, $line_nr);
- $current->{'special'}->{'misc_args'} = $args if (defined($args));
- }
- $current = $current->{'parent'};
- }
+ $current = _end_line($self, $current, $line_nr);
last;
}
}
@@ -2252,6 +2233,7 @@
return undef if (!defined($arg->{'contents'}->[0]->{'text'}));
my $line = $arg->{'contents'}->[0]->{'text'};
+ $line =~ s/^[ \t]*//;
if ($command eq 'alias') {
# REMACRO
@@ -2273,6 +2255,22 @@
_line_error ($self, sprintf($self->
__("Bad argument to address@hidden"), $command),
$line_nr);
}
+ } elsif ($command eq 'columnfractions') {
+ my @possible_fractions = split (/\s+/, $line);
+ if (address@hidden) {
+ _line_error ($self, sprintf($self->__("Empty address@hidden"),
$command),
+ $line_nr);
+ } else {
+ foreach my $fraction (@possible_fractions) {
+ if ($fraction =~ /^(\d*\.\d+)|(\d+)\.?$/) {
+ push @$args, $fraction;
+ } else {
+ _line_error ($self, sprintf($self->
+ __("column fraction not a number: %s"),
+ $fraction), $line_nr);
+ }
+ }
+ }
} elsif ($command eq 'defindex' || $command eq 'defcodeindex') {
# REMACRO
if ($line =~ /^(\w[\w\-]*)\s*/) {
Index: t/60macro.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/60macro.t,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- t/60macro.t 4 Oct 2010 07:02:40 -0000 1.10
+++ t/60macro.t 6 Oct 2010 21:22:48 -0000 1.11
@@ -386,6 +386,8 @@
@address@hidden
'],
+# FIXME this tests much more than macro, but also index related stuff.
+# This part should certainly be elsewhere.
['macro_in_line_commands',
'@macro cp
cp
Index: t/results/columnfractions/empty.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/columnfractions/empty.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/empty.pl 25 Sep 2010 16:01:07 -0000 1.4
+++ t/results/columnfractions/empty.pl 6 Oct 2010 21:22:48 -0000 1.5
@@ -5,8 +5,28 @@
{
'args' => [
{
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'parent' => {},
+ 'special' => {}
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
}
],
'cmdname' => 'multitable',
@@ -24,6 +44,9 @@
}
]
};
+$result_trees{'empty'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'empty'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'empty'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'empty'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'empty'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'} =
$result_trees{'empty'}{'contents'}[0]{'args'}[0];
$result_trees{'empty'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'empty'}{'contents'}[0];
$result_trees{'empty'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'empty'}{'contents'}[0];
$result_trees{'empty'}{'contents'}[0]{'parent'} = $result_trees{'empty'};
Index: t/results/columnfractions/empty_comment.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/columnfractions/empty_comment.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/empty_comment.pl 25 Sep 2010 16:01:07 -0000
1.4
+++ t/results/columnfractions/empty_comment.pl 6 Oct 2010 21:22:48 -0000
1.5
@@ -5,9 +5,11 @@
{
'args' => [
{
- 'cmdname' => 'columnfractions',
- 'parent' => {}
- },
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
{
'args' => [
{
@@ -21,6 +23,19 @@
'parent' => {}
}
],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'columnfractions',
+ 'parent' => {},
+ 'special' => {}
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
+ }
+ ],
'cmdname' => 'multitable',
'contents' => [
{
@@ -36,9 +51,11 @@
}
]
};
+$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
=
$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'empty_comment'}{'contents'}[0]{'args'}[0];
$result_trees{'empty_comment'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'empty_comment'}{'contents'}[0];
-$result_trees{'empty_comment'}{'contents'}[0]{'args'}[1]{'args'}[0]{'parent'}
= $result_trees{'empty_comment'}{'contents'}[0]{'args'}[1];
-$result_trees{'empty_comment'}{'contents'}[0]{'args'}[1]{'parent'} =
$result_trees{'empty_comment'}{'contents'}[0];
$result_trees{'empty_comment'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'empty_comment'}{'contents'}[0];
$result_trees{'empty_comment'}{'contents'}[0]{'parent'} =
$result_trees{'empty_comment'};
@@ -48,12 +65,12 @@
$result_errors{'empty_comment'} = [
{
- 'error_line' => ':1: @columnfractions accepts only fractions as argument
+ 'error_line' => ':1: @columnfractions missing argument
',
'file_name' => '',
'line_nr' => 1,
'macro' => '',
- 'text' => '@columnfractions accepts only fractions as argument',
+ 'text' => '@columnfractions missing argument',
'type' => 'error'
}
];
Index: t/results/columnfractions/good.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/columnfractions/good.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/good.pl 25 Sep 2010 16:01:07 -0000 1.4
+++ t/results/columnfractions/good.pl 6 Oct 2010 21:22:48 -0000 1.5
@@ -5,25 +5,34 @@
{
'args' => [
{
+ 'contents' => [
+ {
'args' => [
{
- 'parent' => {},
- 'text' => '0.4',
- 'type' => 'fraction'
- },
+ 'contents' => [
{
'parent' => {},
- 'text' => '.6',
- 'type' => 'fraction'
- },
- {
+ 'text' => '0.4 .6 5.
+'
+ }
+ ],
'parent' => {},
- 'text' => '5.',
- 'type' => 'fraction'
+ 'type' => 'misc_line_arg'
}
],
'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ '0.4',
+ '.6',
+ '5.'
+ ]
+ }
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
}
],
'cmdname' => 'multitable',
@@ -41,9 +50,9 @@
}
]
};
-$result_trees{'good'}{'contents'}[0]{'args'}[0]{'args'}[0]{'parent'} =
$result_trees{'good'}{'contents'}[0]{'args'}[0];
-$result_trees{'good'}{'contents'}[0]{'args'}[0]{'args'}[1]{'parent'} =
$result_trees{'good'}{'contents'}[0]{'args'}[0];
-$result_trees{'good'}{'contents'}[0]{'args'}[0]{'args'}[2]{'parent'} =
$result_trees{'good'}{'contents'}[0]{'args'}[0];
+$result_trees{'good'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'good'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'good'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'good'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'good'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'} =
$result_trees{'good'}{'contents'}[0]{'args'}[0];
$result_trees{'good'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'good'}{'contents'}[0];
$result_trees{'good'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'good'}{'contents'}[0];
$result_trees{'good'}{'contents'}[0]{'parent'} = $result_trees{'good'};
Index: t/results/columnfractions/good_comment.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/columnfractions/good_comment.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/good_comment.pl 25 Sep 2010 16:01:07 -0000
1.4
+++ t/results/columnfractions/good_comment.pl 6 Oct 2010 21:22:48 -0000
1.5
@@ -5,25 +5,14 @@
{
'args' => [
{
- 'args' => [
+ 'contents' => [
{
- 'parent' => {},
- 'text' => '0.4',
- 'type' => 'fraction'
- },
+ 'args' => [
{
- 'parent' => {},
- 'text' => '.6',
- 'type' => 'fraction'
- },
+ 'contents' => [
{
'parent' => {},
- 'text' => '5.',
- 'type' => 'fraction'
- }
- ],
- 'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'text' => '0.4 .6 5.'
},
{
'args' => [
@@ -38,6 +27,25 @@
'parent' => {}
}
],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'columnfractions',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ '0.4',
+ '.6',
+ '5.'
+ ]
+ }
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
+ }
+ ],
'cmdname' => 'multitable',
'contents' => [
{
@@ -53,16 +61,16 @@
}
]
};
-$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'args'}[0]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0];
-$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'args'}[1]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0];
-$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'args'}[2]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0];
+$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'args'}[0]{'parent'}
=
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1];
+$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
=
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'good_comment'}{'contents'}[0]{'args'}[0];
$result_trees{'good_comment'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0];
-$result_trees{'good_comment'}{'contents'}[0]{'args'}[1]{'args'}[0]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0]{'args'}[1];
-$result_trees{'good_comment'}{'contents'}[0]{'args'}[1]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0];
$result_trees{'good_comment'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'good_comment'}{'contents'}[0];
$result_trees{'good_comment'}{'contents'}[0]{'parent'} =
$result_trees{'good_comment'};
-$result_texts{'good_comment'} = '@multitable @columnfractions 0.4 .6 5. @c
comment
+$result_texts{'good_comment'} = '@multitable @columnfractions 0.4 .6
address@hidden comment
@end multitable
';
Index: t/results/columnfractions/good_space_comment.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/columnfractions/good_space_comment.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/good_space_comment.pl 25 Sep 2010 16:01:07
-0000 1.4
+++ t/results/columnfractions/good_space_comment.pl 6 Oct 2010 21:22:48
-0000 1.5
@@ -5,20 +5,14 @@
{
'args' => [
{
+ 'contents' => [
+ {
'args' => [
{
- 'parent' => {},
- 'text' => '0',
- 'type' => 'fraction'
- },
+ 'contents' => [
{
'parent' => {},
- 'text' => '1',
- 'type' => 'fraction'
- }
- ],
- 'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'text' => '0 1 '
},
{
'args' => [
@@ -33,6 +27,24 @@
'parent' => {}
}
],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'columnfractions',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ '0',
+ '1'
+ ]
+ }
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
+ }
+ ],
'cmdname' => 'multitable',
'contents' => [
{
@@ -48,11 +60,12 @@
}
]
};
-$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'args'}[0]{'parent'}
= $result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0];
-$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'args'}[1]{'parent'}
= $result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0];
+$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'args'}[0]{'parent'}
=
$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1];
+$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
=
$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0];
$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'good_space_comment'}{'contents'}[0];
-$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[1]{'args'}[0]{'parent'}
= $result_trees{'good_space_comment'}{'contents'}[0]{'args'}[1];
-$result_trees{'good_space_comment'}{'contents'}[0]{'args'}[1]{'parent'} =
$result_trees{'good_space_comment'}{'contents'}[0];
$result_trees{'good_space_comment'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'good_space_comment'}{'contents'}[0];
$result_trees{'good_space_comment'}{'contents'}[0]{'parent'} =
$result_trees{'good_space_comment'};
Index: t/results/columnfractions/not_fraction.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/columnfractions/not_fraction.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- t/results/columnfractions/not_fraction.pl 25 Sep 2010 16:01:07 -0000
1.4
+++ t/results/columnfractions/not_fraction.pl 6 Oct 2010 21:22:48 -0000
1.5
@@ -5,8 +5,28 @@
{
'args' => [
{
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'aaa
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'parent' => {},
+ 'special' => {}
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
}
],
'cmdname' => 'multitable',
@@ -24,11 +44,14 @@
}
]
};
+$result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'not_fraction'}{'contents'}[0]{'args'}[0];
$result_trees{'not_fraction'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'not_fraction'}{'contents'}[0];
$result_trees{'not_fraction'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'not_fraction'}{'contents'}[0];
$result_trees{'not_fraction'}{'contents'}[0]{'parent'} =
$result_trees{'not_fraction'};
-$result_texts{'not_fraction'} = '@multitable @columnfractions
+$result_texts{'not_fraction'} = '@multitable @columnfractions aaa
@end multitable
';
Index: t/results/columnfractions/wrong_command.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/columnfractions/wrong_command.pl,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- t/results/columnfractions/wrong_command.pl 4 Oct 2010 07:02:40 -0000
1.5
+++ t/results/columnfractions/wrong_command.pl 6 Oct 2010 21:22:48 -0000
1.6
@@ -5,9 +5,11 @@
{
'args' => [
{
- 'cmdname' => 'columnfractions',
- 'parent' => {}
- },
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
{
'args' => [
{
@@ -32,6 +34,19 @@
'
}
],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'columnfractions',
+ 'parent' => {},
+ 'special' => {}
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
+ }
+ ],
'cmdname' => 'multitable',
'contents' => [
{
@@ -47,11 +62,13 @@
}
]
};
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
=
$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
=
$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'wrong_command'}{'contents'}[0]{'args'}[0];
$result_trees{'wrong_command'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'wrong_command'}{'contents'}[0];
-$result_trees{'wrong_command'}{'contents'}[0]{'args'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'wrong_command'}{'contents'}[0]{'args'}[1]{'args'}[0];
-$result_trees{'wrong_command'}{'contents'}[0]{'args'}[1]{'args'}[0]{'parent'}
= $result_trees{'wrong_command'}{'contents'}[0]{'args'}[1];
-$result_trees{'wrong_command'}{'contents'}[0]{'args'}[1]{'parent'} =
$result_trees{'wrong_command'}{'contents'}[0];
-$result_trees{'wrong_command'}{'contents'}[0]{'args'}[2]{'parent'} =
$result_trees{'wrong_command'}{'contents'}[0];
$result_trees{'wrong_command'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'wrong_command'}{'contents'}[0];
$result_trees{'wrong_command'}{'contents'}[0]{'parent'} =
$result_trees{'wrong_command'};
@@ -61,12 +78,12 @@
$result_errors{'wrong_command'} = [
{
- 'error_line' => ':1: @columnfractions accepts only fractions as argument
+ 'error_line' => ':1: Bad argument to @columnfractions
',
'file_name' => '',
'line_nr' => 1,
'macro' => '',
- 'text' => '@columnfractions accepts only fractions as argument',
+ 'text' => 'Bad argument to @columnfractions',
'type' => 'error'
}
];
Index: t/results/coverage/multitable.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/coverage/multitable.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/coverage/multitable.pl 25 Sep 2010 21:12:13 -0000 1.1
+++ t/results/coverage/multitable.pl 6 Oct 2010 21:22:48 -0000 1.2
@@ -11,20 +11,33 @@
{
'args' => [
{
+ 'contents' => [
+ {
'args' => [
{
- 'parent' => {},
- 'text' => '6',
- 'type' => 'fraction'
- },
+ 'contents' => [
{
'parent' => {},
- 'text' => '7',
- 'type' => 'fraction'
+ 'text' => '6 7
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
}
],
'cmdname' => 'columnfractions',
- 'parent' => {}
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ '6',
+ '7'
+ ]
+ }
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'block_line_arg'
}
],
'cmdname' => 'multitable',
@@ -308,8 +321,9 @@
]
};
$result_trees{'multitable'}{'contents'}[0]{'parent'} =
$result_trees{'multitable'};
-$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'args'}[0]{'parent'} =
$result_trees{'multitable'}{'contents'}[1]{'args'}[0];
-$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'args'}[1]{'parent'} =
$result_trees{'multitable'}{'contents'}[1]{'args'}[0];
+$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'multitable'}{'contents'}[1]{'args'}[0];
$result_trees{'multitable'}{'contents'}[1]{'args'}[0]{'parent'} =
$result_trees{'multitable'}{'contents'}[1];
$result_trees{'multitable'}{'contents'}[1]{'contents'}[0]{'parent'} =
$result_trees{'multitable'}{'contents'}[1];
$result_trees{'multitable'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'multitable'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'contents'}[0];
Index: t/results/macro/arg_body_expansion_order.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/macro/arg_body_expansion_order.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/arg_body_expansion_order.pl 3 Oct 2010 11:51:37 -0000
1.1
+++ t/results/macro/arg_body_expansion_order.pl 6 Oct 2010 21:22:48 -0000
1.2
@@ -144,17 +144,12 @@
'contents' => [
{
'parent' => {},
- 'text' => 'different'
+ 'text' => 'different
+'
}
],
'parent' => {},
'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
}
]
};
@@ -178,7 +173,6 @@
$result_trees{'arg_body_expansion_order'}{'contents'}[6]{'parent'} =
$result_trees{'arg_body_expansion_order'};
$result_trees{'arg_body_expansion_order'}{'contents'}[7]{'contents'}[0]{'parent'}
= $result_trees{'arg_body_expansion_order'}{'contents'}[7];
$result_trees{'arg_body_expansion_order'}{'contents'}[7]{'parent'} =
$result_trees{'arg_body_expansion_order'};
-$result_trees{'arg_body_expansion_order'}{'contents'}[8]{'parent'} =
$result_trees{'arg_body_expansion_order'};
$result_texts{'arg_body_expansion_order'} = '
@macro othermacro
Index: t/results/macro/arg_not_closed.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/arg_not_closed.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/arg_not_closed.pl 30 Sep 2010 06:49:47 -0000 1.1
+++ t/results/macro/arg_not_closed.pl 6 Oct 2010 21:22:48 -0000 1.2
@@ -45,17 +45,12 @@
'contents' => [
{
'parent' => {},
- 'text' => 'call foo'
+ 'text' => 'call foo
+'
}
],
'parent' => {},
'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
}
]
};
@@ -66,7 +61,6 @@
$result_trees{'arg_not_closed'}{'contents'}[1]{'parent'} =
$result_trees{'arg_not_closed'};
$result_trees{'arg_not_closed'}{'contents'}[2]{'contents'}[0]{'parent'} =
$result_trees{'arg_not_closed'}{'contents'}[2];
$result_trees{'arg_not_closed'}{'contents'}[2]{'parent'} =
$result_trees{'arg_not_closed'};
-$result_trees{'arg_not_closed'}{'contents'}[3]{'parent'} =
$result_trees{'arg_not_closed'};
$result_texts{'arg_not_closed'} = '@macro foo {arg}
foo
Index: t/results/macro/complex_argument.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/complex_argument.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/macro/complex_argument.pl 4 Oct 2010 07:02:41 -0000 1.2
+++ t/results/macro/complex_argument.pl 6 Oct 2010 21:22:48 -0000 1.3
@@ -392,16 +392,15 @@
'contents' => [],
'parent' => {},
'remaining_args' => 0
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
},
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
},
{
'parent' => {},
@@ -471,9 +470,9 @@
$result_trees{'complex_argument'}{'contents'}[14]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'complex_argument'}{'contents'}[14]{'contents'}[1]{'args'}[0];
$result_trees{'complex_argument'}{'contents'}[14]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'complex_argument'}{'contents'}[14]{'contents'}[1];
$result_trees{'complex_argument'}{'contents'}[14]{'contents'}[1]{'parent'} =
$result_trees{'complex_argument'}{'contents'}[14];
+$result_trees{'complex_argument'}{'contents'}[14]{'contents'}[2]{'parent'} =
$result_trees{'complex_argument'}{'contents'}[14];
$result_trees{'complex_argument'}{'contents'}[14]{'parent'} =
$result_trees{'complex_argument'};
$result_trees{'complex_argument'}{'contents'}[15]{'parent'} =
$result_trees{'complex_argument'};
-$result_trees{'complex_argument'}{'contents'}[16]{'parent'} =
$result_trees{'complex_argument'};
$result_texts{'complex_argument'} = '@macro macro2{arg}
coucou \\arg\\ after arg
Index: t/results/macro/implicit_quoting_one_arg.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/macro/implicit_quoting_one_arg.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/macro/implicit_quoting_one_arg.pl 4 Oct 2010 07:02:41 -0000
1.2
+++ t/results/macro/implicit_quoting_one_arg.pl 6 Oct 2010 21:22:48 -0000
1.3
@@ -66,16 +66,15 @@
'contents' => [],
'parent' => {},
'remaining_args' => 0
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
},
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
}
]
};
@@ -88,8 +87,8 @@
$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[0]{'args'}[0];
$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[0];
$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[0]{'parent'}
= $result_trees{'implicit_quoting_one_arg'}{'contents'}[3];
+$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'contents'}[1]{'parent'}
= $result_trees{'implicit_quoting_one_arg'}{'contents'}[3];
$result_trees{'implicit_quoting_one_arg'}{'contents'}[3]{'parent'} =
$result_trees{'implicit_quoting_one_arg'};
-$result_trees{'implicit_quoting_one_arg'}{'contents'}[4]{'parent'} =
$result_trees{'implicit_quoting_one_arg'};
$result_texts{'implicit_quoting_one_arg'} = '
@macro FIXME{a}
Index: t/results/macro/macro_in_macro_arg.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/macro_in_macro_arg.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/macro/macro_in_macro_arg.pl 5 Oct 2010 22:41:40 -0000
1.2
+++ t/results/macro/macro_in_macro_arg.pl 6 Oct 2010 21:22:48 -0000
1.3
@@ -134,21 +134,10 @@
'contents' => [
{
'parent' => {},
- 'text' => 'a, hello text for macro2 after arg'
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
+ 'text' => 'a, hello text for macro2 after arg
+'
},
{
- 'contents' => [
- {
'parent' => {},
'text' => '&&&&
'
@@ -177,10 +166,8 @@
$result_trees{'macro_in_macro_arg'}{'contents'}[5]{'parent'} =
$result_trees{'macro_in_macro_arg'};
$result_trees{'macro_in_macro_arg'}{'contents'}[6]{'parent'} =
$result_trees{'macro_in_macro_arg'};
$result_trees{'macro_in_macro_arg'}{'contents'}[7]{'contents'}[0]{'parent'} =
$result_trees{'macro_in_macro_arg'}{'contents'}[7];
+$result_trees{'macro_in_macro_arg'}{'contents'}[7]{'contents'}[1]{'parent'} =
$result_trees{'macro_in_macro_arg'}{'contents'}[7];
$result_trees{'macro_in_macro_arg'}{'contents'}[7]{'parent'} =
$result_trees{'macro_in_macro_arg'};
-$result_trees{'macro_in_macro_arg'}{'contents'}[8]{'parent'} =
$result_trees{'macro_in_macro_arg'};
-$result_trees{'macro_in_macro_arg'}{'contents'}[9]{'contents'}[0]{'parent'} =
$result_trees{'macro_in_macro_arg'}{'contents'}[9];
-$result_trees{'macro_in_macro_arg'}{'contents'}[9]{'parent'} =
$result_trees{'macro_in_macro_arg'};
$result_texts{'macro_in_macro_arg'} = '
@macro macro1
Index: t/results/macro/macro_zero.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/macro_zero.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/macro_zero.pl 2 Oct 2010 10:03:41 -0000 1.1
+++ t/results/macro/macro_zero.pl 6 Oct 2010 21:22:48 -0000 1.2
@@ -42,17 +42,12 @@
},
{
'parent' => {},
- 'text' => '0'
+ 'text' => '0
+'
}
],
'parent' => {},
'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
}
]
};
@@ -63,7 +58,6 @@
$result_trees{'macro_zero'}{'contents'}[2]{'contents'}[0]{'parent'} =
$result_trees{'macro_zero'}{'contents'}[2];
$result_trees{'macro_zero'}{'contents'}[2]{'contents'}[1]{'parent'} =
$result_trees{'macro_zero'}{'contents'}[2];
$result_trees{'macro_zero'}{'contents'}[2]{'parent'} =
$result_trees{'macro_zero'};
-$result_trees{'macro_zero'}{'contents'}[3]{'parent'} =
$result_trees{'macro_zero'};
$result_texts{'macro_zero'} = '@macro zero
0
Index: t/results/macro/nested_macro_call.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/nested_macro_call.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/nested_macro_call.pl 2 Oct 2010 17:22:53 -0000
1.1
+++ t/results/macro/nested_macro_call.pl 6 Oct 2010 21:22:48 -0000
1.2
@@ -75,21 +75,10 @@
'contents' => [
{
'parent' => {},
- 'text' => 'Before (machin)'
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
+ 'text' => 'Before (machin)
+'
},
{
- 'contents' => [
- {
'parent' => {},
'text' => ' after truc.
'
@@ -110,10 +99,8 @@
$result_trees{'nested_macro_call'}{'contents'}[2]{'parent'} =
$result_trees{'nested_macro_call'};
$result_trees{'nested_macro_call'}{'contents'}[3]{'parent'} =
$result_trees{'nested_macro_call'};
$result_trees{'nested_macro_call'}{'contents'}[4]{'contents'}[0]{'parent'} =
$result_trees{'nested_macro_call'}{'contents'}[4];
+$result_trees{'nested_macro_call'}{'contents'}[4]{'contents'}[1]{'parent'} =
$result_trees{'nested_macro_call'}{'contents'}[4];
$result_trees{'nested_macro_call'}{'contents'}[4]{'parent'} =
$result_trees{'nested_macro_call'};
-$result_trees{'nested_macro_call'}{'contents'}[5]{'parent'} =
$result_trees{'nested_macro_call'};
-$result_trees{'nested_macro_call'}{'contents'}[6]{'contents'}[0]{'parent'} =
$result_trees{'nested_macro_call'}{'contents'}[6];
-$result_trees{'nested_macro_call'}{'contents'}[6]{'parent'} =
$result_trees{'nested_macro_call'};
$result_texts{'nested_macro_call'} = '@macro machin{}
(machin)
Index: t/results/macro/no_macrobody.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/no_macrobody.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/no_macrobody.pl 2 Oct 2010 14:28:02 -0000 1.1
+++ t/results/macro/no_macrobody.pl 6 Oct 2010 21:22:48 -0000 1.2
@@ -36,8 +36,7 @@
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
},
{
'parent' => {},
Index: t/results/macro/protect_in_body_one_arg.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/macro/protect_in_body_one_arg.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/macro/protect_in_body_one_arg.pl 4 Oct 2010 07:02:41 -0000
1.2
+++ t/results/macro/protect_in_body_one_arg.pl 6 Oct 2010 21:22:48 -0000
1.3
@@ -101,16 +101,15 @@
'contents' => [],
'parent' => {},
'remaining_args' => 0
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
},
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
}
]
};
@@ -129,8 +128,8 @@
$result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'contents'}[2]{'parent'}
= $result_trees{'protect_in_body_one_arg'}{'contents'}[2];
$result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'contents'}[3]{'args'}[0]{'parent'}
= $result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'contents'}[3];
$result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'contents'}[3]{'parent'}
= $result_trees{'protect_in_body_one_arg'}{'contents'}[2];
+$result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'contents'}[4]{'parent'}
= $result_trees{'protect_in_body_one_arg'}{'contents'}[2];
$result_trees{'protect_in_body_one_arg'}{'contents'}[2]{'parent'} =
$result_trees{'protect_in_body_one_arg'};
-$result_trees{'protect_in_body_one_arg'}{'contents'}[3]{'parent'} =
$result_trees{'protect_in_body_one_arg'};
$result_texts{'protect_in_body_one_arg'} = '@macro macro1 { arg1 , arg2 }
result: @emph{\\arg1\\} protected \\\\ -> \\\\arg1\\\\ @emph{\\arg2\\}
Index: t/results/macro/two_macros_on_a_line.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/two_macros_on_a_line.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/macro/two_macros_on_a_line.pl 2 Oct 2010 17:22:53 -0000
1.1
+++ t/results/macro/two_macros_on_a_line.pl 6 Oct 2010 21:22:48 -0000
1.2
@@ -137,7 +137,8 @@
},
{
'parent' => {},
- 'text' => 'in mymacro in mymacro'
+ 'text' => 'in mymacro in mymacro
+'
}
],
'parent' => {},
@@ -150,12 +151,6 @@
'type' => 'normal_line'
},
{
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
- },
- {
'contents' => [
{
'cmdname' => '@',
@@ -188,7 +183,8 @@
},
{
'parent' => {},
- 'text' => 'in mymacro in mymacro'
+ 'text' => 'in mymacro in mymacro
+'
}
],
'parent' => {},
@@ -201,12 +197,6 @@
'type' => 'normal_line'
},
{
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
- },
- {
'contents' => [
{
'cmdname' => '@',
@@ -239,7 +229,8 @@
},
{
'parent' => {},
- 'text' => 'in mymacro in mymacro'
+ 'text' => 'in mymacro in mymacro
+'
}
],
'parent' => {},
@@ -252,12 +243,6 @@
'type' => 'normal_line'
},
{
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
- },
- {
'contents' => [
{
'parent' => {},
@@ -298,17 +283,12 @@
},
{
'parent' => {},
- 'text' => 'after in mymacro'
+ 'text' => 'after in mymacro
+'
}
],
'parent' => {},
'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
}
]
};
@@ -337,39 +317,35 @@
$result_trees{'two_macros_on_a_line'}{'contents'}[5]{'contents'}[10]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[5];
$result_trees{'two_macros_on_a_line'}{'contents'}[5]{'parent'} =
$result_trees{'two_macros_on_a_line'};
$result_trees{'two_macros_on_a_line'}{'contents'}[6]{'parent'} =
$result_trees{'two_macros_on_a_line'};
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[2]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[3]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[4]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[5]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[6]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
+$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'contents'}[7]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[7];
$result_trees{'two_macros_on_a_line'}{'contents'}[7]{'parent'} =
$result_trees{'two_macros_on_a_line'};
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[2]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[3]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[4]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[5]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[6]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
-$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'contents'}[7]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[8];
$result_trees{'two_macros_on_a_line'}{'contents'}[8]{'parent'} =
$result_trees{'two_macros_on_a_line'};
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[2]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[3]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[4]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[5]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[6]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
+$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'contents'}[7]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[9];
$result_trees{'two_macros_on_a_line'}{'contents'}[9]{'parent'} =
$result_trees{'two_macros_on_a_line'};
$result_trees{'two_macros_on_a_line'}{'contents'}[10]{'parent'} =
$result_trees{'two_macros_on_a_line'};
$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[2]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[3]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
-$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[4]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
-$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[5]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
-$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[6]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
-$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'contents'}[7]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[11];
$result_trees{'two_macros_on_a_line'}{'contents'}[11]{'parent'} =
$result_trees{'two_macros_on_a_line'};
$result_trees{'two_macros_on_a_line'}{'contents'}[12]{'parent'} =
$result_trees{'two_macros_on_a_line'};
+$result_trees{'two_macros_on_a_line'}{'contents'}[13]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[13];
+$result_trees{'two_macros_on_a_line'}{'contents'}[13]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[13];
$result_trees{'two_macros_on_a_line'}{'contents'}[13]{'parent'} =
$result_trees{'two_macros_on_a_line'};
-$result_trees{'two_macros_on_a_line'}{'contents'}[14]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[14];
-$result_trees{'two_macros_on_a_line'}{'contents'}[14]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[14];
-$result_trees{'two_macros_on_a_line'}{'contents'}[14]{'contents'}[2]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[14];
-$result_trees{'two_macros_on_a_line'}{'contents'}[14]{'contents'}[3]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[14];
-$result_trees{'two_macros_on_a_line'}{'contents'}[14]{'parent'} =
$result_trees{'two_macros_on_a_line'};
-$result_trees{'two_macros_on_a_line'}{'contents'}[15]{'parent'} =
$result_trees{'two_macros_on_a_line'};
-$result_trees{'two_macros_on_a_line'}{'contents'}[16]{'contents'}[0]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[16];
-$result_trees{'two_macros_on_a_line'}{'contents'}[16]{'contents'}[1]{'parent'}
= $result_trees{'two_macros_on_a_line'}{'contents'}[16];
-$result_trees{'two_macros_on_a_line'}{'contents'}[16]{'parent'} =
$result_trees{'two_macros_on_a_line'};
-$result_trees{'two_macros_on_a_line'}{'contents'}[17]{'parent'} =
$result_trees{'two_macros_on_a_line'};
$result_texts{'two_macros_on_a_line'} = '@macro mymacro
in mymacro
Index: t/results/value_and_macro/comma_value_in_macro_arg.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/value_and_macro/comma_value_in_macro_arg.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/value_and_macro/comma_value_in_macro_arg.pl 4 Oct 2010
07:02:41 -0000 1.2
+++ t/results/value_and_macro/comma_value_in_macro_arg.pl 6 Oct 2010
21:22:48 -0000 1.3
@@ -109,16 +109,15 @@
'contents' => [],
'parent' => {},
'remaining_args' => 0
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
},
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
}
]
};
@@ -139,8 +138,8 @@
$result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'contents'}[2]{'parent'}
= $result_trees{'comma_value_in_macro_arg'}{'contents'}[4];
$result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'contents'}[3]{'args'}[0]{'parent'}
= $result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'contents'}[3];
$result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'contents'}[3]{'parent'}
= $result_trees{'comma_value_in_macro_arg'}{'contents'}[4];
+$result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'contents'}[4]{'parent'}
= $result_trees{'comma_value_in_macro_arg'}{'contents'}[4];
$result_trees{'comma_value_in_macro_arg'}{'contents'}[4]{'parent'} =
$result_trees{'comma_value_in_macro_arg'};
-$result_trees{'comma_value_in_macro_arg'}{'contents'}[5]{'parent'} =
$result_trees{'comma_value_in_macro_arg'};
$result_texts{'comma_value_in_macro_arg'} = '@set comma ,
Index: t/results/value_and_macro/value_in_macro_body.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/value_and_macro/value_in_macro_body.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/value_and_macro/value_in_macro_body.pl 4 Oct 2010 07:02:41
-0000 1.2
+++ t/results/value_and_macro/value_in_macro_body.pl 6 Oct 2010 21:22:48
-0000 1.3
@@ -86,16 +86,15 @@
'contents' => [],
'parent' => {},
'remaining_args' => 0
- }
- ],
- 'parent' => {},
- 'type' => 'paragraph'
},
{
'parent' => {},
'text' => '
-',
- 'type' => 'normal_line'
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
}
]
};
@@ -112,8 +111,8 @@
$result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[1]{'args'}[0];
$result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[1];
$result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[1]{'parent'} =
$result_trees{'value_in_macro_body'}{'contents'}[4];
+$result_trees{'value_in_macro_body'}{'contents'}[4]{'contents'}[2]{'parent'} =
$result_trees{'value_in_macro_body'}{'contents'}[4];
$result_trees{'value_in_macro_body'}{'contents'}[4]{'parent'} =
$result_trees{'value_in_macro_body'};
-$result_trees{'value_in_macro_body'}{'contents'}[5]{'parent'} =
$result_trees{'value_in_macro_body'};
$result_texts{'value_in_macro_body'} = '@set bodyarg \\arg\\
Index: t/results/value_and_macro/value_in_macro_formal_arg.pl
===================================================================
RCS file:
/sources/texinfo/texinfo/tp/t/results/value_and_macro/value_in_macro_formal_arg.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/value_and_macro/value_in_macro_formal_arg.pl 4 Oct 2010
07:02:41 -0000 1.2
+++ t/results/value_and_macro/value_in_macro_formal_arg.pl 6 Oct 2010
21:22:48 -0000 1.3
@@ -95,17 +95,12 @@
},
{
'parent' => {},
- 'text' => ' the \\the thearg \\thearg with value \\thearg'
+ 'text' => ' the \\the thearg \\thearg with value \\thearg
+'
}
],
'parent' => {},
'type' => 'paragraph'
- },
- {
- 'parent' => {},
- 'text' => '
-',
- 'type' => 'normal_line'
}
]
};
@@ -125,7 +120,6 @@
$result_trees{'value_in_macro_formal_arg'}{'contents'}[4]{'contents'}[1]{'parent'}
= $result_trees{'value_in_macro_formal_arg'}{'contents'}[4];
$result_trees{'value_in_macro_formal_arg'}{'contents'}[4]{'contents'}[2]{'parent'}
= $result_trees{'value_in_macro_formal_arg'}{'contents'}[4];
$result_trees{'value_in_macro_formal_arg'}{'contents'}[4]{'parent'} =
$result_trees{'value_in_macro_formal_arg'};
-$result_trees{'value_in_macro_formal_arg'}{'contents'}[5]{'parent'} =
$result_trees{'value_in_macro_formal_arg'};
$result_texts{'value_in_macro_formal_arg'} = '@set argument arg
Index: t/results/macro/macro_in_line_commands.pl
===================================================================
RCS file: t/results/macro/macro_in_line_commands.pl
diff -N t/results/macro/macro_in_line_commands.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/macro/macro_in_line_commands.pl 6 Oct 2010 21:22:48 -0000
1.1
@@ -0,0 +1,1432 @@
+use vars qw(%result_texts %result_trees %result_errors);
+
+$result_trees{'macro_in_line_commands'} = {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' cp
+',
+ 'macrobody' => 'cp
+'
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'fn',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'fn
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' fn
+',
+ 'macrobody' => 'fn
+'
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'syncodeindex_command',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '@syncodeindex
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' syncodeindex_command
+',
+ 'macrobody' => '@syncodeindex
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp fn
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'syncodeindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'cp',
+ 'fn'
+ ]
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => ' cp fn
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'syncodeindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'cp',
+ 'fn'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'en',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'en
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' en
+',
+ 'macrobody' => 'en
+'
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'documentlanguage_command',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '@documentlanguage
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' documentlanguage_command
+',
+ 'macrobody' => '@documentlanguage
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'documentlanguage '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'en
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'documentlanguage',
+ 'parent' => {}
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'documentlanguage on its line
+'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => ' en
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'documentlanguage',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => 'line following documentlanguage
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' truc
+',
+ 'macrobody' => 'truc
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'definedx truc
+'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'defindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'truc'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => 'after
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'trucindex_command',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '@trucindex
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' trucindex_command
+',
+ 'macrobody' => '@trucindex
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => ' index truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'trucindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'codeidx',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'codeidx
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' codeidx
+',
+ 'macrobody' => 'codeidx
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'codeidx
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'defcodeindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'codeidx'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'defcodeindex_entry',
+ 'type' => 'macro_name'
+ }
+ ],
+ 'cmdname' => 'macro',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'a @var{index entry} address@hidden'e @address@hidden
+',
+ 'type' => 'raw'
+ }
+ ],
+ 'parent' => {},
+ 'special' => {
+ 'macro_line' => ' defcodeindex_entry
+',
+ 'macrobody' => 'a @var{index entry} address@hidden'e @address@hidden
+'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'a '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'index entry'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'var',
+ 'contents' => [],
+ 'parent' => {},
+ 'remaining_args' => 0
+ },
+ {
+ 'parent' => {},
+ 'text' => ' t'
+ },
+ {
+ 'args' => [
+ {
+ 'parent' => {},
+ 'text' => 'e'
+ }
+ ],
+ 'cmdname' => '\'',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => ' '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'i'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'dotless',
+ 'contents' => [],
+ 'parent' => {},
+ 'remaining_args' => 0
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => '^',
+ 'contents' => [],
+ 'parent' => {},
+ 'remaining_args' => 0
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'codeidxindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cindex entry
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'cindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'ky pg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'syncodeindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'ky',
+ 'pg'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc kindex
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'kindex',
+ 'parent' => {}
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'pindex codeidx
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'pindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc cp
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'synindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'truc',
+ 'cp'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'abc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'defindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'abc'
+ ]
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'defg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'defindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'defg'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'abc defg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'synindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'abc',
+ 'defg'
+ ]
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'defg ky
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'synindex',
+ 'parent' => {},
+ 'special' => {
+ 'misc_args' => [
+ 'defg',
+ 'ky'
+ ]
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'defg index entry
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'defgindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'abc index entry
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'abcindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'pg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'pg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'ky
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'ky
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'value truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'truc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'value cp
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'cp
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'defg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'defg
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'abc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'abc
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'normal_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'fn
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => 'fn
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'printindex',
+ 'parent' => {}
+ }
+ ]
+};
+$result_trees{'macro_in_line_commands'}{'contents'}[0]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[1]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[1]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[1]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[2]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[2];
+$result_trees{'macro_in_line_commands'}{'contents'}[2]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[2];
+$result_trees{'macro_in_line_commands'}{'contents'}[2]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[3]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[4]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[4]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[4];
+$result_trees{'macro_in_line_commands'}{'contents'}[4]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[5]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[5]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[5];
+$result_trees{'macro_in_line_commands'}{'contents'}[5]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[6]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[7]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[7];
+$result_trees{'macro_in_line_commands'}{'contents'}[7]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[7];
+$result_trees{'macro_in_line_commands'}{'contents'}[7]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[8]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[8];
+$result_trees{'macro_in_line_commands'}{'contents'}[8]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[8];
+$result_trees{'macro_in_line_commands'}{'contents'}[8]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[9]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[10];
+$result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[1]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[10]{'contents'}[1]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[10];
+$result_trees{'macro_in_line_commands'}{'contents'}[10]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[11]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[12];
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[1]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[1]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[12];
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'contents'}[2]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[12];
+$result_trees{'macro_in_line_commands'}{'contents'}[12]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[13]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[14]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[14];
+$result_trees{'macro_in_line_commands'}{'contents'}[14]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[14];
+$result_trees{'macro_in_line_commands'}{'contents'}[14]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[15]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[16];
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[1]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[1]{'args'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[1]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[16];
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'contents'}[2]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[16];
+$result_trees{'macro_in_line_commands'}{'contents'}[16]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[17]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[18]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[18];
+$result_trees{'macro_in_line_commands'}{'contents'}[18]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[18];
+$result_trees{'macro_in_line_commands'}{'contents'}[18]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[19]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[20]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[20]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[20]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[20];
+$result_trees{'macro_in_line_commands'}{'contents'}[20]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[21]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[22]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[22];
+$result_trees{'macro_in_line_commands'}{'contents'}[22]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[22];
+$result_trees{'macro_in_line_commands'}{'contents'}[22]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[23]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[24]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[24]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[24]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[24];
+$result_trees{'macro_in_line_commands'}{'contents'}[24]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[25]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[26]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[26];
+$result_trees{'macro_in_line_commands'}{'contents'}[26]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[26];
+$result_trees{'macro_in_line_commands'}{'contents'}[26]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[27]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[1]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[1]{'args'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[1];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[1]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[2]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[3]{'args'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[3];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[3]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[4]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'args'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'contents'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'args'}[0]{'parent'}
=
$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[5]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'contents'}[6]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[28];
+$result_trees{'macro_in_line_commands'}{'contents'}[28]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[29]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[30]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[30]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[30]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[30];
+$result_trees{'macro_in_line_commands'}{'contents'}[30]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[31]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[32]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[32]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[32]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[32];
+$result_trees{'macro_in_line_commands'}{'contents'}[32]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[33]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[34]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[34]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[34]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[34];
+$result_trees{'macro_in_line_commands'}{'contents'}[34]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[35]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[35]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[35]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[35];
+$result_trees{'macro_in_line_commands'}{'contents'}[35]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[36]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[37]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[37]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[37]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[37];
+$result_trees{'macro_in_line_commands'}{'contents'}[37]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[38]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[39]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[39]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[39]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[39];
+$result_trees{'macro_in_line_commands'}{'contents'}[39]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[40]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[40]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[40]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[40];
+$result_trees{'macro_in_line_commands'}{'contents'}[40]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[41]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[42]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[42]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[42]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[42];
+$result_trees{'macro_in_line_commands'}{'contents'}[42]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[43]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[43]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[43]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[43];
+$result_trees{'macro_in_line_commands'}{'contents'}[43]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[44]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[45]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[45]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[45]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[45];
+$result_trees{'macro_in_line_commands'}{'contents'}[45]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[46]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[47]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[47]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[47]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[47];
+$result_trees{'macro_in_line_commands'}{'contents'}[47]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[48]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[49]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[49];
+$result_trees{'macro_in_line_commands'}{'contents'}[49]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[50]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[50]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[50]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[50];
+$result_trees{'macro_in_line_commands'}{'contents'}[50]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[51]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[52]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[52];
+$result_trees{'macro_in_line_commands'}{'contents'}[52]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[53]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[53]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[53]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[53];
+$result_trees{'macro_in_line_commands'}{'contents'}[53]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[54]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[55]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[55];
+$result_trees{'macro_in_line_commands'}{'contents'}[55]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[56]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[56]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[56]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[56];
+$result_trees{'macro_in_line_commands'}{'contents'}[56]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[57]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[58]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[58];
+$result_trees{'macro_in_line_commands'}{'contents'}[58]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[59]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[59]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[59]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[59];
+$result_trees{'macro_in_line_commands'}{'contents'}[59]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[60]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[61]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[61];
+$result_trees{'macro_in_line_commands'}{'contents'}[61]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[62]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[62]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[62]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[62];
+$result_trees{'macro_in_line_commands'}{'contents'}[62]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[63]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[64]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[64];
+$result_trees{'macro_in_line_commands'}{'contents'}[64]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[65]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[65]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[65]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[65];
+$result_trees{'macro_in_line_commands'}{'contents'}[65]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[66]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[67]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[67];
+$result_trees{'macro_in_line_commands'}{'contents'}[67]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[68]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[68]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[68]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[68];
+$result_trees{'macro_in_line_commands'}{'contents'}[68]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[69]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[70]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[70];
+$result_trees{'macro_in_line_commands'}{'contents'}[70]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[71]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[71]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[71]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[71];
+$result_trees{'macro_in_line_commands'}{'contents'}[71]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[72]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[73]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[73];
+$result_trees{'macro_in_line_commands'}{'contents'}[73]{'parent'} =
$result_trees{'macro_in_line_commands'};
+$result_trees{'macro_in_line_commands'}{'contents'}[74]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'macro_in_line_commands'}{'contents'}[74]{'args'}[0];
+$result_trees{'macro_in_line_commands'}{'contents'}[74]{'args'}[0]{'parent'} =
$result_trees{'macro_in_line_commands'}{'contents'}[74];
+$result_trees{'macro_in_line_commands'}{'contents'}[74]{'parent'} =
$result_trees{'macro_in_line_commands'};
+
+$result_texts{'macro_in_line_commands'} = '@macro cp
+cp
address@hidden macro
address@hidden fn
+fn
address@hidden macro
address@hidden syncodeindex_command
address@hidden
address@hidden macro
+
address@hidden cp fn
address@hidden cp fn
+
address@hidden en
+en
address@hidden macro
address@hidden documentlanguage_command
address@hidden
address@hidden macro
+
+documentlanguage @documentlanguage en
+
+documentlanguage on its line
address@hidden en
+line following documentlanguage
+
address@hidden truc
+truc
address@hidden macro
+
+definedx truc
address@hidden truc
+after
+
address@hidden trucindex_command
address@hidden
address@hidden macro
+
address@hidden index truc
+
address@hidden codeidx
+codeidx
address@hidden macro
+
address@hidden codeidx
+
address@hidden defcodeindex_entry
+a @var{index entry} address@hidden'e @address@hidden
address@hidden macro
+
address@hidden a @var{index entry} address@hidden'e @address@hidden
+
address@hidden cindex entry
+
address@hidden ky pg
+
address@hidden truc kindex
address@hidden pindex codeidx
+
address@hidden truc cp
+
address@hidden abc
address@hidden defg
+
address@hidden abc defg
address@hidden defg ky
+
address@hidden defg index entry
+
address@hidden abc index entry
+
+pg
address@hidden pg
+
+ky
address@hidden ky
+
+truc
address@hidden truc
+
+value truc
address@hidden truc
+
+cp
address@hidden cp
+
+value cp
address@hidden cp
+
+defg
address@hidden defg
+
+abc
address@hidden abc
+
+fn
address@hidden fn
+';
+
+$result_errors{'macro_in_line_commands'} = [];
+
+