### Other Configuration Variables, without switches

The configuration variables described here do not warrant having a command-line switch to assign values. Either they represent aspects of LATEX2`HTML` that are specific to the local site, or they govern properties that should apply to all documents, rather than something that typically would change for the different documents within a particular sub-directory.

Normally these variables have their value set within the `latex2html.config` file. In the following listing the defaults are shown, as the lines of Perl code used to establish these values. If a different value is required, then these can be assigned from a local `.latex2html-init` initialisation file, without affecting the defaults for other users, or documents processed from other directories.

`$dd`
  holds the string to be used in file-names to delimit directories; it is set internally to ``/`', unless the variable has already been given a value within `latex2html.config` .

  Note: This value cannot be set within a `.latex2html-init` initialisation file, since its value needs to be known in order to find such a file.

`$LATEX2HTMLDIR`
  Read by the `install-test` script from `latex2html.config`, its value is inserted into the `latex2html` Perl script as part of the installation process.

`$LATEX2HTMLSTYLES``= "$LATEX2HTMLDIR/styles";`
  Read from the `latex2html.config` file by `install-test`, its value is checked to locate the `styles/` directory.

`$LATEX2HTMLVERSIONS``= "$LATEX2HTMLDIR/versions";`
  The value of this variable should be set within `latex2html.config` to specify the directory path where the version and extension files can be found.

`$ALTERNATIVE_ICONS``= '';`
  This may contain the (relative) directory path to a set of customised icons to be used in conjunction with the `-local_icons` switch.

`$TEXEXPAND``= "$LATEX2HTMLDIR/texexpand";`
  Read by the `install-test` Perl script from `latex2html.config`, its value is used to locate the `texexpand` Perl script.

`$PSTOIMG``= "$LATEX2HTMLDIR/pstoimg";`
  Read by the `install-test` Perl script from `latex2html.config`, its value is used to locate the `pstoimg` Perl script.

`$IMAGE_TYPE``= '`<image-type>`';`
  Set in `latex2html.config`, the currently supported `<image-type>`s are: `gif` and `png`.

`$DVIPS``= 'dvips';`
  Read from `latex2html.config` by `install-test`, its value is checked to locate the `dvips` program or script.

  There could be several reasons to change the value here:
  - add a switch `-P<printer>` to load a specific configuration-file;
    e.g. to use a specific set of PostScript fonts, for improved image-generation.
  - to prepend a path to a different version of `dvips` than normally available as the system default (e.g. the printing requirements are different).
  - to append debugging switches, in case of poor quality images;
    one can see which paths are being searched for fonts and other resources.
  - to prepend commands for setting path variables that `dvips` may need in order to locate fonts or other resources.

  If automatic generation of fonts is required, using Metafont, the following configuration variables are important.

  `$PK_GENERATION``= 1;`
    This variable must be set, to initiate font-generation; otherwise fonts will be scaled from existing resources on the local system.
    In particular this variable must not be set, if one wishes to use PostScript fonts or other scalable font resources (see the `-scalable_fonts` switch).

  `$DVIPS_MODE``= 'toshiba';`
    The mode given here must be available in the `modes.mf` file, located with the Metafont resource files, perhaps in the `misc/` subdirectory.

  `$METAFONT_DPI``= 180;`
    The required resolution, in dots-per-inch, should be listed specifically within the `MakeTeXPK` script, called by `dvips` to invoke Metafont with the correct parameters for the required fonts.

`$LATEX``= 'latex';`
  Read from `latex2html.config` by `install-test`, its value is checked to locate the `latex` program or script.

  If LATEX is having trouble finding style-files and/or packages, then the default command can be prepended with other commands to set environment variables intended to resolve these difficulties;
  e.g. `$LATEX = 'setenv TEXINPUTS` `<path to search>``; latex'` .

  There are several variables to help control exactly which files are read by LATEX2`HTML` and by LATEX when processing images:

  `$TEXINPUTS`
    This is normally set from the environment variable of the same name. If difficulties occur so that styles and packages are not being found, then extra paths can be specified here, to resolve these difficulties.

  `$DONT_INCLUDE`
    This provides a list of filenames and extensions to not include, even if requested to do so by an `\input` or `\include` command.
    (Consult `latex2html.config` for the default list.)

  `$DO_INCLUDE``= '';`
    List of exceptions within the `$DONT_INCLUDE` list. These files are to be read if requested by an `\input` or `\include` command.

`$ICONSERVER``= '`<URL>`';`
  This is used to specify a URL to find the standard icons, as used for the navigation buttons.
  Names for the specific images size, as well as size information, can be found in `latex2html.config`. The icons themselves can be replaced by customised versions, provided this information is correctly updated and the location of the customised images specified as the value of `$ICONSERVER`.
  When the `-local_icons` switch is used, so that a copy of the icons is placed with the `HTML` files and other generated images, the value of `$ICONSERVER` is not needed within the `HTML` files themselves. However it is needed to find the original icons to be copied to the local directory.

`$NAV_BORDER``= <num>;`
  The value given here results in a border, measured in points, around each icon.
  A value of ``0`' is common, to maintain strict alignment of inactive and active buttons in the control panels.

`$LINKNAME``= '"index.$EXTN"';`
  This is used when the `$NO_AUTO_LINK` variable is empty, to allow a URL to the working directory to be sufficient to reach the main page of the completed document. It specifies the name of the `HTML` file which will be automatically linked to the directory name.
  The value of `$EXTN` is `.html` unless `$SHORTEXTN` is set, in which case it is `.htm` .

`$LINKPOINT``= '"$FILE$EXTN"';`
  This specifies the name of the `HTML` file to be duplicated, or symbolically linked, with the name specified in `$LINKNAME`.
  At the appropriate time the value of `$FILE` is the document name, which usually coincides with the name of the working directory.

`$CHARSET``= 'iso_8859_1';`
  This specifies the character set used within the `HTML` pages produced by LATEX2`HTML`. If no value is set in a configuration or initialisation file, the default value will be assumed. The lowercase form `$charset` is also recognised, but this is overridden by the uppercase form.

`$ACCENT_IMAGES``= 'large'`;
  Accented characters that are not part of the ISO-Latin fonts can be generated by making an image using LATEX. This variable contains a (comma-separated) list of LATEX commands for setting the style to be used when these images are made. If the value of this variable is empty then the accent is simply ignored, using an un-accented font character (not an image) instead.

Within the `color.perl` package, the following variables are used to identify the names of files containing specifications for named colors. Files having these names are provided, in the `$LATEX2HTMLSTYLES` directory, but they could be moved elsewhere, or replaced by alternative files having different names. In such a case the values of these variables should be altered accordingly.

  `$RGBCOLORFILE``= 'rgb.txt';`
  `$CRAYOLAFILE``= 'crayola.txt';`

The following variables may well be altered from the system defaults, but this is best done using a local `.latex2html-init` initialisation file, for overall consistency of style within documents located at the same site, or sites in close proximity.

`$default_language``= 'english';`
  This establishes which language code is to be placed within the `<!DOCTYPE ... >` tag that may appear at the beginning of the `HTML` pages produced. Loading a package for an alternative language can be expected to change the value of this variable.
  See also the `$TITLES_LANGUAGE` variable, described next.

`$TITLES_LANGUAGE``= 'english';`
  This variable is used to specify the actual strings used for standard document sections, such as ``Contents'', ``References'', ``Table of Contents'', etc.
  Support for French and German titles is available in corresponding packages. Loading such a package will normally alter the value of this variable, as well as the `$default_language` variable described above.

`$WORDS_IN_NAVIGATION_PANEL_TITLES``= 4;`
  Specifies how many words to use from section titles, within the textual hyperlinks which accompany the navigation buttons.

`$WORDS_IN_PAGE``= 450;`
  Specifies the minimum page length required before a navigation panel is placed at the bottom of a page, when the `$AUTO_NAVIGATION` variable is set.

`$CHILDLINE``= "<BR><HR>\n";`
  This gives the `HTML` code to be placed between the child-links table and the ordinary contents of the page on which it occurs.

`$NETSCAPE_HTML``= 0;`
  When set, this variable specifies that `HTML` code may be present which does not conform to any official standard. This restricts the contents of any `<!DOCTYPE ... >` tag which may be placed at the beginning of the `HTML` pages produced.

`$BODYTEXT``= '';`
  The value of this variable is used within the `<BODY ... >` tag; e.g. to set text and/or background colors.
  It's value is overridden by the `\bodytext` command, and can be added-to or parts changed using the `\htmlbody` command or `\color` and `\pagecolor` from the color package.

`$INTERLACE``= 1;`
  When set, interlaced images should be produced.
  This requires graphics utilities to be available to perform the interlacing operation.

`$TRANSPARENT_FIGURES``= 1;`
  When set, the background of images should be made transparent; otherwise it is white.
  This requires graphics utilities to be available which can specify the color to be made transparent.

`$FIGURE_SCALE_FACTOR``= 1.6;`
  Scale factor applied to all images of figure and other environments, when being made into an image.

  Note that this does not apply to recognised mathematics environments, which instead use the contents of `$MATH_SCALE_FACTOR` and `$DISP_SCALE_FACTOR` to specify scaling.

`$MATH_SCALE_FACTOR``= 1.6;`
  Scale factor applied to all images of mathematics, both inline and displayed. A value of 1.4 is a good alternative, with anti-aliased images.

`$DISP_SCALE_FACTOR``= 1;`
  Extra scale factor applied to images of displayed math environments.
  When set, this value multiplies `$MATH_SCALE_FACTOR` to give the total scaling. A value of `1.2' is a good choice to accompany `$MATH_SCALE_FACTOR = 1.4;`.

`$EXTRA_IMAGE_SCALE`
  This may hold an extra scale factor that can be applied to all generated images.
  When set, it specifies that a scaling of `$EXTRA_IMAGE_SCALE` be applied when images are created, but to have their height and width recorded as the un-scaled size. This is to coax browsers into scaling the (usually larger) images to fit the desired size; when printed a better quality can be obtained. Values of `1.5' and `2' give good print quality at 600dpi.

`$PAPERSIZE``= 'a5';`
  Specifies the size of a page for typesetting figures or displayed math, when an image is to be generated.
  This affects the lengths of lines of text within images. Since images of text or mathematics should use larger sizes than when printed, else clarity is lost at screen resolutions, then a smaller paper-size is generally advisable. This is especially so if both the `$MATH_SCALE_FACTOR` and `$DISP_SCALE_FACTOR` scaling factors are being used, else some images may become excessively large, including a lot of blank space.

`$LINE_WIDTH``= 500;`
  Formerly specified the width of an image, when the contents were to be right- or center-justified. (No longer used.)

The following variables are used to access the utilities required during image-generation. File and program locations on the local system are established by the `configure-pstoimg` Perl script and stored within `$LATEX2HTMLDIR/local.pm` as Perl code, to be read by `pstoimg` when required.

After running the `configure-pstoimg` Perl script it should not be necessary to alter the values obtained. Those shown below are what happens on the author's system; they are for illustration only and do not represent default values.

- `$GS_LIB``= '/usr/local/share/ghostscript/4.02';`
- `$PNMCAT``= '/usr/local/bin/pnmcat';`
- `$PPMQUANT``= '/usr/local/bin/ppmquant';`
- `$PNMFLIP``= '/usr/local/bin/pnmflip';`
- `$PPMTOGIF``= '/usr/local/bin/ppmtogif';`
- `$HOWTO_TRANSPARENT_GIF``= 'netpbm';`
- `$GS_DEVICE``= 'pnmraw';`
- `$GS``= '/usr/local/bin/gs';`
- `$PNMFILE``= '/usr/local/bin/pnmfile';`
- `$HOWTO_INTERLACE_GIF``= 'netpbm';`
- `$PBMMAKE``= '/usr/local/bin/pbmmake';`
- `$PNMCROP``= '/usr/local/bin/pnmcrop';`
- `$TMP``= '/usr/var/tmp';`

The following variables are no longer needed, having been replaced by the more specific information obtained using the Perl script `configure-pstoimg`.

  `$USENETPBM``= 1;`
  `$PBMPLUSDIR``= '/usr/local/bin';`