--- doc/help/texxml2indextex.pl 2002/07/30 17:56:06 1.1 +++ doc/help/texxml2indextex.pl 2002/08/09 14:48:31 1.2 @@ -32,23 +32,27 @@ use strict; use HTML::TokeParser; use GDBM_File; -# accept texxml document on standard in -my $p = HTML::TokeParser->new( $ARGV[0] ); -my $dirprefix = "/home/httpd/html/adm/help/tex/"; - if (not defined($ARGV[1])) { print <; +# accept texxml document on standard in +my $p = HTML::TokeParser->new( <$ARGV[1]> ); +my $dirprefix = "/home/httpd/html/adm/help/tex/"; + +# there's a TTH error if we put something before a section starts, +# so don't display anything that precedes a section. Since that's just +# the title page anyhow, no loss. +my $inSection = 0; while (my $token = $p->get_token()) { @@ -57,22 +61,31 @@ while (my $token = $p->get_token()) { my $tag = $token->[1]; my $attr = $token->[2]; + if ($tag eq 'title') + { + my $title = $attr->{'name'}; + print "{\\Large Online Access to $title}\n\n"; + } if ($tag eq 'section') { + $inSection = 1; my $title = $attr->{'name'}; - print "\\emph{\\textbf{$title}}\n\n"; + print "\\emph{\\textbf{$title}}\n"; + print "\\begin{itemize}\n\n"; } if ($tag eq 'subsection') { my $title = $attr->{'name'}; print "\\textbf{$title}\n\n"; + print "\\begin{itemize}\n\n"; } if ($tag eq 'subsubsection') { my $title = $attr->{'name'}; - print "$title\n\n"; + print "\\emph{$title}\n\n"; + print "\\begin{itemize}\n\n"; } if ($tag eq 'file') @@ -80,8 +93,17 @@ while (my $token = $p->get_token()) my $file = substr($attr->{'name'}, 0, -4); my $title = $file; $title =~ s/_/ /g; - print "\\item \\ref{$file} $title"; + if ($inSection) {print "\\item \\ref{$file} $title\n\n"}; + } + } + elsif ($type eq 'E') + { + my $tag = $token->[1]; + if (index($tag, "section") != -1) + { + print "\\end{itemize}\n\n"; } } } +print "\n\n\\end{document}\n\n";