Subsections

- Beginnings, 1993-1994
- Later Developments, 1995-1996
- Developments: late 1996 to mid 1997
  - 1st LATEX2HTML Workshop
    Darmstadt, 15 February 1997
  - TUG'97 -- Workshop on LATEX2HTML
    University of San Francisco, 28 July 1997
  - TEXNortheast TUG Conference, TEX/LATEX Now
    March 22-24, 1998, New York City
  - Euro-TEX'98, 10th European TEX Conference
    St. Malo, France -- 29-31 March, 1998
- Developments: late 1997 to early 1998
- 1998 to 1999
- Proposals for Future Development:
  - LATEX2`HTML`-NG
  - Extended Capabilities in Web browsers

#
Credits

##
Beginnings, 1993-1994

LATEX2HTML was written by Nikos Drakos at the Computer Based Learning Unit, University of Leeds. Several people have contributed suggestions, ideas, solutions, support and encouragement. Some of these are Roderick Williams, Ana Maria Paiva, Jamil Sawar and Andrew Cole at the Computer Based Learning Unit.

CERN
  The idea of splitting LATEX files into more than one component, connected via hyperlinks, was first implemented in Perl by Toni Lantunen at CERN. Thanks to Robert Cailliau of the World-Wide Web Project, also at CERN, for providing access to the source code and documentation (although no part of the original design or the actual code has been used).

Robert S. Thau
  has contributed the new version of `texexpand`. Also, in order to translate the “document from hell” (!!!) he has extended the translator to handle `\def` commands, nested math-mode commands, and has fixed several bugs.

Phillip Conrad and L. Peter Deutsch.
  The `pstogif` Perl script uses the `pstoppm.ps` PostScript program, originally written by Phillip Conrad (Perfect Byte, Inc.) and modified by L. Peter Deutsch (Aladdin Enterprises).

Roderick Williams
  The idea of using existing symbolic labels to provide cross-references between documents was first conceived during discussions with Roderick.

Eric Carroll
  who first suggested providing a command like `\hyperref` .

Franz Vojik
  provided the basic mechanism for handling foreign accents.

Todd Little
  The `-auto_navigation` option was based on an idea by Todd.

Axel Belinfante
  provided the Perl code in the `makeidx.perl` file, as well as numerous suggestions and bug-reports.

Verena Umar
  (from the Computer Science Education Project) has been a very patient tester of some early versions of LATEX2`HTML` and many of the current features are a result of her suggestions.

Ian Foster and Bob Olson.
  Thanks to Ian Foster and Bob Olson at the Argonne National Labs, for setting up the LATEX2`HTML` mailing list.

##
Later Developments, 1995-1996

Since 1995 the power and usefulness of LATEX2`HTML` has been enhanced significantly. The revisions later than V95.1 have been largely due to the combined efforts of many people, other than the original author. Interested users have supplied patches to fix a fault, or implement a feature that previously was not supported. Often a question or complaint to the discussion-group (see Getting Support ...) has spurred someone else to provide the necessary “patch”.

Arising from this work, special credit is due to:

Marcus Hennecke
  for his many extensive revisions;

Mark Noworolski
  for coordinating V95.3;

Sidik Isani
  for his improvement in GIF quality;

Michel Goossens
  was the driving force behind the upgrade to LATEX2e compatibility, and other features developed at CERN;

Herb Swan
  for coordinating V96.1 of LATEX2`HTML`, including much of the Perl code for the new features that were introduced, and for providing a series of bug-fix revisions prior to V96.1 `rev-f`;

Ross Moore
  who has revised and extended this manual, helped design and test the segmentation strategy, and later revisions of V96.1 . Ross organised the release of V96.1 `rev-g` and provided many of the improvements incorporated into V96.1 `rev-h`.

Martin Wilck
  for the initial work on implementation of frames. Also Martin did most of the work implementing the extensive citation and bibliographic features of the natbib package, written by Patrick Daly. He also provided the `makeseg` Perl script to create Makefiles for segmented documents.

Jens Lippmann
  for organising the releases V96.1 `rev-h` to V98.1. Jens made significant contributions to the internal workings of LATEX2`HTML`, as well as cleaning up much of its source code.

Many others, too many to mention, contributed bug-reports, fixes and other suggestions.

Thanks also to Donald Arseneau for allowing his `url.sty` to be distributed with this manual. Similarly, thanks to Johannes Braams for `changebar.sty`.
Both of these are useful utilities which enhance the appearance of the printed manual.

##
Developments: late 1996 to mid 1997

During the latter part of 1996 there was much work on improving the capabilities of LATEX2`HTML`. Some of this was due to the World Wide Web Consortium's proposals for `HTML` 3.2, becoming a formal recommendation in November 1996, and their subsequent acceptance in January 1997. Existing LATEX markup for effects such as centering, left- or right-justification of paragraphs, flow of text around images, table-layout with formal captions, etc. could now be given a safe translation into `HTML` 3.2, compliant with a standard that would guarantee that browsers would be available to view such effects.

At the same time developers were exploring ways to enhance the overall performance of LATEX2`HTML`. As a result the current V97.1 release has significant improvements in the following areas:

image-generation
  is much faster, requires less memory and inline images are aligned more accurately;
image quality
  is greatly improved by the use of anti-aliasing effects for on-screen clarity, in particular with mathematics, text and line-drawings;
memory-requirements
  are much reduced, particularly with image-generation;
mathematics
  can now be handled using a separate parsing procedure; images of sub-parts of expressions can be created, rather than using a single image for the whole formula;
macro definitions
  having a more complicated structure than previously allowed, can now be successfully expanded;
counters
  and numbering are no longer entirely dependent on the `.aux` file generated by LATEX;
decisions
  about which environments to include or exclude can now be made;
HTML effects
  for which there is no direct LATEX counterpart can be requested in a variety of new ways;
HTML code
  produced by the translator is much neater and more easily readable, containing more comments and fewer redundant breaks and `<P>` tags.
error-detection
  of simple LATEX errors, such as missing or unmatched braces, is now performed -- a warning message shows a line or two of the source code where the error has apparently occurred;

For these developments, thanks goes especially to:

Jens Lippmann
  for creating and maintaining the CVS repository at `https://www.github.com/latex2html/latex2html/` . This has made it much easier for the contributions from different developers to be collected and maintained as a “development version” which is kept up-to-date and available at all times. Together with Marek Rouchal he produced an extensive rewrite of the `texexpand` utility.

Ross Moore
  for extensive work on almost all aspects of the LATEX2`HTML` source and documentation, combining code for LATEX, Perl, `HTML` and other utilities. Most of the coding for the new features based on `HTML` 3.2, many of the new packages, faster image-generation and the improved support for mathematics and other environments, is his work.

Marek Rouchal
  for extending the former `pstogif` utility, transforming it into `pstoimg` which now allows for alternative image formats, such as `PNG`. Also he produced the neat `configure-pstoimg` script, which eases LATEX2`HTML` installation, and a rewrite of `texexpand`.

Marcus Hennecke
  who has always been there, up-to-date with developments in `HTML` and related matters concerning Web publishing, and tackling the issues involved with portability of LATEX2`HTML` to Unix systems on various platforms.

  Furthermore Marcus has produced LATEX2`HTML`-NG, a version of LATEX2`HTML` which handles expansion of macros in a more “TEX-like” fashion. This should lead to further improvements in speed and efficiency, while allowing complicated macro definitions to work as would be expected from their expansions under LATEX. (This requires Perl 5 , using some programming features not available with Perl 4 .)

Fabrice Popineau
  has produced an adaptation for the Windows NT platform, of LATEX2`HTML` V97.1 .

Uli Wortmann
  showed how to configure Ghostscript to produce anti-aliasing effects within images.

Axel Ramge
  for various suggestions and examples of enhancements, and the code to avoid a problem with Ghostscript.

Thanks also to all those who have made bug-reports, supplied fixes or offered suggestions as to features that might allow LATEX2`HTML` to be used more efficiently in particular circumstances. Most of these have been incorporated into this new version V97.1 , though perhaps not in the form originally envisaged. Such feedback has contributed enormously to helping make LATEX2`HTML` the easy to use, versatile program that it has now become.

Keep the ideas coming!

### 1st LATEX2HTML Workshop
Darmstadt, 15 February 1997

Thanks again to Jens Lippmann and members of the LiPS Design Team for organising this meeting; also to the Fachbereich Informatik at Darmstadt for use of their facilities.

This was an opportunity for many of the current LATEX2`HTML` developers to actually meet for the first time; rather than communication by exchange of electronic mail messages.

- Nikos Drakos talked about the early development of LATEX2`HTML`, while...
- ... Ross Moore, Jens Lippmann and Marek Rouchal described recent improvements.
- Michel Goossens presented a list of difficulties encountered with earlier versions of LATEX2`HTML`, and aspects requiring improvement. Almost all of these now have been addressed in the V97.1 release, so far as is possible within the bounds inherent in the `HTML` 3.2 standard.
- Kristoffer Rose showed how it is possible to create `GIF89` animations from pictures generated by TEX or LATEX, using the Xy-pic graphics package and extensions, developed by himself and Ross Moore.

Also present were representatives from the DANTE e.V. Praesidium and members of the development team.
In all it was a very pleasant and constructive meeting.

### TUG'97 -- Workshop on LATEX2HTML
University of San Francisco, 28 July 1997

On the Sunday afternoon (2.00pm-5.00pm) immediately prior to the TUG meeting, there will be a workshop on LATEX2`HTML`, conducted by Ross Moore 1.

Admission: $50, includes a printed copy of the latest LATEX2`HTML` manual.

### TEXNortheast TUG Conference, TEX/LATEX Now
March 22-24, 1998, New York City

Includes a workshop/presentation by Ross Moore 2.

### Euro-TEX'98, 10th European TEX Conference
St. Malo, France -- 29-31 March, 1998

Several of the LATEX2`HTML` developers will be present. All European (and other) LATEX2`HTML` users are encouraged to attend.

##
Developments: late 1997 to early 1998

Much of the work contributed to LATEX2`HTML` during this time was related to bug fixing and maintaining the 97.1 release, in order to reach a more stable and reliable version which produces `HTML` code conforming to the W3C standards/drafts. To keep in context with this view, support for `HTML 4` has been incorporated into the translator.

There have been improvements to the way math code is handled, as well as font-changing and numbering commands. These now are expected to work much closer to the way that LATEX handles them.

Furthermore, missing LATEX style translations for basic LATEX and AMS-TEX document classes were added to the distribution: `book.perl`, `report.perl`, `article.perl`, `letter.perl`, `amsbook.perl` and `amsart.perl`. New styles implementing LATEX packages include `seminar.perl`, `inputenc.perl` and `chemsym.perl` naming but a few.

The aim is ultimately to support all LATEX, AMS-TEX etc. packages in the standard LATEX distribution, or for which there is published documentation. At the time of writing this aim has not quite been reached. To support internationalisation, Perl extensions were provided for `HTML` output conforming to ISO-Latin 1, 2, 3, 4, 5, 6, and Unicode encodings.

All of the above work was done by Ross Moore.

Additional document formats are now supported, these are IndicTEX, FoilTeX, and `CWEB` documents. You may use any of these packages to translate such documents together with LATEX2`HTML`, refer to the instructions in the various `README` files.

Thanks go to Ross Moore for IndicTEX/HTML, to Boris Veytsman for FoilTeX/`HTML` and to Jens Lippmann for the `CWEB` to `HTML` translator.

Numerous discussions and efforts have been undertaken to get LATEX2`HTML` working independent from the underlying operating system. Yet all obstacles are not quite taken, but it is forseeable that we are OS independent very soon. This release has been reported to run on OS/2, DOS, and MacOS, besides Unix-like operating systems. A former version has also been ported to Amiga OS, but that results still need to be re-integrated into the source. Ports for Windows'95 and Windows NT exist, but are not yet integrated with the main distribution.

Thanks go to Marcus Hennecke, Axel Ramge, Marek Rouchal and Uli Wortmann for fruitful and refreshening discussions about that `Override.pm` loading scheme (which finally made its way after enough chickens and eggs chased one another to death ), and to Daniel Taupin for his successful efforts to get LATEX2`HTML` running on DOS.

Thanks go also to Fabrice Popineau for his port to Windows NT, and Nikos Drakos for a Windows 95 port based on V96.1h (which is mentioned here at last, but not least).

We want to take the opportunity to thank Scott Nelson and the people at Lawrence Livermore National Laboratory who help to keep up the LATEX2`HTML` main archive and the mailing list, and to Achim Bohnet at the Max Planck Institut fuer extraterrestrische Physik, Garching for maintaining the list's online archive. Finally thanks and greetings to all people that contributed to this release and have not been mentioned here...

You all showed spirit and favour. Thank you for your efforts!

... and don't forget Jens and the LiPS team at Darmstadt!

##
1998 to 1999

During this period large parts of LATEX2`HTML` have been overhauled and compatibility with Perl 4 broken once and for all. The 99.2 release is the first known to work out of the box on several UNIX systems as well as on Windows 95, 98, NT and OS/2. The number of supported LATEX packages is bigger than ever.

Thanks to Adalbert Perbandt for testing every second alpha/beta release of 99.2 on OS/2 and ensuring that things work ok there.

##
Proposals for Future Development:

### LATEX2`HTML`-NG

Developed by Marcus Hennecke this is a version of LATEX2`HTML` that addresses various issues, not currently handled in the best way by version V97.1 . These include:

- validating the `HTML` output, so that only correctly nested tags, and their contents, can be produced by the translator;
- more TEX-like order of macro-expansion, so that macros and their expansions will produce exactly the results expected from the TEX implementation of LATEX;
- faster processing, by streamlining some of the current Perl code, and allowing shorter strings to be handled at any given time;
- customisation issues, allowing easier portability to Unix-like environments on other platforms.

Many of these features have been the inspiration for new code written for LATEX2`HTML` V98.1.

The current version of LATEX2`HTML`-NG can be obtained from the developer's repository, in the directory `http://saftsack.fs.uni-bayreuth.de/~latex2ht/ng-user`.
Beware that the files there are not compatible with those of the same name that come with the current version of LATEX2`HTML`.

### Extended Capabilities in Web browsers

The following areas are the subject of active development within the Web community. Limited support is available within LATEX2`HTML` for some of these features, using the `-html_version 4.0` command-line switch.

style-sheets:
  proposals for a flexible mechanism to allow cascading (CSS) and DSSSL, within `HTML` 4.0.
XML:
  eXtensible Markup Language.

MathML:
  Mathematical Markup Language.

CML:
  Chemical Markup Language.

Fonts:
  further support for non-standard font encodings.

Icons:
  Alternative sets of icons for navigation buttons and other purposes.

For some background on these technologies read Michel Goossens' survey article “Hyper-activity in the Web-world” in CERN Computer Newsletter No. 227, and browse Axel Ramge's site for ideas on how they could be used with LATEX2`HTML`.