• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/iserver/libunistring-0.9.3/build-aux/

Lines Matching refs:macro

2325 # This hash associates an accent macro to the ISO name for the accent if any.
2327 # entity (like é) associated with a texinfo accent macro.
3633 # 'keep' if true the args and the macro are kept, otherwise the macro
3935 my $macro = shift;
4768 my $macro = shift;
4772 if ($macro eq 'headitem')
8606 'macro' => 1,
8673 foreach my $macro (keys(%Texi2HTML::Config::format_in_paragraph))
8675 $no_line_macros{$macro} = 1;
8676 $no_line_macros{"end $macro"} = 1;
9217 $T2H_OPTIONS -> {'macro-expand'} =
9221 verbose => 'output macro expanded source in <file>',
10611 my $texi_line_number = { 'file_name' => '', 'line_nr' => 0, 'macro' => '' };
10663 #print STDERR "==> new page (line_nr $texi_line_number->{'line_nr'},$texi_line_number->{'file_name'},$texi_line_number->{'macro'})\n";
10666 'macro' => $texi_line_number->{'macro'} });
10700 my $macro = shift;
10706 $skip_spec = $Texi2HTML::Config::misc_command{$macro}->{'skip'}
10707 if (defined($Texi2HTML::Config::misc_command{$macro}->{'skip'}));
10708 $arg_spec = $Texi2HTML::Config::misc_command{$macro}->{'arg'}
10709 if (defined($Texi2HTML::Config::misc_command{$macro}->{'arg'}));
10719 my $arg_nr = $Texi2HTML::Config::misc_command{$macro}->{'arg'};
10729 if ($macro eq 'bye')
11164 my $macro = shift;
11170 if ($macro eq 'lowersections')
11179 elsif ($macro eq 'raisesections')
11188 elsif (($macro eq 'contents') or ($macro eq 'summarycontents') or ($macro eq 'shortcontents'))
11190 if ($macro eq 'contents')
11196 $macro = 'shortcontents';
11199 push @{$state->{'place'}}, $content_element{$macro};
11201 elsif ($macro eq 'detailmenu')
11205 elsif ($macro eq 'novalidate')
11208 $Texi2HTML::THISDOC{$macro} = 1;
11210 elsif (grep {$_ eq $macro} ('settitle','setfilename','shortitle','shorttitlepage')
11213 $value{"_$macro"} = substitute_texi_line($1);
11215 elsif (grep {$_ eq $macro} ('author','subtitle','title')
11218 $value{"_$macro"} .= substitute_texi_line($1)."\n";
11219 push @{$Texi2HTML::THISDOC{"${macro}s"}}, substitute_texi_line($1);
11221 elsif ($macro eq 'synindex' || $macro eq 'syncodeindex')
11227 echo_error ("unknown from index name $index_from in \@$macro", $line_nr)
11229 echo_error ("unknown to index name $index_to in \@$macro", $line_nr)
11233 if ($macro eq 'syncodeindex')
11241 push @{$Texi2HTML::THISDOC{$macro}}, [$index_from,$index_to];
11246 echo_error ("Bad $macro line: $line", $line_nr);
11249 elsif ($macro eq 'defindex' || $macro eq 'defcodeindex')
11261 $index_names{$name}->{'code'} = 1 if $macro eq 'defcodeindex';
11263 push @{$Texi2HTML::THISDOC{$macro}}, $name;
11270 echo_error ("Bad $macro line: $line", $line_nr);
11273 elsif ($macro eq 'documentlanguage')
11281 $Texi2HTML::THISDOC{$macro} = $lang;
11284 elsif ($macro eq 'kbdinputstyle')
11293 $Texi2HTML::THISDOC{$macro} = $1;
11298 $Texi2HTML::THISDOC{$macro} = $1;
11302 echo_error ("Unknown argument for \@$macro: $1", $line_nr);
11307 echo_error ("Bad \@$macro", $line_nr);
11310 elsif ($macro eq 'paragraphindent')
11314 $Texi2HTML::THISDOC{$macro} = $1;
11318 $Texi2HTML::THISDOC{$macro} = $1;
11322 echo_error ("Bad \@$macro", $line_nr);
11325 elsif ($macro eq 'firstparagraphindent')
11329 $Texi2HTML::THISDOC{$macro} = $1;
11333 echo_error ("Bad \@$macro", $line_nr);
11336 elsif ($macro eq 'exampleindent')
11340 $Texi2HTML::THISDOC{$macro} = $1;
11344 $Texi2HTML::THISDOC{$macro} = $1;
11348 echo_error ("Bad \@$macro", $line_nr);
11351 elsif ($macro eq 'frenchspacing')
11355 $Texi2HTML::THISDOC{$macro} = $1;
11359 echo_error ("Bad \@$macro", $line_nr);
11362 elsif ($macro eq 'footnotestyle')
11366 $Texi2HTML::THISDOC{$macro} = $1;
11370 echo_error ("Bad \@$macro", $line_nr);
11373 elsif ($macro eq 'headings')
11382 $Texi2HTML::THISDOC{$macro} = $possible_arg;
11388 echo_error ("Bad \@$macro", $line_nr);
11391 elsif ($macro eq 'setchapternewpage')
11396 $Texi2HTML::THISDOC{$macro} = $1;
11400 echo_error ("Bad \@$macro", $line_nr);
11403 elsif ($macro eq 'setcontentsaftertitlepage' or $macro eq 'setshortcontentsaftertitlepage')
11405 $Texi2HTML::THISDOC{$macro} = 1;
11407 $tag = 'shortcontents' if ($macro ne 'setcontentsaftertitlepage');
11410 elsif (grep {$macro eq $_} ('everyheading', 'everyfooting',
11415 $Texi2HTML::THISDOC{$macro} = $arg;
11417 elsif ($macro eq 'need')
11422 echo_warn ("Bad \@$macro", $line_nr);
11426 ($text, $line, $args) = preserve_command($line, $macro);
11431 # if the skipped macro has an effect it is done here
11436 my $macro = shift;
11444 my $keep = $Texi2HTML::Config::misc_command{$macro}->{'keep'};
11446 if ($macro eq 'detailmenu')
11450 elsif ($macro eq 'sp')
11463 echo_error ("\@$macro needs a numeric arg or no arg", $line_nr);
11471 elsif($macro eq 'verbatiminclude' and !$keep)
11509 echo_error ("Bad \@$macro line: $_", $line_nr);
11512 elsif ($macro eq 'indent' or $macro eq 'noindent')
11514 $state->{'paragraph_indent'} = $macro;
11516 ($remaining, $skipped, $args) = preserve_command($line, $macro);
13571 #print STDERR "$line_nr->{'file_name'}($line_nr->{'macro'},$line_nr->{'line_nr'}) $_" if ($line_nr);
14132 'macro' => '' },
14195 $line_number->{'macro'} = $file->{'input_spool'}->{'macro'};
14203 $file->{'input_spool'}->{'macro'} = '';
14204 $line_number->{'macro'} = '';
14245 $macro_text = " in $line_number->{'macro'}" if ($line_number->{'macro'} ne '');
14269 $number_information = "$numbers->[$index]->{'file_name'}($numbers->[$index]->{'macro'},$numbers->[$index]->{'line_nr'}) " if (defined($numbers));
15220 my $macro = shift;
15228 #print STDERR "DO_XREF: $macro\n";
15240 if ($macro eq 'inforef')
15249 if (($macro ne 'inforef') and $args[3])
15254 if ($macro eq 'inforef')
15258 echo_error ("Need a node name for \@$macro", $line_nr);
15263 echo_warn ("Too much arguments for \@$macro", $line_nr);
15280 if (($macro eq 'inforef') or ($args[3] ne '') or ($args[4] ne ''))
15282 if ($macro eq 'inforef')
15284 $macro = 'xref';
15303 $result = &$Texi2HTML::Config::external_ref($macro, $section, $args[4], $node_file, $href, $args[1]);
15321 echo_warn ("\@$macro not in text (in anchor, node, section...)", $line_nr);
15341 $result = &$Texi2HTML::Config::internal_ref ($macro, $href, $short_name, $name, $element->{'section'});
15347 echo_error ("Undefined node `$node_texi' in \@$macro", $line_nr);
15354 $result = "\@$macro"."{${text}}";
15358 $result = &$Texi2HTML::Config::external_ref($macro, '', '', $args[0], do_external_href($node_texi), $args[1]);
15638 # retrieve the macro definition
15651 echo_error ("too much arguments for macro $name", $line_nr) if (defined($args->[$i + 1]));
15662 elsif ($macrobody =~ s/^(\@end\sr?macro)$// or $macrobody =~ s/^(\@end\sr?macro\s)// or $macrobody =~ s/^(\@r?macro\s+\w+\s*.*)//)
15663 { # \ protect @end macro
15675 warn "$ERROR \\ not followed by \\ or an arg but by $arg in macro\n";
15685 # Add the result of the macro expansion back to the input_spool.
15686 # Set the macro name if in the outer macro
15694 $input_spool->{'macro'} = $name if ($input_spool->{'macro'} eq '');
15698 print STDERR "# macro expansion result:\n";
15704 print STDERR "# macro expansion result end\n";
15893 my $macro = $state->{'item'};
15901 add_prev($text, $stack, "\@$macro" . $item->{'text'});
15926 # macro definition: $state->{'macro_inside'}
15927 # macro arguments: $state->{'macro_name'}
15933 # in macro definition
15937 {# protected character or @end macro
15938 $state->{'macro'}->{'body'} .= $1 unless ($state->{'ignored'});
15941 $state->{'macro'}->{'body'} .= '\\' unless ($state->{'ignored'});
15945 elsif (s/^(\@end\sr?macro)$//o or s/^(\@end\sr?macro\s)//o
15946 or s/^(\@r?macro\s+\w+\s*.*)//o)
15948 $state->{'macro'}->{'body'} .= $1 unless ($state->{'ignored'});
15952 #if (s/^(.*?)\@end\sr?macro$//o or s/^(.*?)\@end\sr?macro\s+//o)
15953 if (s/^(\@end\sr?macro)$//o or s/^(\@end\sr?macro\s+)//o)
15959 $state->{'macro'}->{'body'} .= $1;
15962 chomp $state->{'macro'}->{'body'};
15963 print STDERR "# end macro def. Body:\n$state->{'macro'}->{'body'}"
15965 delete $state->{'macro'};
15969 elsif(/^(\@r?macro\s+\w+\s*.*)/)
15971 $state->{'macro'}->{'body'} .= $_ unless ($state->{'ignored'});
15977 $state->{'macro'}->{'body'} .= '@' . $1 unless ($state->{'ignored'});
15982 $state->{'macro'}->{'body'} .= '@' unless ($state->{'ignored'});
15993 $state->{'macro'}->{'body'} .= $1 if (defined($1));
15996 $state->{'macro'}->{'body'} .= $_;
16002 # in macro arguments parsing/expansion. Here \ { } and , if this is a
16003 # multi args macro have a signification, the remaining is passed
16019 # \ protects any character in macro arguments
16022 print STDERR "# macro call: protected char\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16040 print STDERR "# macro call: new arg\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16046 { # balanced } ends the macro call, otherwise it is in the arg
16050 print STDERR "# expanding macro $state->{'macro_name'}\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16059 print STDERR "# macro call: closing }\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16065 print STDERR "# macro call: opening {\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16071 print STDERR "# macro call: end of line\n" if ($T2H_DEBUG & $DEBUG_MACROS);
16116 # in a @verb{ .. } macro
16218 my $macro = $2;
16219 #print STDERR "MACRO $macro\n";
16221 $state->{'bye'} = 1 if ($macro eq 'bye' and !$state->{'ignored'} and !$state->{'arg_expansion'});
16222 if (defined($Texi2HTML::Config::misc_command{$macro}) and
16223 !$Texi2HTML::Config::misc_command{$macro}->{'texi'}
16224 and $macro ne 'documentencoding')
16227 ($_, $line, $args) = preserve_command($_, $macro);
16228 add_prev ($text, $stack, "\@$macro" . $line) unless $state->{'ignored'};
16231 # macro argument expansions: if we have
16233 # and a call to a macro @macro {arg1 @value{comma} arg2}
16234 # the macro arg is arg1 , arg2 and the comma don't separate
16236 # in macro definitions
16239 elsif($macro eq 'set' or $macro eq 'clear')
16241 if ($macro eq 'set')
16247 my $line = "\@$macro" . $1.$2.$3;
16257 echo_warn ("Missing argument for \@$macro", $line_nr);
16260 elsif ($macro eq 'clear')
16266 add_prev($text, $stack, "\@$macro" . $1 . $2);
16274 echo_warn ("Missing argument for \@$macro", $line_nr);
16279 elsif ($macro =~ /^r?macro$/)
16281 # macro call arguments?
16289 echo_warn ("macro `$name' allready defined " .
16303 'line_nr' => $line_nr->{'line_nr'}, 'macro' => $line_nr->{'macro'} } if (defined($line_nr));
16315 $state->{'macro'} = $macros->{$name};
16316 print STDERR "# macro def $name: $debug_msg\n"
16320 {# it means we have a macro without a name
16321 echo_error ("Macro definition without macro name $_", $line_nr)
16326 elsif (defined($text_macros{$macro}))
16329 ($_, $tag) = do_text_macro($macro, $_, $state, $stack, $line_nr);
16334 if ((($state->{'raw'} or (($macro eq 'menu') and $text_macros{'menu'}) or (exists($region_lines{$macro}))) and !$state->{'ignored'}) or $state->{'arg_expansion'})
16343 elsif ($macro eq 'documentencoding')
16367 add_prev($text, $stack, "\@$macro" . $spaces . $encoding) unless ($state->{'ignored'});
16369 elsif ($macro eq 'definfoenclose')
16378 add_prev($text, $stack, "\@$macro" . $_);
16388 echo_error("Bad \@$macro", $line_nr);
16393 elsif ($macro eq 'include')
16397 add_prev($text, $stack, "\@$macro" . $_);
16424 elsif ($macro eq 'value')
16431 add_prev($text, $stack, "\@$macro" .'{'. $value .'}');
16443 add_prev($text, $stack, "\@$macro");
16447 echo_error ("bad \@value macro", $line_nr);
16450 elsif ($macro eq 'unmacro')
16463 elsif (exists($macros->{$macro}))
16468 # in 'ignored' we parse macro defined args anyway as it removes
16469 # some text, but we don't expand the macro
16471 my $ref = $macros->{$macro}->{'args'};
16474 { # the macro has args
16476 $state->{'macro_name'} = $macro;
16481 $_ = expand_macro ($macro, [], $_, $line_nr, $state);
16485 { # macro with one arg on the line
16487 $_ = expand_macro ($macro, [$_], "\n", $line_nr, $state);
16491 elsif ($macro eq ',')
16501 if ($macro eq 'verb')
16514 push (@$stack, { 'style' => $macro, 'text' => '' });
16518 add_prev($text, $stack, "\@$macro") unless($state->{'ignored'});
16806 { # end a region_line macro, like documentdescription, copying
16854 my $macro = $2;
16855 #print STDERR "MACRO $macro\n";
16856 if (defined($Texi2HTML::Config::misc_command{$macro}))
16859 ($_, $line) = misc_command_structure($_, $macro, $state,
16861 add_prev ($text, $stack, "\@$macro".$line);
16865 if ($macro =~ /^(\w+?)index/ and ($1 ne 'print') and ($1 ne 'syncode') and ($1 ne 'syn') and ($1 ne 'def') and ($1 ne 'defcode'))
16871 enter_index_entry($index_prefix, $line_nr, $key, $state->{'place'}, $state->{'element'}, $state->{'after_element'}, $macro);
16872 add_prev ($text, $stack, "\@$macro" . $_);
16875 elsif (defined($text_macros{$macro}))
16877 #print STDERR "TEXT_MACRO: $macro\n";
16878 if ($text_macros{$macro} eq 'raw')
16880 $state->{'raw'} = $macro;
16883 elsif ($format_type{$macro} and $format_type{$macro} eq 'menu')
16887 push @{$state->{'text_macro_stack'}}, $macro;
16890 elsif (exists($region_lines{$macro}))
16892 if (exists($state->{'region_lines'}) and ($state->{'region_lines'}->{'format'} ne $macro))
16894 echo_error("\@$macro not allowed within $state->{'region_lines'}->{'format'}", $line_nr);
16899 $state->{'region_lines'}->{'format'} = $macro;
16909 push @{$state->{'text_macro_stack'}}, $macro;
16914 if (($state->{'raw'} and (!defined($Texi2HTML::Config::command_handler{$macro}))) or ($macro eq 'menu'))
16916 add_prev($text, $stack, "\@$macro");
16921 push @$stack, { 'style' => $macro, 'text' => '' };
16927 elsif ($macro eq 'float')
16968 add_prev($text, $stack, "\@$macro" . $_);
16971 elsif (defined($Texi2HTML::Config::def_map{$macro}))
16974 my ($prefix, $entry, $argument) = get_deff_index($macro, $_, $line_nr);
16977 my $idx_macro = $macro;
16982 add_prev($text, $stack, "\@$macro" . $1);
16987 elsif ($macro =~ /^itemx?$/)
16992 $state->{'item'} = $macro;
16997 add_prev($text, $stack, "\@$macro");
17000 elsif ($format_type{$macro} and ($format_type{$macro} eq 'table' or $format_type{$macro} eq 'list'))
17003 push @{$state->{'table_stack'}}, $macro;
17004 add_prev($text, $stack, "\@$macro");
17008 if ($macro eq 'verb')
17021 elsif ($macro eq 'footnote' and $Texi2HTML::Config::SEPARATED_FOOTNOTES)
17028 push (@$stack, { 'style' => $macro, 'text' => '' });
17032 add_prev($text, $stack, "\@$macro");
17139 { # we are within a macro or a format. In that case we use
17219 # a deff macro with x
17223 { # open a paragraph, unless the line begins with a macro that
17471 # This is a macro
17477 my $macro = $2;
17478 #print STDERR "MACRO $macro\n";
17481 # This is a macro added by close_stack to mark paragraph end
17482 if ($macro eq 'end_paragraph')
17500 # Handle macro added by close_stack to mark preformatted region end
17501 elsif ($macro eq 'end_preformatted')
17520 if (defined($Texi2HTML::Config::misc_command{$macro}))
17529 (!$state->{'check_item'} or ($macro ne 'c' and $macro ne 'comment')))
17532 ($_, $line, $args) = preserve_command($_, $macro);
17533 add_prev($text, $stack, "\@$macro". $line);
17538 $_ = misc_command_text($_, $macro, $stack, $state, $text, $line_nr);
17540 unless ($Texi2HTML::Config::misc_command{$macro}->{'keep'})
17547 if ($macro eq 'listoffloats')
17553 add_prev($text, $stack, "\@$macro" . $1);
17588 echo_error ("Bad \@$macro line: $_", $line_nr);
17595 if (!$Texi2HTML::Config::def_map{$macro} and s/^{//)
17597 if ($macro eq 'verb')
17610 elsif ($macro eq 'm_cedilla' and !$state->{'keep_texi'})
17612 $macro = ',';
17617 push (@$stack, { 'style' => $macro, 'text' => '', 'arg_nr' => 0 });
17618 $state->{'no_paragraph'}++ if ($no_paragraph_macro{$macro});
17619 open_arg($macro, 0, $state);
17620 if (defined($style_type{$macro}) and (($style_type{$macro} eq 'style') or ($style_type{$macro} eq 'accent')))
17622 push (@{$state->{'command_stack'}}, $macro);
17623 #print STDERR "# Stacked $macro (@{$state->{'command_stack'}})\n" if ($T2H_DEBUG);
17633 if ($state->{'check_item'} and ($macro =~ /^itemx?$/ or $macro eq 'headitem'))
17635 echo_error("\@$macro on \@$state->{'check_item'} line", $line_nr);
17643 if ($macro eq 'multitable' or defined($Texi2HTML::Config::def_map{$macro}))
17645 add_prev($text, $stack, "\@$macro" . $_);
17651 if ($macro eq "\n")
17657 add_prev($text, $stack, "\@$macro");
17658 if ($text_macros{$macro} and $text_macros{$macro} eq 'raw')
17660 $state->{'raw'} = $macro;
17661 push (@$stack, {'style' => $macro, 'text' => ''});
17670 # a raw macro beginning
17671 if ($text_macros{$macro} and $text_macros{$macro} eq 'raw')
17673 if (!$Texi2HTML::Config::format_in_paragraph{$macro})
17677 $state->{'raw'} = $macro;
17678 push (@$stack, {'style' => $macro, 'text' => ''});
17683 # An accent macro
17684 if (exists($Texi2HTML::Config::accent_map{$macro}))
17686 push (@{$state->{'command_stack'}}, $macro);
17689 add_prev($text, $stack, do_simple($macro, $1, $state, [ $1 ], $line_nr));
17693 add_prev($text, $stack, do_text($macro, $state));
17698 elsif ($::things_map_ref->{$macro})
17700 echo_warn ("$macro requires {}", $line_nr);
17701 add_prev($text, $stack, do_simple($macro, '', $state));
17704 elsif (defined($::simple_map_ref->{$macro}))
17706 add_prev($text, $stack, do_simple($macro, '', $state));
17713 {# if the macro didn't triggered a paragraph start it might now
17715 ($no_line_macros{$macro} and !no_paragraph($state,$_));
17723 if ((($macro =~ /^(\w+?)index$/) and ($1 ne 'print')) or
17724 ($macro eq 'itemize') or ($macro =~ /^(|v|f)table$/)
17725 or ($macro eq 'multitable') or ($macro eq 'quotation'))
17729 elsif ($macro eq 'enumerate')
17736 elsif (defined($Texi2HTML::Config::def_map{$macro}))
17739 ($style, $category, $name, $type, $class, $arguments) = parse_def($macro, $_, $line_nr);
17757 if (($macro =~ /^(\w+?)index$/) and ($1 ne 'print'))
17759 add_prev($text, $stack, do_index_entry_label($macro,$state,$line_nr));
17762 if ($macro eq 'insertcopying')
17766 # reopen a preformatted format if it was interrupted by the macro
17770 if ($macro =~ /^itemx?$/o or ($macro eq 'headitem'))
17803 echo_warn ("\@$macro outside of table or list", $line_nr);
17806 push @$stack, {'format' => 'row', 'text' => '', 'item_cmd' => $macro };
17812 begin_paragraph_after_command($state,$stack,$macro,$_);
17816 echo_warn ("\@$macro in empty multitable", $line_nr);
17820 if ($macro eq 'tab')
17829 echo_warn ("\@$macro outside of multitable", $line_nr);
17833 echo_warn ("\@$macro in empty multitable", $line_nr);
17839 echo_warn ("too much \@$macro (multitable has only $format->{'max_columns'} column(s))", $line_nr);
17847 begin_paragraph_after_command($state,$stack,$macro,$_);
17851 if ($format_type{$macro} and ($format_type{$macro} ne 'fake'))
17853 unless ($Texi2HTML::Config::format_in_paragraph{$macro})
17857 push (@{$state->{'command_stack'}}, $macro);
17858 if ($format_type{$macro} eq 'menu')
17863 # A deff like macro
17864 if (defined($Texi2HTML::Config::def_map{$macro}))
17867 if (defined($top_format) and ("$top_format->{'format'}x" eq $macro))
17869 # the @DEFx macro has been put at the top of the
17872 $macro =~ s/x$//o;
17874 {# DEFx macro within a DEF paragraph
17879 #print STDERR "DEFx $macro\n";
17887 $macro =~ s/x$//o;
17891 push @{$state->{'command_stack'}}, $macro;
17892 #print STDERR "DEF begin $macro\n";
17893 push @$stack, { 'format' => $macro, 'text' => '' };
17895 #print STDERR "BEGIN_DEFF $macro\n";
17897 $state->{'deff_line'}->{'command'} = $macro;
17899 ($style, $category, $name, $type, $class, $_) = parse_def($macro, $_, $line_nr);
17916 elsif (exists ($Texi2HTML::Config::complex_format_map->{$macro}))
17919 my $complex_format = $Texi2HTML::Config::complex_format_map->{$macro};
17920 my $format = { 'format' => $macro, 'text' => '', 'pre_style' => $complex_format->{'pre_style'} };
17921 my $class = $macro;
17925 unless ($Texi2HTML::Config::format_in_paragraph{$macro})
17930 elsif ($Texi2HTML::Config::paragraph_style{$macro})
17932 push (@$stack, { 'format' => $macro, 'text' => '' });
17933 begin_paragraph_after_command($state,$stack,$macro,$_);
17934 push @{$state->{'paragraph_style'}}, $macro;
17935 if ($macro eq 'center')
17940 unshift @{$state->{'command_stack'}}, $macro;
17953 elsif ($format_type{$macro} eq 'menu')
17958 push @$stack, { 'format' => $macro, 'text' => '' };
17967 elsif (($format_type{$macro} eq 'list') or ($format_type{$macro} eq 'table'))
17970 #print STDERR "LIST_TABLE $macro\n";
17972 if (($macro eq 'itemize') or ($macro =~ /^(|v|f)table$/))
17976 ($prepended, $command) = parse_format_command($_,$macro);
17977 $format = { 'format' => $macro, 'text' => '', 'command' => $command, 'prepended' => $prepended, 'term' => 0 };
17980 elsif ($macro eq 'enumerate')
17985 $format = { 'format' => $macro, 'text' => '', 'spec' => $spec, 'item_nr' => 0 };
17987 elsif ($macro eq 'multitable')
17995 $format = { 'format' => $macro, 'text' => '', 'max_columns' => $max_columns, 'cell' => 1 };
18001 if ($macro =~ /^(|v|f)table$/)
18005 elsif ($macro eq 'multitable')
18009 push @$stack, { 'format' => 'row', 'text' => '', 'item_cmd' => $macro };
18020 if ($format_type{$macro} eq 'list')
18024 begin_paragraph_after_command($state,$stack,$macro,$_)
18025 if ($macro ne 'multitable');
18026 return if ($format_type{$macro} eq 'table' or $macro eq 'itemize');
18028 elsif ($macro eq 'float' or $macro eq 'quotation')
18030 push @$stack, {'format' => $macro, 'text' => '' };
18031 if ($macro eq 'float')
18035 elsif ($macro eq 'quotation')
18044 elsif (defined($Texi2HTML::Config::format_map{$macro}) or ($format_type{$macro} eq 'cartouche'))
18046 push @$stack, { 'format' => $macro, 'text' => '' };
18047 begin_paragraph_after_command($state,$stack,$macro,$_);
18052 $_ = do_unknown ($macro, $_, $text, $stack, $state, $line_nr);
18056 { # A macro with a character which shouldn't appear in macro name
18073 echo_error ("'{' without macro. Before: $_", $line_nr);
18183 my $macro = $stack->[-1]->{'style'};
18184 my $style_args = $::style_map_ref->{$macro}->{'args'};
18190 close_arg ($macro, $stack->[-1]->{'arg_nr'}, $state);
18192 open_arg ($macro, $stack->[-1]->{'arg_nr'}, $state);
18199 { # no macro nor '}', but normal text
18243 my $macro = shift;
18246 if (ref($::style_map_ref->{$macro}) eq 'HASH')
18248 my $arg = $::style_map_ref->{$macro}->{'args'}->[$arg_nr];
18259 elsif ($code_style_map{$macro} and !$state->{'keep_texi'})
18267 my $macro = shift;
18270 if (ref($::style_map_ref->{$macro}) eq 'HASH')
18272 my $arg = $::style_map_ref->{$macro}->{'args'}->[$arg_nr];
18282 #print STDERR "c $arg_nr $macro $arg $state->{'code_style'}\n";
18284 elsif ($code_style_map{$macro} and !$state->{'keep_texi'})
18531 my $macro = shift;
18542 #print STDERR "DO_SIMPLE $macro $arg_nr $args @$args\n" if (defined($args));
18543 if (defined($::simple_map_ref->{$macro}))
18546 if ($macro eq "\n")
18553 return "\@$macro";
18557 #print STDERR "DO_SIMPLE remove_texi $macro\n";
18558 return $::simple_map_texi_ref->{$macro};
18562 return $::simple_map_pre_ref->{$macro};
18566 return $::simple_map_ref->{$macro};
18569 if (defined($::things_map_ref->{$macro}))
18574 $result = "\@$macro" . '{}';
18578 $result = $::texi_map_ref->{$macro};
18579 #print STDERR "DO_SIMPLE remove_texi texi_map $macro\n";
18583 $result = $::pre_map_ref->{$macro};
18587 $result = $::things_map_ref->{$macro};
18591 elsif (defined($::style_map_ref->{$macro}))
18595 return "\@$macro" . '{' . $text . '}';
18603 #print STDERR "REMOVE $macro, $style_map_texi_ref->{$macro}, fun $style_map_texi_ref->{$macro}->{'function'} remove cmd " . \&Texi2HTML::Config::t2h_remove_command . " ascii acc " . \&t2h_default_ascii_accent;
18604 $style = $::style_map_texi_ref->{$macro};
18608 $style = $::style_map_pre_ref->{$macro};
18612 $style = $::style_map_ref->{$macro};
18616 $result = &$Texi2HTML::Config::style($style, $macro, $text, $args, $no_close, $no_open, $line_nr, $state, $state->{'command_stack'});
18620 close_arg($macro,$arg_nr, $state);
18625 elsif ($macro =~ /^special_(\w+)_(\d+)$/o)
18629 print STDERR "Bug? text in \@$macro not empty.\n" if ($text ne '');
18632 return "\@$macro" . '{' . $text . '}';
18649 # Unknown macro
18651 my ($done, $result_text, $message) = &$Texi2HTML::Config::unknown_style($macro, $text,$state);
18664 # close the macro for a multiline macro
18665 echo_warn ("Unknown command with braces `\@$macro'", $line_nr);
18666 $result = do_text("\@$macro") . "{";
18676 my $macro = shift;
18682 #print STDERR "do_unknown: $macro ::: $line";
18683 my ($result_line, $result, $result_text, $message) = &$Texi2HTML::Config::unknown($macro, $line,$stack,$state);
18692 echo_warn ("Unknown command `\@$macro' (left as is)", $line_nr);
18693 add_prev ($text, $stack, do_text("\@$macro"));
18698 # used only during @macro processing
18759 return undef unless (@$stack or $state->{'raw'} or $state->{'macro'} or $state->{'macro_name'} or $state->{'ignored'});
18773 if ($state->{'macro'})
18775 $string .= "\@end macro ";
18776 echo_warn ("closing macro", $line_nr);
19053 #my $macro = shift;