[l2h] Questions on implementing ifthen.perl

Leigh Smith leigh@leighsmith.com
Mon, 23 Dec 2002 17:24:43 -0500


While the conditional commands in the html.perl package are great when 
choosing which code to process depending on latex2html or LaTeX2e are 
being used, I sometimes need conditional processing when processing 
with LaTeX2e. I assume html.perl can't do general purpose conditional 
processing with LaTeX2e?

I have a partially complete implementation of ifthen.perl to support
  \ifthenelse{condition}{cond true commands}{cond false commands}

One thing that stymies me is that the parameter sent to 
do_cmd_ifthenelse is delimited by the next \section/\subsection 
command. This produces problems if you want to conditionally process a 
section, i.e.

\ifthenelse{\boolean{dothissection}}
{
\section{This is a section that will be processed if dothissection is 
true}

And it's contents.
}
{
\section{This is a section that will be processed if dothissection is 
false}

And it's contents.
}

I assume that ifthenelse needs to be processed via 
&substitute_meta_cmds since according to the documentation, these are 
processed prior to splitting the input text into chunks at section 
boundaries?

The other issue raised in a previous mail list posting by Ross is it 
seems booleans are not guaranteed to expand in the same way in 
latex2html than in LaTeX, I can live with/work around that, although 
fairly simple set of commands like

\newboolean{condition}
\setboolean{condition}{true}

\boolean{condition}

in 1.70 of latex2html.pin always produce 0. I've sent the changes to 
Ross to fix those bugs in \boolean processing. However, am I correct in 
assuming latex2html-2002-2-1.tar.gz is still the latest release?

The link http://saftsack.fs.uni-bayreuth.de/~latex2ht/current/ from 
www.latex2html.org lists all files as written on the 29th of November 
2002, I assume the other ones cover releases in 1999 (i.e 
latex2html-99.2beta8.tar.gz)  and 2000 (latex2html-2K.1beta.tar.gz)?

Do I understand that to mean latex2html-2002-2-1.tar.gz does not change 
it's name when updates have been made, or that no changes have been 
made since the 2002-2-1 release?

I'm sorry for all the questions, but the version numbering in the name 
of the tarball seems non-standard. Also, am I correct in assuming that 
the CVS repository itself is not accessible but only a checked out 
distribution accessible at 
http://saftsack.fs.uni-bayreuth.de/~latex2ht/user/?

In any case, the changes I made to 1.70 of latex2html.pin are:

14415c14415,14417
<     if (defined $global{$bool}) { $val= $global{$bool} }
---
 >     if (defined $global{"if$bool"}) {
 >       $val= $global{"if$bool"}
 >     }
14528c14530
<       $global{"if$bool"} = (($val = ~/true/) ? 1 : 0);
---
 >       $global{"if$bool"} = (($val =~ /true/) ? 1 : 0);

Once ifthen.perl is a bit more functional, I'd like to contribute it to 
the distribution.

Happy Holidays
--
Leigh Smith
mailto:leigh@leighsmith.com
http://www.leighsmith.com