Placement of the Bookkeeping File

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.

  1. The pointer specified by an optional ‘-l’ switch provided to the invocation of the tex4ht program.
  2. A file named tex4ht.fls in the directory specified by an optional environment variable named TEX4HTWR.
  3. The location specified by an optional ‘l’ record provided in the environment file.
  4. A file named tex4ht.fls in the work directory.
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.

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.