[l2h] Looping latex2html

Martin MOKREJŠ mmokrejs at natur.cuni.cz
Tue Jul 8 19:11:34 CEST 2003


Hi,
  I am using latex2html for the first time, but I think something is wrong:

$ latex2html -debug -split 4 -link 3 -toc_depth 6 dipl.tex
This is LaTeX2HTML Version 2002-2-1 (1.70)
by Nikos Drakos, Computer Based Learning Unit, University of Leeds.

Revised and extended by:
 Marcus Hennecke, Ross Moore, Herb Swan and others
...producing markup for HTML version 3.2



Extension: loading /usr/share/lib/latex2html/versions/latin1.pl
HTML version: loading /usr/share/lib/latex2html/versions/html3_2.pl

 *** processing declarations ***
Starting at 1057666535 seconds

OPENING /home/mokrejs/old_data/diplomka/dipl.tex

Note: Working directory is /home/mokrejs/old_data/diplomka/dipl
Note: Images will be generated in /tmp/l2h6903

Debug (syswait): Running "/usr/bin/perl /usr/bin/texexpand -debug -auto_exclude -save_styles /home/mokrejs/old_data/diplomka/dipl/TMP/styles -texinputs /home/mokrejs/old_data/diplomka -out /home/mokrejs/old_data/diplomka/dipl/TMP/dipl /home/mokrejs/old_data/diplomka/dipl.tex"
 at /usr/bin/latex2html line 804
texexpand V2002-2-1 (Revision 1.11)

texexpand: LaTeX2HTML inputs are in:
texexpand:    .
texexpand:    /home/mokrejs/old_data/diplomka
texexpand: %--- Found class: \documentclass[10pt,a4paper]{report}

texexpand: %--- Found include at level 1: \input{uvod.tex}
texexpand: %--- checking for uvod.tex
texexpand: %--- looking for ./uvod.tex
texexpand: %--- found ./uvod.tex
texexpand: %--- Found include at level 1: \input{prehled.tex}
texexpand: %--- checking for prehled.tex
texexpand: %--- looking for ./prehled.tex
texexpand: %--- found ./prehled.tex
texexpand: %--- Found include at level 1: \input{metody.tex}
texexpand: %--- checking for metody.tex
texexpand: %--- looking for ./metody.tex
texexpand: %--- found ./metody.tex
texexpand: %--- Found include at level 1: \input{vysledky.tex}
texexpand: %--- checking for vysledky.tex
texexpand: %--- looking for ./vysledky.tex
texexpand: %--- found ./vysledky.tex
texexpand: %--- Found include at level 1: \input{diskuse.tex}
texexpand: %--- checking for diskuse.tex
texexpand: %--- looking for ./diskuse.tex
texexpand: %--- found ./diskuse.tex
texexpand: %--- Found include at level 1: \input{zaver.tex}
texexpand: %--- checking for zaver.tex
texexpand: %--- looking for ./zaver.tex
texexpand: %--- found ./zaver.tex
texexpand: %--- Found include at level 1: \input{literatura.tex}
texexpand: %--- checking for literatura.tex
texexpand: %--- looking for ./literatura.tex
texexpand: %--- found ./literatura.tex
texexpand: %--- Found include at level 1: \input{zkratky.tex}
texexpand: %--- checking for zkratky.tex
texexpand: %--- looking for ./zkratky.tex
texexpand: %--- found ./zkratky.tex
texexpand: %--- Found include at level 1: \input{priloha.tex}
texexpand: %--- checking for priloha.tex
texexpand: %--- looking for ./priloha.tex
texexpand: %--- found ./priloha.tex
texexpand: %--- Found include at level 1: \input{priloha2.tex}
texexpand: %--- checking for priloha2.tex
texexpand: %--- looking for ./priloha2.tex
texexpand: %--- found ./priloha2.texDebug (syswait): Finished child process: #6911
 at /usr/bin/latex2html line 804



Loading /usr/share/lib/latex2html/styles/texdefs.perl...
Package: loading /usr/share/lib/latex2html/styles/report.perl
Package: loading /usr/share/lib/latex2html/styles/czech.perl [czech]
Extension: loading /usr/share/lib/latex2html/versions/latin2.pl
Package: loading /usr/share/lib/latex2html/styles/epsfig.perl
Package: loading /usr/share/lib/latex2html/styles/amssymb.perl
Loading AMS-fonts...
Package: loading /usr/share/lib/latex2html/styles/verbatim.perl
Reading ...
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%,,,,,,,,,,,,,,,,Arguments to hspace are too complex ...
It will not be processed unless used in another environment
which is passed to LaTeX whole for processing.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,


and now nothing happens. Actually, the perl is eating all cpu

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  Command
 6912 mokrejs   18   0 17732  17m 9940 R 99.0  1.7 159:03.08 latex2html


It looks like it is looping.

  DB<10> l
1811==>     &substitute_pars;
1812        # Handle newcommand, newenvironment, newcounter ...
1813:       &substitute_meta_cmds;
1814:       &wrap_shorthand_environments;
1815:       print STDOUT "\n *** End-of-partition ***" if ($VERBOSITY > 1);
1816:       if(open(OUT, ">$TMP_$dd$PARTITION_PREFIX$count")) {
1817:           print OUT $_;
1818:           close(OUT);
1819        } else {
1820:           print "\nError: Cannot write
'$TMP_$dd$PARTITION_PREFIX$count':
$!\n";
  DB<10>

Somewhere in &substitute_meta_cmds ....


Here:


  DB<10>
main::expand_body(/usr/bin/latex2html:5339):
5339:       while (/$new_cmd_or_env_rx/) {
  DB<10>
main::expand_body(/usr/bin/latex2html:5341):
5341:           ($before,$cmd,$after,$saveafter) = ($`,$1.$3,$',$');
  DB<10>
main::expand_body(/usr/bin/latex2html:5342):
5342:           if (length($new_command{$cmd})) { # We have a command
  DB<10>
main::expand_body(/usr/bin/latex2html:5344):
5344:               local($replace) = &substitute_newcmd; # sets $_, changes $after
  DB<10>
main::expand_body(/usr/bin/latex2html:5345):
5345:               if (!($replace)) {
  DB<10>
main::expand_body(/usr/bin/latex2html:5349):
5349:                   $_ = join('', $before , $replace, $after );
  DB<10>
main::expand_body(/usr/bin/latex2html:5354):
5354:           last if $avoid_looping;
  DB<10> p
0:!:\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\futurelet\next\if\next\^^M\let\next\eatone \else\let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next \let\next\relax\fi\next :!:}
  DB<10>   DB<10> $avoid_looping=1

  DB<11> n
main::expand_body(/usr/bin/latex2html:5341):
5341:           ($before,$cmd,$after,$saveafter) = ($`,$1.$3,$',$');
  DB<11>
main::expand_body(/usr/bin/latex2html:5342):
5342:           if (length($new_command{$cmd})) { # We have a command
  DB<11>
main::expand_body(/usr/bin/latex2html:5344):
5344:               local($replace) = &substitute_newcmd; # sets $_, changes $after
  DB<11>
main::expand_body(/usr/bin/latex2html:5345):
5345:               if (!($replace)) {
  DB<11>
main::expand_body(/usr/bin/latex2html:5349):
5349:                   $_ = join('', $before , $replace, $after );
  DB<11>
main::expand_body(/usr/bin/latex2html:5354):
5354:           last if $avoid_looping;
  DB<11>
main::expand_body(/usr/bin/latex2html:5357):
5357:       s/\\\@#\@\@/\\/go;
  DB<11>
main::expand_body(/usr/bin/latex2html:5360):
5360:       s/(\\\w+)$comment_mark\d*\n[ \t]*/$1 /go;
  DB<11>
main::expand_body(/usr/bin/latex2html:5361):
5361:       s/$comment_mark\d*\n[ \t]*//go;
  DB<11>
main::expand_body(/usr/bin/latex2html:5364):
5364:       $_;
  DB<11>

And I got on terminal:

 *** possible looping with new-command \eatcrs ***


But even then I'm caught in another loop:

  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5118):
5118:               print STDOUT " ".$new_command{$cmd}."\n" if ($VERBOSITY > 4);
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5119):
5119:               &write_mydb("new_command", $cmd, $new_command{$cmd});
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5114):
5114:       while (($cmd, $body) = each %new_command) {
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5115):
5115:           unless ($expanded{"CMD$cmd"}++) {
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5116):
5116:               print STDOUT ".$cmd " if ($VERBOSITY > 2);
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5117):
5117:               $new_command{$cmd} = &expand_body;
  DB<4>
main::expand_body(/usr/bin/latex2html:5339):
5339:       while (/$new_cmd_or_env_rx/) {
  DB<4>
main::expand_body(/usr/bin/latex2html:5357):
5357:       s/\\\@#\@\@/\\/go;
  DB<4>
main::expand_body(/usr/bin/latex2html:5360):
5360:       s/(\\\w+)$comment_mark\d*\n[ \t]*/$1 /go;
  DB<4>
main::expand_body(/usr/bin/latex2html:5361):
5361:       s/$comment_mark\d*\n[ \t]*//go;
  DB<4>
main::expand_body(/usr/bin/latex2html:5364):
5364:       $_;
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5118):
5118:               print STDOUT " ".$new_command{$cmd}."\n" if ($VERBOSITY > 4);
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5119):
5119:               &write_mydb("new_command", $cmd, $new_command{$cmd});
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5114):
5114:       while (($cmd, $body) = each %new_command) {
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5115):
5115:           unless ($expanded{"CMD$cmd"}++) {
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5116):
5116:               print STDOUT ".$cmd " if ($VERBOSITY > 2);
  DB<4>
main::substitute_meta_cmds(/usr/bin/latex2html:5117):
5117:               $new_command{$cmd} = &expand_body;
  DB<4>
main::expand_body(/usr/bin/latex2html:5339):
5339:       while (/$new_cmd_or_env_rx/) {
  DB<4>



When using the same trick to set the variable in debugger to avoid looping,
I got in summary this out:


 *** possible looping with new-command \eatcrs ***

 *** possible looping with new-command \listsidewaysgrafname ***

 *** possible looping with new-command \eatone ***

 *** possible looping with new-command \eatcrs ***

 *** possible looping with new-command \bgroup ***
++.......................
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Doing ./uvod.tex
%%%%%%%%%
Processing macros ...,,,

and letting many debugger childs I got up to the end:


possible looping with new-command \eatone

possible looping with new-command \bgroup

redefining command \captionfont

redefining command \captionlabelfont
couldn't convert character @cedil into available encodings

 ...set $ACCENT_IMAGES  to get an image
couldn't convert character ^circ into available encodings
couldn't convert character lstrok into available encodings

No number for "Růstovákřivka<I>Dipodascusmagnusii</I>přiteplotě28$mathrm{^o}$C."

No number for "Růstovákřivka<I>Dipodascusmagnusii</I>přiteplotě30$mathrm{^o}$C."

No number for "Citlivostkomínkovéhotestupřiteplotě18$mathrm{^o}$C-lepšíprovedení."

No number for "Citlivostkomínkovéhotestupřiteplotě18$mathrm{^o}$C-horšíprovedení."

No number for "Růstovákřivka<I>Pichiaanomala</I>přiteplotě18$mathrm{^o}$C."

No number for "Růstovákřivka<I>Pichiaanomala</I>přiteplotě28$mathrm{^o}$C."

Unknown commands: thankspage end_at_dblfloat advisor includegraphics fancyfoot savecaption leftmark let_at_graf_at_figure savelabel let end_at_float subsubsubsection theend let_at_program_at_figure signaturepage setcaptionwidth subsubsubsubsubsection subsubsubsubsection newtoks fontseries fancyhead active thebegin _at_dblfloat endprogram endsidewaysgraf subfigure _at_namedef let_at_sidewaysgraf_at_sidewaysfigure submitdate linewidth rightmark subsubsubsubsubsubsection



What about those non-converted chars? ;)


-- 
Martin Mokrejs <mmokrejs at natur.cuni.cz>, <m.mokrejs at gsf.de>
PGP5.0i key is at http://www.natur.cuni.cz/~mmokrejs
MIPS / Institute for Bioinformatics <http://mips.gsf.de>
GSF - National Research Center for Environment and Health
Ingolstaedter Landstrasse 1, D-85764 Neuherberg, Germany
tel.: +49-89-3187 3683 , fax: +49-89-3187 3585


More information about the latex2html mailing list