% $Id: TeX4ht-doc.tex 786 2020-08-24 17:18:49Z karl $ % Part of TeX4ht, released under the LPPL. % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work % is the TeX4ht Project . %%%%%%%%%%%%%%% comment out for final version %%%%%%%%%%%%% % \def\UnderRevision{{\bf % This site is under revision % until the end of February % \IgnorePar\EndP \HCode{
}\par % }} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\immediate\write16{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} %\immediate\write16{!!!!!!Compile: dotemp or dofinal !!!!!!!!} %\immediate\write16{!!!!!!NEEDS: htcmd.exe, tex4ht.exe, t4ht.exe !!!!!!!!} %\immediate\write16{!!!!!!needs: TWO COMPILATIONS to get correct index!!!!!!!!} %\immediate\write16{!!!!!!checkmn in-messages out-clean-messages!!!!!!!!} %\immediate\write16{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} \long\def\WAIT#1\ENDWAIT{} %%%%%%%%%%%%%%%%%%% Compiling this program %%%%%%%%%%%% % For temp directory: dotemp % For TeX4ht dir : difinal % \def\SysNeeds#1{} \def\SKIP{\bgroup\catcode`\\=9 \catcode`\{=9 \catcode`\}=9 \foo} \long\def\foo#1/////////////+/{\egroup}\SKIP %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% MORE AT THE END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% refresh AlProTex.sty in ctan ------------------------------------------- -------------------------------------------------------------------------------------- ------------------------------------------- -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- http://biostat.mc.vanderbilt.edu/wiki/Main/SweaveConvert -------------------------------------------------------------------------------------- From: Peter FELECAN To: gurari@cse.ohio-state.edu Subject: [SPAM] tex4ht packages for SUN Solaris Date: Mon, 18 May 2009 09:50:36 +0200 Eitan, Just to let you know that I packaged tex4ht --- the latest version --- for SUN Solaris and the packages are available in the distribution OpenCSW: http://www.opencsw.org/ If you think that it's of interest for the tex4ht users community you can mention it on the project page. Sincerely yours -- Peter FELECAN -------------------------------------------------------------------------------------- Bill, The problem is due to tex4ht assuming that \a maintains its original definition as provided in latex.ltx. The same kind of problem will arise with many other macros that are configured by tex4ht. It is possible to modify tex4ht to provide configurations only for control words that maintain their original definitions, but that will require a large code overhead. On the other hand, it can be argued that it is the responsibility of authors that change the meaning of control words to provide also new tex4ht-based configurations. I modified the bugfixes distribution to cancel through an instruction of the form \HRestore\a the configuration by tex4ht. -eitan > I suppose this could be fixed by now, though the same behavior > is obtained with the texlive 2007 version (version 2006-10-28-15:32). > > (/usr/share/texmf/tex/generic/tex4ht/tex4ht.sty > version 2008-02-25-14:04 > > The only notice is: > > ! Missing $ inserted. > > $ > > Example and xhtml+mathml output appended. The example runs correctly > through normal latex. > ------------------------- > \documentclass{article} > \renewcommand{\a}{\alpha} > \begin{document} > > $\a$ > \end{document} > ----------------------- -------------------------------------------------------------------------------------- \documentclass[english]{article} \listfiles \usepackage{filecontents} \begin{filecontents}{test.bib} @BOOK{book, author = {Surname, Shaun}, title = {A book with a long title}, shorttitle = {A book}, address = {London}, year = {2000} } \end{filecontents} \usepackage[style=verbose-note]{biblatex} \bibliography{test} \begin{document} \footnote{\cite{book}} \footnote{\cite{book}} \end{document} -------------------------------------------------------------------------------------- here it is a patch to let oolatex test which java implementation is run by the command ``java'', and to exit with a meaningful error message (that can b\ e improved, of course) the patch is relevant in the debian context, and is not intended for propagati\ on upstream best regards gb --- /usr/share/tex4ht/oolatex 2008-09-14 05:53:15.000000000 +0200 +++ oolatex 2008-12-11 15:11:38.000000000 +0100 @@ -1,4 +1,7 @@ #!/bin/sh + +java -version 2>&1 | grep -q 'GNU libgcj' && printf ``oolatex NEEDS Sun's Java\ \n'' && exit + if command -v xhtex > /dev/null 2>&1 ; then true else -------------------------------------------------------------------------------------- \graphicspath{{eps/}{tiff/}} http://www.tex.ac.uk/cgi-bin/texfaq2html?label=graphicspath \DeclareGraphicsExtensions{.png,.jpg,.eps,.ps} \includegraphics{fig} -------------------------------------------------------------------------------------- To: owner@bugs.debian.org (Debian Bug Tracking System) Cc: Kapil Hari Paranjape Subject: Bug#486482: tex4ht: a java program invoked from oolatex goes in error In-Reply-To: References: <20080616111948.5356.58963.reportbug@boffi95.stru.polimi.it> X-Mailer: VM 7.04 under 21.1 (patch 14) "Cuyahoga Valley" XEmacs Lucid --text follows this line-- An apology if this is a duplicate posting. I tried to email earlier a similar message I fail to find a trace of it. -------- Kapil Hari Paranjape, Mon, 16 Jun 2008 20:00:02 > This (second) failure seems to the same error as is evident in bug > report #471837, which is due to a problem with "default-jre" under > Debian (see #474075). The problem is that the JRE which uses gij (or > cacao or jamvm) is not entirely compatible with Sun's "java". > > The original "xtpipes" java code and the resulting byte code works > fine with Sun's "java". If you choose the Sun java (currently only in > non-free under Debian) using "update-alternatives", then the > conversion ought to work for now. > > We are still trying to fix this compatibility issue. Eitan Gurari, Tue, 17 Jun 2008 00:48:31 > > > We are still trying to fix this compatibility issue. > > It will take some months until I'll confront the problem head on. I > intend first to learn the gij/gcj environment by using it to develop > software for another project. -eitan The oolatex problem with gij/gcj is due to the problem exhibited in the attached sample program. The program produces the same error (of a missing office.dtd file) under SUN Java and GNU Java. When the EntityResolver code is uncommented, the SUN Java program executes smoothly. On the other hand, the GNU Java still issues the error message. That is, GNU Java seems to have broken implementation for the EntityResolver feature. I ran the code with the commands javac Test.java ; java Test test.tmp gcj -C Test.java ; gij Test test.tmp within the following environment. java version "1.5.0" gij (GNU libgcj) version 4.2.4 (Ubuntu 4.2.4-1ubuntu3) By introducing an empty office.dtd file in the work directory, oolatex would work also under gcj/gij. -eitan ------------------- Test.java ---------------------- import javax.xml.parsers.*; import org.xml.sax.*; import java.io.*; class Test { static public void main(String[] args) throws Exception { SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser saxParser = factory.newSAXParser(); XMLReader xmlReader = saxParser.getXMLReader(); /* xmlReader.setEntityResolver(new org.xml.sax.EntityResolver() { public InputSource resolveEntity( String publicId, String systemId) { StringReader strReader = new StringReader(""); System.err.println(".......... " + systemId); return new org.xml.sax.InputSource(strReader); } }); */ xmlReader.parse ( new File(args[0]).toURI().toURL().toString() ); } } ------------------- test.tmp ----------------------- ---------------------------------------------------- -------------------------------------------------------------------------------------- javac Test.java ; java Test test.tmp gcj -C Test.java ; gij Test test.tmp java version "1.5.0" gij (GNU libgcj) version 4.2.4 (Ubuntu 4.2.4-1ubuntu3) import javax.xml.parsers.*; import org.xml.sax.*; import java.io.*; class Test { static public void main(String[] args) throws Exception { SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser saxParser = factory.newSAXParser(); XMLReader xmlReader = saxParser.getXMLReader(); /* xmlReader.setEntityResolver(new org.xml.sax.EntityResolver() { public InputSource resolveEntity( String publicId, String systemId) { StringReader strReader = new StringReader(""); System.err.println(".......... " + systemId); return new org.xml.sax.InputSource(strReader); } }); */ xmlReader.parse ( new File(args[0]).toURI().toURL().toString() ); } } ------------------------------------------------------------------------------ > tc:\Program Files\MiKTeX 2.7\fonts\! > which it could not resolve. > I now changed it to > tc:\Progra~1\MiKTeX~2.7\fonts\! > which makes it work now. -------------------------------------------------------------------------------------- As explained in section 2, TEX4ht needs external utilities for creating the bitmaps used in the web-documents. The default set up is a combination of dvips, gs (GhostScript) and ImageMagick’s convert utility [4]. Unfortunately this is a rather slow process, and not a very good one when it comes to antialiasing, and it’s definetely not suited for typesetting uses. However, the dvi2bitmap tool available freely from [3] is efficient and converts dvi files directly to png or gif files. Dvi2bitmap works almost like a normal dvi-driver, but has no support for so-called dvi-specials (such as included eps-figures et.c.) Thus, a combination of the two is required: We use dvi2bitmap whenever we encounter maths and special symbols as this is efficient and produce good results, but use the aforementioned dvips/gs/convert-process for items that dvi2bitmap cannot handle, such as included PostScript figures. -------------------------------------------------------------------------------------- http://schlosser.info/latexsystem-en.html#x1-200003.6 -------------------------------------------------------------------------------------- I forgot to mention about one thing. The installation script I posted earlier does not install tex4ht.exe and t4ht.exe binaries. They come with miktex-tex4ht-bin-2.7 package and should be installed first (using miktex package manager). The rest of tex4ht is installed by the script and it won't show up in miktex package manager (it have to be maintained manually). And a small correction - lines [51-54] are not needed and can be deleted (but they don't do any harm, it's not a bug, just some dead code). >A few final remarks. It works on NT based systems only, so users of >win98 and below are out of luck. Sorry. Shell scripting on NT is >already traumatic enough for me. All lines are numbered in case they >get wrapped in this post. Copy and paste them into a text editor and >unwrap all lines not starting with a number. Remove the bracketed >numbers and save it as 'install-tex4ht.bat'. If you are too lazy to do >it manually save it as 'install-tex4ht.txt' and from the command line >run (one line): >(for /f "tokens=1* delims=[]" %K in (install-tex4ht.txt) do @echo. >%L)>install-tex4ht.bat > >OK, without the further ado, here's the installation script. > >---------- INSTALL-TEX4HT.BAT >[1]::--------------------------------------------------------------------:: >[2]::- *** TEX4HT installation script >*** -:: >[3]::- >-:: >[4]::- >Usage: -:: >[5]::- * >Installation: -:: >[6]::- install- >tex4ht.bat -:: >[7]::- install-tex4ht.bat >install -:: >[8]::- * >Uninstallation: -:: >[9]::- install-tex4ht.bat >uninstall -:: >[10]::- >-:: >[11]::- >Remaks: -:: >[12]::- * Installation script will prompt you for locations of >unzipped -:: >[13]::- tex4ht.zip and newt4ht.zip files; you can to avoid that >by -:: >[14]::- defining them in the configuration section of the >script -:: >[15]::- * After installation created TDS (TeX Directory Structure) >tree -:: >[16]::- has to be added to MiKTeX's roots (use MiKTeX's >Settings -:: >[17]::- utility mo.exe). Alternatively, you can install to >MiKTeX's -:: >[18]::- intallation directory but this is not recommended. >Refresh -:: >[19]::- FNDB after >installation. -:: >[20]::- * Uninstallation will leave behind created TDS >tree; -:: >[21]::- delete it manually if >desired -:: >[22]::--------------------------------------------------------------------:: >[23] >[24]@echo off >[25]setlocal >[26] >[27]:: ******************** Configuration section >*********************** :: >[28]::unzipped tex4ht location >[29]set tex4ht_unzipped_dir=.\tex4ht-20070708 >[30]::unzipped newt4ht location >[31]set newt4ht_unzipped_dir=.\newt4ht >[32]::tex4ht installation dir >[33]set tex4ht_install_dir=C:\texmf-local >[34]::change (Y) or not (N) the default script to >[35]set use_oo-alt=Y >[36]::rollback if installation failed (Y/N) >[37]::(removes only texh4ht and leaves created TDS tree behind) >[38]set rollback=N >[39]:: >****************************************************************** :: >[40] >[41]if not "%OS%"=="Windows_NT" goto requireNT >[42]for %%G in (xcopy.exe) do if "%%~$PATH:G"=="" goto :noxcopy >[43] >[44]call :help >[45]for %%G in (tex4ht_unzipped_dir newt4ht_unzipped_dir >tex4ht_install_dir) do ( >[46] call :setupdirs %%G >[47] if not defined %%G goto :abort >[48]) >[49]goto %1 :install >[50] >[51]for %%G in (%tex4ht_install_dir%\tex4ht\base\win32\tex4ht.env >%tex4ht_install_dir%\scripts\tex4ht\bat\*.bat) do ( >[52] call %% > nul >[53] REM && move /Y %%G.tmp %%G || goto :copyerror >[54]) >[55] >[56]:install >[57]set "copyopt=/I /S /Y /D" >[58]xcopy.exe %newt4ht_unzipped_dir%\texmf\tex4ht %tex4ht_install_dir% >\tex4ht %copyopt% || goto :copyerror >[59]xcopy.exe %newt4ht_unzipped_dir%\texmf\tex\generic\tex4ht >%tex4ht_install_dir%\tex\generic\tex4ht %copyopt% || goto :copyerror >[60]xcopy.exe %tex4ht_unzipped_dir%\texmf\tex4ht\ht-fonts >%tex4ht_install_dir%\tex4ht\ht-fonts %copyopt% || goto :copyerror >[61]xcopy.exe %tex4ht_unzipped_dir%\bin\win32\*.bat %tex4ht_install_dir >%\scripts\tex4ht\bat %copyopt% || goto :copyerror >[62]echo Search and replace "c:\tex4ht\texmf\" with >"%tex4ht_install_dir%" >[63]for %%G in (%tex4ht_install_dir%tex4ht\base\win32\tex4ht.env >%tex4ht_install_dir%scripts\tex4ht\bat\*.bat) do ( >[64] call :replstr %%G "c:\tex4ht\texmf\" "%tex4ht_install_dir%" >[65]) >[66]if /i "%use_oo-alt%"=="Y" ( >[67] echo Search and replace "oo>" with "oo-bak>" >[68] call :replstr %tex4ht_install_dir%tex4ht\base\win32\tex4ht.env >"oo>" "oo-bak>" >[69] echo Search and replace "oo-alt>" with "oo>" >[70] call :replstr %tex4ht_install_dir%tex4ht\base\win32\tex4ht.env >"oo-alt>" "oo>" >[71]) >[72]echo To finish installation add "%tex4ht_install_dir%" to MiKTeX >roots and refresh FNDB >[73]pause >[74]goto :eof >[75] >[76] >[77]:uninstall >[78]echo Uninstalling TEH4HT... >[79]for %%H in (%tex4ht_install_dir%tex4ht %tex4ht_install_dir%tex >\generic\tex4ht %tex4ht_install_dir%scripts\tex4ht) do ( >[80] if exist "%%~H\" ( >[81] echo Removing "%%~H\" >[82] rmdir /S /Q "%%~H\" >[83] ) >[84]) >[85]echo Uninstallation complete >[86]pause >[87]goto :eof >[88] >[89]:help >[90]findstr "^::-" %~sf0 >[91]goto :eof >[92] >[93]:setupdirs >[94]::let's make sure that dirs are in short format >[95]for /f "tokens=1* delims==" %%H in ('set %1 2^>^&1') do set >"$cratchVar=%%~sfI" >[96]if defined $cratchVar set "$cratchVar=%$cratchVar%\" >[97]if not exist "%$cratchVar%" (set /p $cratchVar=%1=) >[98]if not exist "%$cratchVar%" ( >[99] set "$cratchVar=" >[100] set /p $cratchVar=Specified directory does not exist. Retry? [y/ >n]: >[101] set $cratchVar | findstr /i "=y\>" >nul && goto :setupdirs || >set "$cratchVar=" >[102]) >[103]set %1=%$cratchVar% >[104]goto :eof >[105] >[106]:replstr >[107]setlocal >[108]echo.%1 >[109]for /f "tokens=1* delims=[]" %%K in ('find /n /v "" "%~1"') do ( >[110] set lineNo=0000%%K >[111] set "txtline==%%L" >[112] REM This may break if txtline contains poison characters >[113] REM together with quotation characters >[114] call set "txtline.%%lineNo:~-4%%=%%txtline:%~2=%~3%%" >[115]) >[116]::echo from for command so we don't get screwed by poison >characters >[117]>"%~1" (for /f "tokens=1* delims==" %%K in ('set txtline.') do >echo.%%L) >[118]goto :eof >[119] >[120]:copyerror >[121]>&2 echo There were some errors while copying files. Make sure >that correct installation directories are specified. >[122]>&2 echo Aborting installation. >[123]if /i "%rollback%"=="Y" call :uninstall >[124]pause >[125]exit /b 1 >[126] >[127]:abort >[128]>&2 echo Aborting installation. >[129]pause >[130]exit /b 1 >[131] >[132]:requireNT >[133]>&2 echo This script requires Windows NT based system. Sorry. >[134]pause >[135]exit /b 1 >[136] >[137]:noxcopy >[138]>&2 echo No xcopy command? Aborting installation, please don't >hate me. >[139]pause >[140]exit /b 1 -------------------------------------------------------------------------------------- http://groups.google.com/group/comp.text.tex/browse_thread/thread/cd12489666d4d15f/2662902be1a6b276?lnk=gst&q=tex4ht+2008+pdf#2662902be1a6b276 -------------------------------------------------------------------------------------- comp.text.tex #397221 (0 + 9 more) (1)+-(1) From: Turgut Durduran \-(1)--[1] [1] Re: tex4ht problems Date: Thu Feb 28 17:31:52 EST 2008 Lines: 48 On 2008-02-21, Eitan M Gurari wrote: > >>LaTeX document to either open document format, or to html that I would > >>I am using text4ht from Ubuntu Gutsy Gibbon repositories. Nothing >>customized. >> >>The files I am using are here: >>http://www.stwing.upenn.edu/~durduran/tmp/distr/ > >>The output is broken -- Firefox can't open it with the following error. > > Try upgrading the tex4ht instalation with the files from > > http://www.cse.ohio-state.edu/~gurari/TeX4ht/bugfixes.html > > >>(2) references are listed but appear as: From: Turgut Durduran \-(1)--(1) [1] Re: tex4ht problems Date: Thu Feb 28 17:31:52 EST 2008 Lines: 48 On 2008-02-21, Eitan M Gurari wrote: > >>LaTeX document to either open document format, or to html that I would > >>I am using text4ht from Ubuntu Gutsy Gibbon repositories. Nothing >>customized. >> >>The files I am using are here: >>http://www.stwing.upenn.edu/~durduran/tmp/distr/ > >>The output is broken -- Firefox can't open it with the following error. > > Try upgrading the tex4ht instalation with the files from > > http://www.cse.ohio-state.edu/~gurari/TeX4ht/bugfixes.html > > >>(2) references are listed but appear as: ``ø:mbox:1,ø:mbox:2'' instead of >>supersciprt 1,2 etc. > > I modified the bugfixes distribution to take care of the problem along the > approach suggested by Dan (thanks Dan!). > > -eitan > I thank Dan and Eitan for their help. Eitan, under the instructions for an ``upgrade'' (which I assume bugfixes should be applied as such?), it says: ``[Invocation Scripts] Find where htlatex resides (e.g., \u2018which htlatex\u2019). Save the files htlatex, httex, httexi, and htcontext elsewhere and get new scripts from bin/linux/ for a replacement.'' but there is no such thing in http://www.cse.ohio-state.edu/~gurari/TeX4ht/fix/tex4ht-1.0.2008_02_26_0908.tar.gz should it read as bin/unix instead? (I tried that, seems fine) I am checking if this fixed my problem yet. -------------------------------------------------------------------------------------- ---- ---------------------- -------------------------------------------------- From: Richard Koch Sender: macosx-tex-bounces@email.esm.psu.edu To: emalito@uchicago.edu, TeX on Mac OS X Mailing List Cc: Subject: Re: [OS X TeX] convert .tex file to .html Date: Sat, 17 Nov 2007 19:25:47 -0800 Enrico, What TeX distribution are you using? If it is TeX Live or gwTeX, then TeX4ht should be already installed in the distribution. The latest version of TeXShop has an "engine" file for \ this program. It is in ~/Library/TeXShop/Engines/Inactive If you don't find it there, but have TeXShop 2.14, then move the entire folder ~/Library/TeXShop/Engines to your desktop. The next time TeXShop starts, it will create the default folder, which will include a TeX4ht folder and htlatex.engine. To use it, move htlatex.engine from the inactive folder to ~/Library/TeXShop/Engines. To use this program, enter standard latex source in the Source Window. In the pulldown menu next to the Typeset button, select htlatex. When you push the Typeset button, your latex source will be typeset and then converted to an html file, and this html file will open in Safari. You can make this happen automatically (without selecting htlatex) by entering %!TEX TS-program = htlatex near the top of your source file. Dick Koch koch@math.uoregon.edu ==================== From: Thomas Rike Sender: macosx-tex-bounces@email.esm.psu.edu To: emalito@uchicago.edu, TeX on Mac OS X Mailing List Cc: Subject: Re: [OS X TeX] convert .tex file to .html Date: Sat, 17 Nov 2007 19:37:15 -0800 Enrico, I am no expert, but on the command line I first change my directory to the directory containing the latex file (Just drag and drop the folder works fine). Then type htlatex nameofyourfile.tex For graphics I think you will need ghostscript and Imagic which I got with the i-Intaller. If you are not working on the command line then a very effective gui is SimpleTeX4ht (version 1.8). Just download, install and run. Select the button ``Convert'' and you can browse your computer for the file you want to convert to html. http://www.apple.com/downloads/macosx/unix_open_source/simpletex4ht.html HTH, Tom Rike -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- http://www.sun.com/software/star/odf_plugin/ -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- > > The problem was in missing hypertext fonts, as indicated by the > I think that's only one of two errors. Tex4ht should produce valid mml > files even if the .htf files are missing, as TeX allows users to define > their own fonts. Unknown Characters could be replaced by a square or a > question mark as it is used in other contexts. I believe it will be a wrong approach, as users might get improper content and in some cases are unlikely to notice it. Moreover, the philosophy of OpenOffice, and of quite a few advocates of XML, is to maintain zero tolerance for errors. So not allowing improper data is consistent with that philosophy. The squares or question marks OpenOffice and other browsers display are not due to errors in the exhibited files. They point to missing fonts in the platforms on which the browsers run. A solution to a missing font problem should not be that difficult to achieve by replacing fonts. For instance dvi2dvi seems to be a utility designed for that purpose (http://packages.debian.org/sid/dvi2dvi). Technically, it probably will be easy to add an option for tex4ht to output, say, a question mark where characters are missing. In case you strongly like to have such an option, I'll provide it. -eitan -------------------------------------------------------------------------------------- biblatex -------------------------------------------------------------------------------------- FWIW, I mirror Eitan's web pages (and distributions) at ftp://tug.org/mirror/www.cse.ohio-state.edu/~gurari/TeX4ht. Maybe CTAN could easily mirror that and hence be up to date? In particular, the file ftp://tug.org/mirror/www.cse.ohio-state.edu/~gurari/TeX4ht/fix/tex4ht.tar.gz is the latest bug fix release, I believe. -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- MacTeX installs the full TeX Live 2007, with virtually no changes. Indeed, you can go to http://www.tug.org/mactex/whatgetsinstalledwhere.html to see exactly how we configure TeX Live. -------------------------------------------------------------------------------------- I've done this with MetaPost graphics. The first step is to get yourself a PDF output as you suggested in (b). I've tried various techniques, but I've decided for myself that this is the "best" solution (quality wise). You'll need the following tools: 1) pstoedit --> http://www.pstoedit.net/pstoedit 2) skencil --> http://www.skencil.org 3) inkscape --> http://www.inkscape.org In Gentoo Linux I needed Skencil in order for Inkscape to have SKencil/ SKetch support; however, pstoedit and Inkscape are the only two utilities *directly* used. If your version of Inkscape has SK support without installing SKencil, then that's good. Let's assume your PDF is foo.pdf. Then do the following: pstoedit -page 1 -rgb -dt -psarg "-r9600x9600" -f sk foo.pdf foo.sk This will produce a SKencil/SKetch format of page 1 of your document. -rgb uses RGB colors and -dt tells pstoedit to trace your fonts. This tracing gives a larger filesize, but it ensures that your output text looks exactly like your text in your PDF. The -psarg "-r9600x9600" tells GhostScript to process stuff at 9600dpi. Note that pstoedit can export to SVG directly, but I've found that the results aren't as good as going through SK and using Inkscape to convert the SK to SVG. After you get foo.sk, you can then do inkscape -z -f foo.sk -l foo.svg Hopefully this will be to the quality and filesize that you want. -------------------------------------------------------------------------------------- http://ooolatex.sourceforge.net/ -------------------------------------------------------------------------------------- To: =?iso-8859-2?B?QmFyYm9yYSBIYXbt+G924Q==?= Subject: TeX4ht for LaTeX to DocBook In-Reply-To: <000701c73441$e95d8f90$7601a8c0@barbora> References: <000701c73441$e95d8f90$7601a8c0@barbora> X-Mailer: VM 7.04 under 21.1 (patch 14) ``Cuyahoga Valley'' XEmacs Lucid --text follows this line-- Hi Barbora, Would the following (unsafe) configuration do the job for you. \newtoks\toks \Configure{$}{}{}{\getMath} \def\getMath#1${\relax$\fi \expandafter\toks\expandafter{\gobble#1}% \HCode{\the\toks}} \def\gobble#1{} -eitan > I need to let all the mathematics as it is and only wrap > it in . > > I.e. $\sqrt{a^b}$ will be \sqrt{a^b} > > Is it possible? > > I am able to wrap it with > > \Preamble{xhtml} > \begin{document} > \Configure{$}{\HCode{}}{\HCode{}}{} > \EndPreamble > > in my configuration file, but I don't know how to forbid processing of the > math code. Barbora, Another (unsafe) option: \newtoks\toks \Configure{$}{}{}{\getMath} \def\getMath#1${\relax$\fi \expandafter\toks\expandafter{\gobble#1}% \HCode{}% \bgroup \noindent \Configure{HtmlPar}{}{}{}{} \ConfigureEnv{verbatim}{}{}{}{} \immediate\openout15=tempmatheq.tex \immediate\write15{\string\begin{verbatim}\the\toks \string\end{verbatim}}% \immediate\closeout15 \input tempmatheq.tex \noindent \egroup \HCode{}} \def\gobble#1{} -eitan > I found a problem, because the symbols < and > > can't be in the mathematic text as they are used for tags. I hope that > changing it into < and &rt; will help. Barbora, Try the following variant. -eitan \newtoks\toks \Configure{$}{}{}{\getMath} \def\getMath#1${\relax$\fi \expandafter\toks\expandafter{\gobble#1}% \HCode{}% \bgroup \noindent \Configure{HtmlPar}{}{}{}{} \ConfigureEnv{verbatim}{}{}{}{} \Configure{verbatim}{ }{ } \immediate\openout15=tempmatheq.tex \immediate\write15{\string\begin{verbatim}\the\toks \string\end{verbatim}}% \immediate\closeout15 \input tempmatheq.tex \noindent \egroup \HCode{}} \def\gobble#1{} > It works. But when there is a space in math, it is replaced by   -------------------------------------------------------------------------------------- http://www.alanwood.net/unicode/ Alan Wood’s Unicode Resources Unicode and Multilingual Support in HTML, Fonts, Web Browsers and Other Applications -------------------------------------------------------------------------------------- > > How about a command similar to the following one? > > > > t4ht try -d'~/WWW/temp/foo\ foo/' > > > > To get to that requires changing the htlatex script to quote the > argument to t4ht. I don't think we can go for htlatex modifications, as the outcome might also depend on the operating system in use. In any case, I modified t4ht.c to allow for FULLY quoted arguments such as t4ht try '-d~/WWW/temp/foo\ foo/' t4ht try "-d~/WWW/temp/foo foo/" and in the case of htlatex htlatex file " " ``'-d~/WWW/temp/foo foo/''' -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- >Ok. I think I can fix my problem editing the tex4ht.env file. >I can read in the file /usr/share/doc/tex4ht/README.Debian >that TeX4ht can use three different way to convert images: > >DEFAULT: with dvipng. I think I'm using it right now. >UPSTREAM: using ImageMagick suite, so using ``convert'' >NETPBM: with the netpbm suite. Never heard before. > >One of them is active, the other scripts are commented >(how? with spaces?) My guess the relevant parts in the Debian environment file have the following outline. G.png Gdvips ... Ggs ... G.svg Gdvips ... Gpstoedit ... G. Gdvips ... Gconvert ... ....... G.png Gdvipng ... G.gif Gdvipng ... G. Gdvips ... Gconvert ... The dvipng segment is the active one as its enclosing tags are commented out, with spaces before the opening tag and the closing tag . The dvipng segment consists of three parts: * A G.png and a G.gif parts invoking the dvipng utility to satisfy requests for png and gif bitmaps * A G. part invoking dvips+convert to handle requests for other formats of bitmaps Spaces before the records of the first two parts will comment out the dvipng subscripts, and forward all the requests to the subscript in the third part. Alternatively, remove the spaces before the and tags to deactivate the script they enclose, and place spaces before the and tags to activate the enclosed script. >In which language is written the tex4ht.env file? Python? Perl? >Can somebody show me how to edit the tex4ht.env file? The file cosists of a specially designed script to be interpreted by the tex4ht utilities. The tex4ht.env entry in the index of http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html offers some clues to its content. Modifications to the file can be done with editors capable of working with plain text. -eitan -------------------------------------------------------------------------------------- OS-X: (/usr/local/teTeX/share/texmf.local/tex4ht/base/tex4ht.env) (/usr/local/teTeX/share/texmf.tetex/fonts/tfm/public/cm/cmr10.tfm) --- warning --- Couldn't find font `cmr10.htf' (char codes: 0--127) Can you show me the messages issued  for     tex4ht  -hF -hv  test That gave me a bit more to work with, I added  TEX4HTFONTSET=alias,iso8859   TEX4HTINPUTS=.;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}//   T4HTINPUTS=.;$TEXMF/tex4ht/base//   tex4ht.c (2006-07-14-10:23 kpathsea) tex4ht -hF   -hv   test (/usr/local/teTeX/share/texmf.local/tex4ht/base/tex4ht.env) given TEX4HTFONTSET = alias,iso8859 setting TEX4HTFONTSET={iso8859/1,ascii,alias,mozilla,unicode,alias,iso8859} texmf.cnf = /usr/local/teTeX/texmf.cnf TEX4HTINPUTS = .:{/Users/kai/Library/texmf,!!/usr/local/teTeX/share/texmf.local,!!/usr/local/teTeX/share/te\ xmf.gwtex,!!/usr/local/teTeX/share/texmf.tetex,!!/usr/local/teTeX/share/texmf}/tex4ht/base//\ :{/Users/kai/Library/texmf,!!/usr/local/teTeX/share/texmf.local,!!/usr/local/teTeX/share/tex\ mf.gwtex,!!/usr/local/teTeX/share/texmf.tetex,!!/usr/local/teTeX/share/texmf}/tex4ht/ht-font\ s/{iso8859/1,ascii,alias,mozilla,unicode,alias,iso8859}// (/usr/local/teTeX/share/texmf.local/tex4ht/ht-fonts/iso8859/1/charset/unicode.4hf) -------------------------------------------------------------------------------------- > I downloaded the recent release tex4ht-1.0.2006_07_23_0130, but where > can I find the documentation for installing it? I should wrie such instructions... The idea is just to replace the old files/directories with the new ones: bin/ht/perl/mk4ht.perl bin/ht/unix/ht* bin/mac/* texmf/* and refresh lR-s, e.g., with the texhash command. -------------------------------------------------------------------------------------- The problem has vanished. It might be connected with the update of tetex-bin that I just made on the sid box. -------------------------------------------------------------------------------------- a side note: recently I released TeXML 2.0 beta1. I expect no issues, and I'm going to announce TeXML 2.0 in the middle of July. The new TeXML site is: http://getfo.org/texml/ . conrad.ammon@gmail.com wrote: > Has anyone taken a look at using XSL to give needed functionality to > TeXML? > > TeXML on the level of TeX... on its own its not too useful. However, > XSL was specifically designed for doing markup, similar to the macros > of LaTeX. Is there a good set of XSL scripts that anyone has written? There are a lot of them, but they are private. The only public script I'm aware of is XML2TeXML by Wolfgang Jeltsch (http://xml2texml.sourceforge.net/ ). And I'm starting working on a DocBook to TeXML converter in the near future. -------------------------------------------------------------------------------------- To: gurari.1@osu.edu Cc: Barbara Beeton , Anna Hattoy Subject: documentation for dratex (fwd) Date: Fri, 02 Jun 2006 10:26:22 -0400 (EDT) hi, eitan, when i tried to send this message to you, using the e-mail address i got from the tug office, it was returned. i found the address i'm using now by searching the osu.edu web site. it seems that the university has made your previous incarnation unreachable in a lot of places ... -- bb ---------- Forwarded message ---------- Date: Fri, 2 Jun 2006 10:20:23 -0400 (EDT) From: Barbara Beeton To: gurari@cis.ohio-state.edu Cc: Barbara Beeton , Anna Hattoy Subject: documentation for dratex hello, eitan, we've received a manuscript for publication in one of our journals that calls for \usepackage{DraTex}. before we can decide whether this should be installed here for production, we need to look at the documentation. but the documentation isn't at ctan -- the readme file says that it can be found at http://www.cis.ohio-state.edu/~gurari/systems.html an attempt to reach that url results in www.cis.ohio-state.edu cannot be found. please check the name and try again. what is the current location, please? and please update the readme file for this and any other material at ctan that has this reference. thanks. -------------------------------------------------------------------------------------- mk4ht xhlatex convtest "html,jsmath" How about trying the `jslatex' option. It doesn't preserve the original latex math. Instead, it produces html with normalized latex math. -eitan > Thanks for the tip, I had already tried something like that, but Word > doesn't like it. Also, going through OpenDocument doesn't quite get the > formulae right.. > > I am now trying to edit the mathml configuration so that it pastes the > LaTeX -------------------------------------------------------------------------------------- > > There is an option to send output files (.html,.css,.png) files to > > a directory other than the current directory. For example > > > > htlatex sample2e "" "" "-d~/home_page/test" > > > > will send the output files to ~/home_page/test. > Well, it would be nice if the temporary directory was automatically > created if it doesn't exist. But what I'd appreciate even more is if it > would (or is?) possible to permanently set the -d switch, so that I > don't need to type it every time. That can be done by adding in the htlatex-like script files the -d switch to the t4ht records, e.g., t4ht ... -d~/WWW/temp/ Similarly, within mk4ht add the -d switch to the trailing quoted "..." segments, e.g., "ht", "htlatex", "latex", "", "", "-cvalidatehtml -d~/WWW/temp/", It doesn't seem appropriate to introduce such a switch permanently as different users might prefer different directories for their output. I have the switch -d~/WWW/temp/ set in my private scripts. I insert the switch -d./ in the command line, when I want to overwrite that switch to have the outcome stay in the work directory. > I've read the documentation about configuration files, but it seems this > only relates to (La)TeX code, not to a configuration file for > mk4ht/htlatex/... Did I miss something? Try the command `t4ht' without arguments. It will show the available options. I'll modify the documentation to deal with issue. -------------------------------------------------------------------------------------- gs -sDEVICE=png256 -sOutputFile=figure1.png -dEPSCrop -r600 -dBATCH -dNOPAUSE figure1.eps -------------------------------------------------------------------------------------- > As far as I saw, the pictures inserted in the OO document, have normally > a size of appr. 1cm without recognizing the original ratio. Is it > possible to recognize either the size or the ratio (then resizing is > very simple) for pictures ? I normally use \includegraphics, most of the > time with the option [width=1.0\textwidth] to insert my pictures. If it > helps I could send you a sample file. TeX4ht specifies sizes only for bounding boxes, when it gets them from latex. I don't know how to provide sizes in general, as dimensions for paper output quite often result in distorted dimensions within XML presentations. I don't understand why OpenOffice uses 1cm dimensions for figures that are offered without requested dimensions---I would expect the natural sizes of the figures to be preferable. > You're right. The converted pictures are all in a good size. If I click > in OO on one picture and change it to -------------------------------------------------------------------------------------- comp.text.tex #353104 (0 + 4 more) [1] Date: Thu Mar 23 18:29:21 EST 2006 From: USENET-news [1] latex2html and wiki Lines: 19 Hello Texnicians, I have found that wiki is a great way to publish a doc so that the other developers can collaborate on it, but I prefer to start that document in LaTeX initially. So I used latex2html to convert it to HTML and used copy-n-paste to copy from the HTML to a WIKI page. This gave me a document that the other developers (who are not TeX aware) can work with. But this was rather tedious to do. I have seen several attempts to write latex2wiki but they all seem quite poor. It occurs to me that it might be better to take latex2html and add a mode that would allow WIKI output as an option. What do you guys think? Does this sound reasonable? Is latex2html still supported/maintained/developed? Regards, Andrew Marlow > Most probably it is well-defined. Most probably he assumes some > particular wiki engine with some fixed wikitext syntax. Yes, I assume mediaWiki. -------------------------------------------------------------------------------------- > >The problem is in missing fonts for the browser to display > >the characters 〈 and 〉. > > These characters, and a bunch of others from what we can see here > are sortof at the ragged edge of font world as far as default browsers > are concerned. We have the default installs of IE6 and Firefox 1.5 > loaded here, to emulate what we would expect the average user to use. > >From what we can see here, these characters do not come loaded by default > with > the ability to render these characters... Or are off base here somehow? Look at the messages issued by tex4ht.c for the location of the active unicode.4hf file. Copy that file to your work directory. You can redefine any character to your liking. For instance, an entry '〈' '' 'foo' '' will substitute the character 〈 with `foo' everywhere. On the other hand, an entry asks for a pictorial substitution where allowed and `foo' where pictures are not allowed. '〈' '' 'foo' '1' -eitan -------------------------------------------------------------------------------------- http://www.simpletex4ht.free.fr/ -------------------------------------------------------------------------------------- http://fedoraproject.org/extras/4/i386/repodata/repoview/__nogroup__.group.html -------------------------------------------------------------------------------------- #help www-math@w3.org archives W3C home > Mailing lists > Public > www-math@w3.org > January 2006 Re: mathml applications * This message: [ Message body ] [ Respond ] [ More options ] * Related messages: [ Previous message ] [ In reply to ] From: Bruce Miller Date: Mon, 09 Jan 2006 10:54:41 -0500 Message-ID: <43C28741.8000906@nist.gov> To: Neil Soiffer CC: Public MathML mailing list Neil Soiffer wrote: > This week, I will be giving an update to a talk I gave last year about > MathML applications. If anyone has some new applications not listed on > http://www.w3.org/Math/Software/ or if you have an update to info listed > there, please send that info so I can incorporate it into the talk. There's my LaTeXML, which I've been meaning to submit to the software list, once I get a breath. See http://dlmf.nist.gov/LaTeXML/ for description, documentation and a (somewhat out-of-date) example from DLMF. A brief description (and apologies, in advance, for beating my own drum): LaTeXML attempts to mimic TeX's behaviour as fully as possible, but interprets TeX via a Perl program, rather than using TeX's engine itself. Thus extension and customization can be done using perl modules, as well as TeX code. It processes whole documents (although it can be induced to process fragments, such as formula), converting the document to a LaTeXML DocType that corresponds to LaTeX's constructs. This avoids the information lost by direct conversion to html. This output can then be converted to html (w/images for math), xhtml (w/MathML) or other formats using XSL stylesheets (included for html/xhtml). [In principle, but not practically, it could also be made to directly generate other XML formats: Ie. the processing engine is (almost) separated from the document generation. However, since the vocabularies are so large it's nontrivial to replace the generation definitions.] As for MathML: the program attempts to parse the formula into, at least, a parse tree. This is necessary to generate "Good" presentation MathML. It is close to enough to generate content MathML, as well, although some major sticking points and ambiguities, such as the meaning of superscripts and the handling of unknown symbols, are the subject of further development. To increase the quality of the parsing, an author can either use special markup to disambiguate the notations, or use document-specific external declarations. > The audience will likely have a strong TeX background. If you have had > any experience (pro or con) with the various TeX-to-XHTML+MathML > converters in the last year, I'd like to hear about that so I can pass > it along. I've been using it pretty heavily in the DLMF (Digital Library of Mathematical Functions) project. I've processed 26 chapters (must be equivalent to 6-700 pages) so far; we're preparing a draft of the site for evaluation (alas, the editors are keeping it close to the chest, however). So, I'd have to say my experience is positive :> Michael Kohlhase has also been using LaTeXML in developing his STeX system. > Thanks, > > Neil Soiffer > Senior Scientist > Design Science, Inc. > www.dessci.com > ~ Makers of Equation Editor, MathType, MathPlayer and MathFlow ~ -- bruce.miller@nist.gov http://math.nist.gov/~BMiller/ Received on Monday, 9 January 2006 15:54:31 GMT * This message: [ Message body ] * Previous message: Paul Libbrecht: "Re: mathml applications" * In reply to: Neil Soiffer: "mathml applications" * Mail actions: [ respond to this message ] [ mail a new topic ] * Contemporary messages sorted: [ by date ] [ by thread ] [ by subject ] [ by author ] * Help: [ How to use the archives ] [ Search in the archives ] This archive was generated by hypermail 2.2.0+W3C0.50 : Monday, 9 January 2006 15:54:32 GMT -------------------------------------------------------------------------------------- http://www.activemath.org/amwiki/index.php/Conversion-efforts-to-content-math -------------------------------------------------------------------------------------- omp.text.tex #347601 (0 + 2 more) (1)--[1] From: Troy Henderson [1] Re: eps to svg Lines: 15 Date: Sun Jan 01 12:59:14 EST 2006 Convert it to PDF using, say, epstopdf. After that, use my pdf2svg converter located at http://www.tlhiv.org/MetaPost/tools/mptosvg/ If you have any trouble, let me know. Troy Henderson Assistant Professor Department of Mathematical Sciences 252 Thayer Hall United States Military Academy West Point, NY 10996 (845) 938-5649 http://www.tlhiv.org -------------------------------------------------------------------------------------- Clarify: 9. \Configure{CutAt} {unit} {before-button} {after-button} 10. \Configure{+CutAt} {unit} {before-button} {after-button} -------------------------------------------------------------------------------------- One more request. Would be so kind as to generate the SINGLE page HTML from http://www.cse.ohio-state.edu/~gurari/TeX4ht/ It will make searching much easier. Simple `find' it will suffice. Currently I keep all the pages on my hard disk and use grep instead. From: Wlodek Bzyl To: Eitan Gurari Subject: Re: TeX4ht: SVG: Wrong walue of the TYPE attribute in the generated OBJECT tag Date: Mon, 24 Oct 2005 21:45:42 +0200 -------------------------------------------------------------------------------------- One suggestion though is, that you make it more obvious that one should really study the .log file. (I normally don't do this.) I have seen that you have put somewhere a hint to the mktex4ht.4ht index, but I cannot remember that I have seen that index on your website. That would be very much welcome. In fact, but the sources as html online. Then one could more easily refer to it. -------------------------------------------------------------------------------------- The (behind the scenes) process of converting the PDF to SVG above uses the following three external programs: 1. pstoedit to convert the PDF to SKencil/SKetch format 2. skconvert to convert the SKencil/SKetch file to SVG 3. gzip to compress the SVG The actual commands that are executed are: * pstoedit -page 1 -dt -psarg http://www.nongnu.org/skencil/ -------------------------------------------------------------------------------------- > http://baruch.ev-en.org/proj/chktex/ -------------------------------------------------------------------------------------- http://www.dcs.fmph.uniba.sk/~emt/ There is absolutely no reason why this should be, given that an excellent implementation of direct one-click real-time lossless translation of TeX math to SGML and back again has existed for a decade (in the EuroMath editor). -------------------------------------------------------------------------------------- From: Herbert Schulz Sender: To: "TeX on Mac OS X Mailing List" Subject: Re: [OS X TeX] TeX to word on Mac Date: Sun, 26 Jun 2005 09:04:44 -0500 On Jun 25, 2005, at 11:49 PM, George Ghio wrote: > > Open terminal and type; > > Welcome to Darwin! > George-Ghios-Computer:~ georgeghio$ cd /Users/georgeghio/Desktop/TeX > > Hit return & type > > George-Ghios-Computer:~/Desktop/TeX georgeghio$ htlatex /Users/ > georgeghio/Desktop/TeX/TheFlight.tex > > Hit return I then get the html file, > > I then open the html file with Explorer, > > Select all, > > Copy, > > Paste into word. > > If I try to open the html file with word MS does what it does best > and crashes. > > Oh well, it works and I end up with a word document. > > Thank you and everyone else for taking the time to keep me from > becoming a basket case. > > George L Ghio > Howdy, Now that you know how to do it in terminal, here's a way to do it from within TeXShop. Go to the ~/Library/TeXShop/Engines/ folder (~ is your HOME directory) and duplicate one of the .engine files there. Rename it htlatex.engine and open it up (double clicking will open it up in TeXShop). Remove the contents of the file and put the following lines into that file: #!/bin/bash htlatex "$1" and save the file (again in ~/Library/TeXShop/engines and with the name htlatex.engine). At the beginning of any .tex file you want to be processed with htlatex put the line %!TEX TS-program = htlatex and then process the file with Cmd-T (Typeset). As an alternative you can simply choose the htlatex engine in the dropdown menu in the toolbar. Good Luck, Herb Schulz (herbs@wideopenwest.com) --------------------- Info --------------------- Mac-TeX Website: http://www.esm.psu.edu/mac-tex/ & FAQ: http://latex.yauh.de/faq/ TeX FAQ: http://www.tex.ac.uk/faq List Post: -------------------------------------------------------------------------------------- SVG : ==> pstoedit : I tried pstoedit -f svg-plot file.eps file.svg, but that did not work well. The greek letters were omitted and the non-greek letter did overlap. ==> Inkscape (http://www.inkscape.org/download.php) ==> TLC2 mentiones dvi2svg , pstoedit and an article in TUGboat: Michel Goossens and Vesa Sivunen LaTeX, SVG, Fonts TUGboat 22(4) 269-279, 2001 http://www.tug.org/TUGboat/Articles/tb22-4/tb72goos.pdf ==> http://dvisvg.sourceforge.net/ ----------------------------------------------------------------------------------- --- gcc -Wall -o tex4ht tex4ht.c -I/usr/local/teTeX/include -L/usr/local/teTeX/lib -DKPATHSEA -DHAVE_DIRENT_H -DHAVE_STRING_H -lkpathsea su rm -R /usr/local/teTeX/share/texmf.local/tex4ht/ht-fonts mv -R /Users/eitangurari/Desktop/downloads/ht-fonts /usr/local/teTeX/share/texmf.local/tex4ht/. mv /Users/eitangurari/Desktop/downloads/newt4ht/bin/mac/tex4ht /usr/local/teTeX/bin/powerpc-apple-darwin-current/. cp /Users/eitangurari/Desktop/downloads/newt4ht/texmf/tex4ht/base/unix/tex4ht.env /usr/local/teTeX/share/texmf.local/tex4ht/base/. texhash exit -------------------------------------------------------------------------------------- Use latex (with preview.sty) and dvipng. dvipng will even output the ascender and descender values so that inline math can be displayed with correct vertical positioning. -------------------------------------------------------------------------------------- add the outcome of javahelp -------------------------------------------------------------------------------------- WordML2LaTeX is a meeting point between two titans in word processing: Microsoft Word 2003 and LaTeX2e. It is a XSL stylesheet that transforms a Word document (WordML) in a LaTeX2e source. With it You can use Word as a front end for LaTeX. Location on CTAN: /support/WordML2LaTeX -------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- On mac OS X: %% t4ht utility, sharing files with TeX4ht TEX4HTFONTSET=alias,iso8859 TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// T4HTINPUTS= .;$TEXMF/tex4ht/base// -------------------------------------------------------------------------------------- Using fonts of (La)TeX in stylesheets of WWW-pages Date: Wed Aug 25 06:42:40 EDT 2004 Lines: 20 Yes! It is possible: http://iki.fi/juhtolv/pelle.html http://iki.fi/juhtolv/css-download/ http://iki.fi/juhtolv/css-download/readme.txt You'd better use Mozilla, Mozilla Firefox, Galeon, Konqueror or Opera, because they support alternative stylesheets and MSIE don't. I'd like to support cm-super, too, but it is fscking huge package and it is real pain in the ass to find right font from those gazillion files, because they have almost meaningless fontnames. -------------------------------------------------------------------------------------- m-tex4ht.tex -------------------------------------------------------------------------------------- MS: > run > > htlatex analysis.tex >printout.txt 2>&1 > > to get both output and stderr to file > -------------------------------------------------------------------------------------- To: Maarten Wisse Subject: Gentoo ebuild, or, Pay my debt :-) In-Reply-To: <200404232220.49246.Maarten.Wisse@urz.uni-heidelberg.de> References: <200404232220.49246.Maarten.Wisse@urz.uni-heidelberg.de> X-Mailer: VM 7.04 under 21.1 (patch 14) ``Cuyahoga Valley'' XEmacs Lucid --text follows this line-- Maarten, You owe me nothing! It is a pleasure for me to work with you, and that is more than enough for me. The pointer regarding Gentoo might become useful to me. I hope to find a few days in the coming months to set up a server running Linux and I was wondering which distribution to use. So from your experience Gentoo seems to be a good choice. I placed in the bug fixes page a pointer to the zipped file renamed to tex4ht-20040211.zip, and will fix the name in the main page next year when I'll revise the home page. Thanks, -eitan > Given that you so gratiously helped me, I asked myself how I could do > something back and also, to help others with this great tool, especially > those who use my favourite Linux distribution, Gentoo Linux, you probably > know, the distro which is entirely managed from source with the intelligent > Portage system. I like it very much wont switch to another distro so easily > as I did with RedHat or SuSE. But, this is still a matter of fact: > > http://bugs.gentoo.org/show_bug.cgi?id=33259 > > no ebuild, so no automated install of TeX4ht is available yet. > > I'm not a very able ebuild writer, but it shouldn't be difficult to get this\ > going. However, one thing which immediately came to my mind: you don't > release the source distribution of TeX4ht with a name indicating its version\ . > That's inconvenient for Gentoo, because ideally it spreads the files on top > of the original source location, so it uses its mirror system and when that > doesn't contain the file, it falls back to the root source location. When > that location just contains `tex4ht.zip' then Gentoo has no way to know whic\ h > version that is. So could you rename it to: tex4ht-20040211.zip or the like?\ > Then I can make an ebuild tex4ht-20040211.ebuild which then automatically > downloads that version. When an upgrade appears, we check the ebuild, bump > the version number and it uses that one. So we can cater for stable and > unstable ebuilds too. > > PS: as an expression of debt, I mentioned your name in the news item on our > website, called `New in volume 4'. You deserve it. -------------------------------------------------------------------------------------- comp.text.tex #305453 (0 + 13 more) [1] From: Torsten Bronger Newsgroups: comp.text.xml,comp.text.tex [1] [ANN] tbook 1.5.2 Date: Sat Apr 17 12:56:34 EDT 2004 Lines: 43 Halloechen! tbook 1.5.2 is available for download at http://sourceforge.net/projects/tbookdtd/ Its homepage with documentation and a demo is available at http://tbookdtd.sourceforge.net/ Version 1.5.2 is a major bugfix release by and large. New features: * Full XHTML compliance if you want (however with MathML you don't want it ;) * New
und elements in the DTD with tha same meaning as in DocBook and HTML. * Many additionally supported Unicode symbols. From the Sourceforge summary: tbook is a system that typesets XML documents with high-level LaTeX while HTML, XHTML+MathML and DocBook output are equally possible. It bases on the LaTeX-like tbook DTD developed for this project, XSLT transformations and further tools. All transformations work with bibliography, index, formulae, and graphics. Therefore the transformation processes include some complex tasks (e.g. generating of bitmaps for all formulae) which are greatly simplified by shell scripts that are automatically generated. The LaTeX output is also suitable for pdfLaTeX and uses its features. For equations, you may use an almost-LaTeX syntax; except for complex cases, you don't have to type MathML directly. (Instead, it is transformed to that eventually.) Tschoe, Torsten. ------------------------------------------------------------------------------------- http://freshmeat.net/projects/flpsed/ -------------------------------------------------------------------------------------- Wlodek, I suspect the problem is in the tex4ht.env within a segment similar to the following one that takes precedence over the values in the variables of texmf.cnf i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/1/! i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! i~/tex4ht.dir/texmf/tex4ht/ht-fonts/mozilla/! i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! Try removing the i-records or modifying their content. -eitan > When compiling a simple (iso8859-2 encoded) LaTeX file which uses > the Polish Computer Modern family of fonts (pl*.tfm fonts), the > tex4ht program searches and uses htf fonts (plr.htf) from > iso8859/1 subdirectory instead from iso8859/2. > > I am using tex4ht under Linux with kpathsea support > and texmf.cnf which contains: > > TEX4HTFONTSET=iso8859/2,iso8859/1,alias > TEX4HTINPUTS=.,$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// > > Below I include the output of tex4ht executed with -hF option: > > -------------------------------------------- > tex4ht.c (2004-02-05-19:30 kpathsea) > tex4ht -f/01 > -hF > (tex4ht.env) > given TEX4HTFONTSET = iso8859/2,iso8859/1,alias > setting TEX4HTFONTSET={iso8859/2,iso8859/1,alias} > TEX4HTINPUTS = > .,{texmf,../texmf,/home/hold/texmf,!!/usr/local/texmf-local,!!/usr/local/texmf-var,!!/usr/local/texmf}/tex4ht/ht-fonts/{iso8859/2,iso8859/1,alias}// > (/usr/local/texmf/fonts/tfm/public/pl/plsy10.tfm) > (/usr/local/texmf-local/tex4ht/ht-fonts/alias/pl/plsy.htf) .... ------------------------------------------- By the way, it would be > convenient to have all TeX4ht documentation formated entirely > as _one_ web page. (I have no idea if I had read 10% or 90% available > documentation.) ------------------------------------------- http://www.tmit.ac.jp/~esl/soft/t4hc-intro.html Two-steps picture conversion The default bitmap generation script for Unix-like environment is three-step procedure calling dvips, ghostscript, and ImageMagick sequentially. But the author prefers to two-step procedure calling dvipdf and ImageMagick, which is written as follows: Ghtcopyfile %%1 _t4hcache.dvi Gdvipdfm -s %%2-%%2 _t4hcache Gc:/progra~1/picturem~1.8-q/convert.exe pdf:_t4hcache.pdf -crop 0x0 +repage -density 220x220 -geometry 50% -transparent '#FFFFFF' %%3 Ghterasefile _t4hcache.dvi Ghterasefile _t4hcache.pdf Most of recent Web2C systems such as Kakuto's win32 package contain dvipdf (with the filename dvipdfm), and resultant PDF file is properly processed by ImageMagick. ------------------------------------------- ------------------------------------------- ------------------------------------------- ------------------------------------------- ------------------------------------------- ------------------------------------------- As of (at least) miktex 2.4, miktex will automatically install tex4ht. The problem is, as best I can see, it does not do the fairly extensive editing of the batch files (and tex4ht.env) needed to tell tex4ht where the various files are. I've just added a note to my instructions recommending that miktex users uninstall miktex's version and use mine instead. I just want to arert you to what can happen: if users don't do this, then the locations pointed to by eg the -e switch in the batch files, though it may *look* correct, in fact point to the wrong locations. So if you get a request for help from a miktex user, this is the first thing you should probably have them check. ------------------------------------------- Mention the dates of the files, simlarly to the eay it is done in the bug fixes page. ------------------------------------------- http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=tex4ht ------------------------------------------- http://www.perce.de/LaTeX/math/Mathmode-TeX.pdf http://www.ntg.nl/doc/wilkins/pllong.pdf http://sarovar.org/download.php/120/ltxprimer-1.0.pdf http://www.tug.org/utilities/plain/cseq.html http://www.tug.org.in/tutorials.html ------------------------------------------- support/TeX4ht/tex4ht-mn.zip > > which is probably what eitan was talking about. I thought, this was only the manual. ``mn'' seems to mean ``manual''?AFAICS, it is used in this meaning in the names of the HTML files in the archive. Strange that the actual TeX4ht ZIP archive is included as a file in the mn archive. tex4ht-all in CTAN!!!! ------------------------------------------- http://http.cs.berkeley.edu/~phelps/Multivalent/ ------------------------------------------- > there's also a tex4ht distribution embedded in the texlive > distribution. the difference from eitan's original is it's tailored > to work with the kpathsea libraries; i'm investigating that as a route > to a working linux version. (i'll probably end up by installing the > whole of texlive, but i don't want to rush it since there's quite a > bit of configuration gone into the tetex setup i currently give my > users.) I think for kpathsea the main differences are that the compilation of the C programs require a special switch: http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html => Unix => (c) => alternative and variable settings similar to the following ones in texmf.cnf TEX4HTINPUTS=.;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// TEX4HTFONTSET=iso8859/1,alias ------------------------------------------- OK, but how about putting a readme file in CTAN:support/TeX4ht telling people to check out http://www.cse.ohio-state.edu/~gurari/TeX4ht/bugfixes.html ------------------------------------------- http://netpbm.sourceforge.net/ http://sourceforge.net/projects/netpbm/ (latest version: Netpbm-10.19 update at 11/15 2003) ------------------------------------------- From zierke@dante.de Wed Nov 5 05:18:49 EST 2003 Article: 292426 of comp.text.tex Path: news.cse.ohio-state.edu!news.maxwell.syr.edu!news-han1.dfn.de!news-ham1.dfn.de!news.uni-hamburg.de!dante.de!owner-ctan-ann From: zierke@dante.de (Reinhard Zierke) Newsgroups: comp.text.tex Subject: CTAN Upload - BaKoMa TeX 6.10 - Animated GIF, Sound for SVG Date: 5 Nov 2003 09:32:48 +0100 Organization: University of Hamburg -- Germany Lines: 264 Approved: yes Message-ID: <20031105083010.GA22304@dante.de> NNTP-Posting-Host: sun.dante.de Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: rzsun03.rrz.uni-hamburg.de 1068021168 23174 134.100.9.52 (5 Nov 2003 08:32:48 GMT) X-Complaints-To: usenet@news.uni-hamburg.de NNTP-Posting-Date: 5 Nov 2003 08:32:48 GMT To: ctan-ann@dante.de Organisation: none Xref: news.cse.ohio-state.edu comp.text.tex:292426 ----- Forwarded message from "Basil K. Malyshev" ----- I have uploaded to `ftp.dante.de/incoming/bakoma' directory update for BaKoMa TeX 6.10 (issued 1-Nov-2003). Please put the files to 'CTAN:nonfree/systems/win32/bakoma' directory. Most important improvements in BaKoMa TeX 6.10 are: SVG Generation: * Import of animated GIF into SVG as animated image. * Import multi-page Postscript into SVG as animated graphics - every page is translated as frame. * Sound effects are supported by SVG.STY via \sound command. * More customization in Navigation Bar added at SVG generation: size, colors. More details about SVG Generation features are available in Graphics (Supported for View, Print, SVG, PDF, Postscript) * Support of transparent background in imported GIF files. * Support of Color Key Masked Images - Type 4 (Postscript Level 3) BibEdit Improvements: * Refined disappering comment subwindow when adding new fields and resizing window. * Added Rename command for changing entry key and field name. More information about changes is at: Bye. Basil K. Malyshev 4-Nov-2003 PS: Please send announce to appropriate mailing lists and news groups. --------------- About BaKoMa TeX 6.10 ---------------------- ------------------------------------------- From: The Thanh Han To: gurari@cse.ohio-state.edu Cc: Fabrice Popineau Subject: tex4ht question Date: Fri, 8 Aug 2003 08:22:24 +0700 Hi, can you please give me some hints to the following: I was trying to use tex4ht to convert a latex file to html. The latex source is in Vietnamese, and I would like to have the html output in Unicode. I looked at the tex4ht files in texlive7 cd, and created a set of htf fonts for vietnamese. It nearly works, apart from an only oddity: that all glyphs with a dot below (like adotbelow, edotbelow, idotbelow, ...) is converted to their ascii counterpart (a, e, i, ...). The latex file itself works ok with latex; ie when I latexed it and viewed the dvi ouput using xdvi, everything seems to be ok. I was digging a bit but couldn't fix it, so if you have time, can you please take a look at it? Apart from files on texlive7 cd, I used the following: 1) a htf font for vietnamese, which is attachted in this mail. 2) vietnamese tex support: vntex from http://vinux.sourceforge.net/vntex The test file I used is included in vntex as well; it's in doc/generic/vntex/vntest1.tex. I copied those tex files to a temporary directory and run: uhtlatex vntest1 ------------------------------------------- http://lists.w3.org/Archives/Public/www-math/2003Sep/0023.html ------------------------------------------- \HCode{Test } ------------------------------------------- CTAN: to promote latex, we need to promote standarization. We can have committees. We can also promote certifications: in ctan put a comment around each contribution on the level of compatibility the contribution provides!! This will encourage contributures to produce more fitting parts. Also, had a discussion group for contributions, for pre discussing contributions--i.e. cooling system for cross contributions. > \begin{list}{\textbullet}{} > \item Bla bla bla... > \end{list} > > \begin{itemize} > \item Bla bla bla... > \end{itemize} Latex and pdf deal with visual layout of the lists. TeX4ht needs to map the lists to html. The default configurations map the first `list' list into a `description' (dl) list of html, and the second into an itemized one (ul). I knowledge that the first list list behaves like an itemized list is not at all clear without inspecting the visual output. $$\begin{minipage}{\textwidth} \small\itshape The first section \textbullet\ The socond one \textbullet\ The third one {\upshape(A subsection in it, 1. Another, 2)} \textbullet\ A fourth section {\upshape(A subsection in it, 1. Another, 2)}. \end{minipage}$$ http://omega.enstb.org/eurotex2003/ > >A compilation with the command line option `mathml-' provides a ``correct'' > >mathml that doesn't check for balanced parentheses. > > Oh, is that the only difference? I was worried I'd be disabling some > functionality in the output with that option. MathML looses the knowledge of the parenthesis being delimiters, and so the output code provides reduced amount of clues for postprocessing (and displaying). Personally, when I think authors should avoid this option, anf fix their source files. On the other hand, it is too much of a burdun for third parties to do so. \Css{@media print {div.crosslinks {visibility:hidden;}}} \addcontentsline{toc}{slide}{#1} Susan's work Review participants & program note: The index doesn't include math, figs fragments http://www.activemath.org/~adrianf/dvi2svg/ http://www-2.cs.cmu.edu/~kohlhase/talks/om-tutorial/ http://www.dessci.com/en/reference/webmath/status/default.htm OpenOffice for docbook: http://xml.openoffice.org/xmerge/docbook/ What makes latex difficult (What You Ask Is not What You Get): You ask for \begin{split} \end{split} end you get instead \begin{split} \begin{split} \end{split} \end Similarly \begin{document} \end{document} \begin \end{document} In open office: -------- ------ -------- ------ -------- \begin{center} .... .... \end{center} is implemenmted as three paragraphs:

...

...

The importance of having standards (like amsmath) in latex, and having them stables: e.g. Why latex is ugly: check the sample ams page!!! Why mathml is ugly: check the specification web page!!! ------------------------------------------- %%%%%%%%%%%%%%%%%%%%%% \DocPart{Limitations} %%%%%%%%%%%%%%%%%%%%%% \List{*} \item {Superscripts or Subscripts} Commands within scripts should have their parameters explicitly included within the scripts. For instance, use \`'a^{\sqrt b}'---not \`'a^\sqrt b'. [{\sl MathML}]: Empty bases in many contexts should be represented by a code similar to \`'{\csname HCode\endcsname{}}'. Otherwise, the the content preceding the empty bases will be assumed for the bases. Subscripts and superscripts within a preamble (that is, before \`'\begin{document}') should be accessed through the \''\sb' and \''\sp' commands instead of the \`'_' and \`'^' operators. Alternatively, in many cases the \`'early_' and \`'\early^' options might be used as an alternative to allow references to the latter operations. On the other hand, within loaded files the \`'\sb' and \`'\sp' commands should be employed. \item {Parentheses} [{\sl MathML}]: Formulas without proper nesting of delimiters are considered harmful. It is possible to relax this constraint on a global level through the \`'mathml-' command line option, but it is highly not recommended to use this feature. Instead, localized approaches similar to the following may be employed to downgrade the meaning of delimiters. \List{} \item {} \''\left|...\right|' \item {} \''\bigl\{...\bigm|...\bigr\}' \item {} \''\begin{array} ...\mathord(... & ...\mathord)...\end{array}' \EndList \item{Lists} \TeX4ht doesn't sense changes to default appearances of lists in native \LaTeX. To reflect in the hypertext output on such changes, the user should adjust the given configurations of \TeX4ht. \EndList ------------------------------------------- > >A compilation with the command line option `mathml-' provides a ``correct'' > >mathml that doesn't check for balanced parentheses. > > Oh, is that the only difference? I was worried I'd be disabling some > functionality in the output with that option. MathML looses the knowledge of the parenthesis being delimiters, and so the output code provides reduced amount of clues for postprocessing (and displaying). Personally, when I think authors should avoid this option, anf fix their source files. On the other hand, it is too much of a burdun for third parties to do so. > Is there anything wrong with doing what I did -- ie, downloading the > tar.gz from the mathzilla page, and then refreshing the individual files for > the install? I think that is fine. Just need to be careful to consult the paths in old the old versions when replacing the tex4ht.env and htlatex-like files with new ones. ------------------------------------------- > Please forgive my ignorance, but how is one actually supposed to obtain > and install a distribution, say on linux? The mathzilla page just had a > tar.gz file to download, untar/gzip, and run localInstall. The easiest way to install tex4ht would be by installing any distribution that contains tex4ht, and then refresh the different files 1. tex4ht.sty 2. *.4ht 3. Executables of tex4ht.c and t4ht.c and may be 4. tex4ht.env 5. *htf I can guide you through this path if you choose to take it. ------------------------------------------- http://www.texmacs.org/ http://makingtexwork.sourceforge.net/mtw/ ------------------------------------------- ------------------------------------------- > 7 days trial version of Vector Eye for Windows has been released > due to Siame & Celinea. This is a quick converter of raster to vector graphi\ cs > giving, in particular, SVG output. THEORETICALLY it seems to create an > opportunity > for you to make the first experiments with svg graphic files included in > the xml document, as we dreamed about few months ago. I had a problem > with installing Vector Eye as it requires a high resolution screen. Furtherm\ ore > something was changed in Mozilla svg system and lost (I hope temporarily) > a chance to use Mozilla for svg viewing. Out of this the real capabilities > of this > software remain unknown for me. > > -Piotr > > > http://www.celinea.com/ ------------------------------------------- http://www.pianotype.net/ http://www.pianotype.net/eBook/index.html - Latex - WEB (Literate Programing) - html, xhtml, xml : dtd DocBook and TEI - xslt - pdf, lit... & Patrice :-) Reply-To: ``Patrice GUERPILLON'' From: ``Patrice GUERPILLON'' [1] A new site (La)TeX / XML & C° from France Date: Sun May 11 16:32:36 EDT 2003 ------------------------------------------- > I'd also love to see a complete list of tex4ht parameters without having to > look through the .log file although there is lots of information there. The options depend on the file styles being loaded, so a complete list would be difficult to compile. However, I agree it would be desirable to have a list of major options. I have none currently :-( ------------------------------------------- converts troff macros to XML: http://catb.org/~esr/doclifter/ ------------------------------------------- \Verbatim Refresh the filename database: in the MikTeX options wizard, or initexmf -u from the command line. \EndVerbatim ------------------------------------------- can be invoked with a command of the form \`'ht tex filename' (\HPage{example} \rightline{\ExitHPage{}} \SubSection{An Example for Invoking ht} A system invocation of the form \`'ht tex foo' for a file \''foo.tex' of the following form. \Verbatim \input amstex \documentstyle{amsppt} \Preamble{xhtml,html4.4ht,unicode.4ht,mathml.4ht} \EndPreamble \document ..... \enddocument \EndVerbatim\EndHPage{}). ------------------------------------------- > How do you feel about the described approaches? My preference is for > the first one. Many thanks for this. I tried Approach A and found that the width=75% statement did not get carried through to to the html for the .pstex figures from xfig. It worked for the .eps figures. I therefore moved over to Approach B. I created a script called 'convertScale' (note: the grep picks up .pstex files also since there is a BeginDocument:.*.eps line in all of them): #----------------------------------------------------------------------- #!/bin/sh # ISEPS=`grep -E ``BeginDocument:.*.eps'' zz${1}.ps` if [ ``$ISEPS'' == " ] ; then SCALE=''100%'' else SCALE=''50%'' fi convert zz.bmp -crop 0x0 +repage -transparent '#FFFFFF' -scale $SCALE zz${1}.gif #----------------------------------------------------------------------- and then in the env file: GconvertScale %%4 This worked well so I have adopted this approach. ------------------------------------------- http://www.uoregon.edu/~koch/texshop/texshop.html ------------------------------------------- converteters to SVG http://www.w3.org/Graphics/SVG/SVG-Implementations.htm8 ------------------------------------------- http://www.bloodyeck.com/wwwis/ --------------- http://www.w3c.org/Style/XSL/ The web page http://dmoz.org/Computers/Data_Formats/ Markup_Languages/XML/Style_Sheets/XSL/Implementations/ lists many processors. (The two lines should be merged in order to get the address.) ---- Tex4ht seems to strain TeX somewhat. To keep from getting messages that say ``TeX capacity exceeded, sorry'' it may be necessary to increase TeX's capacity by placing a configuration file texmf.cnf in the document directory and setting the environment variable TEXMFCNF to ``dir::'' where dir is the path to the document directory. This only works for TeXs that use kpathsea. ------------------------------------------- ------------------------------------------- Gc:\yandy\Dvipsone\dvipsone -B=%%2 -E=%%2 -d=zz%%4.ps %%1 Gc:\ImageMagick\convert zz%%4.ps -crop 0x0 +repage -density 110x110 -transparent #FFFFFF %%3 ------------------------------------------- comp.text.tex #250583 (0 + 4 more) [1] From: Ralph Furmaniak [1] Announcing gotex Lines: 35 Date: Tue May 21 17:50:29 EDT 2002 Gotex is a program that I made, which is basically a preprocessor and (albeit small) set of macros for LaTeX, to give it extra functionality for presenting files and web sites. It translates the `got' file into a `tex' file, which it then sends on to `tex4ht'. A full description is on my website at http://sugaku.homeunix.org ------------------------------------------- Like all automatic HTML generators, Tex4ht does not always produce clean (or even correct) HTML. HTML Tidy is an incredibly useful tool for finding (and often, automatically fixing) problems in HTML files. WWWis is a useful utility for making image size annotations in web pages agree with actual image sizes (it's surprising how easy it is to get these annotations wrong or to let them get out of date). Finally, always look over your web pages using several different browsers -- HTML generators seem to have a knack for emitting constructs that render differently in different browsers. ------------------------------------------- align=\string''absbottom\string'' > { class=\string''math\string'' > align=\string''absbottom\string'' > } ------------------------------------------- ------------------------------------------- From: Patrice GUERPILLON Sender: pat@club-internet.fr To: gurari@cse.ohio-state.edu Subject: TeXht and dtd Tei/Docbook Date: Sun, 16 Dec 2001 16:05:02 +0100 Dear M. Gurari, i have computed my LaTeX document with TeXht to get Tei and Docbook code. Its OK. (perfect after some coorections of the code) The result is present on my page : http://www.club-internet.fr/perso/pguerpil ------------------------------------------- Probably you can simply tell tex4ht to look in c:\progra~1\texmf which is a non-spaced alias for c:\program files\texmf ------------------------------------------- > 2. note that if the batch files contain unix line endings (LF, rather than > dos's CR LF) you can crash win95/98/ME (NT and win2k are ok). There was a > period during the autumn when some of the batch files may have had this > problem. (Either that, or someone managed to copy the wrong files). Anyway, > this is worth watching out for, especially if someone reports an otherwise > incomprehensible failure. ------------------------------------------- ------------------------------------------- > > Does any know how to use 'jpeg' images with LaTex? Including the > > environment setting and the command .... This can be done on the fly with psgraphicx by using, eg \DeclareGraphicsRule{.jpg}{eps}{.jpg.bb}{`convert jpeg:#1 eps:-} and creating a bounding box file called xxx.jpg.bb (if your image is xxx.jpg) by using convert xxx.jpg eps:- | grep BoundingBox > xxx.jpg.bb See the file `Using EPS Graphics in LaTeX2e Documents', available from ctan in /tex-archive/info/ as epslatex.ps or epslatex.pdf. ------------------------------------------- >I'm using tetex on RH 7.3. In the /usr/share/texmf/web2c/texmf.cnf file, >I have: > >TEXMFMAIN = /usr/share/texmf >TEXMFLOCAL = /usr/local/share/texmf >HOMETEXMF = $HOME/texmf >TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$TEXMFMAIN} > >and it used to work fine with my extra style files, bib files, etc. stored in >~/texmf. But ever since one rainy day, something is wrong: > I've had success using: env KPATHSEA_DEBUG=-11 latex say, to debug issues with TEXMF and other path-related elements. I found that I'd stuck some things in non-intuitive places... >> I'm using tetex on RH 7.3. In the /usr/share/texmf/web2c/texmf.cnf file, >> I have: >> >> TEXMFMAIN = /usr/share/texmf >> TEXMFLOCAL = /usr/local/share/texmf >> HOMETEXMF = $HOME/texmf >> TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$TEXMFMAIN} >> >> and it used to work fine with my extra style files, bib files, etc. stored in >> ~/texmf. But ever since one rainy day, something is wrong: >> >> nali$ kpsewhich --expand-path='$HOMETEXMF' >> /home/nali/texmf >> nali$ kpsewhich --expand-path='$TEXMF' >> /usr/share/texmf >> >> I didn't do anything to the texmf.cnf file. What could be affecting >> the value of TEXMF? David> Perhaps the value of TEXMF? What does David> echo $TEXMF David> display? echo $TEXMF returns /usr/share/texmf. I don't know why I defined it in /etc/profile. Removing that fixed the problem. Thanks. ---- http://john.regehr.org/latex/: Tex4ht seems to strain TeX somewhat. To keep from getting messages that say ``TeX capacity exceeded, sorry'' it may be necessary to increase TeX's capacity by placing a configuration file texmf.cnf hash_extra = 25000 pool_size = 750000 string_vacancies = 45000 max_strings = 55000 pool_free = 47500 save_size = 8000 in the document directory and setting the environment variable TEXMFCNF to ``dir::'' where dir is the path to the document directory. This only works for TeXs that use kpathsea. This only works for TeXs that use kpathsea. %-------------------------------------------------------------- > The following approach of Sebastian allows to direct the kpathsea > search to a subdirectory of the ht-fonts tree. > > TEX4HTFONTSET={alias,iso8859} > T4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// > TEX4HTINPUTS= .;$TEXMF/tex4ht/base// > > in texmf.cnf, and the htlatex script says > > test -z "$3" || TEX4HTFONTSET=$3;export TEX4HTFONTSET > > On a second thought, the latter approach might not work for the > mozilla script. That is so because for mozilla we want the search to > be conducted under two subdirectories: first under ht-fonts/mozilla > and then under ht-fonts/unicode. just TEX4HTFONTSET={mozilla,unicode} surely? ------------------------------------------- #!/bin/sh TEXINPUTS=$XMLCDROM/texmf/tex4ht: export TEXINPUTS $XMLCDROM/bin/i386/tex4ht.exe $1 \ -e$XMLCDROM/texmf/tex4ht/base/tex4ht.env \ -i$XMLCDROM/texmf/tex4ht/ht-fonts/unicode/\! Note the \ before the ! ------------------------------------------- OK, in texmf.cnf I say TEX4HTFONTSET={alias,iso8859} T4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTS}// TEX4HTINPUTS= .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTS}// and then in eg htlatex I can just do TEX4HTFONTSET=$3 export TEX4HTFONTSET tex4ht $1 t4ht $1 $4 make sense? sebastian Eitan Gurari writes: OK, Now I have TEX4HTFONTSET={alias,iso8859} T4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// TEX4HTINPUTS= .;$TEXMF/tex4ht/base// in texmf.cnf, and the htlatex script says test -z "$3" || TEX4HTFONTSET=$3;export TEX4HTFONTSET and this seems to do the job > Would that guarantee searching the .../ht-fonts/iso8859/... branch > before the other brances, since alphabetically iso8859 is the first > one among the subdirectories? kpathsea has no guarentee of search order. it may be alphebetical, but maybe not > If not, can we inform kpathsea about the directories > .../ht-fonts/iso8859/... and .../ht-fonts/alias/..., without > reporting to it the other directories? yes, if it works properly, my default TEX4HTFONTSET={alias,iso8859} does the job > Did you sort out the problem with testa? I can't recreate it and > wonder what happened there. still testing.... sebastian From: Sebastian Rahtz To: gurari@cse.ohio-state.edu Subject: Re: ht-fonts Date: Tue, 14 Mar 2000 16:08:00 +0000 (GMT) Eitan Gurari writes: > > also the /! is needed. > > > htlatex filename "html,html.4ht,picmath4.4ht" "symbol" > > htlatex filename "html,html4.4ht,picmath4.4ht" "symbol/!" no. not needed! kpathsea takes care of that. > xhtml should be first: > > > htlatex filename "html4.4ht,unicode.4ht,mathml.4ht,xhtml" "unicode" > > htlatex filename "xhtml,html4.4ht,unicode.4ht,mathml.4ht" "unicode/!" > ^^^^^^ ^^ ah, now it works fine, and i see mathml in the output. excellent! now I can attempt to make these german Web Companion examples work again sebastian ------------------------------------------- http://cauchy.math.missouri.edu/~stephen/cgi-bin/naturalmath.cgi http://ftp.geophysik.uni-frankfurt.de/~ruedas/links-latex.html http://math.albany.edu:8010/g/Math/MathComp/mathwww/ http://www.astro.gla.ac.uk/users/norman/bookmarks/lists-maths.html http://www.dcs.fmph.uniba.sk/~emt/ http://www.math.berkeley.edu/~tinsel/mathunix/webmath.html http://www.mathtools.net/LaTeX/Other_Links/index.html http://www.openebook.org/ http://www.w3.org/Math/ http://www.webeq.com/mathml/resources.html http://www.zib.de/Visual/software/doc++/ http://www.w3.org/Tools/ -------------------------------------------------------- \Configure{tabbing}[1.6]{}{}{}{} --------------------------------------- service in India -- River Valley Technologies, http://www.river-valley.com -- that creates ``a variety of outputs like screen pdf, regular PDF, dvi, PostScript, SGML, XML and MathML from a single TeX source document''. ------------------------------------------------------ From: plaice@cse.unsw.edu.au (John Plaice) To: rey@ams.org (Ralph Youngen), mjd@ams.org (Michael Downes), ion@ihes.fr (Patrick Ion), sutor@us.ibm.com (Robert Sutor), aldiaz@us.ibm.com (Angel Diaz), s.rahtz@elsevier.co.uk (Sebastian Rahtz), gurari@cse.ohio-state.edu (Eitan Gurari) Date: Thu, 19 Nov 1998 18:18:19 +1100 (EST) Message-Id: <981119071819.7482@cse.unsw.edu.au> Subject: TeX to MathML converter Cc: plaice@cse.unsw.edu.au (John Plaice) X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Hello everyone, The MathML translator is now finished, and it works wonderfully. It will read a TeX or Omega document and transform the math part into a MathML file (suffix .mml). This is done by replacing the mlist_to_hlist part of TeX with an SGML pretty-printer, along with some nifty stuff along the way to recognize parenthesized expressions and the like. In addition to the driver work, Omega will now, upon loading a font, look for a .onm file corresponding to the font (cmr.onm for cmr10.tfm or cmr7.tfm, ecrm.onm for ecrm10.tfm, etc.). This file contains a list of declarations such as \SGMLFontEntity{eufb}{"41}{\SGMLname{Afr}}{mi}{\SGMLbold} which states that position "41 of Font sort eufb (Euler Fraktur Bold) is entity "𝔄". If used in Math mode, it will produce 𝔄 If used in text mode, it will produce 𝔄 All of the standard math fonts have corresponding .onm files, and most of the cm family of fonts do as well. I can easily generate more if necessary. In addition, there are new Omega primitives, in addition to \SGMLFontEntity, to produce tags and entities as desired in the text. \SGMLstarttag{tagname} will start a new TeX level, and will ultimately place in the output file. \SGMLendtag{tagname} will end a TeX level, and must match a preceding \SGMLstarttag{tagname}. It will place in the output file. \SGMLattribute{attrname}{value} will place in the start tag the text attrname="value". It allows one to define extra attributes for tags. \SGMLemptytag{tagname}{attributes} will place an empty tag, possibly with attributes, as in . The attributes are defined using \SGMLattribute. The translator as it now stands seems to be able to do all of normal LaTeX math, as well as AMS-LaTeX math. It will also do a fair amount of TeX stuff. The most important TeX thing that it cannot work with is \halign, which is OK if one is doing LaTeX, since \halign is not normally called in LaTeX. Unlike LaTeXtoHTML, this translator is capable of interpreting and taking advantage of TeX's macro language. As a result, it should be able to interpret a far greater proportion of TeX files than can any Perl script. In addition, the translator is easily adapted: if you do not like the interpretation, then just change it. I will place the appropriate files on my FTP site tomorrow. Best, John Plaice %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /ENDSKIP ///////////////+/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % START %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\temp{htm} \ifx\switch\temp \def\htm{htm}\fi %%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%% \def\htm{htm} \ifx \ROOT \UnDef \immediate\write16{....................Undef ROOT--using temp/TeX4ht/} \def\ROOT{temp/TeX4ht/} \fi \ifx \htm \UnDef \def\htm{html} \def\CLASS{class} \let\DOS=\empty \let\ARG=\empty \else \def\CLASS{class} %%% \def\CLASS{cla} fails \def\DOS{\noexpand\let\noexpand\DOS=Y} \def\ARG{[htm]} \fi % \def\unzip{\HCode{}[\UNZIP]\HCode{}} \def\UNZIP{%\Link[http://www.info-zip.org/pub/infozip/]{}{} unzip% %\EndLink } \openin15=tex4ht.exe \ifeof15 \immediate\write16{============= tex4ht.exe missing=========} \fi \closein15 \openin15=t4ht.exe \ifeof15 \immediate\write16{============= t4ht.exe missing===========} \fi \closein15 \input DraTex.sty \input AlDraTex.sty \input tex4ht.sty \def\GOBBLE#1{} \ifx \SysNeeds\GOBBLE \Configure{DOCTYPE}{\Tg \Tg} \else \def\SysNeeds{\Needs} \fi \Preamble{xhtml,th4,index} \Configure{@HEAD}{\HCode{\Hnewline}} \Configure{@/BODY}{\ifvmode\IgnorePar\fi\EndP\HCode{
}\par\HCode{Generated \ifcase \month \or January \or February \or March \or April \or May \or June \or July \or August \or September \or October \or November \or December \fi \the\day, \the\year\space - tex4ht home page}} \EndPreamble \input ProTex.sty \AlProTex{llo,<<<>>>,?} \def\Template{\IgnorePar\EndP\bgroup \tt \HCode{
} \def\cr{\HCode{
}\hfil\break} } \def\EndTemplate{\IgnorePar\EndP\HCode{
}\egroup} \ScriptCommand{\LikeVerbatim}{\NoFonts}{\EndNoFonts} \def\BULLET{$\bullet$} %%%%%%%%%%%%%%%%%%%%%%%%%% from latex %%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \let\'=\Verb \def\`{\expandafter\expandafter\expandafter\qts\Verb} \def\qts#1{`#1\aftergroup'} \def\LaTeX{La\TeX} \def\TeX{TeX} \def\INDEX#1#2{\--\expandafter\EAT\string#2//{{\tt\char 92}}/#1#2} \def\IDX--#1/#2/#3/#4/{{% \Configure{--} {} {\string\csname\space :gobble\string\endcsname{\csname html:lbl\endcsname}% \string\Link[#4]{}{}\folio\string\EndLink }% \--#1/#2/#3/}} % Examples: % \--Fonts/htf\string\empty//% % \--Fonts/htf\relax,\string~configuring//% \def\EAT#1{} \NewSection\TroubleSec{}{} \Configure{TroubleSec} {} {} {\par \IgnorePar\EndP\HCode{

}\bgroup\bf} {\egroup\HCode{

}\ShowPar\IgnoreIndent\par} \ConfigureToc{TroubleSec} {} {$\bullet$\HChar{160}} {} { } \NewSection\DocChapter{}{} \Configure{DocChapter} {\IgnorePar} {} {\IgnorePar\EndP\HCode{

}} {\HCode{

}\ShowPar\IgnoreIndent} \ConfigureToc{DocChapter} {} {\HCode{}$\bullet$\HChar{160}} {} {\HCode{} } \HAssign\OddDoc=1 \def\Intro{\ifvmode\IgnorePar\fi\EndP\HCode{
}} \def\EndIntro{\ifvmode\IgnorePar\fi\EndP\HCode{
}}{}{} \Css{.intro{border:1px solid black; padding:4px;}} \NewSection\DocPart{}{} \Configure{DocPart} {\IgnorePar} {} {\IgnorePar\EndP\HCode{

}} {\HCode{

}\ShowPar\IgnoreIndent} \ConfigureToc{DocPart} {} {$\bullet$\HChar{160}} {} { } \TocAt{DocPart,DocChapter} \NewSection\DocSection{}{} \Configure{DocSection} {\IgnorePar} {} {\EndP\HCode{

}} {\HCode{

}\IgnorePar} \ConfigureToc{DocSection} {} {$\bullet$\HChar{160}} {} { } \NewSection\DocSubSection{}{} \Configure{DocSubSection} {\IgnorePar} {} {\EndP\HCode{

}} {\HCode{

}\IgnorePar} \NewSection\InstallSection{}{} \Configure{InstallSection} {\IgnorePar} {} {\EndP\HCode{

}} {\HCode{

}\IgnorePar} \ConfigureToc{InstallSection} {} {$\bullet$\HChar{160}} {} { } \NewSection\QAChapter{}{} \Configure{QAChapter} {\IgnorePar} {} {\IgnorePar\EndP\HCode{

}} {\HCode{

}\ShowPar\IgnoreIndent} \ConfigureToc{QAChapter} {} {\HCode{}} {} {\HCode{
} } \Css{span.QAChapter{font-size: 125\%;}} \NewSection\QASection{}{} \Configure{QASection} {\IgnorePar} {} {\IgnorePar\EndP\HCode{

}} {\HCode{

}\ShowPar\IgnoreIndent} \ConfigureToc{QASection} {} {\HCode{}$\bullet$\HChar{160}} {} {\HCode{
} } \def\Example{\IgnorePar\EndP\IgnoreIndent \HCode{
}{\bf Example}} \def\EndExample{\IgnorePar\EndP\HCode{
}} \def\Notes{\IgnorePar\EndP\IgnoreIndent \HCode{
}{\bf Notes}} \def\EndNotes{\IgnorePar\EndP\HCode{
}} \def\Sign#1#2{\aSign#1\bSign#2\cSign} \NewConfigure{Sign}[3]{\def\aSign{#1}\def\bSign{#2}\def\cSign{#3}} % % \Configure{buttonList} % {\IgnorePar\EndP\HCode{}} % {\HCode{
}\par\ShowPar} % {\HCode{}} % {\HCode{}#1\HCode{}} % {\ListCounter} \Configure{buttonList} {\IgnorePar\par\EndP\HCode{}} {\HCode{
}\par\ShowPar} {\HCode{}} {\HCode{}\ShowPar #1\IgnorePar\EndP\HCode{}} {\ListCounter} \def\ResourceList{\begingroup % \def\ListSepr{\gdef\ListSepr{, }} \Configure{buttonList} {\IgnorePar\HCode{
}} {\HCode{
}\IgnorePar} {\long\def\author####1(####2){}\ListSepr ##1\IgnorePar\HCode{}\let\author=\space} {\HCode{}} {\ListCounter} % \List{button}} \def\EndResourceList{\EndList \endgroup} \def\ListSepr{\gdef\ListSepr{, }} \def\setup#1{\rightline{{\bf #1}}} \long\def\Warning#1{\IgnorePar\Tg
{\IgnoreIndent \par\sl#1}\Tg
} \def\frac#1#2{{#1\over#2}} \def\temp#1#2{\hbox{\Picture*{ align="middle"}$#1\over#2$\EndPicture}} \HLet\frac=\temp \def\EXAMPLE{\HTable/[/class="output"]\HCode{
}} \def\ContEXAMPLE{\HCode{
}\&\HCode{
}} \def\EndEXAMPLE{\HCode{
}\EndHTable} \ScriptCommand{\Same}{\NoFonts}{\EndNoFonts} \def\sl{\it} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Css{h1, h2, h3 { font-family: sans-serif; }} % sans MS \Css{body {max-width: 60rem;margin:1rem;}} \def\Mark#1{\HCode{}#1\HCode{}} \Configure{Sign} {\IgnorePar\EndP\HCode{
}\bgroup \it} {\HCode{
}} {\egroup\HCode{
}} \Css{.SIGN{text-align:right;}} \Css{.Template { margin-left:3em; }} \Configure{ShowCode} {\IgnorePar\EndP\HCode{
}} {\HCode{
}} {\HCode{
\string }} {\HCode{}} {\HCode{}} {\HCode{\string }} \def\.#1{\def\temp##1#1{\HCode{}##1\HCode{}}\temp} \Css{div.ShowCode{ font-family:monospace; white-space:nowrap; }} \Css{span.showcode { color: green; }} \Css{div.TableOfContents { margin-top: 1em; margin-right: 1em; margin-left:1em;}} \Css{div.Warning{ margin-right: 8\%; margin-left:8\%; text-align:justify; }} \Css{div.Warning div.Warning{ font-weight: bold; text-align:justify; border:solid 1px; color:red; }} \Css{.tabular, div.output { background-color:\#FFFFCC; }} \Css{div.output { margin-left:3\%; }} \Css{.button-list P{ %%%%%% margin-left:2em; text-indent:-2em; IE is totally %%%%% broken here. It stalls hypertext links, and %%%%% quits upon narrowing the window. margin-top:0em; margin-bottom:0; }} \Css{div.button-list { margin-left:3\%; margin-right:3\%; }} \Css{div.ShowCode { margin-left:3\%; margin-right:3\%; border-top: solid \#CCCCCC 1pt; border-bottom: solid \#CCCCCC 1pt; }} \Css{div.source { border-top: solid \#CCCCCC 1pt; border-bottom: solid \#CCCCCC 1pt;}} % \def\EndDocChapter{% % \par\ShowPar\IgnoreIndent[\Link[\UpFilename]{}{}up\EndLink]\EndHPage{}% % \let\DocPart=\oldDocPart % \TableOfContents[DocChapter]} % % \let\oldDocChapter=\DocChapter % \def\DocChapter{% % \let\oldDocPart=\DocPart % \edef\UpFilename{\FileName}% % \HPage{}% % [\Link[\UpFilename]{}{}up\EndLink] % \Part{Features of \TeX4ht}% % \TableOfContents[DocChapter] % \def\DocPart{% % \EndDocChapter % \DocPart} % \let\DocChapter=\oldDocChapter % \DocChapter} \def\BR{\HCode{
}} \gdef\SysVar#1{\Link{x-#1}{#1}#1\EndLink} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % DIRECTORIES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\GURARI{http://www.cse.ohio-state.edu/\string~gurari/} \def\GOLD{/n/gold/5/gurari/} \def\WWW{\GURARI \ROOT} \def\DIR{\GOLD WWW/\ROOT} \def\TempDIR{\DIR temp/} \def\HOME{\GURARI TeX4ht/} \def\SYSTEMS{\GURARI systems.html} % ProTex AlProTex \def\tugHOME{http://www.tug.org/applications/tex4ht/} %\def\shareFTP{\WWW share/} % \def\shareDIR{\DIR share/} % \def\shareTempDIR{\TempDIR share/} % \def\shareHOME{\HOME share/} % \def\dosFTP{\WWW dos/} % \def\dosDIR{\DIR dos/} % \def\dosHOME{\HOME dos/} % \def\winFTP{\WWW win95/} % \def\winDIR{\DIR win32/} % \def\winTempDIR{\TempDIR win32/} % \def\winHOME{\HOME win32/} %\def\temp{TeX4ht} \ifx\switch\temp \else % \def\shareFTP{share/} % \def\shareHOME{share/} % \def\dosFTP{dos/} % \def\dosHOME{dos/} % \def\winFTP{win32/} % \def\winHOME{win32/} % \fi \def\WWWxml{http://www.tug.org/applications/tex4ht/mml/} \def\dosports{\GURARI dosports/readme.html} % can't clean the full directory because % the new html stuff is already there %%%%%%%%%%%%%%% FIRST %%%%%%%%%%%%%%%%%%%%% \csname SysNeeds\endcsname{"rm ht-unix/*"} \csname SysNeeds\endcsname{"rm ht-win32/*"} \csname SysNeeds\endcsname{"chmod 711 \DIR"} %foo \csname SysNeeds\endcsname{"chmod 711 \TempDIR"} %%%%%%%%%%%%%%%%%%%%% %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/temp"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/temp"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/src"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/src"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/bin"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/bin/unix"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/bin/win32"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/bin"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/bin/unix"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/bin/win32"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex/generic"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex/generic/tex4ht"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht/ht-fonts"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht/base"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht/base/bin"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex/generic"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex/generic/tex4ht"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht/ht-fonts"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht/base"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht/base/bin"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht/base/unix"} %foo \csname SysNeeds\endcsname{"mkdir \TempDIR tex4ht/texmf/tex4ht/base/win32"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht/base/unix"} %foo \csname SysNeeds\endcsname{"chmod 755 \TempDIR tex4ht/texmf/tex4ht/base/win32"} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % END DIRECTORIES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \csname UnderRevision\endcsname \Part{TeX4ht: LaTeX and TeX for Hypertext} \Intro \Mark{The \TeX4ht home page is at \Link[https://tug.org/tex4ht]{}{}https://tug.org/tex4ht\EndLink}. Please see that page for current development information, % including a \Link[https://puszcza.gnu.org.ua/bugs/?group=tex4ht]{}{}bug tracker\EndLink\ and \Link[https://lists.tug.org/tex4ht]{}{}mailing lists\EndLink. \TeX4ht is still actively maintained, and many individual files have been updated; new versions are committed to the \TeX4ht\ and TeX Live repositories. Unfortunately, no full release of \TeX4ht has been made since Eitan Gurari, the original author, passed away unexpectedly in June 2009. When a release is finally made (there is no ETA at present), it will be available on \Link[https://ctan.org/pkg/tex4ht]{}{}CTAN\EndLink. \EndIntro \TeX4ht is a highly configurable \TeX-based authoring system dedicated mainly to produce hypertext. It interacts with \TeX-based applications through style files and postprocessors, leaving the processing of the source files to the native \TeX{} compiler. Consequently, \TeX4ht can handle the features of \TeX-based systems in general, and of the \LaTeX{} and AMS style files in particular. Pre-tailored configurations are offered for different \Link[\jobname-commands.html]{}{}output formats\EndLink{}, including HTML 5, (X)HTML, MathML, OpenDocument, and DocBook. %This document and the utility code %are available for downloading in \Link[tex4ht-all.zip]{}{}zipped %format\EndLink{}. % (alternative sites: \Link[\WWW % tex4ht-all.zip]{}{}osu\EndLink \tugOnOff{, \Link[\tugHOME % tex4ht-all.zip]{}{}tug\EndLink}). \TableOfContents[DocPart] \HPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocPart{Table of Contents} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \bgroup \ConfigureToc{DocPart} {} {\HCode{
}} {} {\HCode{
} } \TableOfContents[DocPart,DocChapter,DocSection,DocSubSection,InstallSection] \Css{div.TableOfContents div.DocPart{margin-top:1em; margin-bottom:1em; font-size:110\%;}} % \TableOfContents[SubSection] % \TableOfContents[TroubleSec] % \TableOfContents[QAChapter,QASection] \egroup \EndHPage{toc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Css{.bugfixes{background: yellow; % padding:0.5em; % margin-left:70\%; % text-align:center; font-style: italic; font-weight: bold; }} \HPage{troubleshooting}\ExitHPage{} \Link{}{trbl-sht}\EndLink \InstallSection{Troubleshooting} \TableOfContents [TroubleSec] \TroubleSec{Bitmaps} \let\svTroubleSec=\TroubleSec \def\TroubleSec#1{\EndList \svTroubleSec{#1} \List{} \let\SV=\item \def\item##1{\SV{\Tg##1\Tg}}% } \List{} \let\SV=\item \def\item#1{\SV{\Tg#1\Tg}} \item{Too small math fonts in images} Use instructions of the form \centerline{\tt \string\DeclareMathSizes \string{{\it surrounding text size}\string} \string{{\it base math}\string} \string{{\it subscript math}\string} \string{{\it 2nd order subscript math}\string}} to request math font dimensions for formulas embedded within text of specified font dimensions. Use sizes of magnitude $10*(1.2)^i$. {\bf Example:} \Verbatim \documentclass{article} \DeclareMathSizes{10}{24.88}{20.74}{17.28} \begin{document} Test in 10pt. \( {base 24.88}_{script 20.74} \) \end{document} \EndVerbatim \item{Bad Quality of Pictures} Increase the density (number of dots per inch) when converting the pictures, and then sub-sample the picture. Specifically, replace in \`'tex4ht.env' the switch \centerline{-density 110x100} \noindent with the switch \centerline{-density 220x220 -geometry 50\%} \noindent or with another switch of the form \centerline{-density ...x... -geometry ...\%} The \''-density' switch increases the number of pixels per inch, and the \''-geometry' option reduces that number. The process smoothes (anti-aliases) the edges. Typically screens display about 72 to 100 dots per inch. The type of fonts in use may also affect the quality of the output. In particular, \Link[http://www.ams.org/index/tex/type1-cm-fonts.html]{}{}Type 1\EndLink{} (scalable outlines) fonts offer better outcome than Type 3 (bitmapped) fonts. \item{Direct Translations of EPS Figures} The quality of the bitmaps of EPS figures may be improved by converting the figures directly, without transmitting them through the dvi code. For instance, the \''\includegraphics' command in the presence of the following configuration provides such a route. \Verbatim \Configure{graphics*} {eps} {\Needs{"convert \csname Gin@base\endcsname.eps \csname Gin@base\endcsname.png"}% \Picture[pict]{\csname Gin@base\endcsname.png}% } \EndVerbatim \--Bitmaps and graphics/eps//% The following script provides a more efficient and general approach. \Verbatim \Configure{graphics*} {eps} {\openin15=\csname Gin@base\endcsname.\PictExt\relax \ifeof15 \Needs{"convert \csname Gin@base\endcsname.eps \csname Gin@base\endcsname.\PictExt"}% \fi \closein15 \Picture[pict]{\csname Gin@base\endcsname.\PictExt}% } \EndVerbatim \item{Truncated and empty png files} Such a behavior might result from pictures which end up off the dvi page limits. A larger paper size may be requested from dvips through the switch `-T offset' (e.g., -T 14in,14in). The dvips command is activated from tex4ht.env. \item{Truncated and empty png files for Xfig pictures} Some Xfig files are made up of overlapping picture environments, with \TeX4ht viewing the components as defining independent figures. The problem can be solved by importing the Xfig files into pictorial environments of \TeX4ht. \Verbatim \newenvironment{mypic}{\Picture*{}}{\EndPicture} \begin{mypic} \input{xfig-file} \end{mypic} \EndVerbatim Alternatively, %\Link{pdf-based}{} PDF-based %\EndLink{} translations into bitmaps might also offer a solution. % > xfig to draw, % > fig2dev to convert % > - text to TeX picture % > - graphics to eps % > This way we have full TeX fonts/features in all our pictures. \TroubleSec{\LaTeX} \item{Unable to find a newly installed file} The \TeX{} engine might require an update of a search directory: the ls-R database for installations employing kpathsea (run texhash), the data base directory in the case of MiK\TeX{} (select \'Start -> Programs -> MiKTeX -> Refresh', or run \`'initexmf -u' from a DOS session, to update it). \TroubleSec{Fonts} \item{Can't find/open file foo.tfm} \List{*} \item \--Fonts/tfm//% Locate the directory where \LaTeX/\TeX{} finds font foo.tfm, and add to \''tex4ht.env' a \`'t' record pointing to that directory (e.g., \`'tc:\localtexmf\fonts\tfm!'). \item Insert the record at the start of the line. \TeX4ht considers the first character in each line to be a code describing the type of the record in hand. Lines which start with unrecognized character codes, spaces included, are ignored. \item Note also that \LaTeX/\TeX{} may create fonts on the fly and put them in a temporary directory (e.g., \`'/var/tmp/texfonts/tfm/'). \EndList \item{Linux, Netscape, and the SYMBOL font} To display the SYMBOL fonts in Netscape on Linux add \centerline{\tt Netscape*documentFonts.charset*adobe-fontspecific: iso-8859-1} \noindent to the \''~/.Xdefaults' file %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{C programs} \item{\--tex4ht.c/Compiling//tex4ht.c doesn't compile ... ERROR:3396: `DIR' undeclared (first use this function)... } Consider adding the switch \`'-DHAVE_DIRENT_H' to the command line. For instance, \'+gcc -o tex4ht tex4ht.c -DENVFILE='"path/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"' -DHAVE_DIRENT_H+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{Scripts} \item{Bad end-of-line characters in htlatex.bat/httex.bat/htexi.bat/ht.bat} Remove undesirable trailing characters in the lines of the scripts, introduced by the utilities which download the files. DOS/WINDOW platforms use an endline pair of characters: a carriage return and a line feed (0Dx,0Ax hexadecimal; 13,10 decimal). MAC platforms use only a single carriage feed character (0Dx; 13dec). UNIX platforms use only a single line feed character (0Ax; 10 dec). \item{Can't find/open file `xxx.dvi' or `xxx.lg'} In some platforms, the operating systems pass on the quotes of the parameters of \''htlatex', \''httex', and \''httexi' to the utilities \''tex4ht' and \''t4ht'. In such cases, the utilities issue complaints of the above nature for file names \`'xxx' other than those being compiled. The problem can be resolved by \HPage{installing a filter} %%%% \ExitHPage{} \SubSection{htcmd} \--htcmd.c///% The source is available at \''bin/temp/htcmd.c', and executable for MS Win 95/98/NT is available at \''bin/win32/htcmd.exe'. %%%%% \EndHPage{} named \`'htcmd', and submitting the \''tex4ht' and \''t4ht' commands to the filter. Backslash characters \`'\' might need replacements with double backslash characters \`'\\' or forward slash characters \`'/'. For instance, if \''htlatex.bat' contains a command line of the form \`'C:\tex4ht\t4ht %1 %4', then after introducing the filter the modified command line will take the form \`'C:\\tex4ht\\htcmd C:\\tex4ht\\t4ht %1 %4'. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{Environment File} \item {Can't find/open file `tex4ht.env'} \--tex4ht.env///% The switch \''-hV' on the calling \''tex4ht' command shows where the file is being searched. The following are possible solutions to the problem. \List{*} \item Set an environment variable TEX4HTENV to the address of the file \item Add the switch \`'-e...address-of-tex4ht.env...' to the command lines of t4ht and tex4ht within the htlatex, httex, httexi, and ht (or htlatex.bat, httex.bat, httexi.bat, and ht.bat) scripts. \item If tex4ht and t4ht are compiled for kpathsea check that the texmf.cnf contains records similar to the following ones. \Verbatim TEX4HTFONTSET=alias,iso8859 TEX4HTINPUTS=.;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// T4HTINPUTS=.;$TEXMF/tex4ht/base// \EndVerbatim \item Make the location of the environment file known to the programs in another manner (see the pointers from the entry \`'tex4ht.env' in the \Link{Index}{}index\EndLink). \EndList \item{No permission for system call: ...} Make sure that the \`'S' records in \''tex4ht.env' don't end with invisible spaces, and that the file ends with the record \`'% end of file'. \item{Problems with argument {\tt -d...} of t4ht} The specified directory must be augmented by a slash character \''/'. \item{Problems with the convert utility} \List{*} \item Make sure the convert program of ImageMagick is called and not another convert system in your directories. In the latter case, insert the full address of convert into the following command within tex4ht.env. \'+Gconvert zz%%4.ps -trim -density 110x110 -transparent '#FFFFFF' %%3+ For instance, use \''Gc:\TeX\Imagick\convert' instead of \''Gconvert' \item You might need to remove the quotes from \'+'#FFFFFF'+ \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{tex4ht.sty / *.4ht} \item{Foreign content in {\tt ...} elements} Use the {\tt \string\Configure\string{@TITLE\string}\string {...\string}} command to redefine for the these elements the harmful macros that appear in headers of logical units like \''\title' and \''\chapter'. For instance, the definition \''\Configure{@TITLE}{\def\LaTeX{LaTeX}}' for the source \''\title{with \LaTeX}'. \item{Problematic commands in titles of logical divisions} Commands within titles of divisions might need protection when transported by tex4ht to other locations. The command \''\Configure{NoSection}{..before...}{...after...}' may be used for such a purpose. %%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{DVI Code} \item{XDVI/DVIWINDO/YAP... hang on {\tt\char92special} command} The dvi code produced by tex4ht is not valid for use with other utilities. Recompile the source file without the presence of tex4ht, to provide a proper code to your dvi viewer. %%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{JavaScript} \item{`{\tt onovermouse}' package option} This option currently relies on the JavaScript utility \Link[https://github.com/overlib/overlib]{}{}overlib.js\EndLink{} of Erik Bosrup. The {\tt overlib.js} file must be placed to the directory along the html files. %The file might need to be fixed at line 234, by % introducing \`'return "";' instead of \`'return;' (an already % \Link[http://www.egroups.com/message/overlib/133]{}{}reported\EndLink{} problem). %%%%%%%%%%%%%%%%%%%%%%% \TroubleSec{Subscripts and Superscripts} \item{Loss of structural information} \--Subscripts and superscripts///% % Subscripts and superscripts are among the weakest points of tex4ht. In order to recognize them for non-bitmap representations, \TeX4ht changes the category codes of \`'^' and \`'_', upon reaching the \''\begin{document}' instruction, and ignores the operations if introduced earlier. The ideal solution would have been to get the superscript and subscript operations, as well as the empty bases \`'{}', marked upon request by the native compilers in the dvi code. Currently, that is just a good night dream. The followings are possible ways to overcome the problem. \List{1} \item Prepare TeX4ht configuration files containing redefinitions for the the sensitive macros. For instance, the configuration file \''test.cfg' \Verbatim \Preamble{} \renewcommand{\FQED}[2]{F_{#1#2}} \renewcommand{\Mlones}{M^2} \renewcommand{\bzms}{M^2_{_0}} \begin{document} \EndPreamble \EndVerbatim for a source \''test.tex', and a compilation invoked through the command \`'mzlatex test "test"'. \item Use \''\sb' and \''\sp', instead of \`'_' and \`'^', in auxiliary files and preambles of files, or push the definitions to after the \''\begin{document}' statement. The danger in this approach is that occasionally users provide new meanings to existing control sequences, without tex4ht taking it into account. \item Use the command line options \''early_' and \''early^'. For instance, \''htlatex file "html,early_"'. \EndList \EndList \EndHPage{} % {\tt |} % \noindent \HPage{Q/A}\ExitHPage{} \InstallSection{Q/A} \TableOfContents [QAChapter,QASection] \noindent {\bf Note:} Please also check the .log files of the compilations for hints provided by tex4ht. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QAChapter{Addresses of Bitmap Files} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{How Bitmap Files Are Created for Pictures} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% There are two kinds of pictures: those created for letters, and those requested directly or indirectly for figures in the source files. The tex4ht.c utility extracts the figures from the foo.dvi file into a foo.idv file, and places in foo.lg messages of how to extract the figures. The t4ht.c utility, uses the requests listed at foo.lg, to activate the G-script from tex4ht.env for the different figures. However, if a F-script is available, it is used instead for the letters. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{References to Bitmap Files of General Pictures} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The command \''\Configure{IMG}{}' in the configuration file adds the prefix \''foo.dir/' to the file names. The default setting uses the configuration \''\Configure{IMG}{}' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Placement of Bitmap Filess of General Pictures} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Add to the \`'G' script in \''tex4ht.env' a command to move the bitmap files to the desired destination (e.g., \`'Gmv %%3 foo.dir/.'). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{References to Bitmap Files of HTF Symbols} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Add the following commands to the configuration file. \Verbatim \Configure{htf}{1}{+}{} \Configure{htf}{3}{+}{} \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Placement of Bitmap Files of HTF Symbols} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% If \`'foo.dir/' is not the directory used in the `G' script, introduce into tex4ht.env a similar `F' script for the bitmaps of character, e.g., \Verbatim Fdvips -T 14in,14in -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps Fconvert zz%%4.ps -trim -density 110x110 -transparent '#FFFFFF' %%3 Fmv %%3 foo.dir/. \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QAChapter{Representation of formulas} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Make picture's alternative text to show the original tex code} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Explicit requests: \Verbatim \newtoks\eqtoks \def\ImageAlt{\afterassignment\setimg\eqtoks} \def\setimg{\Picture*[\HCode{\the\eqtoks}]{}\the\eqtoks\EndPicture} \ImageAlt{$\alpha + \beta$} \ImageAlt{$$ \begin{array}{cc} a & b \\ c & d \end{array} $$} \EndVerbatim Implicit requests may also be tailored along the following lines, but they should be used carefully because they are not safe. \Verbatim \newtoks\eqtoks \def\AltMath#1${\eqtoks{#1}% \Picture*[\HCode{\the\eqtoks}]{ align="middle"}$#1$\EndPicture$} \Configure{$}{}{}{\expandafter\AltMath} \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Avoiding bitmaps within formulas} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--Bitmaps and graphics/Requests//% {\it Q. I found that some equations have smaller fonts than the others. I wonder why the size of the equations changes along the document.} Some equations and symbols are converted to bitmaps--I guess they are the parts you are concerned about. If you try the command \`' mzlatex filename', provided you have the xhlatex-like script of mzlatex configured, you'll get the bitmaps removed in favor of unicode symbols and mathml formulas. In such a case, one will need a mathml-enabled browser to view the outcome. If you don't care using the MS SYMBOL font, which non-pc browsers are likely not to recognize, try the command \`' htlatex filename "" "symbol/!" '. It will resolve the bitmap problem for of the characters. %%%%%%%%%%%%%%%%%%%%%%%% \QASection{Setting bitmaps within formulas} %%%%%%%%%%%%%%%%%%%%%%%% A code similar to the following one may be used to configure instructions like \`+\int_{xxx}^{yyy}+ and \`+\sum_{xxx}^{yyy}+ to produce pictorial representations within non-pictorial formulas. \Verbatim \def\SubSupOp#1{% \edef\temp{\expandafter\gobble\string#1}% \expandafter\let\csname old\temp\endcsname=#1 \edef\temp{\noexpand\SUBSUPOP{\expandafter\noexpand \csname old\temp\endcsname}}% \HLet#1=\temp } \def\gobble#1{} \def\SUBSUPOP#1{\let\curOP=#1% \let\next=\putOP \let\OPsub=\empty \let\OPsup=\empty \futurelet\nextop\getOP} \def\getOP{% \ifx _\nextop \let\next=\getsub \else\ifx ^\nextop \let\next=\getsup\fi\fi \next} \def\getsub#1#2{\def\OPsub{#2}\let\next=\putOP \futurelet\nextop\getOP} \def\getsup#1#2{\def\OPsup{#2}\let\next=\putOP \futurelet\nextop\getOP} \def\putOP{\Picture+{ align="middle"}{\curOP_{\OPsub}^{\OPsup}}\EndPicture} \SubSupOp\sum \SubSupOp\int \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QAChapter{{\tt \char92 includegraphics}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Conditional bitmap conversion for imported graphic files} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% {\it Q. How to avoid the conversion of eps files to PNG's, included through the \''\includegraphics{...}' command', each time the source file is run across tex4ht.} Compile your source with the command line \`' htlatex filename "html,info" ', and check the log file for the information provided there. In particular, the \`'\Configure{graphics*} {wmf} ...' example may be adapted for dealing with eps files, where a conditional conversion is requested within the \`'\Needs{"..."}' command (possibly indirectly through a call to a script for doing he job). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Clickable Thumbnail Images} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% {\it \--Pictures/Thumbnail//% Q. How an image can be made a thumbnail to be clicked on for bringing up the full size image.} \Verbatim \Configure{graphics*} {png} {\Link[\csname Gin@base\endcsname .png]{}{}% \Picture[pict]{\csname Gin@base\endcsname .png \space width="40px" height="40px" }% \EndLink } \EndVerbatim \Verbatim \Configure{graphics*} {eps} {\openin15=\csname Gin@base\endcsname\PictExt\relax \ifeof15 \Needs{"convert \csname Gin@base\endcsname.eps \csname Gin@base\endcsname\PictExt"}% \fi \closein15 \Link[\csname Gin@base\endcsname\PictExt]{}{} \Picture[pict]{\csname Gin@base\endcsname\PictExt \space width="40px" height="40px" }% \EndLink } \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QAChapter{Other} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \QASection{Missing Configurations} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% {\it Q. I am attempting to convert a Ph.D. thesis written in LaTeX, using a locally developed class ths.cls based on the report class, which redefines some elements of the class for local needs. The output is lacking the Table of Contents and the Lists of Figures and Tables, and the bibliography at the end is only minimally formatted.} The problems result from a lack of a configuration file for the thesis class. Try introducing a configuration file similar to the following one. \Verbatim % file name: ths.4ht \input report.4ht \EndVerbatim \EndHPage{QA} % {\tt |} % % % % \HCode{}\Link[http://www.cse.ohio-state.edu/\string % ~gurari/TeX4ht/bugfixes.html]{}{}bug fixes\EndLink % \HCode{} % \NextFile{mml.html}% \HPage{common problems for MathML} \--MathML/Do and Don't//% \rightline{\ExitHPage{up}} \Link{}{mml-prob}{}% \NextFile{mml-issues.html}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \SubSection{Some Sources of Problems for MathML} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \List{a} \item Broken math formulas, such as \`'$R=\{x|x$ is real $\}$' instead of \`'$R=\{x|x \mbox{ is real } \}$'. % \item Math mode employment for presenting nonmath content, such as \`'$$\vbox{...}$$ ' instead of \`'\begin{center}\vbox{...}\end{center}'. % \item Unmatched parentheses within entries of arrays, such as \`'\begin{array}...(... & ...)...\end{array}' instead of \`'\begin{array}...\left(... \right.& \left. ...\right)...\end{array}'. % \item Unmatched parentheses within math, such as \`'$a = b)$' instead of \`'$\left.a = b\right)$'. It is also possibl to use `mathml-' command line option without need to modify the first form, but it may result in wrong parentheses size. % \item Incorrect annotation of delimiters, such as \`'\bigl\{...\bigr|...\bigr\}' instead of \`'\bigl\{...\bigg|...\bigr\}' % % % 21/04/2017 Michal: % What does the following example mean? It produces identical code, but the recomended form doesn't % make any sense % \item % %%\relax\relax\--\string_//\string\tt/% % \relax\relax\--!//{\string\tt\char \space 95}\string\csname\space :gobble\string\endcsname/% % %%\relax\relax\--\string^///% % \relax\relax\--!//{\string\tt\char \space 94}\string\csname\space :gobble\string\endcsname/% % Empty bases for subscripts and superscripts, % such as \`'{}^{...}, {}_{...}' instead of % \`'{\csname HCode\endcsname{}}^{...}, {\csname HCode\endcsname{}}_{...}'. % % % \item Missing grouping for bases of subscripts and superscripts, such as \`'10^6' instead of \`'{10}^6'. (Some fixing of the problem can be requested through a `-cxhtmml' command line option for t4ht.c. For instance, `{\tt mzlatex file "" "" "-cxhtmml"}'.) \item Missing grouping for subscripts and suprscripts, such as \`'A_\mathit{...}' instead of \`'A_{\mathit{...}}'. (\LaTeX{} allows indirect access to the content of the operands; \TeX4ht requires direct access.) \item Use of the operators \`'^' and \`'_', instead of \`'\sb' and \`'\sp', outside the presence of \TeX4ht. (\TeX4ht becomes active only at the \`'\begin{document}' command. The \`'early_' and \`'early^' options extend this awareness to the preambles of the source latex documents.) \item If math environments nested within tabular environments cause \HPage{problems} \noindent{\bf Any explanation for the following problem?} The native LaTeX compiler has no problem with examples 1 and 2. On example 3 it complains: \`'Argument of \xhalign has an extra }'. When compiled in isolation, examples 2 and 3 produce the same tracing until \''\xhalign' is invoked. \Verbatim \tracingcommands=2 \tracingmacros=2 \documentclass{article} \begin{document} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \catcode`\@=11 \def\eqnarray{% \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% \global\@eqnswtrue \m@th \global\@eqcnt\z@ \tabskip\@centering \let\\\@eqncr $$\everycr{}\xhalign \cr } \def\xhalign#1\cr{% \halign to\displaywidth\bgroup \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel &\global\@eqcnt\@ne\hskip \tw@\arraycolsep \hfil${##}$\hfil &\global\@eqcnt\tw@ \hskip \tw@\arraycolsep $\displaystyle{##}$\hfil\tabskip\@centering &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup \tabskip\z@skip \cr } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \vbox\bgroup %% example 1 %% \begin{eqnarray} x \end{eqnarray}% \egroup \begin{tabular}{c} %% example 2 %% \vbox{% \begin{eqnarray} x \end{eqnarray}% }% \end{tabular} \begin{tabular}{c} %% example 3 %% \vbox\bgroup \begin{eqnarray} x \end{eqnarray}% \egroup \end{tabular} \end{document} \EndVerbatim \EndHPage{} enclose them within braces (for instance, \`'\begin{tabular}{c} \begin{minipage}{4in} { \begin{eqnarray} x & = & y \end{eqnarray} } \end{minipage} \end{tabular}'). \EndList \EndHPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %{\tt |} .log files of the compilations \NextFile{bugfixes.html}\HPage{bug fixes - TeX4ht} See \Link[https://tug.org/tex4ht]{}{}https://tug.org/tex4ht\EndLink\ for current status and information. You can see updates in the \Link[https://tug.org/pipermail/tex4ht-commits/]{}{}commit history\EndLink. Issues can be reported on the \Link[https://puszcza.gnu.org.ua/bugs/?group=tex4ht]{}{}bug tracker\EndLink. \EndHPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocPart{Using the System} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Typical \LaTeX{} source files can be compiled into standard HTML and XML formats in a manner similar to the way they are compiled into print formats, namely, through variations of the command \--htlatex///`{\tt htlatex {\it filename} "{\it options1}" "{\it option2}" "{\it options3}" "{\it options4}"}'. For instance, \Verbatim htlatex filename # generate HTML xhlatex filename # generate XHTML \EndVerbatim % (since these are not in current TL, leave them out for now; should restore) % mzlatex filename # XHTML with MathML % oolatex filename # OpenOffice XML with MathML % dbmlatex filename # Docbook XML with MathML For details, visit the \NextFile{\jobname-commands.html}\HPage{calling commands} \rightline{\ExitHPage{up}} \DocPart{Calling Commands} % \TableOfContents[DocChapter] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{From LaTeX\space to HTML} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \leavevmode\Link{}{features}\EndLink The translation of a \LaTeX{} source file into HTML involves of loading \''tex4ht.sty' and *.4ht style files, choosing the desirable options for the translation, compiling the source into \''dvi' code with the native \LaTeX{} engine, and postprocessing the outcome with the \''tex4ht' and \''t4ht' programs (see \Link[\RefFile{overview}]{}{}overview\EndLink{}). \--htlatex///% The \''htlatex' command loads a script which takes on itself to invoke the different steps of the process, without user intervention. The command assumes the form \centerline{{\tt htlatex filename "{\it options1}" "{\it option2}" "{\it options3}" "{\it options4}"}} \noindent where the first set of options is for the \''tex4ht.sty' and \''*.4ht' style files, the second set is for the \''tex4ht' postprocessor, the third for the \''t4ht' postprocessor, and the last one is for the \LaTeX{} compiler. For instance, \List{} \item{{\''htlatex filename'}}This command requests a translation according to the default conditions, which are set to produce HTML transitional 4.0 code. \item{{\''htlatex filename "html,2,info"'}}This command is equivalent to the previous one, specifying explicitly the option \''html' for \''tex4ht.sty' instead of doing so implicitly. In addition, the command requests a break up of the output into separate web pages, in accordance to the two top sectioning levels of the document. Moreover, it asks for a listing in the log file of the information available for the style files in use. That information, among other things, also introduces additional values available for the first list of options. % \item{{\''htlatex filename "" "dbcs/!"'}}This command requests the loading of the dbcs branch of Chinese hypertext fonts (on top of those already requested by the default setting). % \item{{% \--Bitmaps and graphics/Requests//% \--Frames///% \--Chinese///% \--Fonts/Chinese//% \--t4ht.c/-p//% \''htlatex filename "foo,frames" "" "-p"'}}This command requests \LaTeX{} to load a private configuration file, named \''foo.cfg', and to place the content and table of contents in separate frames. In addition, it asks \''t4ht' not to produce bitmaps for pictures. \item{{\''htlatex filename "" " -ciso2htf" "" "-translate-file=il2-pl"'}}This command invokes the \LaTeX{} compiler with the instruction \`'latex -translate-file=il2-plfilename'. \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Available Values for the Options} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--htlatex/available options//% The fields of {\it option1} should be separated by commas. An \`'info' field requests a listing in the .log file of many of the the available values. If the list is not empty, it must start with the entry \`'html', \`'xhtml', or a name of a private configuration file. The fields of {\it option2} and {\it options3} should be separated by spaces. The available values can be listed by executing the postprocessors \''tex4ht.c' and \''t4ht.c', respectively, without arguments (or with wrong sets of arguments). The first field of {\it option2} should be empty or a subdirectory of \''ht-fonts' (typically augmented with an exclamation mark \`'!'). A space should separate the first field from the second one, also when the first field is empty. The underlying output formats of available \''htlatex'-like commands are tailored into the commands through fields of {\it option1}. The names of these fields are defined in \''tex4ht.4ht' and \''tex4ht.usr' (see \Link{confFiles}{}\Ref{confFiles}\EndLink). These values should be of little interest to most users. \--htlatex/mk4ht//% \--mk4ht///% Different variants of the \''htlatex' command may be invoked by introducing the commands as arguments to a driver named \''mk4ht'. When provided without arguments, the driver lists the commands it recognizes. \bgroup \tt \HTable ^/ [/style="white-space: nowrap; margin-right:2em;"] mk4ht mzlatex filename "html,3" \& (htlatex filename "html,3,xhtml,mozilla" "~-cmozhtf") \CR [/style="white-space: nowrap; margin-right:2em;"] mk4ht oolatex filename \& (htlatex filename "xhtml,ooffice" "ooffice/!~-cmozhtf" "-coo") \EndHTable \egroup \--htlatex/mkht-scripts.4ht//% Alternatively, a compilation \`'latex mkht-scripts.4ht' produces different named scripts of similar functionality. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{XHTML and Unicode} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--XHTML///%' \--Unicode///%' \--tex4ht.c/-cunihtf//% \--Unicode/-utf8//% The \`'xhlatex' command is a variant of the \`'htlatex' command requesting XHTML output. It consists just of a call to \`'htlatex' with the entry \`'xhtml' in the first list of options and \`'-cvalidate' in the third list. For instance, \`'xhlatex filename' or \`'htlatex filename "xhtml"'. To request a Unicode representation of symbols, the first list of options should include the \`'uni-html4' entry, and the second list should include the \`'-cunihtf' entry preceded by space. For instance, \`'xhlatex filename "xhtml,uni-html4" " -cunihtf"'. Unicode representations of symbols in UTF-8 encoding may be requested with the entry \`'-utf8' added to the second list. For instance, \`'xhlatex filename "xhtml,charset=utf-8" " -cunihtf -utf8"'. To request expanded usage of unicode values in iso-8859-1 output employ commands similar to \centerline{\tt htlatex file "" "iso8859/1/charset/uni/!"} \noindent or introduce a similar charset path in tex4ht.env. Otherwise, non iso-8859-1 characters might obtain bitmap representations. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{XHTML with MathML} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--MathML///% \--MathML/MathPlayer//% \--mzlatex///%' \--Scripts/mzlatex//% \--xhmlatex///%' \--Scripts/xhmlatex//% \TeX4ht has different configurations for different modes of output. It is distributed with pre-tailored base configurations for translating \LaTeX{} math into MathML, and extra configurations for adjusting the outcome to Mozilla, MathPlayer, and PMathML CSS. Only presentational MathML is supported. \Verbatim mzlatex filename mzlatex filename "html,pmathml" mzlatex filename "html,mathml-" mzlatex filename "html,mathplayer" xhmlatex filename \EndVerbatim For XHTML+MathML to be served both by Mozilla and MSIE+MathPlayer use the command line option `mathplayer'. The \''mzlatex' command is a short cut representation for the command \`'htlatex filename "xhtml,mozilla" " -cmozhtf" "-cvalidate"'. It take into account special needs of browsers. The \''xhmlatex' command is a short cut representation for the command \`'htlatex filename "xhtml,mathml" " -cunihtf" "-cvalidate"'; it does not make any compromizes toward browsers. It might be worthwhile to notice some of the more \Link{mml-prob}{}common sources of problems\EndLink{} for MathML. \--mzlatex/-mathml//%' The \`'mathml-' options asks for a degraded MathML output that sidetracks some of the problems. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{OpenDocument, OpenOffice, and MS Word} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--OpenOffice///% \--OpenDocument///% \--Scripts/oolatex//% \--oolatex///% \--Word, MicroSoft///% \--Scripts/MicroSoft Word//% A translation for an OpenDocument format can be requested by the \`'\oolatex' command. The command is a variant of \''htlatex' in which the first list of options holds the entries \`'xhtml,ooffice', the second list holds the entry \`'-cmozhtf' preceded by a space, and the third list contains \`'-coo' ({\tt htlatex filename "xhtml,ooffice" "ooffice/!~-cmozhtf" "-coo -cvalidate"}). The output of a command \`'oolatex filename' is a zipped file named with a \`'.odt' extension. The OpenDocument code employs MathML for formulas, and XSL-FO for formatting. It can be viewed by the \Link[http://www.openoffice.org/]{}{}OpenOffice\EndLink{} word processor which, in turn, can export RTF and other MicroSoft-based formats (see also, Maarten Wisse, ``Hacking TeX4ht for XML Output: The Road toward a TeX to Word Convertor'', \Link[http://www.ntg.nl/maps/electromaps.html]{}{}MAPS\EndLink~28~(2002), pp.~28-35). A command of the form \`'htlatex filename "html,word" "symbol/!" "-cvalidate"' asks for HTML output tuned toward MicroSoft Word. Such a format, however, relies on bitmaps for mathematical formulas. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{DocBook and TEI} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--DocBook///% \--Scripts/dblatex//% \--Scripts/dbmlatex//% \--TEI///% \--Scripts/teilatex//% \--Scripts/teimlatex//% \--dblatex///% \--dbmlatex///% \--teilatex///% \--teimlatex///% The following commands may be used for requesting DocBook and TEI output. \bgroup \tt \HTable / dbmlatex: \& htlatex {\it filename} "xhtml,docbook-mml" " -cunihtf" "-cdocbk"\CR dblatex:\& htlatex {\it filename} "xhtml,docbook" " -cunihtf" "-cdocbk"\CR teimlatex:\& htlatex {\it filename} "xhtml,tei-mml" " -cunihtf" "-cdocbk"\CR teilatex:\& htlatex {\it filename} "xhtml,tei" " -cunihtf" "-cdocbk" \EndHTable \egroup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{JavaHelp} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--Unicode/-u10//% \--JavaHelp///% \Link[http://java.sun.com/products/javahelp/index.jsp]{}{}JavaHelp\EndLink{} is an online documentation system for use by Java-based applications. Such documents can be produced from \LaTeX{} files through commands similar to `{\tt jhlatex {\it filename}}' for JavaHelp version 2.0. The above invocation stands for `{\tt htlatex {\it filename} "html,3.2,xml,javahelp,unicode" " -cmozhtf -u10" "-dfilename-doc/ -cjavahelp"}'. The \`'-u10' asks for entity references in base 10---JavaHelp doesn't seem to support hexadecimal representations. The \Verb=-cjavahelp= invokes the JavaHelp indexer to produce the search database at `jobname-doc/jobname-jhs' with a command similar to `{\tt java -jar \$\string{HOME\string}/jh2.0/javahelp/bin/jhindexer.jar -db jobname-doc/jobname-jhs jobname*.html}'. The Java program is to be distributed with the jobname-doc directory. \Code\jhsample{XXXX}<<< \documentclass{article} \usepackage{url} \Configure{ProTex}{java,<<<>?empty>>,title,`,list,[[]]} \usepackage{makeidx} \makeindex \begin{document} \tableofcontents %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Compilation Instructions} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{itemize} \item Compile this \LaTeX{} file with the \index{jhlatex}% `{\tt jhlatex jobname "html,3"}' command. \item \index{JavaHelp URL}% The URL into the javahelp file, as provided by tex4ht, is `{\tt jobname-doc/jobname-jh.xml}'. \item The java programs should be compiled with commands similar to \index{javac}% `{\tt javac -classpath \$\string{HOME\string}/jh2.0/javahelp/lib/jh.jar program.java}'. \item The programs should run with commands similar to \index{java}% `{\tt java -classpath \$\string{HOME\string}/jh2.0/javahelp/lib/jh.jar:. program}'. \end{itemize} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Sample Program} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \<<< import java.net.URL; import javax.help.*; import javax.swing.*; public class jhprog { public static void main(String args[]) { JHelp helpViewer=null; try { ClassLoader cl = jhprog.class.getClassLoader(); URL url = HelpSet.findHelpSet(cl, "`jobname-doc/`jobname.hs"); helpViewer = new JHelp(new HelpSet(cl, url)); } catch (Exception e) { System.out.println("error"); } JFrame frame = new JFrame(); frame.setSize(500,500); frame.getContentPane().add(helpViewer); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); frame.setVisible(true); } } >?empty>> \OutputCode\ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Sample Script} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% A source file \edef\temp{\noexpand\url{jhsample.tex}}\temp{} of this document may be compiled for JavHelp 2.0 with the following script. \Verbatim jhlatex jhsample tex "\def\filename{{$1}{idx}{4dx}{ind}} \input idxmake.4ht" makeindex -o jhsample.ind jhsample.4dx jhlatex jhsample \EndVerbatim The compilation produces the following files. \begin{verbatim} jhprog.class jhsample-doc/ jhsample-doc/jhsample.html jhsample-doc/jhsample.jhm jhsample-doc/jhsample-jhi.xml jhsample-doc/jhsample.hs jhsample-doc/jhsample-jht.xml jhsample-doc/jhprog.java \end{verbatim} The following instruction can be used for compiling the program. \Verbatim javac -classpath ${HOME}/jh2.0/javahelp/lib/jh.jar jhprog.java \EndVerbatim The outcome could be viewed through the following command. \Verbatim java -cp ${\home}/jh2.0/javahelp/lib/jh.jar:. jhprog \EndVerbatim \printindex \end{document} >>> \OutputCode[tex]\jhsample % Tex4ht does the following for JavaHelp % % * Creates keys for the entries in the table of contents and the % index % * Maps the keys into th erl's of the toc and the index (jobname.jhm) % * Maps the keys to the entries referenced by the toc % (jobname-jht.xml) and to the entries referenced by the toc % (jobname-jhi.xml) % * Creates a manifest of the files (jhelpset.hs), under the % assumption that jhindexer set a search directory at jobname-jhs % `java -jar % /n/gold/5/gurari/javahelp.dir/jh2.0/javahelp/bin/jhindexer.jar % -db jobname-jhs *.html' % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Private Configuration Files} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--Files/Configuration//% \Link{}{prvCfgFiles}\EndLink The leading entry, in the first list of options of the \''htlatex'-like commands, can equal \`'html' or \`'xhtml'. If this is not the case, the entry is assumed to be the name of a configuration file. The extension \`'cfg' is assumed for names of configuration files that are listed without their extension. A configuration file should take the following form for \LaTeX{} files. \Template ...{\sl early definitions}...\cr {\string\Preamble\string{{\sl options}\string}}\cr ...{\sl definitions}...\cr {\string\begin\string{document\string}}\cr ...{\sl insertions into the header of the html file}...\cr {\string\EndPreamble} \EndTemplate\ShowPar It is up to the user to decide the distribution of entries between the \''\Preamble' and the \''htlatex'-like commands. \Example{} The command \`'htlatex myfile "mycfg,2"' requests the compilation of a file named myfile.tex, in the presence of a configuration file named mycfg.cfg. The configuration file might have the following content. \Verbatim \Preamble{html} \begin{document} \Css{body { color : red; }} \EndPreamble \EndVerbatim \EndExample \Notes \List{*} \item Notice that for a \LaTeX{} file the \''\begin{document}' instruction should be present both in the configuration file and the source file. \item Instructions defined within a source file may be redefined in a configuration file. Such a feature enables to keep source files intact for compilation to different formats by different tools. For instance, a definition of the form \''\renewcommand\mycommand{...}' within a configuration file provided for the following \LaTeX{} source. \Verbatim \documentclass{...} \newcommand\mycommand{...} \begin{document} Use \mycommand{...} \end{document} \EndVerbatim \EndList \EndNotes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Creating Private Command Lines} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--mkht.4ht/Configuration//% \--Scripts/tailored//% A htlatex-like script {\tt foolatex.bat} can be obtained from the compilation under \LaTeX{} of a file similar to the following one. \Verbatim \def\script{bat} \input mkht.4ht \one{,html,next,3} \two{-ic:\tex4ht\texmf\tex4ht\ht-fonts\#1 -ic:\tex4ht\texmf\tex4ht\ht-fonts\symbol\!} \three{#1 -dc:\my\dir} \make{foo} \end{document} \EndVerbatim A call of the form \centerline{\tt foolatex filename} is then equivalent to a call of the following form. \centerline{\tt htlatex filename "html,next,3" "symbol/!" "-dc:\string\my\string\dir"} Scripts obtained in such a manner can embed parameters within their bodies instead of expecting the parameters to be provided in command lines. Details regarding the available options can be found by compiling under \LaTeX{} a file of the following form. \centerline{\tt\string\input\space mkht.4ht \string\end\string{document\string}} The compilation requires the {\tt ProTex.sty} and {\tt AlProTex.sty} files available at \Link[http://www.cse.ohio-state.edu/\string ~gurari/systems.html.]{}{}{\tt http://www.cse.ohio-state.edu/\string ~gurari/systems.html}\EndLink. %%%%%%%%%%%%%%%%%%%% \DocChapter{An Insight into the Commands} %%%%%%%%%%%%%%%%%%%% Given a \LaTeX{} file \Code\xxxx{XXXX}<<< \documentclass{article} \begin{document} .................. \end{document} >>> \ShowCode-\xxxx\ShowPar \noindent the `{\tt htlatex {\it filename}}' command produces a call `{\tt latex {\it filename}}' to \LaTeX{} on an implicit file of the following form. \Code\xxxx{XXXX}<<< \documentclass{article} ?.@\usepackage{tex4ht}@ \begin{document} .................. \end{document} >>> \ShowCode-\xxxx\ShowPar \noindent Similarly, the command `{\tt htlatex {\it filename} {\tt"}{\it options}{\tt"}}' produces a call to a `{\tt latex {\it filename}}' command on an implicit file of the following form. \Code\xxxx{XXXX}<<< \documentclass{article} \usepackage[?.@options@]{tex4ht} \begin{document} .................. \end{document} >>> \ShowCode-\xxxx\ShowIndent \--ht///% The command `{\tt ht latex {\it filename} }' may be used, instead of the `{\tt htlatex {\it filename} {\tt"}{\it options}{\tt"}}' command, in cases that the \''\usepackage' instruction is explicitly introduced into the source files. %%%%%%%%%%%%%%%%%%%% \DocChapter{A Deeper Insight} %%%%%%%%%%%%%%%%%%%% From the perspective of \TeX4ht, the \''htlatex'-like commands, and the \''\usepackage', are indirect approaches for getting \LaTeX{} files of the following form. Such files can be explicitly provided for compilations requested through the `{\tt ht latex {\it filename}}' command. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Code\xxxx{XXXX}<<< \documentclass{article} ..... \input tex4ht.sty ..... \Preamble{?.@options@} ..... \begin{document} ..... \EndPreamble .................. \end{document} >>> \ShowCode-\xxxx \ShowPar %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% \DocChapter{\TeX, Con\TeX t, and \TeX i} %%%%%%%%%%%%%%%%%%%% \--\TeX///% \--Scripts/\TeX//% \--\TeX i///% \--Scripts/\TeX i//% \--ht///\--httex///% \--Scripts/ht//% Commands similar to those offered for \LaTeX{} are also offered for \TeX{} (dbmtex, dbtex, ht, httex, mztex, ootex, t4ht, teimtex, teitex, tex4ht, xhmtex, xhtex) and \TeX i (dbmtexi, dbtexi, httexi, mztexi, ootexi, teimtexi, teitexi, xhmtexi, xhtexi). In the case of \TeX{}, the fragment of code \`'\csname tex4ht\endcsname' should be introduced by the user into the source file, after the preamble of the file where the document definitions reside (\HPage{example} \rightline{\ExitHPage{}} \SubSection{An Example for Using httex} A system invocation of the form \`'httex foo "xhtml,html4.4ht,unicode.4ht,mathml.4ht" "unicode/!"' for a file \''foo.tex' of the following form. \Verbatim \input amstex \documentstyle{amsppt} \csname tex4ht\endcsname \document ..... \enddocument \EndVerbatim\EndHPage{}). In the case of \TeX i, such a code fragment is introduced implicitly. The private configuration files are similar to those of \LaTeX{}, with the instruction `{\tt \string\begin\string{document\string}}' excluded. \Template ...\cr {\string\Preamble\string{{\sl options}\string}}\cr ...\cr {\string\begin\string{document\string}}\cr ...\cr {\string\EndPreamble}\cr ... \EndTemplate The `{\tt ht tex {\it filename} }' and `{\tt ht texi {\it filename} }' commands may apply for \TeX{} and \TeX i{} sources that embed such code fragments in their body. The embeded code should replace the \`'\csname tex4ht\endcsname' fragment in \TeX{} sources, be palces at the strat of the files in \TeX i sources, and not include the \Verb+\begin{document}+ instruction. \--ConTeXt///% \--htcontext///% For \Link[http://www.pragma-ade.com/]{}{}Con\TeX t\EndLink{} similar instructions apply with suffixes `{\tt context}' instead of `{\tt latex}', `{\tt tex}', or `{\tt texi}'. For instance, `{\tt htcontext'} . %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Other Options} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \List{*} \item \--XwTeX///% XeTeX files can be compiled with htlatex-like instructions (e.g., htxelatex, htxetex, mzxelatex). Currently only partial support is provided and only TeX-based fonts are handled. \item \--JsMath///% A \Link[http://www.math.union.edu/\string ~dpvc/jsMath/welcome.html]{}{}jsMath\EndLink{} mode of output may be requested with instructions similar to the following one. \centerline{\tt htlatex file "xhtml,jsmath" " -cmozhtf"} \item \--Bitmaps and graphics/png//% The dvipng utility might be activated for bitmap constructions through a request `-cdvipng' in the third options list. For instance, \centerline{\tt htlatex file "" "" "-cdvipng"} This utility is reported to produce fast high quality output with much smaller files than other convertors. \item \--Speech///% TeX4ht offers also \Link[http://www.cse.ohio-state.edu/\string~gurari/laspeak]{}{}speech\EndLink{} output formats. \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Validation} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--Validation///% The outcome of the translations should be checked by validators for proper syntax. Typically, with the presence of validators, errors are easy to detect and correct, but they require human intervention. \TeX4ht doesn't offer a built-in parser to verify the correctness of the outcome. However, external validator(s) can quite easily be integrated into the compilation process. %%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Recommendations} %%%%%%%%%%%%%%%%%%%%%%%%%%%% To keep with the spirit of \LaTeX{} and hypertext, in which style is assumed to be separated from content, the users are encouraged to avoid inserting \TeX4ht code into their source files. Instead, they should place their modifications, to the default settings, within private configuration files to be loaded by htlatex-like commands. On the other hand, it should be noted that hypertext markings should adhere to strict rules specified by different standards. Consequently, it is strongly advised to check the output obtained from the default configurations, before trying to tailor new ones. \EndHPage{hts} section. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \SubSection{References} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The main features of \TeX4ht are described in: \List{*} \item % \Picture{http://www.awl.com/coverimage/0201433117.jpg align="right"} M.~Goossens and S.~Rahtz with E.~Gurari, R.~Moore, and R.~Sutor, {\sl The \LaTeX{} Web Companion}, Addison-Wesley, 1999. % % doa % \item % Fabrice Popineau, % \Link[http://www.gutenberg.eu.org/pub/GUTenberg/publicationsPDF/37-popineau.pdf]{}{}{\sl Affichez vos documents \LaTeX{} sur le Web avec \TeX4ht}\EndLink, % Cahiers GUTenberg 37--38, December 2000, 5--43 (French, PDF). % \item Gustavo Cevolani, \Link[http://www.guit.sssup.it/guitmeeting/2005/articoli/cevolani.pdf]{}{}{\sl Introduzione a \TeX4ht}\EndLink, Proceedings of the 2004 Italian TUG meeting. % \item \HPage{Within} \rightline{\ExitHPage{up}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocPart{Configurations} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \TableOfContents[DocChapter] \DocChapter{Background} TeX4ht handles correctly only macros whose logical meanings are directly or indirectly declared in TeX4ht configurations. For instance, without extra configurations, TeX4ht will provide correct translation for \Verbatim \divide{a}{b} \EndVerbatim under a user's definition of the form \Verbatim \def\divide#1#2{{#1\over #2}} \EndVerbatim but not under a definition of the form \Verbatim \def\divide#1#2{\vbox{\hbox{$#1$}\hrule\hbox{$#2$}}} \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Recommendations} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--PostScript///% \--PDF///% It is highly recommended to leave source \LaTeX{} and \TeX{} files intact, and not introduce \TeX4ht configurations there. The configurations should be introduced indirectly in private \Link{prvCfgFiles}{}configuration files\EndLink. Source files containing just native \LaTeX{} and \TeX{} code permit their compilation to different output formats, including PostScript and PDF, by \TeX4ht and other tools. Packages used by the general \LaTeX{} community typically provide better support than one can expect from tailoring private commands and configurations for such commands. It is also expected to take less effort to learn the features of existing packages than designing new ones. Consequently, one is advised to investigate available resources before committing to work on private features. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Low-Level Features} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The following are some of the more useful underlying commands of \TeX4ht. \List{button} \Item {{\tt \--HCode//{{\tt\char 92}}/\string\HCode\string{...\string}}}% \ContItem %%\relax\relax\--#\relax///% \relax\relax\--!//{\string\tt\char\space 35 }\string\csname\space :gobble\string\endcsname/% This command allows only for the expansion of macros, before sending its content to the output. The instruction \''\Hnewline' may be introduced there for requesting line breaks, and the command \Verb'\#' may be used for the sharp symbol \`'#'. \Code\xxxx{XXXX}<<< Two lines of text \HCode{
} separated by a horizontal line. You probably don't want a `
'. >>> \ShowCode-\xxxx\ShowIndent \Item {{\tt \--HPage//{{\tt\char 92}}/ \string\HPage\string{{\sl anchor}\string}{\sl content}\string \EndHPage\string{\string}}}% \ContItem This command dedicates a hypertext page for the specified content, to be accessed through the given button. \--ExitHPage//{{\tt\char 92}}/The \''\ExitHPage{...}' command may be employed within the content to create exit buttons. \Code\xxxx{XXXX}<<< ...... ............ \HPage{in} ................ [\ExitHPage{out}] ................ \EndHPage{} ................... >>> \ShowCode-\xxxx\ShowIndent \Item {\tt \--Link//{{\tt\char 92}}/\string\Link[{\it target-file arguments}]\string{{\it target-loc}\string}\string{{\it cur-loc}\string}{\it anchor}\string\EndLink}% \ContItem This command requests an anchor that links to `{\it target-file}\''#'{\it target-loc}', and marks the current location with the name `{\it cur-loc}'. The component \`'[...]' is optional when it is empty, and the target file need not be mentioned if it is created from the current source file. \Code\xxxx{XXXX}<<< \HPage{} ...................... \Link[http://www.tug.org/]{}{XX}\TeX{} Users Group Home Page\EndLink ...................... \EndHPage{} ...................... \Link{XX}{}...\EndLink >>> \ShowCode-\xxxx\ShowIndent %%%% \relax\relax\--\string~//\string\string/% \relax\relax\--!//{\string\tt\char 126}\string\csname\space :gobble\string\endcsname/% %%\relax\relax\--\string_//\string\tt\string\string/% \relax\relax\--!//{\string\tt\char \space 95}\string\csname\space :gobble\string\endcsname/% %\relax\relax\--!//\string\%\string\csname\space :gobble\string\endcsname/% \relax\relax\--!//{\string\tt\char \space 37}\string\csname\space :gobble\string\endcsname/% The characters \`'~', \`'_', and~\`'%' can be indirectly included through the code~\`'\string ~',~\`'\string _', and~\`'\%', respectively. % \Item % {{\tt \--ifHTml//{{\tt\char 92}}/\string\ifHtml % ...tex4ht code... % \string\else ...non tex4ht code... \string\fi}} % (or {{\tt \string\ifHtml\string\UnDef % ...non tex4ht code... \string\else ...tex4ht code... \string\fi}}) % \ContItem % % This command provides the means to conditionally provide content % to the HTML and non-HTML modes. The \''\else' is optional when % the false part is empty. % \Item {{\tt \--ifOption//{{\tt\char 92}}/\string\ifOption\string{...\string }\string{{\it true-part}\string }\string {{\it false-part}\string}}}% \ContItem \EndList \DocChapter{Sectioning and Tables of Contents} \--Sectioning///\--Tables of Contents///\--Options, package/1, 2, 3, 4//\--Options, package/next//\--Options, package/sections+//A non-leading command line argument \`'1', `{\tt \HPageButton[]{2}}', \`'3', or \`'4' asks for a tree-structured set of files, reflecting on the sectioning of the document to the specified depth. Sequential prev-next links within the hierarchy, instead of the default hierarchical ones, can be requested with the \`'next' parameter. The parameter \`'sections+' creates titles for the sectioning commands that link to the tables of contents. \BeginHPage[]{2} \ExitHPage{up} \Code\xxxx{XXXX}<<< \documentclass{book} \usepackage[html,?..2.]{tex4ht} \begin{document} \chapter{...} ...... \section{...} ...... \section{...} ...... \chapter{...} ...... \section{...} ...... \end{document} >>> \ShowCode-\xxxx\ShowIndent \EndHPage{2} Finer control is possible with the following commands. \List{button} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Item{\tt {\INDEX\string\CutAt\string{{\sl at-unit},{\sl until-unit-1},{\sl until-unit-2},...\string}}}% \ContItem This directive asks the sectioning commands {\tt\char92{\sl at-unit}} to place their units in separate hypertext pages. The pages are to terminate upon encountering any of the commands in the list {\tt\char92{\sl at-unit}}, {\tt\char92{\sl until-unit-1}}, {\tt\char92{\sl until-unit-2}},... \Code\xxxx{XXXX}<<< ?..\CutAt{section,chapter}. \tableofcontents \chapter{...} ...... \section{...} ...... \section{...} ...... \chapter{...} ...... \section{...} ...... >>> \ShowCode-\xxxx\ShowIndent Within the \''\CutAt' instruction, the starred commands of \LaTeX{} should be referenced with the prefix \`'like' instead of the postfix of \`'*', and appendices through the entry \`'appendix'. A plus character \`'+', before the leading parameter, requests buttons that link to the hypertext pages; e.g., \`'\CutAt{+likesection}'. The end points of sections not specified within the \''\CutAt' commands can be made known with instructions of the form `{\tt \string \Configure\string {{\it endunit}\string}\string {{\it unit},{\it unit},...\string}}'. \Item{\tt\INDEX\string\tableofcontents[{\sl unit-1},{\sl unit-2},...]} \ContItem This variant of the \''\tableofcontents' command specifies the kinds of entries that should be included in the tables. \Item{\tt\INDEX\string\TocAt\string{{\sl at-unit},{\sl unit-1},{\sl unit-2},...,{\sl {\tt/}until-unit-1},{\sl {\tt/}until-unit-2},...\string}} \ContItem This directive asks for a local table of contents, at each division created by the {\tt\char92{\sl at-unit}} command. The tables should include entries of types {\tt\char92{\sl unit-1}}, {\tt\char92{\sl unit-2}},..., and terminate upon reaching any of the {\tt\char92{\sl at-unit}}, {\tt\char92{\sl until-unit-1}}, {\tt\char92{\sl until-unit-2}},... commands. \--Sectioning/like//Within the \''\TocAt' instruction, the starred commands of \LaTeX{} should be referenced with the prefix \`'like' instead of the postfix of \`'*', and appendices through the entry \`'appendix'. \Code\xxxx{XXXX}<<< ?..\TocAt{section,subsection,/likechapter}. \CutAt{subsection,section,likechapter} \section{...} ... \subsection{...} ... \section{...} ... \subsection{...} ... \subsection{...} ... \chapter*{...} \section*{...} ... >>> \ShowCode-\xxxx\ShowIndent A postfix \`'*' on \''\CutAt' asks the tables of contents to appear after the preambles of the logical unit. \Code\xxxx{XXXX}<<< ?..\TocAt*{section,subsection,/likechapter}. \CutAt{subsection,section,likechapter} \section{...} ... \subsection{...} ... \section{...} ... \subsection{...} ... \subsection{...} ... \chapter*{...} \section*{...} ... >>> \ShowCode-\xxxx\ShowIndent A postfix \`'-' on \''\CutAt' asks to produce the local tables of contents only on demand, through {\tt Cut{\it section-type}} commands. The only \''\ConfigureToc' commands that count are those before the \''\TocAt' instruction. \Item {\tt \INDEX\string\ConfigureToc \string{{\sl unit}\string} \string{{\sl before-mark}\string} \string{{\sl before-title}\string} \string{{\sl before-page-number}\string} \string{{\sl at-end}\string} }% \ContItem This command determines how entries of the specified unit will appear in the tables of contents. The entries include only fields corresponding to nonempty fields in the \''\ConfigureToc' commands. \Code\xxxx{XXXX}<<< \ConfigureToc{section} {} {$\bullet$~} {} {~~ } \tableofcontents[section] >>> \ShowCode-\xxxx\ShowIndent \Item {\tt \--Configure/tableofcontents/{{\tt\char92}}/% \string\Configure \string{tableofcontents\string} \string{{\sl before-toc}\string} \string{{\sl end-of-toc}\string} \string{{\sl after-toc}\string} \string{{\sl before-nonindented-par}\string} \string{{\sl before-indented-par}\string} }% \ContItem The {\sl end-of-toc} is inserted at the end of the internal environment of the tables. The {\sl after-toc} is included after leaving the internal environment. \Item {\tt \--Configure/TocAt/{{\tt\char92}}/% \string\Configure \string{TocAt\string} \string{{\sl before-toc}\string} \string{{\sl after-toc}\string} }% \ContItem \Item {\tt \--Configure/TocAt*/{{\tt\char92}}/% \string\Configure \string{TocAt*\string} \string{{\sl before-toc}\string} \string{{\sl after-toc}\string} }% \ContItem \Item {\tt \--Configure/Sectioning units/{{\tt\char92}}/% \string\Configure \string{{\sl unit}\string} \string{{\sl top}\string} \string{{\sl bottom}\string} \string{{\sl before-title}\string} \string{{\sl after-title}\string} }% \ContItem This command determines the content to be inserted at the mentioned locations of the specified units. \Code\xxxx{XXXX}<<< ?..\Configure{.chapter?..}. ?..{.\HCode{
}?..}. ?..{.\HCode{
}?..}. ?..{.\HCode{

}\chaptername ~\thechapter\HCode{
}?..}. ?..{.\HCode{

}?..}. \chapter{...} .... \chapter{...} .... >>> \ShowCode-\xxxx\ShowIndent \Item {\tt \--Configure/CutAt/{{\tt\char92}}/% \string\Configure \string{CutAt\string} \string{{\sl unit}\string} \string{{\sl before-button}\string} \string{{\sl after-button}\string} }% \ContItem \Item {\tt \--Configure/+CutAt/{{\tt\char92}}/% \string\Configure \string{+CutAt\string} \string{{\sl unit}\string} \string{{\sl before-button}\string} \string{{\sl after-button}\string} }% \ContItem \Item {\tt \INDEX\string\NewSection {\char92}{\sl unit} \string{{\sl mark-for-toc}\string} }% \ContItem This directive introduces a sectioning command {\tt\char 92{\sl unit}}, which submits {\sl mark-for-toc} to the tables of contents. \Code\xxxx{XXXX}<<< \newcounter{c} \NewSection\X {\thec} \Configure{X} {\addtocounter{c}{1}\HCode{

}[\thec] } {\HCode{

}} {}{} >>> \ShowCode-\xxxx\ShowIndent \Item{\tt \--Configure/writetoc/{{\tt\char92}}/% \string\Configure\string{writetoc\string} \string{{\sl definitions-for-the-writing-environment}\string}} \ContItem \TeX4ht expands and then writes the sectioning titles into an auxiliary file, and it might encounter there problems from macros that are not fit for such conditions or for inclusion in the table of contents. The current configuration instruction allows to locally modify the behavior of macros for the writing phase. For instance, the instruction \`'\section{Foo \\ bar}' suggests a configuration similar to \`'\Configure{writetoc}{\let\\\space}'. % (or just a \''\protect' on \''\flushright'). \Item{\tt \--Configure/crosslinks/{{\tt\char92}}/% \string\Configure\string{crosslinks\string} \string{{\sl left-delimiter}\string} \string{{\sl right-delimiter}\string} \string{{\sl next}\string} \string{{\sl prev}\string} \string{{\sl prev-tail}\string} \string{{\sl front}\string} \string{{\sl tail}\string} \string{{\sl up}\string}}% \ContItem This command configures the appearance of the cross-links between hypertext pages obtained for sectioning commands. \Code\xxxx{XXXX}<<< \Configure{crosslinks} {}{}{$\scriptstyle\Rightarrow$} {$\scriptstyle\Leftarrow$} {}{}{}{$\scriptstyle\Uparrow$} >>> \ShowCode-\xxxx\ShowIndent \Item{\tt \--Configure/crosslinks+/{{\tt\char92}}/% \string\Configure\string{crosslinks+\string} \string{{\sl before-top-links}\string} \string{{\sl after-top-links}\string} \string{{\sl before-bottom-links}\string} \string{{\sl after-bottob-links}\string}}% \ContItem %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \EndList \DocChapter{Tables} \--Tables///% \--Tables/number of compilations//% Tables with \''\multicolum' entries need a few \LaTeX{} compilations to stabilize. \List{button} \Item {\tt \--Configure/tabular/{{\tt\char92}}/% \--Configure/array/{{\tt\char92}}/% \--Configure/eqnarray/{{\tt\char92}}/% \string\Configure\string{{\it table}\string} \string{{\it before-tbl}\string} \string{{\it after-tbl}\string} \string{{\it before-row}\string} \string{{\it after-row}\string} \string{{\it before-entry}\string} \string{{\it after-entry}\string}}% \ContItem \--HRow//{{\tt\char92}}/% \--HCol//{{\tt\char92}}/% The parameter {\it table} stands for \`'tabular', \`'array', or \`'eqnarray'. The macros \''\HRow' and \''\HCol' provide the row and column indexes, respectively. The macro \''\HMultispan' records the number of columns. \EXAMPLE \Same
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3)
\EndSame \Css{.try{ border:solid 4px; }} \ContEXAMPLE \Verbatim \Configure{tabular} {\HCode{}} {\HCode{
}} {\HCode{}} {\HCode{}} {\HCode{ \ifnum \HMultispan>1 colspan="\HMultispan"\fi}(\HRow,\HCol)} {\HCode{}} \Css{.try{ border:solid 4px; }} \begin{tabular}{lll} &&\\ && \end{tabular} \EndVerbatim \EndEXAMPLE \EndList \DocChapter{Lists and Environments} \--Environments///% \--Lists///% The appearances of lists and {\tt\string\begin}-{\tt\string\end} environments are configured with the following commands. \List{button} \Item {\tt\INDEX\string\ConfigureList \string{{\sl list-name}\string} \string{{\sl before-list}\string} \string{{\sl after-list}\string} \string{{\sl before-label}\string} \string{{\sl after-label}\string}}% \ContItem \--ConfigureList/list/{{\tt\char92}}/% \--ConfigureList/trivlist/{{\tt\char92}}/% Environments that directly or indirectly are built on top of the \`'\begin{list}...\end{list}' and \`'\begin{trivlist}...\end{trivlist}' environments, inherit the appearances of these base environments. The \''\ConfigureList' command may be used to change the default configuration. \Code\xxxx{XXXX}<<< \ConfigureList {description} {} {\HCode{
}} {\HCode{
}} {\HCode{}} >>> \ShowCode-\xxxx\ShowIndent \--ConfigureList/description/{{\tt\char92}}/% \--ConfigureList/itemize/{{\tt\char92}}/% \--ConfigureList/enumerate/{{\tt\char92}}/% The \`'description', \`'itemize', and \`'enumerate' environments are the more obvious extensions of the \`'list' and \`'trivlist' environments. \--ConfigureList/verse/{{\tt\char92}}/% \--ConfigureList/quotation/{{\tt\char92}}/% \--ConfigureList/quote/{{\tt\char92}}/% \--ConfigureList/flushleft/{{\tt\char92}}/% \--ConfigureList/flushright/{{\tt\char92}}/% The \`'verse', \`'quotation', \`'quote', \`'center', \`'flushleft', and \`'flushright' are examples of non obvious extensions. The latter extensions are made up in \LaTeX{} from a single-item lists, to get the appearance of displayed paragraphs. \Item {\tt \INDEX\string \ConfigureEnv \string{{\sl environment-name}\string} \string{{\sl before-environment}\string} \string{{\sl after-environment}\string} \string{{\sl before-list}\string} \string{{\sl after-list}\string}} \ContItem If either {\it before-environment} or {\it after-environment} is not empty, then these parameters specify insertions that should be placed before and after the specified environment. \Code\xxxx{XXXX}<<< \ConfigureEnv {tabular} {\HCode{
}} {\HCode{
}} {} {} >>> \ShowCode-\xxxx\ShowIndent If the parameter {\sl before-list} or the parameter {\sl after-list} is not empty, a call is made to {{\tt\char92}\bf ConfigureList \tt \string{{\sl list-name}\string} \string{{\sl before-list}\string} \string{{\sl before-label}\string} \string{\string} \string{\string} } for configuring the base-list of the environment. \Code\xxxx{XXXX}<<< \ConfigureEnv {flushright} {\HCode{
}} {\HCode{
}} {\HCode{

}} {\HCode{

}} >>> \ShowCode-\xxxx\ShowIndent \EndList \DocChapter{Pictures} \--Pictures///The next command imports external pictures, and the two commands that follow request pictorial representations for local content. The attributes, and the replacement parameters with their enclosing rectangular brackets, are optional. \List{button} \Item{\tt \INDEX\string\Picture[{\sl replacement-for-textual-browser}]\string{{\sl file-name attributes}\string}}% \ContItem This command references the specified pictorial file. The component `{\tt [{\sl replacement-for-textual-browsers}]}' is optional. \EXAMPLE \Picture[**OSU logo**]{% http://www.cse.ohio-state.edu/images/OSU.gif} \ContEXAMPLE \''\Picture[**OSU logo**]{http://www.cse.ohio-state.edu/images/OSU.gif}' \EndEXAMPLE \Item{\tt\string\Picture+[{\sl replacement-for-text-browsers}]\string{{\sl file-name attributes}\string}{\sl content}\string\EndPicture} % \ContItem This command produces a picture for the provided content, stores the outcome within a file of the specified name, and creates a reference to the picture within the document. \Code\xxxx{XXXX}<<< \Picture+{ align="right"}% Text within a picture. \EndPicture >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE The component `{\tt [{\sl replacement-for-textual-browser}]}' and the file name can be omitted. If no name is provided for the file, the system assigns a name of its own. \Item{\tt\string\Picture*[{\sl replacement-for-text-browsers}]\string{{\sl file-name attributes}\string}{\sl content}\string\EndPicture} % \ContItem This is a variant of the previous command, that produces a picture of the content within a vertical box. \EndList \DocChapter{Mathematical Formulas} %%\relax\relax\--(//{{\tt\char92}}/% \relax\relax\--!//{\string\tt\relax\char \space 92 (}\string\csname\space :gobble\string\endcsname/% \--Math environments///% %\relax\relax\--[//{{\tt \char92}}/% \relax\relax\--(//{\string\tt\relax\char \space 92 [}\string\csname\space :gobble\string\endcsname/% %%\relax\relax\--\string$\relax///% \relax\relax\--!//{\string\tt\char\space 36 }\string\csname\space :gobble\string\endcsname/% %%\relax\relax\--\string$\string\string\string$///% \relax\relax\--!//{\string\tt\char\space 36\char\space 36}\string\csname\space :gobble\string\endcsname/% In the default setting, the math environments \`'\(...\)', and the display math environments \`'\[...\]' and \`'$$...$$', request pictorial representations for their content. On the other hand, the math environments \`'$...$' ask for no special treatment. Simple features like mathematical symbols, subscripts, and superscripts, are translated into html, and more complex entities like roots and fractions are translated into pictures (\HPage{example} \EXAMPLE $a^x + \frac{b}{c+d}$ and \(a^x + \frac{b}{c+d}\) \ContEXAMPLE \''$a^x + \frac{b}{c+d}$ and \(a^x + \frac{b}{c+d}\)' \EndEXAMPLE \ExitHPage{up} \EndHPage{}). \List{button} \Item {\tt \--Configure/[]/{{\tt\char92}}/% \--Configure/()/{{\tt\char92}}/% \--Configure/{{\tt\char36\char36}}/{{\tt\char92}}/% \--Configure/{{\tt\char36\space}}/{{\tt\char92}}/% \string\Configure \string{[]\string} \string{{\it before}\string$\string${\it at-start}\string} \string{{\it at-end}\string$\string${\it after}\string}% }, {\tt \string\Configure \string{()\string}% \string{{\it before}\string${\it at-start}\string}% \string{{\it at-end}\string${\it after}\string}%% }\BR {\tt \string\Configure \string{\string$\string$\string}% \string{{\it before}\string}% \string{{\it after}\string}% \string{{\it at-start}\string}% }\BR {\tt \string\Configure \string{\string$\string}% \string{{\it before}\string}% \string{{\it after}\string}% \string{{\it at-start}\string}% } \ContItem \Code\xxxx{XXXX}<<< \Configure{[]}{An equation: $$}{$$} \[a^b\] >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE \--PicDisplay//{{\tt\char92}}/% \--PicMath//{{\tt\char92}}/% The default configuration is obtained from\BR \`'\Configure{[]}{\PicDisplay$$}{$$\EndPicDisplay}',\BR \`'\Configure{$$}{\PicDisplay}{\EndPicDisplay}{}', \BR \`'\Configure{()}{\PicMath$}{$\EndPicMath}', and\BR \`'\Configure{$}{}{}{}'. \Item {\tt \--Configure/SUB/{{\tt\char92}}/% \--Configure/SUP/{{\tt\char92}}/% \--Configure/SUBSUP/{{\tt\char92}}/% \string\Configure \string{SUB\string}% \string{{\it before}\string}% \string{{\it after}\string}% }\BR {\tt \string\Configure \string{SUP\string}% \string{{\it before}\string}% \string{{\it after}\string}% }\BR {\tt \string\Configure \string{SUBSUP\string}% \string{{\it before}\string}% \string{{\it between}\string}% \string{{\it after}\string}% } \ContItem These commands configure subscripts appearing in isolation, superscripts given in isolation, and subscripts provided together with superscripts. If the last configuration command gets empty parameters, the corresponding cases use the settings that apply to isolated subscripts and superscripts. The default setting results from\BR \`'\Configure{SUB}{\HCode{}}{\HCode{}}', \BR \`'\Configure{SUP}{\HCode{}}{\HCode{}}', and\BR \`'\Configure{SUBSUP}{}{}'. \Item{\tt %%\relax\relax\--\string_//\string\tt/% \relax\relax\--!//{\string\tt\char \space 95}\string\csname\space :gobble\string\endcsname/% %%\relax\relax\--\string^///% \relax\relax\--!//{\string\tt\char \space 94}\string\csname\space :gobble\string\endcsname/% \--Options, package/no\string\tt\space\string\string\string_//% \--Options, package/no\string\tt\space\string\string\string^//% no\string_}, {\tt no\string^}\ContItem \TeX4ht modifies the implementation of \`'_' and \`'^', to create hypertext subscripts and superscripts in non pictorial formulas---a modification that occasionally might clash with other interpretations in the source documents. The current package parameters ask \TeX4ht not to modify the implementation of these commands, respectively. \EndList \DocChapter{Paragraphs} \--Paragraphs///The insertions of code at paragraph breaks are controlled by the following commands. \List{button} \Item {\tt \--Configure/HtmlPar/{{\tt\char92}}/% \--Par//{{\tt \char92}}/% \string\Configure \string{HtmlPar\string} \string{{\sl noindent-P}\string} \string{{\sl indent-P}\string} \string{{\sl from-noindent-P}\string} \string{{\sl from-indent-P}\string}} \BR {\tt \string\EndP} \ContItem The first two parameters of this command determine the kind of code to be inserted at the start of, respectively, nonindented and indented paragraphs. \EXAMPLE \ShowPar \everypar{\HtmlPar} \Configure{HtmlPar} {} {* } {} {} \par 1\par 2\par 3\par 4\par 5 \ContEXAMPLE \Code\xxxx{XXXX}<<< \Configure{HtmlPar} {} {* } {} {} \par 1\par 2\par 3\par 4\par 5 >>> \ShowCode-\xxxx\ShowIndent \EndEXAMPLE The last two parameters specify the code to be stored in \''\EndP', when the first two parameters are introduced, respectively, into the output. \EXAMPLE \ShowPar \everypar{\HtmlPar} \Configure{HtmlPar} {[ } {\EndP [ } { ]} { ]} \par 1\par 2\par 3\par 4\par 5 \Configure{HtmlPar} {}{\EndP} {}{} \par\leavevmode \ContEXAMPLE \Code\xxxx{XXXX}<<< \Configure{HtmlPar} {[ } {\EndP [ } { ]} { ]} \par 1\par 2\par 3\par 4\par 5 \Configure{HtmlPar} {}{\EndP} {}{} \par\leavevmode >>> \ShowCode-\xxxx\ShowIndent \EndEXAMPLE The default setting assumes a configuration of the form \`'\Configure{HtmlPar}{\HCode{

}} {\HCode{

}} {}{}' (and it is implemented through an \`'\everypar{\HtmlPar}' command). \Item {\tt \--IgnorePar//{{\tt \char92}}/ \string\IgnorePar}\ContItem This command asks that no code will be inserted at the beginning of the next paragraph. \Item {\tt \--ShowPar//{{\tt \char92}}/ \string\ShowPar}\ContItem This command asks that code will be inserted at the beginning of the next paragraph. \Item {\tt \--IgnoreIndent//{{\tt \char92}}/ \string\IgnoreIndent}\ContItem This command asks to treat the next paragraph as nonindented. \Item {\tt \--Indent//{{\tt \char92}}/ \string\ShowIndent}\ContItem This command asks to treat the following paragraphs as indented. \EndList \DocChapter{Cascade Style Sheets (CSS)} \--Cascade Style Sheets (CSS)///% Cascade style sheets attach presentations to the content of hypertext pages, in a manner similar to the way that \`'.sty' files define the presentations to the content of source \LaTeX{} files. \TeX4ht produces a CSS file for each document that is translated to HTML transitional 4.0 code. The following are related commands. \List{button} \Item {\tt \string\Css\string{{\sl content}\string}% }% \ContItem This command sends its content to the CSS file of the document. \Item {\tt \INDEX \string\Css\space{\sl content}\string\EndCss }% \ContItem This command introduces the specified content, at the location of the command as an inline CSS code fragment. The content should not start with the left brace character \`'{'. \Item {\tt \INDEX\string\CssFile[{\sl list-of-css-files}]{\sl content}\string\EndCssFile }% \ContItem The default CSS file \TeX4ht produces is initially a file consisting just of a single line of the form \`'/* css.sty */'. That line is later replaced with the code submitted by the \`'\Css{...}' commands. The current command allows to specify an alternative to the initial CSS file. The alternative file consists of the code loaded from listed files, and of the content explicitly specified in its body. \Verbatim \ConfigureList{mylist} {\HCode{

}} {\HCode{
}} {* }{} \begin{document} \HCode{} \CssFile /* css.sty */ .mylist { color : red; } \EndCssFile \EndVerbatim The names in the list of files should be separated by commas, and the rectangular brackets are optional when the list is empty. The file should include a line having the content of \`'/* css.sty */'. If more than one such line is included, the content of the \`'\Css{...}' commands replace the first occurrence of this line. Arbitrary many space characters may appear around the substrings \`'/*' and \`'*/'. \EndList \DocChapter{Fonts} \--Fonts/htf//% \TeX4ht has an elaborated machinery for handling fonts, through special virtual hypertext fonts stored in \`'.htf' files. Instead of providing a design for each symbol, as is the case in standard fonts, the virtual fonts provide a content for each symbol. The following commands offer some control, from within the source \LaTeX{} documents, over the content provided to the symbols. \List{button} \Item{\tt \INDEX\string\NoFonts}\ContItem This command asks that information provided in the font files will be used for the symbols, but not the information requested for the fonts in the source \LaTeX{} file through the \`'\Configure{htf}' command. \Item{\tt \INDEX\string\EndNoFonts}\ContItem This command asks to end the effect of the most recently encountered \''\NoFonts' command that is still active. \Code\xxxx{XXXX}<<< {\it italic \NoFonts\NoFonts not italic \EndNoFonts not italic \EndNoFonts italic}. >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE \Item{\tt \--Configure/htf\string\empty/{{\tt\char92}}/% \string\Configure \string{htf\string} \string{{\sl class}\string} \string{{\sl delimiter}\string} \string{{\sl template-1}\string} \string{{\sl template-2}\string} \string{{\sl template-3}\string} \string{{\sl template-4}\string} \string{{\sl template-5}\string} \string{{\sl template-6}\string} \string{{\sl template-7}\string}% }\ContItem Each character is provided two entries in its virtual font file: a string and an integer number. The integer number is considered to be the class of the character. An even number requests that the character will be represented by the string. An odd number requests that the character will be represented by a picture, with the string acting as an alternative representation. The current \''\Configure' command provides a template for introducing, into the hypertext document, the representations of the symbols of the specified class. The template is consisted of the seven specified components, where the delimiter must be a character that does not appear in these components. In even classes, the template is used for outputing a tuple, consisting of the following information, for the given symbol: the font name, the font size, the font magnification when it differs from 100\%, and the corresponding string field from the virtual font. The first component is printed unconditionally at the beginning. The font name is printed only if the second component of the template is not empty and, when it is not empty, the second component should be a template for printing a string in a C program. Similarly, the font size is printed only if the third component of the template is not empty, and in such a case the component should be a template for printing a string in a C program. On the other hand, the font magnification is printed only if the fourth component of the template is not empty, and in such a case the component should be a template for printing an integer in a C program. The rest of the components of the template are added literally into the output, where either the fifth or the sixth component must be empty. The string field from the virtual font is introduced just before the last component. \Code\xxxx{XXXX}<<< {\it \Configure{htf} {0}{+}{} {} text% \Configure{htf} {0}{+}{}{} text} >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \BR \BR \Verbatim text text \EndVerbatim \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE The \''\Configure' defines for a symbol of an even class, a prefix and a postfix to be inserted around the string assigned to the symbol in its virtual font file. The \''\Configure' for characters of class 0 has the extra property that it provides extra prefixes and postfixes also for all the pictorial representations of symbols. A \''\Configure' command for an odd class defines a template to output a tuple, consisting of the following information: the font name, the alternative string from the virtual font, the font name, the font size, the font magnification when it differs from 100\%, and the character code of the symbol. The output is determined in a manner similar to that implied for symbols from characters of odd classes. \Code\xxxx{XXXX}<<< \Configure{htf} {1}{+}{}{}{}{}{}
   {} $\alpha$% \Configure{htf} {1}{+}{}{}% $\alpha$ >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE \Item{\tt \--Configure/htf\relax-sty/{{\tt\char92}}/% \string\Configure \string{htf-sty\string} \string{{\sl class/font}\string} \string{{\sl CSS-instructions}\string}% }\ContItem This command specifies CSS content for font classes and virtual hypertext fonts. \EndList The \''htf' fonts might request pictorial representations for symbols. In such cases, the sizes of the pictures depend on the sizes of the \TeX{} fonts in use. Size changes through the \''\magnification' command should be made before loading the \''tex4ht.sty' package. The design of a virtual hypertext font might take some labor, but it does not \NextFile{\jobname-htf.html}% \HPage{require} \ExitHPage{up} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocSection{Designing Virtual Hypertext Fonts} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \List{1} % \item \--Fonts/htf//% If you are creating a new htf font, scan the information \TeX4ht issues in the \''log' file of the compilation regarding the missing htf font. For instance, {\tt--- warning --- Couldn't find font `ectt1000.htf' (char codes: 0--255)} % \item Produce a document showing the character maps. Employ a script similar to the following one, using a standard compilation, say, for an output in PDF or PostScript. % {\tt \string\font\string\x=ectt1000 \string\ShowFont\string\x} \Example \Verbatim \documentclass{article} \input showfonts.4ht \begin{document} \showfonts {eccc1000} {ecss1000} {ecsx1200} {ecti1000} {ectt1000} {} \end{document} \EndVerbatim \EndExample % \item Create htf fonts of the form \Verbatim first line: prefix_of_font_name first_index last_index ............... ............... ............... ............... last line: prefix_of_font_name first_index last_index \EndVerbatim where \List{a} \item The first and last lines must agree on their content, with \''first_index' and \''last_index' being equal to the character codes mentioned in the message {\tt--- warning --- Couldn't find font `....' (char codes: first\string_index--last\string_index)} \item The number of intermediate lines should equal \''(last_index) - (first_index) + 1'. Each of these intermediate lines provides a representation for a corresponding character code. \Example \Verbatim ectt 0 255 '`' '' 0 '´' '' 1 'ˆ' '' 2 '~' '' 3 .................. 'i' '1' 25 dotless i .................. '' '' 255 ectt 0 255 \EndVerbatim \EndExample \item Each intermediate line consists of three fields \''string class comment' The first two fields must be enclosed by a delimiter, determined by the first character in the line. The comment may be empty. A \`'class' specified by an odd integer value asks for a pictorial character. An even integer number asks for a non-pictorial character, specified in the \`'string' field. An empty class field is treated as a zero value. The manner the characters of the different classes are packaged, is determined by commands of the form \`'\Configure{htf}{class-number}...'. For instance, \Verbatim \Configure{htf}{0}{+}{}{} \Configure{htf}{1}{+}{} \Configure{htf}{4}{+}{}{} \Configure{htf}{6}{+}{}{} \EndVerbatim When no special requirements are in place, it is advisable to use just the classes of 0 and 1. \item The \`'string' field may include any sequence of characters, except for its delimiters. The backslash character \`'\' acts there as an escaped character. It may act as a delimiter for a character code, or be followed by another backslash (that is, \`'\\' represents the character \`'\' ). \item In the string part, use \`'<' for the character \`'<', \`'>' for \`'>', and \`'&' for \`'&'; \EndList % \item \--Cascade Style Sheets (CSS)///% \--Fonts/htf//%% If you want specific information for a font, to be included in the .css file, add to the end of the file an entry consisting of the font name and the information in discourse. The two fields must be separated by space. The second field may span over more than one line; the extra lines must start with space. The lines of the entries must be prefixed with \`'htfcss: '. If more than one entry applies for a given font, the first one is the only one that counts. \EndList {\noindent \bf Note.} It is highly recommended to set up fonts just of Unicode entries, and let \TeX4ht automatically map the symbols to the appropriate character encodings (using {\tt unicode.4hf} mapping files). Instead of explicitly specifying the encodings for the characters, an htf font can be declared an alias to another htf font by specifying in the first line the aliased font name prepended by a period. \Example{} {\bf cmss.htf} \Verbatim .cmti htfcss: cmss font-family: sans-serif; htfcss: cmssbx font-weight: bold; htfcss: cmssi font-style: italic; font-family: sans-serif; \EndVerbatim \EndExample \ExitHPage{up} \EndHPage{} too much sophistication. A font of \TeX{} may have more than one htf font to map to. The search for a desired version can be regulated within \Link{alt-htf}{}scripts\EndLink. %%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Scripts} %%%%%%%%%%%%%%%%%%%%% Scripts produce the content in verbatim format with no decorations. %------------------------------------------------------------------- \List{button} \Item{\tt \--ScriptEnv//{{\tt\char92}}/% \string\ScriptEnv \string{{\sl environment}\string} \string{{\sl prefix}\string} \string{{\sl postfix}\string} }\ContItem This command defines a \LaTeX{} environment \Template \char92begin\string{{\sl environment}\string}\BR {\sl body}\BR \char92end\string{{\sl environment}\string}% \EndTemplate \IgnoreIndent which outputs its body in plain format, between the specified prefix and postfix. \Item {\tt \--ScriptCommand//{{\tt\char92}}/% \string\ScriptCommand \string{{\char92\sl command}\string} \string{{\sl prefix}\string} \string{{\sl postfix}\string} }\ContItem This command defines an environment \Template {\char92\sl command}\BR {\sl body}\BR {\char92End\sl command} \EndTemplate \IgnoreIndent which outputs its body in plain format, between the specified prefix and postfix. \Item{\tt \--JavaScript//{{\tt\char92}}/% \string\JavaScript...\string\EndJavaScript}\ContItem \IgnoreIndent This command is available when {\tt javascript} option is used. \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{Configurable Hooks} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Much of the look and feel of \TeX4ht is achieved through hooks that are introduced and configured with the following commands. \List{button} \Item {\tt \--NewConfigure//{{\tt\char92}}/% \string\NewConfigure\string{{\it name}\string}[{\it i}]\string{{\it body}\string}} \ContItem Hooks are just macro names seeded within the bodies of other macros. This command introduces a configuration command for a group of hooks, whose cardinality is given by a digit {\it i} and whose name is provided by the first parameter. The body determines the relationship between the hooks and the configurations provided for them. \Item {\tt \--Configure//{{\tt\char92}}/% \string\Configure\string{{\it name}\string}\string{{\it parameter-1}\string}...\string{{\it parameter-i}\string}} \ContItem \Code\xxxx{XXXX}<<< \NewConfigure{try}[2]{% \def\hookI{#1}\def\hookII{#2}} \def\try#1{\hookI#1\hookII} \Configure{try}{* }{} \try{ho} \Configure{try}{}{ *} \try{ha} >>> \OutputCode[log]\xxxx \EXAMPLE \input xxxx.log \ContEXAMPLE \ShowCode-\xxxx\ShowIndent \EndEXAMPLE \EndList Block environments \Verb+\begin+\dots\Verb+\end+ may also be configured through the \Verb+\ConfigureEnv+ command. Lists may also employ the \Verb+\ConfigureList+ command. For help configuring hooks already seeded in the system, compile the source files in use with the \`'info' option active and review the information in log files. Much of the information in the log files may also be obtained by running \`'xhlatex mktex4ht.4ht' and reviewing the entries in the outcome page \`'mktex4ht.html => index => mktex4ht'. As an example, the footer is placed on these HTML pages using the \Verb+@/BODY+ hook, like this (inside \Verb+\Preamble+\dots\Verb+\EndPreamble+): \Verbatim \Configure{@/BODY}{\ifvmode\IgnorePar\fi\EndP\HCode{
}\par \HCode{Generated \ifcase \month \or January \or February \or March \or April \or May \or June \or July \or August \or September \or October \or November \or December \fi \the\day, \the\year\space - tex4ht home page}} \EndVerbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \DocChapter{General Configuration Files} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \--Files/Configuration//% \Tag{confFiles}{General Configuration Files}% \Link{}{confFiles}{}\EndLink% \--tex4ht.sty///% A compilation starts by opening \''tex4ht.sty' and loading a fraction of its code. The main purpose of this phase is to request the loading of the system at a later time (for instance, upon reaching \''\begin{document}'). The motivation for the late loading is to allow \TeX4ht to collect as much information as possible about the environment requested by the source file, and help the system reshape that environment with minimal interference from elsewhere. \--Files/4ht//% The system uses two kinds of (4ht) configuration files. The files of the first kind mainly seed hooks into the macros loaded by the source file (for instance, \''latex.4ht', \''fontmath.4ht', and \''article.4ht'). The files of the second kind mainly attach meaning to the hooks (for instance, \''html4.4ht', \''unicode.4ht', and \''mathml.4ht'). \--tex4ht.4ht///% Different source files may request the loading of different style files and in different orders. The hook seeding files are loaded in response to the loading of the style files, and in a compatible order. Since the different style files may redefine the syntax and semantics of macros, \TeX4t follows a similar route of defining and redefining the hooks and their meanings. \--tex4ht.usr///% The meaning attaching files are normally requested through option names introduced in the \''tex4ht.4ht' system file. For instance, the \''mzlatex' command refers to the \''mozilla' option name of \''tex4ht.4ht', and the \''oolatex' command refers to the \''ooffice' option name. The user may add option names, and redefine old ones, within a new file named \''tex4ht.usr'. A new \''tex4ht.usr' file should group references to \''*.4ht' configuration files under arbitrarily chosen option names. For that purpose, \''\Configure' commands similar to those provided in \''tex4ht.4ht' should be employed. Variants of the htlatex-like scripts may be produced in the following manner. \List{a} \item Adjust the \''latex' (\''tex', \''texi') command of a given script to use a desired option name, and rename the new script. \item Make sure the \''tex4ht' and \''t4ht' commands receive appropriate switches in the new script. (These commands show the available options when invoked without parameters.) \EndList The definition of new meaning assigning configuration files can be considerable simplified by relying on literate programming and the file \''mktex4t.4ht'. For additional information, compile this file into a hypertext document, visit the \`'index' page, and from there reach into the \`'mktex4ht' page. \Example{} \List{a} \item Add a configuration file \''myooconfig.4ht' with the following content. \Verbatim \exit:ifnot{jurabib} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{jurabib} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\jbNoLink#1#2{} \Configure{jblink}{\jbNoLink}{} \Configure{jbanchor}{\jbNoLink}{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput \EndVerbatim \item Add to \''tex4ht.usr' the following script. \Verbatim \Configure{myooffice}{% \:CheckOption{info}\if:Option \Hinclude[*]{infoht4.4ht}\fi \:CheckOption{info}\if:Option \Hinclude[*]{infomml.4ht}\fi \Hinclude[*]{ooffice.4ht}% \Hinclude[*]{unicode.4ht}% \Hinclude[*]{mathml.4ht}% \Hinclude[*]{ooffice-mml.4ht}% \Hinclude[*]{myooconfig.4ht}% } \EndVerbatim It is the ooffice script from \''tex4ht.4ht', with the added record \`'\Hinclude[*]{myooconfig.4ht}%'. \item Invoke the compilations with a variant of the following form of the \''oolatex' command. \centerline{{\tt htlatex filename "xhtml,myooffice" "ooffice/!~-cmozhtf" "-coo"}} \EndList \EndExample \EndHPage{here} \relax the current document. % \item \Link[http://michal-h21.github.io/src4ht/tex4ht-info.html]{}{}Basic information about configurations\EndLink \item \Link[https://github.com/michal-h21/helpers4ht/wiki/tex4ht-tutorial]{}{}tex4ht tutorial\EndLink \item \Link[http://web.archive.org/web/20140909114942/http://www.cse.ohio-state.edu/\string ~gurari/publications.html]{}{}Conference presentations\EndLink \item \Link[https://tug.org/TUGboat/tb25-1/gurari.pdf]{}{}TeX4ht: HTML production\EndLink \item \Link[https://tug.org/TUGboat/tb40-1/tb124hoftich-make4ht.pdf]{}{}TeX4ht: LaTeX to Web publishing\EndLink % %\item In the .log files of the compilations. \WAIT \item \HPage{Examples} \rightline{\ExitHPage{up}} \EndHPage{} for using the \`'htlatex' and \`'httex' commands. \ENDWAIT \EndList % % The documents \Link[http://www.cse.ohio-state.edu/\string % ~gurari/docs/mml-00/mml-00.html]{}{}From \LaTeX{} to MathML and Back % with \TeX4ht and Passive\TeX\EndLink, % \Link[http://www.cse.ohio-state.edu/\string % ~gurari/tug99/]{}{}\LaTeX{} to XML/MathML\EndLink{}, % \Link[http://www.cse.ohio-state.edu/\string % ~gurari/tug97/tug97-h.html]{}{}A demonstration of TeX4ht\EndLink{}, % and % \Link[http://www.cse.ohio-state.edu/\string % ~gurari/docs/tug-03/tug-03.html]{}{}From LaTeX to MathML and Beyond\EndLink{} % may % provide additional insight into the system (and some outdated % details). %%%%%%%%%%%%%%%%%%%%%% \DocPart{Installation} %%%%%%%%%%%%%%%%%%%%%% \Intro \TeX4h is included in \TeX\ distributions, notably TeX Live and MikTeX. You don't have to install it manually. The following information is outdated and it is kept here mainly for the historical reasons. \EndIntro To be installed, the system needs a port made up of native utilities of \TeX4ht and of non-native utilities. The easiest way to establish an up to date port is to download an installed distribution % \HPage{} % \List{*} % \item Linux % %%%%% % \List{*} % \item\Link[http://packages.debian.org/unstable/tex/tex4ht]{}{}Debian Linux\EndLink{} % % \item % % For RedHut Linux at \Link[http://hunch.net]{}{}Hunch\EndLink: % % \Link[http://hunch.net/tex4ht/tex4ht-1.0-1.src.rpm]{}{}source code\EndLink, % % \Link[http://hunch.net/tex4ht/tex4ht-1.0-1.i386.rpm]{}{}i386 linux binary\EndLink % % % % From: John Langford % % To: Eitan Gurari % % Subject: Re: tex4ht % % Date: Tue, 23 Sep 2003 17:59:14 -0400 % \item % For Fedora % at % \Link[http://www.sbc.su.se/\string ~esjolund/tex4ht/]{}{}sbc.su.se\EndLink{} % % From: Erik Sjölund % % To: Eitan Gurari % % Cc: jl@tti-c.org, arne@sbc.su.se % % Subject: tex4ht rpm on our home page % % Date: 13 Jul 2004 12:08:08 +0200 % % maintains % http://xml2hostconf.sourceforge.net % % and at % %\Link[http://download.fedora.redhat.com/pub/fedora/linux/extras/development/SRPMS/]{}{}Fedora Extras\EndLink{} (invoke with `\Verb+yum install tetex-tex4ht+'; see \Link[http://www.fedoratracker.org/]{}{}http://www.fedoratracker.org/\EndLink) % % From: Patrice Dumas % % To: Eitan Gurari % % Subject: tex4ht in fedora extras % % Date: Wed, 16 Nov 2005 00:47:04 +0100 % % % % Hello, % % % % tex4ht (called tetex-tex4ht) has been accepted in fedora extras. The srpm % % is based on the one you provide on your site with changes by Michael A. % % Peters and me. % % % % The submission is there: % % % % https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=172521 % % % % If you want to put the srpm on your website, I can give the link to you, and % % tell you when there are new srpm releases. % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % %There is the main SRPM ftp repository % % http://download.fedora.redhat.com/pub/fedora/linux/extras/development/SRPMS/ % % % % And there is an index there... % % http://www.fedoratracker.org/ % % % % But as it is in fedora extras, a user only has to add the fedora extras % % repository to the yum config (done by default on fedora core 4) and do % % % % yum install tetex-tex4ht % \item % \Link[http://packages.gentoo.org/search/?sstring=tex4ht]{}{}Gentoo\EndLink{} % % > http://packages.gentoo.org/search/?sstring=tex4ht % % > % % > The the ``ebuild'' script lists the file % % > http://www.cse.ohio-state.edu/~gurari/TeX4ht/${P}.zip as the source file, % % > where P == tex4ht. % % \item\Link[http://www.novell.com/products/linuxpackages/professional/tex4ht.html]{}{}SuSE\EndLink{} % % (Linux) %(\Link[http://www.rpm.org/]{}{}RPM\EndLink) % %%% % % comp.text.tex #252972 (0 + 14 more) (1)--[1] % % From: Karl Eichwalder % % [1] Re: tex4ht -> DocBook XML % % Date: Fri Jun 14 07:24:43 EDT 2002 % % Lines: 17 % % % % Karl Eichwalder writes: % % % % > Using tex4ht I can convert LaTeX files into DocBook XML. Great tool! % % % % Forgot to mention: Here you may find a test unofficial upgrade package % % for SuSE Linux 8.0 (i386): % % % % ftp://ftp.suse.com/pub/people/ke/8.0-i386/ % % % % 45e049338013222baade6c3eaa9e8272 tex4ht-20020613-0.i386.rpm % % 13a63ea28bc563eaef5df7c8f2ce779d tex4ht-20020613-0.src.rpm % % % % -- % % Linux frechet 2.4.18-4GB #1 Fri Apr 5 15:14:39 UTC 2002 i686 unknown % % 1:22pm up 66 days, 22:38, 13 users, load average: 0.25, 0.16, 0.05 % % work : ke@suse.de % % Karl Eichwalder home : keichwa@gmx.net % %%% % \EndList % %%%%%% % \item Mac % %%%%% % \List{*} % \item\Link[http://fink.sourceforge.net/pdb/package.php/tex4ht]{}{}Fink\EndLink{} % \item \Link[http://www.rna.nl/]{}{}R\&A\EndLink , % \Link[http://ii2.sourceforge.net/]{}{}i-Installer\EndLink % \EndList % %%%%%% % \item MS Windows % %%%%% % \List{*} % \item \Link[http://www.miktex.org/]{}{}Mik\TeX\EndLink{} % %\item \Link[ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2apps/tex/]{}{}Simtelnet\EndLink{} % \item \Link[http://www.metz.supelec.fr/\string % ~popineau/xemtex-1.html]{}{}XEm\TeX\EndLink{} % \EndList % %%%%%%%%%%%% % \item\Link[http://www.tug.org/texlive/]{}{}\TeX{} Live\EndLink{} % % \item\Link[http://4tex.ntg.nl/]{}{}4all\TeX\EndLink{} % % %\item \Link[https://dev.livingreviews.org/repos/tex4ht/trunk/]{}{}livingreviews\EndLink % \EndList{} % \EndHPage{} of the system, and %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NextFile{\jobname-upgrade.html}\HPage{upgrade}\ExitHPage{} \bgroup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \InstallSection{TeX4ht Upgrading} At present, the only practical way to update \TeX4ht is via a distribution. Runtime files continue to be updated in TeX Live, so if you're using TL, you can get those with tlmgr update. We don't know if MiKTeX picks up the same updates. There has been no new full release since Eitan's death; still a work in progress. For the upstream tex4ht source repository where the work is being done, see the \Link[/tex4ht/]{}{}tex4ht home page\EndLink. \InstallSection{A Setup for Unix Environments} \List{a} \item Establish a directory, say, `{\tt \string~/tex4ht.dir}'. \item \--Files/Download//% Download the file \Link[tex4ht.zip]{}{}tex4ht.zip\EndLink{} into the directory \''tex4ht.dir' and \UNZIP{} it. \Code\Uht{}<<< $1 $2 $1 $2 $1 $2 tex4ht $2 t4ht $2 $3 # -d~/WWW/temp/ -m644 >>> \OutputCode[foo]\Uht %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \setup{Compile the Postprocessors} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \item \--tex4ht.c/Compiling//\--t4ht.c/Compiling//Compile \''~/tex4ht.dir/src/tex4ht.c' into an executable \''tex4ht' file with a command similar to the following one. %, where \`'path' stands for the absolute % path to directory \''tex4ht.dir'. \'+gcc -o tex4ht tex4ht.c -DENVFILE='"~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"' -DHAVE_DIRENT_H+ The switch \`+-DENVFILE='"~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"'+ may be omitted, if the program can reach the environment file in an \Link{envloc}{}alternative\EndLink{} manner. % #define ENVFILE "/n/soda/export/0/gurari/tex4ht.dir/tex4ht.env" % #define HTFDIR "/n/soda/export/0/gurari/tex4ht.dir" \item Compile \''~/tex4ht.dir/src/t4ht.c' with a command similar to following one. %, where \`'path' stands for the absolute % path to directory \''tex4ht.dir'. \'+gcc -o t4ht t4ht.c -DENVFILE='"~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"'+ Again, the switch \`@-DENVFILE='"~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"'@ may be omitted, if the program can reach the environment file in an \Link{envloc}{}alternative\EndLink{} manner. \item Move the executable files \''tex4ht' and \''t4ht' to directory \''~/tex4ht.dir/bin/unix/'. % \setup{Update the Pointers in the Environment File} \item \--Fonts/tfm//% \--tex4ht.env/Unix//Replace in \Link[tex4ht-env-unix.txt]{}{}% \''~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env'\EndLink{} the line(s) starting with the character \`'t', with alternative lines which state what directories should be searched for the tfm files of \TeX{} and \LaTeX. The directory names must be preceded with the character \`'t' at column 1 and, if their subdirectories are also to be searched, the names should be appended with the character \`'!' (\Link{alt-tfm}{}insight\EndLink{}). \item \--Fonts/htf//% If needed, adjust the paths in the \`'i' records of \''tex4ht.env'. These records are used for searching htf fonts, and they are similar to the \`'t' (\Link{alt-htf}{}insight\EndLink{}). \item \--tex4ht.fls///% The entry \`'l~/tex4ht.dir/filename' in \''tex4ht.env' points to the address where the \Link{TEX4HTWR}{}bookkeeping file\EndLink{} should reside. Modify the path to fit your platform. The character \`'l' should precede the address, and be placed at the first column. Make sure the access mode of the directory permits writing into files. \setup{Update the Bitmap Generating Scripts in the Environment File} \item \--Bitmaps and graphics/png//% \--dvips/png//% The file \''tex4ht.env' contains the following default script, of calls to system utilities for translating dvi pictures into bitmaps.\Link{}{dv2png}\EndLink{} \Verbatim Gdvips -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps Gconvert zz%%4.ps -trim +repage -density 110x110 -transparent '#FFFFFF' %%3 Grm zz%%4.ps \EndVerbatim The entry \''%%1' is a parameter refering to a dvi file, the \''%%2' is a parameter indicating a page number, the \''%%3' is a parameter standing for an output file name, and \''%%4' is a parameter providing the jobname. You may replace this script with an alternative sequence of system calls. In such a case, place one command per line, and mark each of these lines with the character \`'G' at the first column. The literate version tex4ht-env.tex of tex4ht.env offers a few suggestions. The \Link[http://www.radicaleye.com/dvips.html]{}{}dvips\EndLink{} utility translates dvi files into postscript. The \''convert' utility, provided within the distribution of \Link[http://www.imagemagick.org/]{}{}ImageMagick\EndLink{}, translates postscript files into png. The script employs the Metafont mode \`'ibmvga' of resolution \`'110'; the available modes are listed in file \''modes.mf' of Metafont. Use the option `{\tt -crop 0x0 +page}' or `{\tt -crop 0x0 +repage}' instead of `{\tt -trim}' for old convert utilities that do not recognize the latter argument. \item Instead of employing the G scripts, glyphs can rely on specialized \HPage{F scripts} \List{*} \item For instance \Verbatim Fdvips -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps Fconvert zz%%4.ps -trim +repage -density 110x110 -transparent '#FFFFFF' %%3 Frm zz%%4.ps \EndVerbatim \item The specialized scripts may, for instance, maintain global caches of png bitmaps for cutting down on recompilation time. \EndList \EndHPage{} of similar nature for creating bitmaps. \item \--Bitmaps and graphics/fonts//% \--Fonts/Bitmaps//% \--Pictures/Bitmaps//% \--tex4ht.c/LGTYP//% The bitmap formats can be controlled by a `g' record of tex4ht.env, a `-g' switch of {\tt tex4ht.c}, and a -LGTYP switch in the compilation of tex4ht.c. The default setting assumes the `png' format. \setup{Update the Other Scripts in the Environment File} \item \Link{}{mvscript}\EndLink{}If needed, replace the scripts \`'Mmv %%1 %%2%%3' and \`'Ccp %%1 %%2%%3' in \''tex4ht.env' with alternative scripts for moving and copying files. The parameter \''%%1' stands for the source file(s), the parameter \''%%2' provides the target directory name, and the parameter \''%%3' refers to the target file name(s). % \item If needed, replace the script % \`'Ecp empty.gif %%1%%2' in \''tex4ht.env' with an % alternative script % for replacing empty files. The parameter \''%%1' stands % for the % target directory name, and the parameter \''%%2' refers to % the empty file name. \item \Link{}{accscript}\EndLink{}If needed, replace the script \`'Achmod %%1 %%2%%3' in \''tex4ht.env' with an alternative script for changing access mode of files. The parameter \''%%1' stands for access mode, the parameter \''%%2' refers to a directory name, and the parameter \''%%3' refers to file(s). \item \--Validation///% \relax\relax\--!//{\string\tt\char \space 37\char \space 37\char \space 126}\string\csname\space :gobble\string\endcsname/% Postprocessing of files can be requested with \`'.' scripts. The files are selected by their extension names, as listed following the period symbols. The parameter \`'%%1' provides the file names, and the parameter \`'%%0' provides the jobnames. Under kpathsea, the substring `%%~' may be employed to indirectly obtain the value of \Verb=${SELFAUTOPARENT}=. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The environment file \Link[tex4ht-env-unix.txt]{}{}tex4ht.env\EndLink{} offers the following inactive dot script for {\bf validating} output of compilations. \Verbatim .html xmllint --noout --valid --html %%1.html .xml xmllint --noout --valid %%1.xml .html xmllint --noout --valid %%1.html .css mycssparser %%1.css \EndVerbatim The dot script may be activated in the following manner. \List{1} \item Bind a CSS validator to the .css record. (\Link[http://jigsaw.w3.org/css-validator/DOWNLOAD.html]{}{}{\tt http://jigsaw.w3.org/css-validator/DOWNLOAD.html}\EndLink) \item Remove the leading space characters from the above record. \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \item Postprocessing of files can also be requested with \`'X' scripts. The file names are accessed through the parameter \`'%%1', and their extensions through the parameter \`'%%2'. \setup{Set the Script Files} \item Ensure proper paths within the htlatex-like scripts in \`'~/tex4ht.dir/bin/unix/'. If you use a command different than \''latex' for compiling \LaTeX{} source files, fix also the references to \''latex' in the scripts. Check also the appropriateness of the commands for compiling \TeX{} and \TeX i files. \--htlatex/number of compilations//% \--Tables/number of compilations//% The default scripts provide for three calls to LaTeX. The file \Verb+tex4ht-auto-script.tex+ in \Link[tex4ht-lit.zip]{}{}tex4ht-lit.zip\EndLink{} offers examples of bash scripts that automatically determine the number of compilations needed from LaTeX (contributed by Kai-Mikael J\"a\"a-Aro). % \setup{Make the System Globally Known} % \item Inform the operating system where the scripts reside, say, by adding the directory `{\tt \string ~/tex4ht.dir/bin/unix/}' into the \''path' variable within the \''.login' file. For instance, \''set path=($path ~/tex4ht.dir/bin/unix/)' % \item Let \LaTeX{} and \TeX{} know where the new style files reside, say, by adding the directory `{\tt \string~/tex4ht.dir/texmf/tex/generic/tex4ht/}' to the environment variable \''TEXINPUTS'. For instance, \''setenv TEXINPUTS .:~/tex4ht.dir/texmf/tex//:/usr/local/share/texmf/tex//' \item If your \TeX{} system uses a registry database to locate files, make sure to refresh it (e.g., run {\tt texhash} for kpathsea, or {\tt mktexlsr} or `{\tt initexmf -u}' for some Linux systems). %\Verbatim %There is an environment variables, TEXINPUTS, which controls from where %TeX should take its input files; if not set, TeX has a default value %(at CIS, the value is ".:/usr/local/lib/tex/macros//"). % %So if we set % setenv TEXINPUTS .:/usr/local/lib/tex/macros//:~gurari/cis788// %then it would continue looking where it used to (in the current dir and %in the system dir) plus use whatever possible from your directory (the %added convenience is that if we're going to use more than just IprTeX.sty %we wouldn't need to link every file). %=== %Albert Meltzer %%------------------- % > latex (teTeX) cann't find the style files and so on. % > So I don't know where to set the style files and % > what kind of commands I have to give so that % > latex can handle these files. % % \item Some output modes assume \Link[http://www.sun.com/]{}{}Java\EndLink{} is also available in the computer in use. %%%%%%%%%%%%%%%%%%%%%%%%%%%% \setup{Test the Installation} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \item Move \''testa.tex' and \''testb.tex' from \''~/tex4ht.dir/temp/' to your work directory \item Compile \`'testa.tex' with the command \`'ht latex testa' \item Compile \`'testb.tex' with the command \`'htlatex testb' \Code\demo{}<<< % \def\CALL{{tex}{latex}} % \let\PC=Y % \let\DOS=Y %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % demo.tex % % % % Please DON'T try to understand the code of this file---it % % can be harmful to your eyes and brain! % % % % gurari@cse.ohio-state.edu % % http://www.cse.ohio-state.edu/~gurari % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifx \SCRIPT\UnDef \ifx \PC\UnDef \def\SCRIPT{ \Needs{ht \TEX\space \FN\space } } \else % dos batch file \def\SCRIPT{ \Needs{call ht \TEX\space \FN} \Needs{if exist \FN.txt del \FN.txt} \Needs{ren \FN.tex \FN.txt} } \fi\fi % \def\SCRIPT{ % \Needs{call ht \TEX\space \FN} % \Needs{if exist \FN.txt del /q \FN.txt} % \Needs{ren /q \FN.tex \FN.txt} % } \ifx \PC\UnDef \else \openin15=clean.bat \ifeof15 \closein15 \immediate\openout15=clean.bat \immediate\write15{DEL hti.bat} \immediate\write15{DEL htii.bat} \immediate\write15{DEL htiii.bat} \immediate\write15{DEL htiv.bat} \immediate\write15{DEL htv.bat} \immediate\write15{DEL htvi.bat} \immediate\write15{DEL htvii.bat} \immediate\write15{DEL htdemo.bat} \immediate\write15{DEL i.*} \immediate\write15{DEL ia.*} \immediate\write15{DEL ii.*} \immediate\write15{DEL iia.*} \immediate\write15{DEL iii.*} \immediate\write15{DEL iiia.*} \immediate\write15{DEL iv.*} \immediate\write15{DEL iv2.*} \immediate\write15{DEL iva2.*} \immediate\write15{DEL iva.*} \immediate\write15{DEL demo*.aux} \immediate\write15{DEL demo*.bat} \immediate\write15{DEL demo*.dvi} \immediate\write15{DEL demo*.htm*} \immediate\write15{DEL demo*.css} \immediate\write15{DEL demo*.lg} \immediate\write15{DEL demo*.idv} \immediate\write15{DEL demo*.log} \immediate\write15{DEL demo*.otc} \immediate\write15{DEL demo*.toc} \immediate\write15{DEL demo*.txt} \immediate\write15{DEL demo*.xre*} \immediate\write15{DEL tex4ht.ps} \immediate\write15{DEL v.*} \immediate\write15{DEL va.*} \immediate\write15{DEL vi.*} \immediate\write15{DEL viIa.*} \immediate\write15{DEL via.*} \immediate\write15{DEL vii.*} \immediate\write15{DEL viia.*} \immediate\write15{DEL clean.bat} \immediate\closeout15 \else \closein15 \fi \fi \ifx \DOS\UnDef \def\HTML{html} \def\ARG{} \else \def\HTML{htm} \def\ARG{[htm]} \fi \ifx \documentclass\undef \else \documentclass{article} \fi \input tex4ht.sty \def\temp{htm}\ifx \HTML\temp \Preamble{htm,no_,no^} \else \Preamble{html,no_,no^} \fi \ifx \documentclass\undef \else \begin{document} \fi \Configure{Needs}{l. \the\inputlineno\space--- needs --- "#1" ---} \newlinechar=`\^^J \ifx \WWW\UnDef \let\WWW=\empty \fi \ifx \DOS\UnDef\else % \Needs{CLS} % clear screen \fi \ifx \CALL\UnDef \def\TEX{\ifx \documentclass\undef \else la\fi tex} \else \def\TEX#1#2{\def\TEX{\ifx \documentclass\undef #1\else #2\fi}} \expandafter\TEX\CALL \fi \edef\type{\ifx \documentclass\undef \else a\fi} \def\\#1\\{\expandafter\noexpand\csname#1\endcsname} \catcode`\#=11 \def\Sharp{#} \catcode`\#=6 \def\source#1#2{ \def\doc##1##2##3{#2} \HAdvance\FileNo by 1 \NextFileName \immediate\openout15=\FN.tex \immediate\write16{--- Writing file \FN.tex}% \SCRIPT \immediate\write15{\ifx \documentclass\undef \noexpand \input tex4ht.sty ^^J \noexpand \Preamble{\HTML#1} ^^J \noexpand \EndPreamble ^^J^^J\else \noexpand \documentclass{article} ^^J \noexpand \usepackage\ARG{tex4ht} ^^J \noexpand \begin{document} ^^J^^J\fi \doc{PSALMS (131:1)} {My heart is not haughty, nor ^^J mine eyes lofty:} {neither do I ^^J exercise myself in great ^^J matters, or in things too high ^^J for me.} ^^J^^J {\\it\\ Example \FileNo\space (out of \examples)} ^^J^^J \noexpand \end\ifx \documentclass\undef \else {document}\fi } \immediate\closeout15 \Link[\jobname\FileNo\type f.\HTML\space target="X"]{}{}\FileNo\EndLink \FileStream+{\jobname\FileNo\type f.\HTML} \HorFrames{*,*} \Frame[\romannumeral\FileNo\type.txt]{} \Frame[\romannumeral\FileNo\type.\HTML]{} \EndPreamble \Link[\romannumeral\FileNo\type.txt]{}{}outcome\EndLink{} / \Link[\romannumeral\FileNo\type.\HTML]{}{}source\EndLink{} / \Link{1}{}pointers\EndLink \EndFileStream{\jobname\FileNo\type f.\HTML} } \def\NextFileName{\edef\FN{\romannumeral\FileNo\type}} \HAssign\examples=0\LikeRef{count} \HAssign\FileNo=1 \NextFileName \VerFrames{7*,*} \Frame[\jobname\FileNo\type f.\HTML\space NAME="X"]{} \Frame[ NAME="Y"]{1} \EndPreamble \Link[\FN.txt]{}{}source\EndLink{} / \Link[\FN.\HTML]{}{}outcome\EndLink{} / \HAssign\FileNo=0 \edef\temp{\noexpand\HPage<\jobname p.\HTML>} \temp{Pointers}\Link{}{1}~\EndLink Goto to Example: \source{%,fonts }{#1^^J^^J#2^^J^^J#3} \def\HR{^^J\\HCode\\{
}^^J} \source{%,fonts }{\HR #1 \HR #2 \HR #3 \HR} \source{%,fonts }{{\\bf\\#1}^^J^^J{\\it\\#2}^^J^^J{\\tt\\#3}} \source{%,fonts }{\\HPage\\{#1}^^J^^J#2^^J^^J#3^^J^^J \\ExitHPage\\{}\\EndHPage\\{}} % \ifx \documentclass\undef \source{%,fonts }{\\Contribute\\{halign}{BORDER<>0 1 < 0 2 - 0 3 > }^^J \\halign\\{&\Sharp\\cr\\#1^^J&^^J#2^^J&^^J#3\\cr\\}} \else \source{%,fonts }{\string\begin{tabular}{|l|c|r|}^^J #1^^J&^^J#2^^J&^^J#3^^J \string\end{tabular}} \fi % \def\d{\\scriptstyle\\ \\diamondsuit\\ \\diamondsuit\\ \\diamondsuit\\ } \ifx \documentclass\undef \source{%,fonts }{^^J \\settabs\\ 6 \\columns\\^^J \\+\\PSALMS & (131:1)\\cr\\^^J \\+\\My heart & is not haughty,\\cr\\ ^^J \\+\\nor mine & eyes lofty:\\cr\\^^J \\settabs\\ \\+\\ neither & do I exercise & \\cr\\^^J \\+\\neither & do I exercise \\cr\\^^J \\+\\ & myself in & great matters, \\cr\\^^J \\+\\or & in things & too high for me. \\cr\\^^J } \else \source{%,fonts }{^^J \\begin\\{tabbing}^^J XXXXXXXXX \\=\\\\kill\\^^J PSALMS \\>\\ (131:1) \string\\^^J My heart \\>\\ is not haughty, \string\\^^J nor mine \\>\\ eyes lofty:\string\\^^J neither \\=\\ do I exercise \\=\\ \\kill\\^^J neither \\>\\ do I exercise \string\\^^J \\>\\ myself in \\>\\ great matters, \string\\^^J or \\>\\ in things \\>\\ too high for me. \string\\^^J \\end\\{tabbing}^^J } \fi % \source{%,fonts }{\ifx \documentclass\undef\space \string\def\string\(\string{\string\Picture+\string{\string}\string $\string}^^J \string\def\string\)\string{\string$\string\EndPicture\string}^^J \fi \\Picture\\+{ ALIGN="LEFT"}\\vtop\\{\\hsize\\=2in^^J \\hrule\\\\smallskip\\ #1\\smallskip\\\\hrule\\}\string \EndPicture^^J #2^^J\\(\\ \d \\)\\ ^^J#3 $\d$} \EndHPage{} \Tag{count}{\FileNo} \end{document} \endinput >>> \OutputCode[tex]\demo \Code\testa{}<<< \documentclass {article} \usepackage {tex4ht} \begin {document} A single $\heartsuit$ and a full suit: \( \clubsuit \diamondsuit \heartsuit \spadesuit \). \end {document} \endinput >>> \OutputCode[tex]\testa \Code\testb{}<<< \documentclass {article} \begin {document} A single $\heartsuit$ and a full suit: \( \clubsuit \diamondsuit \heartsuit \spadesuit \). \end {document} \endinput >>> \OutputCode[tex]\testb % \Code\HT{}<<< % echo "**************** Temporary ht ***********************" % $1 $2 % $1 $2 % $1 $2 % tex4ht $2 % t4ht $2 -m644 -d?DIR % echo "**************** Temporary ht ***********************" % >>> % % \OutputCode[log]\HT % \csname SysNeeds\endcsname{"mv ht SVht"} % \csname SysNeeds\endcsname{"mv HT.log ht"} % \csname SysNeeds\endcsname{"chmod 700 ht"} % % % \csname SysNeeds\endcsname{"mv SVht ht"} % \csname SysNeeds\endcsname{"chmod 700 ht"} \EndList \EndHPage{} and \NextFile{\jobname-mswin.html}\HPage[]{MS Windows} % \ExitHPage{} \InstallSection{A Setup for MS Windows} % / DOS \List{a} \item \--Files/Download//% Establish a directory, say, \`'c:\tex4ht'. \item \--Files/Download//% Download the file \Link[tex4ht.zip]{}{}tex4ht.zip\EndLink{} into the directory \''tex4ht.dir' and \UNZIP{} it. \Code\Wht{}<<< %1 %2 %1 %2 %1 %2 tex4ht %2 -ic:\tex4ht\texmf\tex4ht\ht-fonts\%3 -ec:\tex4ht\texmf\tex4ht\base\win32\tex4ht.env t4ht %2 -ec:\tex4ht\texmf\tex4ht\base\win32\tex4ht.env >>> \OutputCode[tab]\Wht %%%%%%%%%%%%%%%%%%%%%%%% \setup{Update the Pointers in the Environment File} % \item \--tex4ht.env/MS Windows//% \--Fonts/tfm//% Replace in \Link[tex4ht-env-win32.txt]{}{}% \''c:\tex4ht\texmf\tex4ht\base\win32\tex4ht.env'\EndLink{} the lines starting with the character \`'t', with alternative lines which state what directories should be searched for the tfm files of \TeX{} and \LaTeX. The directory names must be preceded with the character \`'t' at the first column. If their subdirectories are also to be searched, the names should be appended with the character \`'!'. Note that long file names on MS Windows, and file names with spaces, might have short space-free aliases. For instance, a directory name \`'c:\progra~1\texmf' instead of \`'c:\program files\texmf'. The alternative names can be checked by issuing the \`'dir' command in a DOS session. \item \--Fonts/htf//% If needed, adjust the paths in the \`'i' records of \''tex4ht.env'. These records are used for searching htf fonts, and they are similar to the \`'t' records. \setup{Update the Bitmap Generating Scripts} \item \--Bitmaps and graphics/png//% The file \''tex4ht.env' contains the following default script, of calls to system utilities for translating dvi pictures into png. \Verbatim Gif exist zz%%4.ps DEL zz%%4.ps >nul Gif exist %%3 DEL %%3 >nul Gdvips -E -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps Gconvert zz%%4.ps -trim +repage -density 110x110 -transparent "#FFFFFF" %%3 Gif exist zz%%4.ps DEL zz%%4.ps >nul \EndVerbatim You may replace this script with an alternative sequence of system calls. In such a case, place one command per line, and mark each of these lines with the character \`'G' at the first column. The literate version tex4ht-env.tex of tex4ht.env offers a few suggestions. The entry \''%%1' is a parameter referring to a dvi file, the \''%%2' is a parameter indicating a page number, the \''%%3' is a parameter standing for an output file name, and \''%%4' is a parameter providing the jobname. % Some variants of the \''convert' utility % require the \''-transparent' switch, instead of \''-transparency'. The \Link[http://www.radicaleye.com/dvips.html]{}{}dvips\EndLink{} utility translates dvi files into postscript. The \''convert' utility, provided within the distribution of \Link[http://www.imagemagick.org/]{}{}ImageMagick\EndLink{}, translates postscript files into png. The script employs the Metafont mode \`'ibmvga' of resolution \`'110'; the available modes are listed in file \''modes.mf' of Metafont. Use the option `{\tt -crop 0x0 +page}' or `{\tt -crop 0x0 +repage}' instead of `{\tt -trim}' for old convert utilities that do not recognize the latter argument. \item Instead of employing the G scripts, glyphs can rely on specialized \HPage{F scripts} \List{*} \item For instance \Verbatim Fif exist zz%%4.ps DEL zz%%4.ps >nul Fif exist %%3 DEL %%3 >nul Fdvips -E -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps Fconvert zz%%4.ps -trim +repage -density 110x110 -transparent "#FFFFFF" %%3 Fif exist zz%%4.ps DEL zz%%4.ps >nul \EndVerbatim \item The specialized scripts may, for instance, maintain global caches of png bitmaps for cutting down on recompilation time. \EndList \EndHPage{} of similar nature for creating pngs. \item \--Bitmaps and graphics/fonts//% \--Fonts/Bitmaps//% \--Pictures/Bitmaps//% \--tex4ht.c/LGTYP//% The bitmap formats can be controlled by a `g' record of tex4ht.env, a `-g' switch of {\tt tex4ht.c}, and a -LGTYP switch in the compilation of tex4ht.c. The default setting assumes the `png' format. \setup{Update the Other Scripts in the Environment File} \item If needed, replace the scripts \`'Mmove %%1 %%2%%3', and \`'Ccopy %%1 %%2%%3' in \''tex4ht.env' with \HPage{alternative scripts} \Verbatim Mif exist %%2%%3 del %%2%%3 Mif exists %%1 move %%1 %%2%%3 Cif exist %%2%%3 del %%2%%3 Cif exists %%1 copy %%1 %%2%%3 \EndVerbatim \EndHPage{} for moving and copying files. The parameter \''%%1' stands for the source file(s), the parameter \''%%2' provides the target directory name, and the parameter \''%%3' refers to the target file name(s). % \item If needed, replace the script % \`'Ecopy empty.gif %%1%%2' in \''tex4ht.env' with an % alternative script % for replacing empty files. The parameter \''%%1' stands % for the % target directory name, and the parameter \''%%2' refers to % the empty file name. \item If applicable, replace the scripts \`'Achmod %%1 %%2%%3' in \''tex4ht.env' with an alternative script for changing the access mode of files. The parameter \''%%1' stands for access mode, the parameter \''%%2' refers to a directory name, and the parameter \''%%3' refers to the file(s). \item \--Validation///% Postprocessing of files can be requested with \`'.' scripts. The files are selected by their extension names, as listed following the period symbols. The parameter \`'%%1' provides the file names, and the parameter \`'%%0' provides the jobnames. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The environment file \Link[tex4ht-env-win32.txt]{}{}tex4ht.env\EndLink{} offers the following draft of a dot script for {\bf validating} output of compilations. \Verbatim .xml xmllint --noout --valid %%1.xml .html xmllint --noout --valid %%1.html .css mycssparser %%1.css \EndVerbatim The dot script may be activated in the following manner. \List{1} \item Fix the paths in the first two records. \item Bind a CSS validator to the .css record. (\Link[http://jigsaw.w3.org/css-validator/DOWNLOAD.html]{}{}{\tt http://jigsaw.w3.org/css-validator/DOWNLOAD.html}\EndLink) \item Remove the leading space characters from the above record. \EndList %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \item Postprocessing of files can also be requested with \`'X' scripts. The file names are accessed through the parameter \`'%%1', and their extensions through the parameter \`'%%2'. \setup{Set the Script Files} \item If you use a command different than \`'latex' for compiling \LaTeX{} source files, replace the references to \''latex' in \''c:\tex4ht\bin\win32\*.bat' with the appropriate command name. The \''tex' and \''texi' commands require similar attention. \setup{Make the System Globally Known} \item Add \`'c:\tex4ht\bin\win32' to your path variable in \`'c:\AUTOEXEC.BAT'. \item Place the files \`'tex4ht.sty' and \`'*.4ht' of \''c:\texmf\tex\generic\tex4ht\' within the \LaTeX/\TeX{} tree (either by moving the files to a directory which already has sty files, or by modifying the environment variable TEXINPUTS to point also to \`'c:\texmf\tex\generic\tex4ht\'). \item If your \TeX{} system uses a database to locate files, make sure to refresh it (e.g., select \''Start -> Programs -> MiKTeX -> Refresh', or run \`'initexmf -u' from a DOS session, to update MiK\TeX{}). \setup{Didn't Use '{\tt c:\string\tex4ht'}?} \item If \TeX4ht is installed in a directory other than \''c:\tex4ht', make sure to adjust the related paths in \''tex4ht.env' the \''.bat' files. \item Some output modes assume \Link[http://www.sun.com/]{}{}Java\EndLink{} is also available in the computer in use. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \setup{Test the Installation} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \item Move \''testa.tex' and \''testb.tex' from \''c:\tex4ht.dir\temp\' to your work directory \item Compile \`'testa.tex' with the command \`'ht latex testa' \item Compile \`'testb.tex' with the command \`'htlatex testb' \EndList [\Link[http://www.csulb.edu/\string ~murdock/dosindex.html]{}{}MS Commands\EndLink] \EndHPage{} require additional effort, mainly because of the need to set up non-native utilities. % Alternative ports for these and other platforms can be tailored in a % \NextFile{\jobname-port.html}\HPage{similar manner} \ExitHPage{} \InstallSection{Establishing a Port} \--Files/Download//% A port can be established in the following manner. \List{1} \item Set a directory, say,`{\tt \string~/tex4ht.dir}'. \item Download the file \Link[tex4ht.zip]{}{}tex4ht.zip\EndLink{} into the directory \''tex4ht.dir' and \UNZIP{} it. \item Add to \`'tex4ht.dir/texmf/tex4ht/base/' and \`'tex4ht.dir/bin/' a subdirectory named, say, \''mydir'. \item Copy \`'tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env' or \`'tex4ht.dir/texmf/tex4ht/base/win32/tex4ht.env' into \`'tex4ht.dir/texmf/tex4ht/base/mydir/tex4ht.env'. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \HPage{} \ExitHPage{exit} \InstallSection{Placement of the Environment File} \--tex4ht.env/ENVFILE//% \--tex4ht.c/Compiling//% \--Kpathsea///% \--tex4ht.env/TEX4HTENV//% \--Environment Variables///% \Link{}{envloc}\EndLink{} The \''tex4ht.c' and \''t4ht.c' programs retrieve the information about their platform from an environment file. The programs search the file at the following locations, in the given order. \List{disc} % % \item The address specified within the \Link[\RefFile{overview}]{}{}command lines\EndLink{} of \''tex4ht' and \''t4ht', and identified there by the prefix \`'-e'. % \item The address \''tex4ht.env' in the work directory. % \item At the location specified by an optional environment variable named \''TEX4HTENV'. % \item The address \''tex4ht.env' in the \HPage{root} The address of the root directory is assumed to be stored in an environment variable named \''HOME'. On MS Windows, the directory \''c:/', and the residence directory of \''tex4ht.exe' and \''t4ht.exe', are also candidates. \EndHPage{} directory. \item The address provided in the variable \SysVar{ENVFILE} of tex4ht and t4ht during compilation. \item At the directories of kpathsea, to be searched by that utility, if the \''tex4ht.c' and \''t4ht.c' programs are compiled with the \`'-DKPATHSEA' switch on. For instance, \'@gcc -o tex4ht tex4ht.c -DENVFILE='"~/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"' -DKPATHSEA -DHAVE_DIRENT_H -lkpathsea@ \noindent or \'@gcc -O2 -DKPATHSEA -I/usr/include -L/usr/lib -o tex4ht tex4ht.c -DHAVE_DIRENT_H -lkpathsea@ % When the address of \''tex4ht.env' is not explicitly given, the \''texmf.cnf' file might need records similar to the following ones. \Verbatim TEX4HTFONTSET=alias,iso8859 TEX4HTINPUTS=.;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// T4HTINPUTS=.;$TEXMF/tex4ht/base// \EndVerbatim \item The instruction \centerline{\tt apt-get install gcc libkpathsea4 libkpathsea-dev} \noindent when executed as root installs the following packages on Ubuntu/Debian. \List{*} \item gcc: the standard C compiler \item libkpathsea4: library for TeX path searching, part of the texlive distribution provides files like /usr/lib/libkpathsea.so.4.0.0 \item libkpathsea-dev: development files for libkpathsea provides numerous header files (*.h) in /usr/include/kpathsea \EndList If a file is already present, a warning is issued and the instruction can be retried after omitting the request for the installed package. \EndList A given address may start with the character \`'~'. This character is interpreted to be the directory address of the root (as provided in an environment variable named \''HOME'). The file \''tex4ht.env' may be renamed to \`'.tex4ht', if your system allows names consisting only of the extension part. \EndHPage{}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \HPage{Modify} \ExitHPage{} \InstallSection{The Composition of tex4ht.env} \--tex4ht.env///% \TeX4ht consults this file for system-dependent information. The file consists of a sequence of directives, where each directive occupies a line and is identified with a distinguished character code in the first column. The following are the possible character codes and their meaning. \List{} \item{b} This character identifies for \''tex4ht' a comment to be placed in the \`'.lg' file, before the \Link{bsc}{bsc-1}scripts\EndLink{} for creating pictures for symbols. \item{g} \--Bitmaps and graphics/png//% This character identifies the extension tex4ht should associate to names of the files of pictures the postprocessor requests (for instance, bitmap files of glyphs.). The default corresponds to a setting of the form \`'g.png'. An extension name can also be encoded into tex4ht during compilation time through the variable \SysVar{LGTYP}. Alternatively, an extension can be provided in the command line of tex4ht, in which case the character code should be present and immediately preceded by a \`'-' character. \item{i} This character identifies to \''tex4ht' a directory \Link{ch-i}{ch.i}where\EndLink{} the hypertext font (.htf) files of \''tex4ht' are stored. \item{l} \--tex4ht.fls///% This character identifies a % \HPage{bookkeeping file} \ExitHPage{exit} \InstallSection{Placement of the Bookkeeping File} \--tex4ht.c///% \--Kpathsea///% \--tex4ht.fls/TEX4HTWR//% \--Environment Variables///% \Link{}{TEX4HTWR}\EndLink{}To cut down on the time invested to locate files, the \''tex4ht.c' program maintains a bookkeeping file where it records the addresses of the files it finds. Whenever the program needs to locate a file, it first searches the address in the bookkeeping file. If it doesn't find the address there, the program embarks on a search throughout the physical directories of its platform. The program places the bookkeeping file at the first applicable location of the following list. \List{1} \item The pointer specified by an optional \`'-l' switch provided to the invocation of the \''tex4ht' program. \item A file named \''tex4ht.fls' in the directory specified by an optional environment variable named \''TEX4HTWR'. \item The location specified by an optional \`'l' record provided in the environment file. \item A file named \''tex4ht.fls' in the work directory. \EndList A given address may start with the character \`'~' or the character pair \`'~~'. The single character \`'~' is interpreted to be the directory address of the root, provided in an environment variable named \''HOME'. The character pair \`'~~' is interpreted to be a directory address provided in an environment variable named \''TEX4HTWR'. The address stored in the latter environment variable may also start with a single character \`'~'. The bookkeeping file must have writable access mode, and the directory which contains the file should have a compatible access mode. On multi-user platforms, it is recommended not to share the bookkeeping file, but to ask for such files in the users' directories. The bookkeeping file is a dynamically constructed variant of the ls-R file of kpathsea. TeX4ht ignores its own bookkeeping mechanism, if the program \''tex4ht.c' is compiled with a raised \''-DKPATHSEA' switch. \EndHPage{} % where \''tex4ht' can record information about paths to files it uses. \item{s} This character identifies to \''tex4ht' a \Link{sc}{sc-1}command\EndLink{} for requesting in the \''lg' file the translation of dvi pictures to bitmaps. When needed, a sequence of such commands can be placed in consecutive lines to form a block of commands for handling the translation. \item{t} \--Fonts/tfm//% This character identifies to \''tex4ht' the directory \HPage{where} \ExitHPage{exit} \InstallSection{Directories of the \TeX\space Fonts Metric (tfm)} \--Fonts/tfm//%% \--tex4ht.c/Compiling//% \--Kpathsea///% \--Environment Variables///% \Link{}{alt-tfm}\EndLink\TeX4ht searches the hypertext fonts in the working directory, and in the following optional directories, in the given order. \List{disc} \item The directory named in the \Link[\RefFile{overview}]{}{}command line\EndLink{} of tex4ht, identified with the prefix \`'-t'. \item The directory identified with the character \`'t' in the tex4ht.env file. \item The directory whose name is fed into tex4ht.c during compilation time, through the program variable \SysVar{TFMDIR}. \item In the directory holding the executable \''tex4ht' (only for MS Windows). \EndList A given address may start with the character \`'~' or the character pair \`'~~'. The single character \`'~' is interpreted to be the directory address of the root, provided in an environment variable named \''HOME'. The character pair \`'~~' is interpreted to be a directory address provided in an environment variable named \''TEX4HTTFM'. The address stored in the latter environment variable may also start with a single character \`'~'. The optional environment variable \''TEX4HTTFM' may hold one or more addresses. The addresses must be separated by a character which does not appear in the addresses, and that character must also delimit the content at the start and end points. The system variable \SysVar{MAXFONTS} of tex4ht.c places a limit on the number of fonts allowed in the documents. The default setting doesn't provide such a limit. If the program \''tex4ht.c' is compiled with the \`'-DKPATHSEA' switch on, \TeX4ht ignores its own search and delegate it to the kpathsea utility. % \leavevmode \--Fonts/tfm/aliases/\Link{}{tfmalias}\EndLink % Some % \TeX{} systems provide virtual fonts without tfm files. Instead, they % provide file of aliases with records of the form `{\it virtual font % name}={\it actual font name}'. In such a case, the location of a file of % aliases can be provided within an a-record in \''tex4ht.env'. % % The tex4ht program ignores records having form different than % `{\it virtual font name}={\it actual font name}'. A given address may start with the character \`'~' or the character pair \`'~~'. The single character \`'~' is interpreted to be the directory address of the root, provided in an environment variable named \''HOME'. The character pair \`'~~' is interpreted to be a directory address provided in an environment variable named \''TEX4HTA'. The address stored in the latter environment variable may also start with a single character \`'~'. \EndHPage{} the font metric (.tfm) files of \TeX{} are stored. \item{A} This character identifies to \''t4ht' a \Link{accscript}{}script\EndLink{} for changing access mode of files. \item{C} This character identifies a \Link{mvscript}{}script\EndLink{} for satisfying requests made in the \''lg' file to copy files between directories. \item{E} This character identifies a \Link{mvscript}{}script\EndLink{} for satisfying requests made in the \''lg' file to get substitutions for empty pictures. \item{F} This character identifies to \''t4ht' a \Link{dv2png}{}script\EndLink{} for translating into other formats characters from dvi files. A `F.ext' record marks a conditional F-subscript. It states that the following F-records will apply only to pictures whose extension names are `ext'. A `F.' record marks a default F-subscript. It applies to pictures whose extension names do not get dedicated F-subscripts. The `F.ext' and `F.' records are not needed, in case all the pictures are to be processed by a single set of F-records. \noindent{\bf Example}: \Verbatim F.gif F-gif-script F.png F-png-script F. F-script \EndVerbatim \item{G} This character identifies to \''t4ht' a \Link{dv2png}{}script\EndLink{} for translating general dvi figures into other formats. A `G.ext' record marks a conditional G-subscript. It states that the following G-records will apply only to pictures whose extension names are `ext'. A `G.' record marks a default G-subscript. It applies to pictures whose extension names do not get dedicated G-subscripts. The `G.ext' and `G.' records are not needed, in case all the pictures are to be processed by a single set of G-records. \noindent{\bf Example}: \Verbatim G.gif G-gif-script G.png G-png-script G. G-script \EndVerbatim \item{M} This character identifies a \Link{mvscript}{}script\EndLink{} for satisfying requests made in the \''lg' file to move files between directories. \item{S} This character specifies what security measures \''t4ht' should take when invoking other utilities. In the absence of this directive, all the calls to system services are ignored. On the other hand, a directive of the form \`'S*' allows all system calls. A selective access to system calls can be obtained with \''S' directives, which specify the prefixes of command names that should be allowed to go through. The \''S' directives can be fed as switches to the command lines \''t4ht'. \item{P} A variant of he \''S' switch for \''tex4ht'. Rarely useful. \item{X} This character identifies to \''t4ht' a script for postprocessing the files which \''tex4ht' outputs. The file names are represented by \`'%%1', and their extensions by \`'%%2'. Such scripts, for instance, may invoke validators to check the correctness of the files against given DTD's and request XSL transformations. The command line of \''t4ht' may include a flag \`'-X' whose content is represented by \`'%%3' in the script. Example: \''Xmake -f mymake name=%%1 ext=%%2 %%3' \item{{\bf.} (dot)} A variant of the X script applied to files whose extension names are provided after the dot. The file names are represented by \`'%%1', and the jobnames by \`'%%0'. Example: \''.xml echo "name=%%1.xml"' \item{{\tt <}} Tagged script segments \''...' are scanned only if their names are specified within \''-ctag' switches of \''tex4ht.c' and \''t4ht.c'. When such switches are not supplied, a the switch \''-cdefault' is implicitly assumed. \EndList Lines starting with other characters are treated as comments, and empty lines may be treated as file terminators by \''tex4ht' and \''t4ht'. {\noindent \bf Examples:} \Link[tex4ht-env-unix.txt]{}{}Unix-oriented\EndLink{}, \Link[tex4ht-env-win32.txt]{}{}MS-oriented\EndLink{} \EndHPage{} the file to meet the setting of your environment. % % % \item \HPage{Compile} \ExitHPage{} \Link{}{doc-c}\EndLink \InstallSection{Compiling tex4ht.c} \List{disc} \item \--tex4ht.c/Compiling//You might want to activate some of the options at the start of the file by uncommenting the corresponding lines. \Verbatim /* ********************************************** Compiler options * (uncommented | command line) * ------------------------------------------------* Classic C (CC) default #define ANSI ansi-c, c++ #define DOS_C #define HAVE_STRING_H #define HAVE_DIRENT_H #define HAVE_SYS_NDIR_H #define HAVE_SYS_DIR_H #define HAVE_NDIR_H #define WIN32 #define KPATHSEA #define BCC32 bordland c++ ************************************************* \EndVerbatim \item \--tex4ht.c/Compiling//% \--tex4ht.c/HTFDIR//% \--tex4ht.c/LGPIC//% \--tex4ht.c/LGSEP//% \--tex4ht.c/LGTYP//% \--tex4ht.c/MAXFONTS//% \--tex4ht.c/TFMDIR//% Values may be assigned in the command line or the beginning of the source file, to the environment variables \def\SysVar#1{\Link{#1}{x-#1}#1\EndLink} \SysVar{ENVFILE}, \SysVar{HTFDIR}, \SysVar{LGPIC}, \SysVar{LGSEP}, \SysVar{LGTYP}, % ??? \SysVar{MAXFDIRS}, \SysVar{MAXFONTS}, and \SysVar{TFMDIR}. \gdef\SysVar#1{\Link{-#1}{#1}#1\EndLink} For instance, \'@gcc -o tex4ht tex4ht.c -DENVFILE='"path/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"' -DHAVE_DIRENT_H@ \EndList The switch \`+-DENVFILE+ is optional, if the program can reach the environment file in an \Link{envloc}{}alternative\EndLink{} manner. \InstallSection{Compiling t4ht.c} \--t4ht.c/Compiling//% The environment variable \''ENVFILE' is available also in \`'t4ht.c'. For instance, \'+gcc -o t4ht t4ht.c -DENVFILE='"gold/tex4ht.dir/texmf/tex4ht/base/unix/tex4ht.env"'+ \EndHPage{} the source files \`'tex4ht.dir/src/tex4ht.c' and \`'tex4ht.dir/src/t4ht.c' into executable programs \''tex4ht' and \''t4ht', and move the latter programs into \`'tex4ht.dir/bin/'. % % % \item Set a \HPage{driver} \ExitHPage{} \InstallSection{Driving the Translation of Pictures and Other Tasks} \--Files/idv//% \--Files/lg//% \--Bitmaps and graphics/Requests//% \TeX4ht outputs a script file (\`'.lg') describing how the dvi file (extension \`'.idv') of pictures should be processed, the CSS instructions to be included for the file, and user-initiated requests from the operating system. In the default setting, the script file holds abstract commands similar to the following ones. \List{} \item{{\tt--- needs --- source.idv[i] ==> target.png ---}} An abstract command of this form requests that the i'th page in the dvi file will be translated into a target file whose name is provided. \item{{\tt --- characters --- }} This abstract command is a identifies where the requests for pictorial characters start. \EndList A manual brute-force execution of the abstract commands can be a tedious job for large number of pictures. The \''t4ht' is in essence an interpreter for these abstract commands. Another possible approach for automating the process is to request lg scripts in the form of shell scripts or batch files. \HCode{}{\bf Alternatives to `{{\tt--- needs --- source.idv[i] ==> target.png ---}}'}\HCode{} The default setting is made with a request of the form \`'--- needs --- %%1.idv[%%2] ==> %%3.png ---', where the parameters \''%%1', \''%%2', and \''%%3' respectively represent the name of the source file without its extension, a page number, and a name of the target file. Alternative patterns to these abstract commands can be requested in the following locations, with the order reflecting on the priority given to the requests. \List{disc} \item In the \Link[\RefFile{overview}]{}{}command line\EndLink{} of \''tex4ht', where the pattern should be prefixed with \`'-s'. \item In the environment file \''tex4ht.env' within a block of consecutive lines, where the lines should be identified with the character \Link{sc-1}{sc}\`'s'\EndLink{}. \gdef\SysVar#1{\Link{x-#1}{#1}#1\EndLink} %%%%%%%%# \item In \''tex4ht' with the pattern provided through the variable \SysVar{LGPIC} of \''tex4ht.c'. \def\SysVar#1{\Link{#1}{x-#1}#1\EndLink} \EndList The character \`'%' can be introduced into a pattern through the entry \`'%%%'. On the other hand, the parameters \`'%%1', \`'%%2', and \''%%3' can specify, between the first two percentage characters (i.e., \`'%...%1', \`'%...%2', and \`'%...%3'), any format for the outcome that is compatible with the print formats of C. \HCode{}{\bf Alternatives to `{{\tt--- characters ---}}'}\HCode{} Substitutions for this abstract command can be requested in the following locations. \List{disc} \item In the %\Link[\RefFile{overview}]{}{}command line\EndLink{} \HPage[]{overview} \ExitHPage{} \InstallSection{The Translation Process} \--tex4ht.sty///\--t4ht.c///\--tex4ht.c///\--\LaTeX///% \--Scripts///% The system can be activated with a sequence of commands of the following form, typically embedded within a script. \Verbatim latex x (or `tex x') latex x latex x tex4ht x t4ht x \EndVerbatim The three compilations with La(\TeX) are needed to ensure proper links. The approach is illustrated in the following picture. \Draw \TreeSpec(n,\Node & r,\SRectNode)()() \TreeAlign(H,0,0)(0,0,0) \MinNodeSize(1,30) \Tree()( 1,n,x.tex// 1,r,TeX // 1,n,x.dvi // 3,r,tex4ht // 0,n,html~~files & 0,n,x.idv & 0,n,x.lg // ) \MoveToLoc(4..1) \CSeg[0.5]\Move(4..1,4..2) \CSeg\Move(0..0,1..0) \SRectNode(5..0)(--t4ht--) \CSeg\Move(0..0,1..0) \Node(6..0)(--png~\&~css~~files--) \Edge(5..0,6..0) \MoveToLoc(5..0) \CSeg[0.5]\Move(1..0,0..0) \MarkLoc(x) \HHEdge(4..1,5..0,x) \HHEdge(4..2,5..0,x) \EndDraw \List{} \item{x.tex} This is a source \TeX/\LaTeX/Other\TeX{} file that imports the style files \''tex4ht.sty' and \''*.4ht'. The style files define the features for the output. \item{tex4ht} \--dvi///% \--Files/dvi//% The output of \TeX{} is a standard dvi file interleaved with special instructions for the postprocessor \''tex4ht' to use. The special instructions come from implicit and explicit requests made in the source file through commands of \TeX4ht. The utility \''tex4ht' translates the dvi code into standard text, while obeying the requests it gets from the special instructions. The special instructions may request the creation of files, insertion of html code, filtering of pictures, and so forth. In the extreme case that the source code contains no commands of \TeX4ht{}, tex4ht gets pure dvi code and it outputs (almost) plain text with no hypertext elements in it. The special ({\tt\string\special}) instructions seeded in the dvi code are not understood by dvi processors other than those of \TeX4ht. \item{x.idv} \--dvi///% \--Files/idv//% This is a dvi file extracted from \''x.dvi', and it contains the pictures needed in the html files. \item{x.lg} \--Files/lg//% This is a log file listing the pictures of x.idv, the png files that should be created, CSS information, and user directives introduced through the \`'\Needs{...}' command. \item{t4ht} This is an interpreter for executing the requests made in the \''x.lg' script. \EndList \InstallSection{A Reflection at the System Messages} \bgroup \def\.#1.{$\Leftarrow$ {\bf #1}} \Verbatim-@ This is TeX, Version 3.14159 (Web2C 7.3.1) @.invoke `latex x'. LaTeX2e <1998/12/01> patch level 1 Babel and hyphenation patterns for american, french, german, ngerman, n ohyphenation, loaded. (x.tex (/usr/share/texmf/tex/latex/base/article.cls Document Class: article 1999/01/07 v1.4a Standard LaTeX document class (/usr/share/texmf/tex/latex/base/size10.clo)) (n/tex4ht.dir/tex4ht.sty) (n/tex4ht.dir/tex4ht.sty --- needs --- tex4ht x --- (tex4ht.tmp) (x.xref) (n/tex4ht.dir/html4.4ht) (n/tex4ht.dir/picmath4.4ht) (n/tex4ht.dir/latex.4ht (n/tex4ht.dir/html4.4ht) (n/tex4ht.dir/picmath4.4ht)) (n/tex4ht.dir/fontmath.4ht (n/tex4ht.dir/html4.4ht) (n/tex4ht.dir/picmath4.4ht)) (n/tex4ht.dir/article.4ht (n/tex4ht.dir/html4.4ht ) (n/tex4ht.dir/picmath4.4ht))) (x.aux) --- file x.css --- [1] (x.aux) ) Output written on x.dvi (1 page, 4460 bytes). Transcript written on x.log. This is TeX, Version 3.14159 (Web2C 7.3.1) @.invoke `latex x'. LaTeX2e <1998/12/01> patch level 1 ....................... This is TeX, Version 3.14159 (Web2C 7.3.1) @.invoke `latex x'. LaTeX2e <1998/12/01> patch level 1 ....................... tex4ht.c (1999-11-10-03-50) @.invoke `tex4ht x'. (tex4ht.env) (n/tex4ht.dir/tex4ht.fls) (/usr/share/texmf/fonts/tfm/public/cm/cmr10.tfm) (n/tex4ht.dir/ht-fonts/iso8859/cm/cmr.htf) [1 file x.html file x.css file tex4ht.tmp ] Execute script `x.lg' t4ht.c (1999-12-30-21-14) @.invoke `t4ht x'. Entering tex4ht.env Entering x.lg ....................... \EndVerbatim \egroup \EndHPage{} of \''tex4ht', prefixed with \`'-b'. \item In a line within the environment file \`'tex4ht.file', where the line should be identified with the character `\Link{bsc-1}{bsc}b\EndLink{}'. \gdef\SysVar#1{\Link{x-#1}{#1}#1\EndLink} \item In \''tex4ht' with the substitution provided during compilation time through the variable \SysVar{LGSEP} of \''tex4ht.c'. \def\SysVar#1{\Link{#1}{x-#1}#1\EndLink} \EndList \EndHPage{} for the t4ht utility. \EndList %%%%%%%%%%%%%%%%%%%%%%%% \HPage{} \ExitHPage{exit} \InstallSection{Directories for the Virtual Hypertext Fonts (htf)} \--Fonts/htf//%% \--tex4ht.c/Compiling//% \--Kpathsea///% \--Environment Variables///% \Link{}{alt-htf}\EndLink% Each font of TeX may have numerous virtual hypertext font to map to. The \Link{ch.i}{}i directives\EndLink{} of \''tex4ht.env', as well as the i switches of the \''tex4ht' command, may be used to identify the subdirectories where the target virtual fonts are to be found. \TeX4ht searches the hypertext fonts in the working directory, and in the following optional directories, in the given order. \List{disc} \item The directory named in the \Link[\RefFile{overview}]{}{}command line\EndLink{} of tex4ht, identified with the prefix \`'-i'. \item The directory identified with the character \Link{ch.i}{ch-i} \`'i'\EndLink{} in the tex4ht.env file. \item The directory whose name is encoded into tex4ht during compilation time, within a string \''"..."' fed into the variable \SysVar{HTFDIR} of tex4ht.c. \item In the directory holding the executable \''tex4ht' (only for MS Windows). \EndList A given address may start with the character \`'~' or the character pair \`'~~'. The single character \`'~' is interpreted to be the directory address of the root, provided in an environment variable named \''HOME'. The character pair \`'~~' is interpreted to be the directory address provided in an environment variable named \''TEX4HTHTF'. The address stored in the latter environment variable may also start with a single character \`'~'. The optional environment variable \''TEX4HTHTF' may hold one or more addresses. The addresses must be separated by a character which does not appear in the addresses, and that character must also delimit the content at the start and end points. If the program \''tex4ht.c' is compiled with the \`'-DKPATHSEA' switch on, \TeX4ht ignores its own search and delegate it to the kpathsea utility. \EndHPage{} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \EndHPage{}. The distribution assumes compilations through command lines but \HPage{graphical user inferfaces} \--Graphical User Interfaces///% \List{*} \item \Link[http://www.mayer.dial.pipex.com/tex.htm]{}{}\TeX{} Converter\EndLink{} (Steve Mayer). Supports a set of converters on MS Windows, including \TeX4ht. \item \Link[http://www.simpletex4ht.free.fr/ target="\string_blank"]{}{} SimpleTeX4ht\EndLink{} (Yves Gesnel). A Mac OS X GUI. \item \TeX4ht \HPage{integrated into the WinShell} I was successful with integrating TeXh4t win WinShell 2.2.1 from Texlive 7 distribution. By inserting ``user tools'' you can have an editor from which there is a quick access to not only LaTeX, (standard makeindex - not provided but explained in help support), PDFLaTeX, Dvi, GsView, Acrobat Reader, but also to TeXh4t (DOS switch MUST be OFF as logspace has not enough room for long log files produced by TeXh4t), to two stage makeindex procedure and to Mozilla browser. \EndHPage{} graphical user interface of Ingo H. de Boer for working with TeX. (Piotr Grabowski) % \item \Link[https://ctan.org/tex-archive/systems/win32/bakoma/programs/texword.html]{}{}BaKoMa \TeX{} Word\EndLink . A WYSIWYG \LaTeX{} editor with HTML expot through \TeX4ht . \EndList \EndHPage{} may also be employed. Philip A. Viton discusses in details issues of installing \TeX4ht under \Link[https://web.archive.org/web/20170701025148/http://facweb.knowlton.ohio-state.edu/pviton/support/tex4ht.html]{}{}Mik\TeX\EndLink{} and \Link[https://web.archive.org/web/20170909235854/http://facweb.knowlton.ohio-state.edu/pviton/support/swpht.html]{}{}Scientific Word/WorkPlace\EndLink, but many of the topics apply also to other platforms. Steven Zeil offers \Link[https://web.archive.org/web/20060617212822/http://www.cs.odu.edu/\string~zeil/tex4ht/tex4ht\string_discussion.html]{}{}improvements\EndLink{} for the above settings. The \Link[http://svn.gnu.org.ua/viewvc/tex4ht/trunk/lit/]{}{}literate sources\EndLink{} of \TeX4ht are also available, but they are not needed for installing the system. The literate views are very far from being in a desirable state for a review by a public eye---they reflect their true nature as being privately used for developing and maintaining the available code. The views follow a basement mentality: throw in without much scrutiny any item of possible value at some point of time, and clean a corner when the need arises for working on a specific issue of the code. The leading lines in the files indicate how the files can be compiled. \noindent \Link{trbl-sht}{}troubleshooting\EndLink {\tt |} %%%%%%%%%%%%%%%%%%%%%%%%%%%%% \HCode{}\Link[bugfixes.html]{}{}bug fixes\EndLink \HCode{} %%%%%%%%%%%%%%%%%%%%%%%%%% \DocPart{Bug Reports} %%%%%%%%%%%%%%%%%%%%%%%%%% The development of the \TeX4ht system is to a large degree driven by users' bug reports and requests. The bug reports can be posted on \Link[https://puszcza.gnu.org.ua/bugs/?group=tex4ht]{}{}\TeX4ht issue tracker\EndLink. In most cases, when providing feedback, it is essential to include the following information. \List{*} \item A \NextFile{\jobname-bug.html}\HPage{minimal}\ExitHPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \List{*} \item Remove the calls to packages that are not essential to reproduce the problem (e.g., \Verb=\RequirePackage=, \Verb=\usepakage=) \item Remove the local definitions that are not essential. For instance, use \Verbatim \begin{figure} \includegraphics{filename} \caption{What ever.} \end{figure} \EndVerbatim instead of \Verbatim \def\fig#1#2{\begin{figure} \includegraphics{#1} \caption{#2} \end{figure}} \fig{filename}{What ever.} \EndVerbatim \item Use core classes when possible (e.g., \Verb=article= instead of \Verb=scrbook=). \item Cut to a minimum the content where possible (e.g., `Abc' instead of `Blah blah ... for ever.') \EndList We work in a \LaTeX{} environment different from where the bug reports typically originate. To understand the bugs we need to recreate the environments producing them. A sample file that isolates the problem reduces the debugging effort to a minimum. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \EndHPage{} miniature complete source file illustrating the issues involved, but do not include bitmap files loaded by the sources (e.g., PNG files). Since similar constructs are introduced within different style files, a minimal source is required for correctly pinpointing the definitions of the constructs involved in the translation. \item Specifying the command used to invoke the translation. This information is required since the command determines which configurations participate in the translation. \item Occasionally it might also be useful to have a url where the files and messages produced during the compilation can be viewed. Unless explicitly requested, please don't email such information. \EndList Translations of source files are centered on logical structures. Formatting instructions receive only limited attention. \DocPart{Resources} % From: Sebastian Rahtz % Date: Fri, 4 Sep 1998 10:16:12 +0100 ( `) % To: plaice@cse.unsw.edu.au % cc: gurari@cse.ohio-state.edu % Subject: Re: tex to mathml % % John Plaice writes: % % % > i've changed the tex engine so that entities get recognized at the % > font level or at the mathcode/delcode level. there are also new macros for % > \sgmlstarttag, \sgmlendtag, \sgmlemptytag and \sgmlentity. % > plus with versioned macros, you can have highly optimized translations % > that do everything correctly. % ok so far. you do in the TeX engine what Eitan has to do in the dvi % post-processor. but % % - you still have to write an extensive macro package to do the actual % mapping, I assume? % - how do you get the XML file out the end? is Omega writing a text % file, or are you going to extract from the dvi file? % % > it should be finished in about 2 weeks. % shall be fascinated to see it % % sebastian \HTable^/\Css{\#TBL-\TableNo\space td{font-size:75\%;}} Languages: \& \HPage{LaTeX/TeX} \ExitHPage{}\SubSection{LaTeX/TeX} \List{disc} \item \Link[http://www.mech.gla.ac.uk/\string ~donald/talks/LaTeX/slides.html target="\string_blank"]{}{}% Introduction to \LaTeX \EndLink{} (A. J. Hildebrand) \item \Link[http://www.cs.rug.nl/\string ~rein/csrugonly/latex/latexdoc/latexdoc.html target="\string_blank"]{}{}% What's LaTeX all about?\EndLink{} (Rein Smedinga) \item \Link[http://web.mit.edu/olh/Latex/ess-latex.html target="\string_blank"]{}{}% Essential \LaTeX \EndLink{} (Sharon Belville, Matthew Swift) \item \Link[http://www.cs.cornell.edu/Info/Misc/LaTeX-Tutorial/LaTeX-Home.html target="\string_blank"]{}{}% Beginning LaTeX\EndLink{} (Denise Moore) \item \Link[http://www.cs.stir.ac.uk/guides/latex/guide.html target="\string_blank"]{}{}% Document Preparation with \LaTeX\EndLink{} (David Budgen, Sam Nelson) \item \Link[http://www.sci.usq.edu.au/staff/robertsa/LaTeX/latexintro.html target="\string_blank"]{}{}\LaTeX: from quick and dirty to style and finesse\EndLink{} (Tony Roberts) \item \Link[http://www.maths.tcd.ie/\string ~dwilkins/LaTeXPrimer/Index.html target="\string_blank"]{}{}Getting Started with \LaTeX\EndLink{} (David R. Wilkins) \item \Link[http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/latex\string_advanced/latex\string_advanced.html target="\string_blank"]{}{}Advanced \LaTeX \EndLink {} (Tim Love) \item \Link[http://www.giss.nasa.gov/latex/ltx-2.html target="\string_blank"]{}{}\LaTeX{} commands\EndLink{} (Sheldon Green) \item \Link[http://tex.loria.fr/ctan-doc/macros/latex/doc/html/fntguide/fntguide.html target="\string_blank"]{}{}\LaTeX2e font selection\EndLink{} \item \Link[http://makingtexwork.sourceforge.net/mtw/ target="\string_blank"]{}{}Making \TeX{} Work\EndLink{} (Norman Walsh) \item \Link[http://profs.sci.univr.it/\string ~gregorio/orrori.pdf target="\string_blank"]{}{}Horrors in LaTeX: how to mistreat LaTeX and make a copy > editor unhappy\EndLink{} (Enrico Gregorio). Commented in Italian. \item \Link[http://www.non.com/books/TeX\string_cc.html target="\string_blank"]{}{}Books\EndLink{} \item \Link[news:comp.text.tex target="\string_blank"]{}{}newsgroup comp.text.tex\EndLink \item \Link[http://www.esm.psu.edu/mac-tex/ target="\string_blank"]{}{}MacOSX TeX/LaTeX Web Site\EndLink \item \Link[http://www.dante.de/cgi-bin/ctan-index target="\string_blank"]{}{}Archive Search\EndLink{} \item \Link[http://en.wikibooks.org/wiki/LaTeX target="\string_blank"]{}{}LaTeX Wiki\EndLink{} \EndList \EndHPage{}, \HPage{HTML}\ExitHPage{}\SubSection{HTML} \List{disc} \item \Link[http://www.w3.org/MarkUp/Guide/ target="\string_blank"]{}{}Getting started with HTML\EndLink{} (Dave Raggett) \item \Link[http://www.htmlhelp.com/reference/wilbur/overview.html target="\string_blank"]{}{}% HTML 3.2: Wilbur\EndLink{} (WDG: Web Design Group) \item \Link[http://www.w3.org/TR/html401/ target="\string_blank"]{}{}% HTML 4.01 Specification\EndLink{} (W3C), \Link[http://www.w3.org/MarkUp/Test/HTML401/current/tests/index.html target="\string_blank"]{}{}% examples\EndLink{} \item \Link[http://www.w3.org/MarkUp/ target="\string_blank"]{}{}% XHTML\EndLink{} (W3C) \EndList \EndHPage{}, \HPage{XML/XSLT}\ExitHPage{}\SubSection{XML/XSLT} \List{disc} \item \Link[http://www.w3.org/TR/REC-xml target="\string_blank"]{}{}% XML\EndLink{} (W3C), \Link[http://www.garshol.priv.no/download/text/xml-intro/index-en.html target="\string_blank"]{}{}% An Introduction to XML\EndLink{} (Lars Marius Garshol) \item XSLT: \Link[http://www.w3.org/TR/xslt target="\string_blank"]{}{}W3C\EndLink, \Link[http://www.devguru.com/Technologies/xslt/quickref/xslt\string _index.html target="\string_blank"]{}{}DevGuru index\EndLink, \Link[http://metalab.unc.edu/xml/books/bible/updates/14.html target="\string_blank"]{}{}tutorial\EndLink{} (XML Bible), \Link[http://nwalsh.com/docs/tutorials/xsl/xsl/slides.html target="\string_blank"]{}{}tutorial\EndLink{} (Groso and Walsh) \item \Link[http://www.w3.org/TR/xpath target="\string_blank"]{}{}XPATH\EndLink{} (W3C) \item Pointers (Robin Cover): \Link[http://www.oasis-open.org/cover/sgml-tex.html target="\string_blank"]{}{}% SGML/XML and (La)\TeX\EndLink{}, \Link[http://www.oasis-open.org/cover/xml.html target="\string_blank"]{}{}% SGML/XML\EndLink{}, \Link[http://www.oasis-open.org/cover/xsl.html target="\string_blank"]{}{}% XSL\EndLink{} \item \Link[http://www.xml.com/pub/pt/3 target="\string_blank"]{}{}% editors\EndLink{} (XML.com) \EndList \EndHPage{}, % \HPage{MathML}\ExitHPage{}\SubSection{MathML} \List{disc} %----------------------------------------------------------------------------------- \item \Link[http://www.w3.org/TR/MathML2/ target="\string_blank"]{}{}% Specifications\EndLink{}. %----------------------------------------------------------------------------------- \item \Link[http://www.w3.org/Math/ target="\string_blank"]{}{}% W3C's Math Home Page\EndLink{}. %----------------------------------------------------------------------------------- \item \Link[http://www.w3.org/Amaya/ target="\string_blank"]{}{}% Amaya\EndLink{}. A browser capable of viewing MathML. %----------------------------------------------------------------------------------- \item \Link[http://www.dessci.com/webmath/mathplayer/ target="\string_blank"]{}{}% MathPlayer\EndLink{}. A MathML display engine for the MicroSoft's Internet Explorer web browser. %----------------------------------------------------------------------------------- \item \Link[http://www.mozilla.org target="\string_blank"]{}{}% Mozilla\EndLink{}. A MathML enabled browser %----------------------------------------------------------------------------------- \item \Link[http://www.integretechpub.com/ target="\string_blank"]{}{}% TechExplorer\EndLink{}. A plug-in for viewing a large subset of \TeX, \LaTeX, and AMS-\LaTeX, as well as MathML. % %--------------------------------------------------------------------------- \item \Link[http://www.dessci.com target="\string_blank"]{}{}WebEQ\EndLink{}. A Java-based renderer for MathML. %--------------------------------------------------------------------------- \item \Link[ftp://ftp.tex.ac.uk/tex-archive/macros/xmltex/base/manual.html target="\string_blank"]{}{}XML\TeX\EndLink{}. LaTeX-based formatter for MathML. %--------------------------------------------------------------------------- \item \Link[http://www.pragma-ade.com/ target="\string_blank"]{}{}Con\TeX t\EndLink{}. TeX-based formatter for MathML %--------------------------------------------------------------------------- \item \Link[http://www.alanwood.net/unicode/ target="\string_blank"]{}{}% Unicode fonts\EndLink{} for browsers (Alan Wood). % % Piotr Grabowski % I would like to share withe you a solution I found for zingbats unicode fonts. % The solution followed Alan Wood's unicode resource. % % This is really a big resource. I studied what is written therein. Soon it % turned out % that I do not have enough font characters. From zingbats test I found that % I had only % a few characters. The remedium was to install ARIAL UNICODE MS for Win. % The web page address is attached to the list of Arial fonts on Alan Wood's % page. % I downloaded and installed it - the problem disappeared all zingbats % unicode characters % are now visible. Alan Wood's web page is also recommending such tools as, % e.g. Character Agent % to verify what type of fonts you really have in your machine. Such tools as % ``character map'' % normally available in Win systems are toys! % % New Mozilla is quite nice - red fonts are now all in black as the rest. %----------------------------------------------------------------------------------- \EndList \EndHPage{}, % \HPage{OpenDocument}\ExitHPage{}\SubSection{OpenDocument}\--OpenDocument///% \List{disc} \item \Link[http://books.evc-cit.info/odbook/book.html target="\string_blank"]{}{}% OpenDocument Essentials\EndLink{} (OASIS) \item \Link[http://www.oasis-open.org/committees/download.php/12572/OpenDocument-v1.0-os.pd target="\string_blank"]{}{}% Open Document Format for Office Applications\EndLink{} (OASIS) \EndList \EndHPage{}, % \HPage{DocBook}\ExitHPage{}\SubSection{DocBook}\--DocBook///% \List{disc} \item \Link[http://www.oasis-open.org/docbook/xml/ target="\string_blank"]{}{}% The official DocBook Homepage\EndLink{} (Oasis) \item \Link[http://www.docbook.org/tdg5/en/html/docbook.html target="\string_blank"]{}{}% DocBook: The Definitive Guide\EndLink{} (Norman Walsh and Leonard Muellner) \item \Link[http://db2latex.sourceforge.net/ target="\string_blank"]{}{}% DB2LaTeX XSL Stylesheets\EndLink{} \EndList \EndHPage{}, % \HPage{TEI}\ExitHPage{}\SubSection{TEI} \--TEI///% \List{disc} \item \Link[http://www.tei-c.org/ target="\string_blank" ]{}{}Home page\EndLink{} \item \Link[http://www.oasis-open.org/cover/tei.html target="\string_blank" ]{}{}XML TEI\EndLink{} (OASIS) \EndList \EndHPage{}, % \HPage{Style Sheets}\ExitHPage{}\SubSection{Style Sheets} \List{disc} \item \Link[http://www.w3.org/Style/CSS/ target="\string_blank"]{}{}% CSS (W3C)\EndLink{} (\Link[http://www.w3.org/TR/REC-CSS1 target="\string_blank"]{}{}% CSS1\EndLink{}, \Link[http://www.w3.org/TR/REC-CSS2 target="\string_blank"]{}{}% CSS2\EndLink{}, \Link[http://www.w3.org/Style/CSS/Test/ target="\string_blank"]{}{}% examples\EndLink{}) \item \Link[http://library.thinkquest.org/15074/cssmain.html target="\string_blank"]{}{}% tutorial\EndLink{} (Oracle ThinkQuest) \item \Link[http://www.w3.org/MarkUp/Guide/Style target="\string_blank"]{}{}% CSS tutorial\EndLink{} (Dave Raggett) \item \Link[http://www.w3.org/TR/WD-xsl/ target="\string_blank"]{}{}% XSL\EndLink{} (W3C) \item \Link[http://www.w3.org/TR/xsl/ target="\string_blank"]{}{}XSL-FO\EndLink{} (W3C) \item \Link[http://nwalsh.com/docs/tutorials/xsl/xsl/slides.html target="\string_blank"]{}{}XSL Concepts and Practical Use\EndLink{} (Paul Grosso and Norman Walsh) \EndList \EndHPage{}, % \HPage{Validators}\ExitHPage{}\SubSection{Validators} \--Validation///% \List{disc} \item XML: xmllint \item CSS: \Link[http://jigsaw.w3.org/css-validator/ target="\string_blank" ]{}{}WDG jigsaw.w3.org\EndLink{} \EndList \EndHPage{} % \CR Converters\BR into\BR HTML/XML: \& % http://union.ncsa.uiuc.edu/HyperNews/get/www/html/converters.html \ResourceList %-------------------------------------------------------------------------- \Item \Link[http://www.astro.gla.ac.uk/users/norman/distrib/bibhtml.html target="\string_blank"]{}{}BibHTML\EndLink{}\author (Norman Gray)\ContItem A Bib\TeX{} to HTML converter. %-------------------------------------------------------------------------- % \Item % \Link[http://sgalland.multimania.com/english/tools/bib2html/ % target="\string_blank"]{}{}Bib2HTML\EndLink{}\author % (Stephane Galland)\ContItem % Perl script for creating HTML output from a Bib\TeX{} database. % Stéphane Galland % at home sgalland@multimania.com %-------------------------------------------------------------------------- % \Item % \Link[http://rikblok.cjb.net/scripts/bbl2html.awk % target="\string_blank"]{}{}Bib2HTML\EndLink{}\author % (Rik Blok)\ContItem % AWK script for creating HTML output from a Bib\TeX{} database. % %-------------------------------------------------------------------------- % \Item % \Link[http://www.uni-koblenz.de/ag-ki/ftp/bib2html/ % target="\string_blank"]{}{}Bib2HTML\EndLink{}\author % (David Hull)\ContItem % Perl script for creating HTML output from a Bib\TeX{} database. %-------------------------------------------------------------------------- \Item \Link[http://www.ibiblio.org/pub/packages/TeX/biblio/bibtex/utils/bibtools/bib2html target="\string_blank"]{}{}Bib2HTML\EndLink{}\author (David Kotz)\ContItem Perl script for creating HTML output from a Bib\TeX{} database. %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- \Item \Link[http://www.shelldorado.com/scripts/cmds/bib2html.txt target="\string_blank"]{}{}Bib2HTML\EndLink{}\author (Heiner Steven)\ContItem AWK script for creating HTML output from a Bib\TeX{} database. %-------------------------------------------------------------------------- \Item \Link[http://www.spinellis.gr/sw/textproc/bib2xhtml/ target="\string_blank"]{}{}Bib2XHTML\EndLink{}\author (Diomidis Spinelli)\ContItem Bibtex styles and a Perl script driver for creating XHTML output from BibTeX citations. %-------------------------------------------------------------------------- \Item \Link[https://ctan.org/pkg/bib2ml target="\string_blank"]{}{}Bib2ML\EndLink{}\author (St\'ephane Galland)\ContItem A Perl script for generating HTML, XML and SQL files from Bib\TeX{} databases. %----------------------------------------------------------------------------------- \Item \Link[http://www.lri.fr/\string ~filliatr/bibtex2html/index.en.html target="\string_blank"]{}{}Bib\TeX2HTML\EndLink{}\author (Jean-Christophe Filliatre)\ContItem A Bib\TeX{} to HTML converter written in Objective Caml. %-------------------------------------------------------------------------- \Item \Link[http://www.blahtex.org/ target="\string_blank"]{}{}Bib\TeX2HTML\EndLink{}\author (David Harvey)\ContItem A tool that translates TeX math into MathML for MediaWiki %----------------------------------------------------------------------------------- %%--------------------------------------------------------------------------- \Item \Link[http://www.mostang.com/\%7Edavidm/dlh.html target="\string_blank"]{}{}Dlh\EndLink{}\author (David Mosberger)\ContItem A C translator for converting from a subset of \LaTeX{} to HTML. %----------------------------------------------------------- % \Item % \Link[http://www.dcs.fmph.uniba.sk/\string~emt/EmSystem.html % target="\string_blank"]{}{}Euromath\EndLink{} \ContItem % A converter from % \LaTeX{} to Euromath SGML %----------------------------------------------------------------------------------- \Item \Link[http://math.albany.edu:8000/math/pers/hammond/igl.html target="\string_blank"]{}{}GELLMU\EndLink{}\author (William F. Hammond)\ContItem A general-purpose SGML authoring language based on \LaTeX{} syntax. % % GELLMU is not LaTeX nor is it an HTML generator (but see below); rather it % is a general-purpose SGML authoring language that is based on traditional % LaTeX syntax (to the extent possible). % % The design of GELLMU envisions a three stage system. % % Stage 1 uses an E-lisp program to convert GELLMU input into an SGML % document. (E-lisp is the dialect of Lisp that underlies GNU Emacs.) % % Stage 2 uses the SGML parser ``nsgmls'' of James Clark to produced a fully % parsed text stream from the SGML arising out of stage 1. % % Stage 3 uses author-provided collections of Perl codelets for David % Megginson's ``sgmlspl'' SGML-processing program, actually more of a % % framework, that is part of his ``sgmlspm'' Perl library. %----------------------------------------------------------------------------------- % \Item % \Link[http://www.psyx.org/mowgli/ % target="\string_blank"]{}{}Hermes\EndLink{}\author % (Romeo Anghelache)\ContItem % A converted for a subset of \LaTeX{} concentrating on getting content-MathML % out of math. % From: Romeo Anghelache % Date: Fri, 26 Sep 2003 14:03:23 +0200 % Message-ID: <3F742B0B.4040703@psyx.org> % To: www-math@w3.org % % % Hi, % % a new tool for getting Content-MathML out of LaTeX sources is in current % development, its name is Hermes. % Current version is 0.7 and is relatively useful for testing and feedback. % It is covered by GPL, the details and the sources are available here % (http://www.psyx.org/mowgli/). % % The official Hermes pages/presentations will grow here: % http://relativity.livingreviews.org/Info/AboutLR/mowgli/index.html % % The updated source distributions versions of hermes will be also % available on the MoWGLI project's website (http://www.mowgli.cs.unibo.it). %----------------------------------------------------------------------------------- \Item \Link[http://www.aei.mpg.de/hermes/ target="\string_blank"]{}{}Hermes\EndLink{}\author (Romeo Anghelache)\ContItem A LaTeX to XML convertor with a presentation MathML target for math. When possible, content MathML code is introduced as a wrapper that supplies semantics to the expressions. Sources are compiled with the native \TeX{} compiler to obtain output seeded with DVI specials. A postprocessor extracts the output from the DVI code. % http://www.ictp.trieste.it/~its/2004/casestudies/1/Hermes_files/frame.htm %----------------------------------------------------------------------------------- \Item \Link[http://para.inria.fr/\string~maranget/hevea target="\string_blank"]{}{}HEVEA\EndLink{}\author (Luc Maranget)\ContItem An Objective Caml translator from a subset of \LaTeX{} to HTML. % From Luc.Maranget@inria.fr Mon Aug 3 00:29:53 EDT 1998 % Article: 145813 of comp.text.tex % Path: news.cse.ohio-state.edu!nntp.sei.cmu.edu!bb3.andrew.cmu.edu!honeys.cs.cmu.edu!goldenapple.srv.cs.cmu.edu!not-for-mail % From: maranget@conti.inria.fr (Luc Maranget) % Newsgroups: comp.text.tex % Subject: HEVEA 1.0, a LaTeX to HTML translator in Caml % Date: 1 Aug 1998 17:49:11 GMT % Organization: INRIA Rocquencourt % Lines: 41 % Distribution: world % Message-ID: <6pvken$3un$1@goldenapple.srv.cs.cmu.edu> % Reply-To: Luc.Maranget@inria.fr % NNTP-Posting-Host: raw.fox.cs.cmu.edu % Originator: rowan@raw.fox.cs.cmu.edu % Xref: news.cse.ohio-state.edu comp.text.tex:145813 % % It is my pleasure to anounce the first release of HEVEA. % % This is HEVEA, version 1.0, a fast LaTeX to HTML translator. % % % HEVEA is a LaTeX to HTML translator. The input language is a fairly % complete subset of LaTeX2e (old LaTeX style is also accepted) and the % output language is HTML that is (hopefully) correct with respect to % version 3.2. % % Exotic symbols are translated into symbols % pertaining to the symbol font of the HTML browser, using the % non-standard FACE attribute of the FONT tag. % This allows the translation to HTML of quite a lot of the symbols % used in LaTeX. % % HEVEA understands LaTeX macro definitions. Simple user style % files are understood with little or no modifications. % Furthermore, HEVEA customization is done by writing LaTeX code. % % HEVEA is written in Objective Caml, as many lexers. It is quite fast % and flexible. Using HEVEA it is possible to translate large documents % such as manuals, books, etc. very quickly. All documents are % translated as one single HTML file. Then, the output file can be cut % into smaller files, using the companion program HACHA. % % CONTACTS % mail: Luc.Maranget@inria.fr % distribution: ftp://ftp.inria.fr/INRIA/Project/para/hevea % % DOCUMENTATION % On-line documentation is available at % http://para.inria.fr/~maranget/hevea % The first sections explain how to use hevea. % % IMPORTANT REQUIREMENT % To compile HEVEA, you need Objective Caml 1.07, see % http://caml.inria.fr/ocaml/ % % --Luc Maranget % %----------------------------------------------------------------------------------- \Item \Link[http://www.gams.com/contrib/htex/htex.htm target="\string_blank"]{}{}H\TeX\EndLink{}\author (Thomas F. Rutherford)\ContItem A preprocessor which expands html by a new tag: \`'..'. An \''' signifies the start of a \LaTeX-readable equation, and a \''' indicates the end of an equation. Anything appearing between these tags is treated as \LaTeX{} commands within a \`'displaymath' section of a \LaTeX{} document. % %--------------------------------------------------------------------------- \Item \Link[http://www-db.stanford.edu/\string~sergey/htmltex/ target="\string_blank"]{}{}Html\TeX\EndLink{} \author (Sergey Brin)\ContItem Perl script for converting a subset of \LaTeX{} to HTML %----------------------------------------------------------------------------------- \Item \Link[http://www.southernct.edu/\string ~fields/htmx/ target="\string_blank"]{}{}HTMX\EndLink{}\author (Joe Fields)\ContItem Perl script for translating \LaTeX{} equations embedded within HTML into gif. % %----------------------------------------------------------------------------------- \Item \Link[http://hyperlatex.sourceforge.net/ target="\string_blank"]{}{}Hyper\LaTeX\EndLink{}\author (Otfried Cheong)\ContItem A processor for a subset of \LaTeX{} enriched with hypertext-oriented commands. % http://www.cs.uu.nl/\string~otfried/Hyperlatex % % \Link[http://www.postech.ac.kr/\string~otfried/html/hyperlatex.html % % In anticipation of my moving to Hong Kong, I have already moved the % Hyperlatex homepage to ``http://www.cs.ust.hk/~otfried/hyperlatex.html''. % The primary ftp distribution site is now ``ftp.cs.ust.hk:/pub/ipe''. % % Please update all links you may have to the Hyperlatex pages. % (Roland, can you update the introductory text on the mailing list?) % % Otfried % %------------------------------------------------------------------------------ says that ----- \Item \Link[http://xxx.lanl.gov/hypertex/ target="\string_blank"]{}{}Hyper\TeX\EndLink{}\author (Tanmoy Bhattacharya, David Carlisle, Mark Doyle, Paul Ginsparg, Alan Jeffrey, Hiroshi Kubo, Kasper Peeters, Sebastian Rahtz and Arthur Smith)\ContItem{} A convention for inclusion of hyperlinks in TeX and LaTeX documents, supported by packages that automatically introduce the links into the code. % % 4.Invest in the hyperTeX conventions (standardised \special commands); % there are supporting macro % packages for plain TeX and LaTeX). % % The HyperTeX project aims to extend the functionality of all the LaTeX % cross-referencing commands (including % the table of contents) to produce \special commands which are parsed % by DVI processors conforming to % the HyperTeX guidelines; it provides general hypertext links, % including those to external documents. % % The HyperTeX spec viewers/translators % must recognize the following set of % \special commands: % % href: % html: % name: % html: % end: % html: % image: % html: % base_name: % html: % % The href, name and end commands are used to do the basic hypertext % operations of establishing links between % sections of documents. % % Further details are available on http://xxx.lanl.gov/hypertex/; there % are two commonly-used implementations of % the specification, a modified xdvi and a modified dvips. Output from % the latter may be used in a modified % GhostScript or Acrobat Distiller. %----------------------------------------------------------------------------------- \Item \Link[http://pear.math.pitt.edu/mathzilla/itex2mmlItex.html target="\string_blank"]{}{}Itex2mml\EndLink{}\author (Paul Gartside)\ContItem A C program for translating a dialect of \LaTeX{} into MathML. %----------------------------------------------------------------------------------- \Item \Link[http://dlmf.nist.gov/LaTeXML/ target="\string_blank"]{}{}\LaTeX ML\EndLink{}\author (Bruce Miller)\ContItem A program for translating \LaTeX{} into XML (including XHTML and MathML). %----------------------------------------------------------------------------------- \Item \Link[http://www.tug.org/mailman/listinfo/latex2html target="\string_blank"]{}{}\LaTeX 2HTML\EndLink{}\author (Nikos Drakos)\ContItem A perl script for translating \LaTeX{} into HTML. % % http://www.latex2html.org % https://lists.tug.org/latex2html % % LaTeX2HTML needs Perl, the PBM utilities, dvips, GhostScript, and % other sundries; it assumes it is running on a Unix system. Michel % Goossens and Janne Saarela published a detailed discussion of % LaTeX2HTML, and how to tailor it, in TUGboat 16(2). %----------------------------------------------------------------------------------- % \Item % \Link[http://sunsite.sut.ac.jp/pub/archives/ctan/support/latex2hyp/ % target="\string_blank"]{}{}\LaTeX 2hyp\EndLink{}\author % (Roger Nelson)\ContItem % A C program for converting \TeX{} and \LaTeX{} documents % into plain text, capable of introducing HTML links. %%----------------------------------------------------------------------------------- \Item \Link[http://ctan.tug.org/tex-archive/support/latex2man/latex2man.html target="\string_blank"]{}{}\LaTeX 2man\EndLink{}\author (J\"urgen Vollmer)\ContItem A Perl script for translating UNIX manual pages written with \LaTeX{} into UNIX man(1)-command, HTML, or Texinfo code. %%----------------------------------------------------------------------------------- % \Item % \Link[http://www.soft4science.com/fr\string % _index.html?/products/LaTeX2MathML/s4s\string_LaTeX2MathML.html % target="\string_blank"]{}{}\LaTeX 2MathML\EndLink{}\author % (Soft4Science)\ContItem % A Microsoft .NET Framework program for translating LaTeX math expressions into MathML. % %%----------------------------------------------------------------------------------- \Item \Link[http://www.localghost.at/latex2mathml/ target="\string_blank"]{}{}\LaTeX 2MathML\EndLink{}\author (Jens Breit)\ContItem A Python program to translate \LaTeX{} math into MathML. %%----------------------------------------------------------------------------------- \Item \Link[http://www.cucat.org/projects/latex2mathml/index.php target="\string_blank"]{}{}\LaTeX 2MathML\EndLink{}\author (Greg Kearney)\ContItem A Macintosh program to translate \LaTeX{} math into MathML. % % >From: Greg Kearney % >To: Technical Developments Discussion List % >, % > Discussion of Digital Talking Books , % > macvoiceover % >Subject: LaTeX2MathML % >Date: Sat, 31 Jan 2009 18:21:47 -0700 % >X-Mailer: Apple Mail (2.930.3) % > % > % >With the advent of MathML support in DAISY I have put together a % >simple MacOS X program that will convert LaTeX math code into MathML % >code. This is a GUI for blahtex. It is a universal application (intal % >and PPC). You can get it and the Xcode source code from the following % >URL: % > % >http://www.cucat.org/projects/latex2mathml/index.php % > % >Greg Kearney % >535 S. Jackson St. % >Casper, Wyoming 82601 % >307-224-4022 % >gkearney@gmail.com %%----------------------------------------------------------------------------------- \Item \Link[http://perso.wanadoo.fr/eric.chopin/latex/latex_subset.htm target="\string_blank"]{}{}\LaTeX 4Web\EndLink{}\author (Eric Chopin)\ContItem A javascript for translating a subset of \LaTeX{} to HTML. % %----------------------------------------------------------------------------------- \Item \Link[http://yum.math.hmc.edu/ctan/support/ltoh/readme.html target="\string_blank"]{}{}Ltoh\EndLink{}\author (Russell W. Quong)\ContItem A customizable Perl converter from a subset of \LaTeX{} to HTML. % %----------------------------------------------------------------------------------- \Item \Link[ftp://ftp.dante.de/tex-archive/support/ltx2x/ltx2x.html target="\string_blank"]{}{}Ltx2x\EndLink{}\author (Pete R.r Wilson)\ContItem A table-driven program that will replace \LaTeX{} commands by user defined text. % %----------------------------------------------------------------------------------- % \Item % \Link[http://www.go.dlr.de/fresh/unix/src/www/.warix/math2html-1.3.tar.gz.html % target="\string_blank"]{}{}Math2HTML\EndLink{}\author % (Janne Saarela)\ContItem % A bison program for converting \LaTeX{} mathematics and tables into HTML 3.0. % %----------------------------------------------------------- % \Item % \Link[http://www.stilo.com/news/pr-1999-06-12b.html % target="\string_blank"]{}{}MathWriter\EndLink{}\author % (Stilo)\ContItem % A MathML (``MathWriter'') and XML (``WebWriter'') editors % capable of inputing \TeX{} expressions. %----------------------------------------------------------------------------------- \Item \Link[http://www.mathtran.org/index.html target="\string_blank"]{}{}MathTran\EndLink{}\author Jonathan Fine()\ContItem A modified \TeX{} compiler aiming at translating mathematical content from TeX to MathML and vice-versa, and to graphics formats. % %----------------------------------------------------------------------------------- \Item \Link[http://www.micropress-inc.com/webb/wbstart.htm target="\string_blank"]{}{} MicroPress \TeX pider\EndLink{}\author (MicroPress)\ContItem A modified \TeX{} compiler for PCs for translating \LaTeX{} to HTML. % %----------------------------------------------------------- % \Item % \Link[http://www.mathmlstudio.com/ % target="\string_blank"]{}{} MathMLStudio\EndLink{}\author (?)\ContItem % A translator for a subset of \TeX, \LaTeX, and AMS\TeX{} math into MathML. % %----------------------------------------------------------- % \Item % \Link[http://www.maths.tcd.ie/pub/openmath/ % target="\string_blank"]{}{}Ml2om\EndLink{}\author % (Richard M. Timoney)\ContItem % \LaTeX{} math to OpenMath converter. % %----------------------------------------------------------- \Item \Link[http://www.orcca.on.ca/MathML/projects.html target="\string_blank"]{}{}ORCCA\EndLink{}\author (?)\ContItem A Java program for translating TeX mathematics into MathML %----------------------------------------------------------- % \Item % \Link[http://omega.enstb.org % target="\string_blank"]{}{}Omega\EndLink{}\author % (Yannis Haralambous and John Plaice)\ContItem % A \TeX{} compiler capable of producing MathML code. % %http://sourceforge.net/projects/omega-system/ %----------------------------------------------------------- \Item \Link[http://plastex.sourceforge.net/ target="\string_blank"]{}{}plasTeX\EndLink{}\author (Kevin Smith)\ContItem A \LaTeX{} document processing framework written entirely in Python. A successor to \Link[http://pylatex.sourceforge.net/ target="\string_blank"]{}{}pyLaTeX\EndLink{}. % Kevin.Smith@themorgue.org (Kevin Smith) % equations are parsed into pseudo-mathml %----------------------------------------------------------- \Item \Link[http://richdoc.sourceforge.net/doc/en/html/index.html target="\string_blank"]{}{}RichDoc\EndLink{}\author (Michal \v Sev\v cenko)\ContItem A document preparation system capable to import \LaTeX{} and export HTML %----------------------------------------------------------- \Item \Link[http://dione.zcu.cz/\string ~toman40/selathco/ target="\string_blank"]{}{}Selathco\EndLink{}\author (Petr Toman)\ContItem A simple extensible \LaTeX{} to HTML converter written in Java. %----------------------------------------------------------- \Item \Link[http://www.ph.ed.ac.uk/snuggletex/ target="\string_blank"]{}{}SnuggleTeX\EndLink{}\author (David McKain)\ContItem A converter from a subset of \LaTeX{} to XHTML+MAthML written in Java. %----------------------------------------------------------------------------------- \Item \Link[http://web.informatik.uni-bonn.de/\string ~zach/vim/index.html target="\string_blank"]{}{}\TeX2HTML\EndLink{}\author (Gabriel Zachmann)\ContItem Vim macros for converting from \LaTeX{} to HTML %%----------------------------------------------------------------------------------- \Item \Link[http://www.ccs.neu.edu/home/dorai/tex2page/tex2page-doc.html target="\string_blank"]{}{}\TeX2Page\EndLink{}\author (Dorai Sitaram)\ContItem A Scheme script for translating a subset of plain \TeX{} to HTML. % was % http://www.cs.rice.edu/\string~dorai/tex2html/tex2html.html %----------------------------------------------------------------------------------- \Item \Link[https://ctan.org/pkg/tex2rtf target="\string_blank"]{}{}\TeX 2RTF\EndLink{}\author (Julian Smart)\ContItem tmEA A C++ utility for converting from a subset of \LaTeX{} to HTML and other formats. %%%-----------------------------------------------------------------------------------%----------------------------------------------------------------------------------- \Item \Link[http://www.cmt.phys.kyushu-u.ac.jp/\string ~M.Sakurai/java/sdoc/index-e.html target="\string_blank"]{}{}tex2sdoc\EndLink{}\author (Masashi Sakurai)\ContItem A Java program for translating a subset of \LaTeX{} into \Link[http://www.asahi-net.or.jp/\string ~dp8t-asm/java/tools/SmartDoc/]{}{}SmartCode\EndLink %%%----------------------------------------------------------------------------------- \Item \Link[http://www.mathematik.uni-kl.de/\string~obachman/Texi2html/ target="\string_blank"]{}{}Texi2HTML\EndLink{}\author (Lionel Cons)\ContItem A Perl script for converting Texinfo manuals to HTML. %----------------------------------------------------------------------- % \Item % \Link[http://sunland.gsfc.nasa.gov/info/texi2www/ % target="\string_blank"]{}{}Texi2www\EndLink{}\author % (Tim Singletary)\ContItem % Converts Texinfo manuals to HTML. % Another Perl script for converting Texinfo manuals to HTML. % %--------------------------------------------------------------------------- \Item \Link[http://www.ktalk.com/texport-web.html target="\string_blank"]{}{}\TeX Port WEB\EndLink{}\author (K-talk Communications)\ContItem A program running on MS-DOS or MS-Windows. %--------------------------------------------------------------------------- \Item \Link[http://www.xm1math.net/ttwp/index.html target="\string_blank"]{}{}TexToWebPublishing\EndLink{}\author (P.Brachet / J.Amblard)\ContItem A perl script for producing HTML from \LaTeX{} %--------------------------------------------------------------------------- % \Item % \Link[http://www-unix.mcs.anl.gov/\string~gropp/manuals/tohtml/tohtml.html % target="\string_blank"]{}{}Tohtml\EndLink{}\author (William Gropp)\ContItem % A C program for translating a subset of \LaTeX{} to HTML. % %----------------------------------------------------------------------------------- %--------------------------------------------------------------------------- \Item \Link[http://www-sop.inria.fr/miaou/Jose.Grimm/tralics/ target="\string_blank"]{}{}Tralics\EndLink{}\author (José Grimm)\ContItem A C++ program for translating a subset of \LaTeX{} to a local XML. ----------------------------------------------------------------------------------- \Item \Link[http://hutchinson.belmont.ma.us/tth/ target="\string_blank"]{}{}Tth\EndLink{}\author (Ian Hutchinson)\ContItem %hutch@pfc.mit.edu A C program for translating a subset of plain \TeX{} and \LaTeX{} into HTML. Uses special fonts and tables to represent formulas. % % omp.text.tex #118834 (0 + 10 more) % From: Ian Hutchinson % Newsgroups: comp.text.tex,comp.infosystems.browsers.x % Subject: tth Plain TeX to HTML translator does LaTeX too. % Date: Fri May 23 20:53:46 EDT 1997 % Organization: MIT % Lines: 16 % Mime-Version: 1.0 % Content-Type: text/plain % Content-Transfer-Encoding: 7bit % X-Mailer: Mozilla 3.0 (X11; I; Linux 2.0.28 i486) % CC: hutch@pfc.mit.edu % % tth is a TeX to HTML translator that renders mathematics and most of the % relevant aspects of TeX into HTML3.2. % % It does not use images for hard-to-translate items like mathematics. % Instead it uses fonts and HTML tables to give compact output that is % semantically correct. It consists of a single executable available as a % single C file and therefore portable to any system. Some precompiled % executables are also available. Installation is trivial. % % tth is extremely fast, and hence suitable for a CGI script. % % In the latest version, 0.60, tth simultaneously supports a major subset % of LaTeX. % % omp.text.tex #114492 (0 + 4 more) % [1] % From: Ian Hutchinson % [1] Plain TeX to HTML Translator: tth % Date: Sat Mar 15 21:19:39 EST 1997 % Organization: MIT % Lines: 18 % Mime-Version: 1.0 % Content-Type: text/plain % Content-Transfer-Encoding: 7bit % X-Mailer: Mozilla 3.0 (X11; I; Linux 2.0.28 i486) % % Version 0.2 of tth, may be obtained from. % % http://venus.pfc.mit.edu/tth/ % % It translates TeX source that uses the plain macro package (not LaTeX) % into a near equivalent in HTML. % % It can't do a perfect job, of course, because HTML is not capable of % many of TeX's more subtle tricks. Nevertheless, on TeX files that are %% predominantly text and use standard constructs and macros, the results %% are rather satisfactory. %% %% The new version adds support for \def, \edef, \xdef, and counters. %% %% LaTeX has its own translator, latex2html, which is recommended for %% LaTeX %% code. %% %% Ian Hutchinson. %% %%----------------------------------------------------------- %From rubber@bounce.com Fri Feb 20 10:25:23 EST 1998 %Article: 134658 of comp.text.tex %Path: news.cse.ohio-state.edu!news.maxwell.syr.edu!nntp.news.xara.net!xara.net!server6.netnews.ja.net!server4.netnews.ja.net!server2.netnews.ja.net!news.ox.ac.uk!not-for-mail %From: rubber@bounce.com (Keith Refson - real email address in signature) %Newsgroups: comp.text.tex %Subject: Re: Alternatives to latex2HTML %Date: 20 Feb 1998 13:55:14 +0000 %Organization: Oxford University %Lines: 65 %Sender: keith@everest %Message-ID: %References: % <3463E1.4E3E337F@pfc.mit.edu> % <34873.349FD14@pfc.mit.edu> % %NNTP-Posting-Host: everest.earth.ox.ac.uk %Mime-Version: 1.0 (generated by -edit 7.106) %Content-Type: text/plain; charset=US-ASCII %X-Newsreader: Gnus v5.3/Emacs 19.34 %Xref: news.cse.ohio-state.edu comp.text.tex:134658 % % %In some earlier ramblings I wrote: % %> I did take a look at ttH but I couldn't even look at the homepage %> without reconfiguring my browser. % %Although that was factually correct it could give a misleading %impression that I was criticizing ttH, which I hadn't even tried. %Well I feel a bit guilty about that, so now I *have* tried it out. % %1) It certainly does work as advertised. In fact you can display % simple maths by adding a 1 line X resource for Netscape. % The documentation claims you can improve the output further, % but this is at the cost of some highly undesirable mucking % about with font aliases in the X server which I imagine % would cause many other problems not just for Netscape but % for other X programs. % % Unfortunately this does really rule it out for web *publishing* % for my purposes. But it could be very useful in, say, a % teaching laboratory or local environment where you have % administrative control over which browsers are installed and % their setup. % %2) The maths handling *is* limited. It doesn't do well on % complex or sophisticated maths, a limitation of it's % all-html approach. But simple display formulae, equations, % matrices, sums and integals do come out surprisingly readable. % %3) You get 1 huge html file at the end. There is a version which % handles this better but it costs money. % %4) Handling of included graphics is rudimentary compared to % latex2html. Simple \includegraphics of ps or % should work, but my figures are more complicated than that! % %5) There are some bugs in the parser: eg it can't handle % switching back to text mode inside an equation properly % and crashes. However this is no worse than I found with % the earlier versions of latex2html. % %6) It does run about 1000 times faster than latex2html! No, that % isn't a mistype! % %7) It doesn't seem to be available in source form so presumably % only the author can fix bugs. (You get a compilable C % file but the real sources are in lex and yacc and you don't get % those.) % %8) It's only free for non-commercial use but can be purchased for % commercial applications. % % %I expect there are many circumstances where ttH will be very useful, %notably where the maths is simple or unimportant. In its present form %it can't replace latex2html for mathematical documents. % %Keith Refson %--------------------------------------------------------------------------- \Item \Link[http://www.plover.com/\string ~mjd/vulcanize.html target="\string_blank"]{}{}Vulcanize\EndLink{}\author (Mark-Jason Dominus)\ContItem A Perl program for translating a subset of \LaTeX{} to HTML. % % What is Texinfo? % % Texinfo is a documentation system that uses one source file to produce % both on-line information and printed % output. So instead of writing two different documents, one for the % on-line help and the other for a typeset % manual, you need write only one document source file. When the work is % revised, you need only revise one % document. You can read the on-line information, known as an ``Info % file'', with an Info documentation-reading % program. By convention, Texinfo source file names end with a .texi or % .texinfo extension. You can write % and format Texinfo files into Info files within GNU emacs, and read % them using the emacs Info reader. If you do % not have emacs, you can format Texinfo files into Info files using % makeinfo and read them using info. % % The Texinfo distribution, including a set of TeX macros for formatting % Texinfo files is available as % macros/texinfo/texinfo-3.9.tar.gz (also available as a .zip file % macros/texinfo/texinfo-3.9.zip). % % Making Acrobat documents from LaTeX % % In the simplest case, use your DVI to PostScript driver, and run the % result through Adobe's Acrobat Distiller; % even simpler, if you use a Mac or Windows TeX system, is to install % Acrobat Exchange, and use PDFwriter like % a printer from your application. The latter is a dead end, though fine % for simple documents, since you can't % insert extra hyperlinks in the PDF output. For that, you most % other translators) and gives access to all the % functionality of pdfmark. % % Sadly, there are no free implementations of Distiller, nor any signs % of them. GhostScript (versions 3.51 % onwards) can display and print PDF files, however, if you are on a % platform with no Acrobat Reader. You may % see a DVI to PDF translator soon, but do not hold your breath. % %--------------------------------------------------------------------------- % \Item % \Link[http://mathosphere.net/editeurml/WeM.html % target="\string_blank"]{}{}VeM\EndLink{}\author (St\'ephan % S\'emirat)\ContItem % A PHP program for translating a subset of \LaTeX{} to MathML. %--------------------------------------------------------------------------- \Item \Link[http://www.dessci.com/en/products/webeq target="\string_blank"]{}{}WebEQ\EndLink{}\author (Mark-Jason Dominus)\ContItem MathML fro a \TeX{} variant named WebTeX %----------------------------------------------------------------------------------- %----------------------------------------------------------------------------------- \Item \Link[http://www.gold-saucer.org/mathml/greasemonkey/ %http://planetx.cc.vt.edu/AsteroidMeta/Display\string_LaTeX target="\string_blank"]{}{}LaTeX on Web pages\EndLink{}\author (Steve Cheng)\ContItem A JavaScript program for translating \LaTeX{} into MathML for rendering on the web. %----------------------------------------------------------------------------------- \Item \Link[http://www.math.union.edu/\string~dpvc/jsMath/ target="\string_blank"]{}{}jsMath\EndLink{}\author (Davide P. Cervone)\ContItem A JavaScript program for rendering \LaTeX{} on the web. %%-------------------------------------------------------------------------- \EndResourceList %-------------------------------------------------------------------------- \CR Backward\BR Converters: \& \ResourceList \Item \Link[http://www.chemie.fu-berlin.de/chemnet/use/gf.html target="\string_blank"]{}{}% Gf\EndLink{}\author (Gary Houston)\ContItem SGML to \LaTeX % \Item % \Link[http://www.hut.fi/\string~jkorpela/h2l/ % target="\string_blank"]{}{}% % H2l\EndLink{}\author (Jukka Korpela)\ContItem A C program converting HTML to \LaTeX \Item \Link[http://www.wildfire.dircon.co.uk/htex.html target="\string_blank"]{}{}% Htex\EndLink{}\author (Toby Thurston)\ContItem HTML to \LaTeX \Item \Link[http://htmltolatex.sourceforge.net/ target="\string_blank"]{}{}% HTMLtoLaTeX\EndLink{}\author (Michal Kebrt)\ContItem A Java program \Item \Link[http://www.lib.rpi.edu/dept/acs/rpinfo/filters/GChtml2latex/ target="\string_blank"]{}{}% HTML2\LaTeX\EndLink{}\author (Davide Cervone \string& Jeffrey Schaefer, Geometry Center)\ContItem A Perl script for converting HTML into \LaTeX \Item \Link[ftp://ftp.dante.de/tex-archive/support/html2latex/ target="\string_blank"]{}{}% HTML2\LaTeX\EndLink{}\author (Nathan Torkington)\ContItem A C-program relying on the HTML parser of the NCSA Mosaic HTML browser. %----------------------------------------------------------------------------------- \Item \Link[http://html2latex.sourceforge.net/ target="\string_blank"]{}{}% HTML2\LaTeX\EndLink{}\author (Peter Thatcher)\ContItem A Perl script for converting HTML into \LaTeX % also at http://www.go.dlr.de/fresh/unix/src/www/html2latex-1.1.tar.gz %----------------------------------------------------------------------------------- \Item \Link[http://home.planet.nl/\string ~faase009/html2tex.html target="\string_blank"]{}{}HTML2\TeX\EndLink{}\author (Frans J. Faase)\ContItem C macros for converting from HTML 2 to \LaTeX{} % %----------------------------------------------------------------------------------- % \Item % \Link[http://www.igd.fhg.de/\string~zach/vim/ % target="\string_blank"]{}{}HTML2\TeX\EndLink{}\author % (Gabriel Zachmann)\ContItem % Vim macros for converting from % HTML to \LaTeX{} %----------------------------------------------------------------------------------- \Item \Link[http://sourceforge.net/projects/jadetex %http://www.tug.org/applications/jadetex/ target="\string_blank"]{}{}% Jade\TeX\EndLink{}\author (Sebastian Rahtz)\ContItem SGML to \TeX{} using DSSSL Formatting Objects and the Jade program of James Clark % From: Sebastian Rahtz | \-(2) % [1] Re: ANN: SGMLbase and HTMLbase \-(1)--(1)+-(1) % Date: Fri Jan 14 04:27:29 EST 2000 \-(1)--[1] % > I am most interested in an alternative to Jade+DSSSL+JadeTeX for hard % > copy output from SGML. % % write a trivial application using a Perl module like SGMLSpm to % generate plain LaTeX. that works, no doubt about it. JadeTeX is a joke % (I speak as the author :-}) \Item \Link[http://www.tei-c.org.uk/Software/passivetex/ target="\string_blank"]{}{}% Passive \TeX\EndLink{}\author (Sebastian Rahtz)\ContItem XML to \LaTeX{} using XSL Formatting Objects \Item \Link[http://www.ucc.ie/info/TeX/sgml2tex.html target="\string_blank"]{}{}% SGML2\TeX\EndLink{}\author (Peter Flynn)\ContItem A PCL (Personal Computer Language, an interpreted language for DOS) program % \Item % \Link[http://www.active-tex.demon.co.uk % target="\string_blank"]{}{}% % SGMLbase\EndLink{}\author (Jonathan Fine)\ContItem % A TeX-based parser for SGML with a style file HTMLbase for typsetting % HTML documents. %--------------------------------------------------------------------- \Item \Link[http://www.alphaworks.ibm.com/aw.nsf/techreqs/texml target="\string_blank"]{}{}% \TeX ML\EndLink{}\author (Doug Lovell)\ContItem A JAVA translator from \TeX ML-conforming XML into \TeX. % TeXML? No, dont believe all you read. TeXML is an XML DTD for % expressing LaTeX. You write a transformation specification which % expresses your XML in TeXML, and then they have a little processor to % make `traditional' LaTeX. You still get to do all the hard work! %--------------------------------------------------------------------- \Item \Link[http://getfo.sourceforge.net/texml/ target="\string_blank"]{}{}% \TeX ML\EndLink{}\author (Oleg Paraschenko)\ContItem A Perl translator from \TeX ML-conforming XML into \TeX. %--------------------------------------------------------------------- \Item \Link[http://kebrt.webz.cz/programs/word-to-latex/index.html target="\string_blank"]{}{}% Word-to-LaTeX\EndLink{}\author (Michal Kebrt)\ContItem A C\# program running on Windows with Microsoft Word installed. \Item \Link[http://www.hj-gym.dk/\string~hj/writer2latex/ target="\string_blank"]{}{}% Writer2\LaTeX\EndLink{}\author (Henrik Just)\ContItem A Java application for translation OpenOffice documents into \LaTeX % % \Item % \Link[http://www.jclark.com/xml/xt.html % target="\string_blank"]{}{}% % XT\EndLink{}\author (James Clark)\ContItem Implementation in Java for % \Link[http://www.w3.org/TR/xslt % target="\string_blank"]{}{}% % XSL Transformations (XSLT) 1.0\EndLink{}: % A language for expressing transformations on XML documents. \Item \Link[ftp://ftp.dante.de/pub/tex/support/word2latex/ target="\string_blank"]{}{}% W2LTX\EndLink{}\author (Ingo H. de Boer)\ContItem A mostly Unix based API for translating MS Word documents to LaTeX. \Item \Link[ftp://ftp.tex.ac.uk:/tex-archive/macros/xmltex/base/manual.html target="\string_blank"]{}{}% XML\TeX\EndLink{}\author (David Carlisle)\ContItem A system for typesetting XML files with \TeX. % \Item \Link[http://www.cse.ohio-state.edu/\string~gurari/tug99/indexSl57.html target="\string_blank"]{}{}% Brute Force\EndLink{} \ContItem \EndResourceList %-------------------------------------------------------------------------- \CR Converters\BR for other\BR formats: \& \ResourceList %%---------------------------------------------------------------------------- \Item \Link[http://dvi2bitmap.sourceforge.net/ target="\string_blank"]{}{}Dvi2bitmap\EndLink{}\author (Norman Gray)\ContItem A DVI to GIF and XBM translator. %%---------------------------------------------------------------------------- \Item \Link[http://www.ags.uni-sb.de/\string ~adrianf/dvi2svg/help.html target="\string_blank"]{}{}Dvi2Svg\EndLink{}\author (Adrian Frischauf)\ContItem A DVI to SVG translator. %%---------------------------------------------------------------------------- \Item \Link[http://gaspra.kettering.edu/dvipdfm/ target="\string_blank"]{}{}Dvipdfm\EndLink{}\author (Mark A. Wicks)\ContItem A DVI to PDF translator. %%---------------------------------------------------------------------------- \Item \Link[http://dvipng.sourceforge.net/dvipng.html target="\string_blank"]{}{}dvipng{}\author (Jan-Ake Larsson)\ContItem A DVI to PNG and GIF convertor. It supports PostScript inclusion. %%---------------------------------------------------------------------------- \Item \Link[http://dvisvg.sourceforge.net/ target="\string_blank"]{}{}DviSvg\EndLink{}\author (Rudolf Sabo)\ContItem A DVI to SVG translator. % dvisvgm is a command line utility for converting DVI files to SVG % (Scalable Vector Graphics). The latest release 0.4.2 fixes some bugs and % introduces options for SVG transformations (rotation, translation, scaling % etc.) % % dvisvgm has been sucessfully tested on various Linux (teTeX) and Windows % (MikTeX) systems. Precompiled versions for Windows/MikTeX can be % downloaded from the project homepage (see README for further information). %%---------------------------------------------------------------------------- \Item \Link[http://dvisvgm.sourceforge.net/ target="\string_blank"]{}{}DviSvgm\EndLink{}\author (Martin Gieseking)\ContItem A DVI to SVG translator. %%---------------------------------------------------------------------------- % \Item % \Link[http://www.tug.org/TUGboat/Articles/tb22-4/tb72goo.pdf % target="\string_blank"]{}{}Dvi2Svg\EndLink{}\author (Michel Goossens and Vesa Sivunen)\ContItem % A DVI to SVG translator. %%---------------------------------------------------------------------------- \Item \Link[http://www.grindeq.com/ target="\string_blank"]{}{}GrindEQ\EndLink{}\author ()\ContItem Converter from LaTeX equations to MS Word and backward. %%%---------------------------------------------------------------------------- \Item \Link[http://www.forkosh.com/ target="\string_blank"]{}{}MimeTeX\EndLink{}\author (John Forkosh)\ContItem A server side parses for LaTeX math expressions, emitting either mime xbitmaps or gif images of them % %%---------------------------------------------------------------------------- % \Item % \Link[ % target="\string_blank"]{}{}ltx2rtf\EndLink{}\author (Georg Lehner)\ContItem % La\TeX{} to MicroSoft Word % %%---------------------------------------------------------------------------- % \Item % \Link[ % target="\string_blank"]{}{}ltx2rtf\EndLink{}\author (Georg Lehner)\ContItem % La\TeX{} to MicroSoft Word %%---------------------------------------------------------------------------- \Item \Link[http://www.tug.org/utilities/texconv/ltx2rtf3.html target="\string_blank"]{}{}ltx2rtf\EndLink{}\author (Daniel Taupin)\ContItem La\TeX{} to MicroSoft Word (rtf: Rich Text Format) %%---------------------------------------------------------------------------- % \Item % \Link[http://pantheon.yale.edu/\string~pmm34/leq.html % target="\string_blank"]{}{}LEQ\EndLink{}\author (Paul Magwene)\ContItem % La\TeX{} to MicroSoft Word %%---------------------------------------------------------------------------- \Item \Link[https://tug.org/applications/pdftex/ target="\string_blank"]{}{}Pdf\TeX\EndLink{}\author (Han The Thanh)\ContItem An extension of the \TeX{} compiler offering native output for the Portable Document Format (pdf) output. % %ftp://ftp.cstug.cz/pub/tex/local/cstug/thanh/ % % Re: tex2pdf binary for Linux ? % Date: Fri Mar 07 07:16:40 EST 1997 % Organization: Elsevier Science Ltd % Lines: 44 % In-reply-to: mnikunen@mat-48.pc.helsinki.fi's message of 6 Mar 1997 17:18:19 % + GMT % X-Newsreader: Gnus v5.1 % % Changing libpng headers and the library to newer versions helped me to get % it compiled and it seems to work OK for a couple of plain documents that I % have tried. The file example.tex, however, makes r less any Unix system). A \ % compiled % binary for Windows NT/95 should be available soon. % % PLEASE do not jump into this stuff without accepting it as beta % status. I don't think Han The Thanh will thank me if announcements like % this get him deluged with mail saying `where is the Mac version' or % . % % In order to help promulgate information about this development, and % exchange ideas, the TeX Users Group is hosting a mailing list. If you % want to join, send a mail message to % % % % There are several routes. One is to use DVIPS or similar PS driver % and then pump the result through Adobe Acrobat Distiller. A less % desirable method involves printing via the PDFWriter. There are % also programs being written to go direct from DVI to PDF, and % direct from TeX to PDF. These ar mentioned often on this news group. % % Check out http://www.YandY.com/pdf-from.pdf and also links to % other web sites discussion this issues on the `Other Information % Sources' on that site. Check the comp.text.pdf news group. % % %%---------------------------------------------------------------------------- % \Item % \Link[http://shika.aist-nara.ac.jp/products/plain2/plain2.html % target="\string_blank"]{}{}Plain2\EndLink{}\author (Akihiro Uchida)\ContItem % Plain text to \TeX, ROFF and HTML. %%---------------------------------------------------------------------------- \item{\LaTeX{} to ... } Convert to HTML, then according to the target \List{} \item{Text} Save the view of the outcome on a text-based browser (e.g., \''lynx -dump foo.html > foo.txt', or \Link[http://www.w3m.org/]{}{}w3m\EndLink{}; the latter one might treat tables better) \item {Word} \''Word', and some other word processors, can load HTML files. The \`'uxhlatex' is probably the best setting of \TeX4ht for such translations. \EndList %----------------------------------------------------------------------------------- % \Item % \Link[http://www.htmlscript.com/docs/userdocs.htm % target="\string_blank"]{}{}HtmlScript\EndLink{}\ContItem % An extended html development language to be translated by a % \Link[http://hoohoo.ncsa.uiuc.edu/cgi/ % target="\string_blank"]{}{}CGI\EndLink{} % into html. % % % % \Link[http://www.geom.umn.edu/software/WebEQ/]{}{}webEQ\EndLink{}: % A java applet for including mathematics in documents. % % TTTTo use WebEQ, you must use a browser that can run Java % . This immediately excludes a large fraction of your % balise% readers. Java is also known to pose security risks. applet % takes a long time to load. Upon visiting the WebEQ home page, it took % 40 seconds for me to see one equation. YYYYou can't print any of the % output from WebEQ. WWWWebEQ isn't extensible or % reconfigurable. WWWWebEQ expects you to write your equations in a % highly presentational language that is based half on TEX and half on % the expired HTML 3.0 draft. It is not especially complicated, but it % is tedious because there are no definitions for common mathematical % constructs: you basically do the layout yourself. Moreover, the % limited nature of the medium makes it difficult for your equation to % be presented in a text-based browser or using a speech synthesis % system. TTTTo put an equation into your document, you have to insert % an APPLET element and then place PARAM tags within it to provide the % expression, which increases typing and makes editing % inconvenien% % t. This combines with the presentational syntax to make for % a lot of code even for the simplest expressions. \EndResourceList % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \CR[C2<] % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \HPage{Conversion to Bitmaps} % \ExitHPage{}\SubSection{Conversion to Bitmaps} % \List{*} % \item % \Link[http://www.fourmilab.ch/webtools/textogif/textogif.html]{}{}\TeX togif\EndLink{} (John Walker) % \item % \Link[http://www.astro.gla.ac.uk/users/norman/star/dvi2bitmap/]{}{}Dvi2bitmap\EndLink{}: % direct conversion of Dvi to Gif (Norman Gray) % \item % \Link[http://www.slurm.com/gf2gifs/]{}{}gf2gifs\EndLink{}: % A Java program for converting MetaFont files into GIF images (Richard Blaylock ) % % From: Richard Blaylock % % To: ``Eitan M. Gurari'' % % Subject: gf2gifs link % % Date: Thu, 24 May 2001 10:05:36 -0700 (PDT) % % % % % % Hi, % % % % Thanks for putting the link to my GF2GIFs program on % % http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn64.html % % % % When you get a chance, you could take away the question mark % % after my name since, yes, I really am the author. % % % % Thanks again, % % Richard Blaylock %\EndList %\EndHPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % {\tt |} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \HPage{math on the web} % \ExitHPage{}\SubSection{math on the web} % \List{*} % \item % \Link[http://www.w3.org/Math/]{}{}W3C\EndLink 's math home page % \item % \Link[http://www.oasis-open.org/cover/topics.html]{sgml-math}{}OASIS\EndLink % 's resources on SGML and math. % % \item % % \Link[http://www.oreilly.com/people/staff/crism/math/]{}{}Chris Maden\EndLink. % % A note about the % % semantic of mathematical markup % \item % \Link[http://mathforum.org/typesetting/index.html] % Typesetting for the Internet\EndLink. A review of methods. % % \item % % \Link[http://www.nag.co.uk/projects/OpenMath/]{}{}OpenMath\EndLink. % % \item % % \Link[http:www.mathtype.com]{}{}MathType\EndLink{}. An interactive editor % % for mathematical formulas in \LaTeX{} and MathML. % % \item % % \Link[http://www.webeq.com/WebEQ/2.3/docs/webtex/webtex.html]{}{}Web\TeX\EndLink. % % A \LaTeX-like equation markup language understood by the MathML-based % % viewer WebEQ. % % \item % % \Link[http://www.nikhef.nl/\string~t16/public/ndvi/ndvi\string_doc.html]{}{}nDVI\EndLink{} % % (Kasper Peeters). % % A DVI viewer plugin for Unix Netscape. % % \item % % \Link[http://www.mnemonic.org//mnemonic/documentation/doc/www/index.html]{}{}Mnemonic\EndLink. % % A browser under development supporting mathematics typesetting in % % the form of MathML and \TeX. % % \item % % \Link[http://www-4.ibm.com/software/network/techexplorer/]{}{}Techexplorer\EndLink. % % A plug-in for browsers, enabling the display of TeX, LaTeX, and % % MathML % % \item % % \Link[http://www.mozilla.org/projects/mathml]{}{}MathML in % % Mozilla\EndLink % % \item % % \Link[http://hutchinson.belmont.ma.us/tth/]{}{}TTH\EndLink. % % Translates a subset of \TeX{} and \LaTeX{} math % % to a table-based representation and to MathML. % % \item % % \Link[http://genepi.louis-jean.com/omega/lyonmathml.pdf]{}{}Omega\EndLink. % % A \TeX{} compiler with extra primitive to support SGML (and MathML) output. % %%%%%%%%%%%%%%%%% % \EndList \EndHPage{} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % {\tt |} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \HPage{web publishing with LaTeX} % \ExitHPage{}\SubSection{Web Publishing} % \List{*} % \item % \Link[ftp://ctan.tug.org/tex-archive/info/webguide/webguide.html]{}{}A % Brief Guide to LaTeX Tools for Web Publishing\EndLink{} (Peter R. Wilson) % \EndList \EndHPage{} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % {\tt |} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \HPage{conversion services} % \ExitHPage{}\SubSection{Conversion Services} % \List{*} % \item % \Link[http://wheel.compose.cs.cmu.edu:8001/cgi-bin/browse/objweb]{}{}TOM % (Typed Object Model)\EndLink % \EndList \EndHPage{} \EndHTable \DocPart{License} \TeX4ht is provided under the \Link[http://mirror.ctan.org/macros/latex/base/lppl.txt]{}{}LaTeX Project Public License\EndLink{} (LPPL). \DocPart{Acknowledgments} Eitan gratefully acknowledges the suggestions, contributions, and bug reports offered by many people. In particular, thanks go to Carmen Fierro, Piotr Grabowski, Gertjan Klein, Sebastian Rahtz, and Philip Viton for extensive feedback and help at early stages of this project. Eitan's work was partially sponsored by NSF grant IIS-0312487. Subsequent work has been a community effort involving many people. Contributors, bug reporters, and all, are listed in the ChangeLog file in the sources. % \IgnorePar\EndP \Tg
% \TableOfContents[DocPart] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \HPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % index %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NextFile{\jobname-index.html}\HPage{} \rightline{\Link[\jobname.html]{}{Index}up\EndLink} \DocPart{Index} \HAssign\ICount=0 \let\svIndexEntry\IndexEntry \def\IndexEntry#1#2#3#4{\bgroup \let\sv=\Link \def\Link[##1]##2##3##4\EndLink{\sv[##1]{##2}{##3}\ICount\EndLink}% \gHAdvance\ICount by 1 \IndexSec#1//\let\IndexSec=\relax \svIndexEntry{#3#1}{#2}{}{#4}% \egroup} \catcode`\:=11 \def\IndexSec#1#2//{% \tmp:cnt=`#1\relax \ifnum \tmp:cnt>`Z \advance\tmp:cnt by -32 \fi \ifnum \tmp:cnt<`A \else \ifnum \tmp:cnt>`Z \else \ifnum \Idx:ch<\tmp:cnt \Configure{leftline} {\HCode{

}}{\HCode{
}} \leftline{\bf \char\tmp:cnt }% \xdef\Idx:ch{\the\tmp:cnt}% \global\let\prev:A\:UnDef \fi \fi \fi % #1% } \catcode`\:=12 \Index \csname SysNeeds\endcsname{"rm \jobname.xdi"} \csname SysNeeds\endcsname{"sort -f \jobname.idx -o \jobname.xdi"} \EndHPage{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % can't clean the full directory because % the new html stuff is already there %%%%%%%%%%%%%%% FIRST %%%%%%%%%%%%%%%%%%%%% \csname SysNeeds\endcsname{"rm -r -f \DIR *.zip"} \csname SysNeeds\endcsname{"mkdir \DIR"} \csname SysNeeds\endcsname{"mkdir \DIR"} \csname SysNeeds\endcsname{"chmod 711 \DIR"} \csname SysNeeds\endcsname{"chmod 711 \DIR"} %%%%%%%%%%%%%%%%%%%%% \csname SysNeeds\endcsname{"mkdir \DIR tex4ht"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/temp"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/temp"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/src"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/src"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin/unix"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin/win32"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/unix"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/win32"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex/generic"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex/generic/tex4ht"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/ht-fonts"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/base"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/bin"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/xtpipes"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex/generic"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex/generic/tex4ht"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/base"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/xtpipes"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/bin"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/base/unix"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/texmf/tex4ht/base/win32"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/base/unix"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/base/win32"} \csname SysNeeds\endcsname{"cp -R \GOLD tex4ht.dir/texmf/tex4ht/ht-fonts \DIR tex4ht/texmf/tex4ht/."} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*.htf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*.htf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*.htf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*.htf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*/*.htf"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*/*/*"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/ht-fonts/*/*/*/*/*/*.htf"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/htcmd.c \DIR tex4ht/src/."} \csname SysNeeds\endcsname{"cp htcmd.exe \DIR tex4ht/bin/win32/."} \csname SysNeeds\endcsname{"cp tex4ht.exe \DIR tex4ht/bin/win32/tex4ht.exe"} \csname SysNeeds\endcsname{"cp t4ht.exe \DIR tex4ht/bin/win32/t4ht.exe"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/win32/*.exe"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/mk4ht.perl \DIR tex4ht/bin/win32/mk4ht"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/win32/mk4ht"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/mk4ht.perl \DIR tex4ht/bin/unix/mk4ht"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/unix/mk4ht"} \csname SysNeeds\endcsname{"chmod 711 ht-unix"} \csname SysNeeds\endcsname{"chmod 711 ht-win32"} \csname SysNeeds\endcsname{"rm foo"} \csname SysNeeds\endcsname{"rm foo1"} \csname SysNeeds\endcsname{" latex mkht-scripts.4ht ; mv *.bat ht-win32/. ; ls -l *.unix > foo ; sed -e's/-r.*--.*:.. //g' -e's/.unix//g' -e's/.*/mv \string&.unix ht-unix\string\/\string&/g' < foo > foo1 ; chmod 700 foo1; foo1 "} \csname SysNeeds\endcsname{"cp ht-win32/ht* \DIR tex4ht/bin/win32/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/win32/*"} \csname SysNeeds\endcsname{"cp ht-unix/ht* \DIR tex4ht/bin/unix/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/unix/*"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin/ht"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin/ht/win32"} \csname SysNeeds\endcsname{"mkdir \DIR tex4ht/bin/ht/unix"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/ht"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/ht/win32"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/ht/unix"} \csname SysNeeds\endcsname{"cp ht-win32/* \DIR tex4ht/bin/ht/win32/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/ht/win32/*"} \csname SysNeeds\endcsname{"cp ht-unix/* \DIR tex4ht/bin/ht/unix/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/bin/ht/unix/*"} \csname SysNeeds\endcsname{"mv Wht.tab temp.log"} \csname SysNeeds\endcsname{"addMM.perl temp.log > Wht.tab"} \csname SysNeeds\endcsname{"mv Wht.tab ht.tab"} \csname SysNeeds\endcsname{"/n/gold/5/gurari/main.dir/bin.dir/myunix2dos ht.tab"} \csname SysNeeds\endcsname{"cp \GOLD tex4ht.dir/bin/ht/win32/ht.bat \DIR tex4ht/bin/win32/ht.bat"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/win32/*"} \csname SysNeeds\endcsname{"cp \GOLD tex4ht.dir/bin/ht/unix/ht \DIR tex4ht/bin/unix/ht"} \csname SysNeeds\endcsname{"chmod 755 \DIR tex4ht/bin/unix/*"} % \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/xv4ht.java % \DIR tex4ht/src/."} % % \csname SysNeeds\endcsname{"cp \GOLD % tex4ht.dir/texmf/tex4ht/bin/xv4ht.jar % \DIR tex4ht/bin/."} % % \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/xv4ht.cat-unix % \DIR tex4ht/texmf/tex4ht/base/unix/xv4ht.cat"} % % \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/xv4ht.cat-win % \DIR tex4ht/texmf/tex4ht/base/win32/xv4ht.cat"} \csname SysNeeds\endcsname{"cp testa.tex \DIR tex4ht/temp/."} \csname SysNeeds\endcsname{"cp testb.tex \DIR tex4ht/temp/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/temp/*.tex"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.c \DIR tex4ht/src/."} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/t4ht.c \DIR tex4ht/src/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/src/*.c"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/*.4ht \DIR tex4ht/texmf/tex/generic/tex4ht/."} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.sty \DIR tex4ht/texmf/tex/generic/tex4ht/."} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex/generic/tex4ht/*"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.env-unix \DIR tex4ht/texmf/tex4ht/base/unix/tex4ht.env"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/base/unix/*"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.env-win32 \DIR tex4ht/texmf/tex4ht/base/win32/tex4ht.env"} \csname SysNeeds\endcsname{"chmod 644 \DIR tex4ht/texmf/tex4ht/base/unix/*"} \csname SysNeeds\endcsname{"cp -r \GOLD tex4ht.dir/texmf/tex4ht/bin \DIR tex4ht/texmf/tex4ht/."} \csname SysNeeds\endcsname{"cp -r \GOLD tex4ht.dir/texmf/tex4ht/xtpipes \DIR tex4ht/texmf/tex4ht/."} % \csname SysNeeds\endcsname{"cp jhsample.tex \DIR . ; chmod 644 \DIR jhsample.tex"} % \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.env-unix \DIR tex4ht-env-unix.txt"} \csname SysNeeds\endcsname{"cp \GOLD main.dir/html.dir/tex4ht.env-win32 \DIR tex4ht-env-win32.txt"} \csname SysNeeds\endcsname{"chmod 644 \DIR *.txt"} \bgroup %%%%%%%%%%%%%%%%%%%% \Needs{" mkdir \DIR lit "} \Needs{" mkdir \DIR lit/src"} \Needs{" mkdir \DIR lit/src/java"} \Needs{" mkdir \DIR lit/src/java/xtpipes"} \Needs{" mkdir \DIR lit/src/java/xtpipes/util"} % cp \GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes.java % src/java/. ; % cp \GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/Xtpipes.java % src/java/xtpipes/. ; % cp \GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/XtpipesUni.java % src/java/xtpipes/. ; % cp \GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/lib/ScriptsManager.java % src/java/xtpipes/lib/. ; % cp \GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/lib/ScriptsManagerLH.java % src/java/xtpipes/lib/. ; %%%%%%%%%%%%%%%%%%%% \def\LitNeeds#1{% \def\file{\GOLD main.dir/html.dir/#1.tex}% \openin15=\file\relax \ifeof15 \def\file{\GOLD main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/#1.tex}% \openin15=\file\relax \fi \ifeof15\else \closein15 \Needs{" cd \DIR lit ; cp \file\space . "}% \fi } \LitNeeds{tex4ht-4ht} % \LitNeeds{tex4ht-bibtex2} \LitNeeds{tex4ht-c} \LitNeeds{tex4ht-cond4ht} \LitNeeds{tex4ht-docbook} \LitNeeds{tex4ht-docbook-xtpipes} \LitNeeds{tex4ht-jsml-xtpipes} \LitNeeds{tex4ht-jsml} \LitNeeds{tex4ht-xhtml-xtpipes} \LitNeeds{tex4ht-env} \LitNeeds{tex4ht-fonts-cjk} \LitNeeds{tex4ht-fonts-cjk-utf8} \LitNeeds{tex4ht-fonts-noncjk} \LitNeeds{tex4ht-fonts-4hf} \LitNeeds{tex4ht-fonts-modern} \LitNeeds{tex4ht-htcmd} \LitNeeds{tex4ht-html-speech-xtpipes} \LitNeeds{tex4ht-html-speech} \LitNeeds{tex4ht-html0} \LitNeeds{tex4ht-html32} \LitNeeds{tex4ht-html4} \LitNeeds{tex4ht-info-html4} \LitNeeds{tex4ht-info-mml} \LitNeeds{tex4ht-info-svg} \LitNeeds{tex4ht-info} \LitNeeds{tex4ht-info-javahelp} \LitNeeds{tex4ht-info-ooffice} \LitNeeds{tex4ht-bibtex2} \LitNeeds{tex4ht-javahelp} \LitNeeds{tex4ht-mathltx} \LitNeeds{tex4ht-mathml} \LitNeeds{tex4ht-jsmath} \LitNeeds{tex4ht-mathplayer} \LitNeeds{tex4ht-mkht} \LitNeeds{tex4ht-moz} \LitNeeds{tex4ht-ooffice} \LitNeeds{tex4ht-options} \LitNeeds{tex4ht-sty} \LitNeeds{wripro} \LitNeeds{tex4ht-svg} \LitNeeds{tex4ht-t4ht} \LitNeeds{tex4ht-tei} % \LitNeeds{tex4ht-texconverter} \LitNeeds{tex4ht-unicode} \LitNeeds{tex4ht-word} \LitNeeds{tex4ht-dir} \LitNeeds{tex4ht-auto-script} \LitNeeds{tex4ht-oo-xtpipes} \LitNeeds{xtpipes} \LitNeeds{tex4ht-htcmd} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Needs{" cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/Xtpipes.java \DIR lit/src/java/xtpipes/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/XtpipesUni.java \DIR lit/src/java/xtpipes/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/util/ScriptsManager.java \DIR lit/src/java/xtpipes/util/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/util/ScriptsManagerLH.java \DIR lit/src/java/xtpipes/util/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/InputObject.java \DIR lit/src/java/xtpipes/. ; cp /home/4/gurari/main.dir/html.dir/brail.dir/xtpipes.dir/xtpipes.dir/work.dir/xtpipes/FileInfo.java \DIR lit/src/java/xtpipes/. ; cp /home/4/gurari/main.dir/html.dir/GroupMn.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/HtJsml.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/HtSpk.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/JsmlFilter.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/JsmlMathBreak.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/EmSpk.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/OoFilter.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/OoUtilities.java \DIR lit/src/java/. ; cp /home/4/gurari/main.dir/html.dir/OomFilter.java \DIR lit/src/java/. "} %%%%%%%%%%%%%%%%%%%% % Let's not bother to make the zip file we do not use. %\Needs{" % cd \DIR lit %; zip tex4ht-lit * %; mv tex4ht-lit.zip \DIR . %"} %\Needs{" % chmod %44 \DIR tex4ht-lit.zip %"} %\Needs{" /usr/bin/rm -r \DIR lit %"} %%%%%%%%%%%%%%%%%%%%%%%%%%% \egroup % do not symlink index.html; we want a plain file for TeX Live runtime. % So we maintain it by hand as a simple html redirect. %\csname SysNeeds\endcsname{"cd \DIR; ln -s mn.html index.html"} %\csname SysNeeds\endcsname{"chmod 644 \DIR index.html"} % Let's not bother to make the zip file we do not use. %\csname SysNeeds\endcsname{"cd \DIR tex4ht % ; zip -r tex4ht.zip * % ; mv \DIR tex4ht/tex4ht.zip \DIR . % ; cd \DIR % ; rm -r tex4ht % ; chmod 644 *.zip % ; zip -r tex4ht-all.zip * % ; chmod 644 *.zip % ; ln -s tex4ht.zip % tex4ht-\the\year % \ifnum \month<10 0\fi % \the\month % \ifnum \day<10 0\fi % \the\day.zip % "} \csname SysNeeds\endcsname{"echo '*************** DONE ***************'"} \bye % LocalWords: MathTran MathML