Diff for /doc/help/texxml2indextex.pl between versions 1.1 and 1.3

version 1.1, 2002/07/30 17:56:06 version 1.3, 2003/06/20 21:10:52
Line 32  use strict; Line 32  use strict;
 use HTML::TokeParser;  use HTML::TokeParser;
 use GDBM_File;  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]))  if (not defined($ARGV[1]))
 {  {
     print <<USAGE;      print <<USAGE;
 Usage: texxml2indextex.pl texxmlfilename headerfile  Usage: texxml2indextex.pl texxmlfilename
 texxml2indextex.pl will create an 'index file' suitable for use as a   texxml2indextex.pl will create an 'index file' suitable for use as a 
 sort of title page for a given set of help files. The second file will  sort of title page for a given set of help files. The second file will
 be placed at the beginning, verbatim, so it can be used to provide  be placed at the beginning, verbatim, so it can be used to provide
 context, title, etc, if given.  context, title, etc, if given.
 USAGE  USAGE
   
      exit;
 }  }
   
 # Print the specified header and title  # accept texxml document on standard in
 print <$ARGV[1]>;  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())  while (my $token = $p->get_token())
 {  {
Line 57  while (my $token = $p->get_token()) Line 61  while (my $token = $p->get_token())
     {      {
  my $tag = $token->[1];   my $tag = $token->[1];
  my $attr = $token->[2];   my $attr = $token->[2];
    if ($tag eq 'title')
    {
       my $title = $attr->{'name'};
       print "{\\Large Online Access to $title}\n\n";
    }
  if ($tag eq 'section')   if ($tag eq 'section')
  {   {
       $inSection = 1;
     my $title = $attr->{'name'};      my $title = $attr->{'name'};
     print "\\emph{\\textbf{$title}}\n\n";      print "\\emph{\\textbf{$title}}\n";
       print "\\begin{itemize}\n\n";
  }   }
   
  if ($tag eq 'subsection')   if ($tag eq 'subsection')
  {   {
     my $title = $attr->{'name'};      my $title = $attr->{'name'};
     print "\\textbf{$title}\n\n";      print "\\textbf{$title}\n\n";
       print "\\begin{itemize}\n\n";
  }   }
   
  if ($tag eq 'subsubsection')   if ($tag eq 'subsubsection')
  {   {
     my $title = $attr->{'name'};      my $title = $attr->{'name'};
     print "$title\n\n";      print "\\emph{$title}\n\n";
       print "\\begin{itemize}\n\n";
  }   }
   
  if ($tag eq 'file')   if ($tag eq 'file')
Line 80  while (my $token = $p->get_token()) Line 93  while (my $token = $p->get_token())
     my $file = substr($attr->{'name'}, 0, -4);      my $file = substr($attr->{'name'}, 0, -4);
     my $title = $file;      my $title = $file;
     $title =~ s/_/ /g;      $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";
  }   }
     }      }
 }  }

Removed from v.1.1  
changed lines
  Added in v.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>