Preamble commands

The changes to the preamble commands are intentionally designed to make LaTeX2e<#181#><#181#> documents look clearly different from old documents. The commands should be used only before 85.

86 [<<#183#>option-list<#183#>>] {<<#184#>class-name<#184#>>} [<<#185#>release-date<#185#>>]

This command replaces the LaTeX~2.09 command 87. There must be exactly one 88 command in a document; and it must come after the 89 environments, if any, but before any other commands. The <<#187#>option-list<#187#>> is a list of options, each of which may modify the formatting of elements which are defined in the <<#188#>class-name<#188#>> file, as well as those in all following 90 commands (see below). The optional argument <<#189#>release-date<#189#>> can be used to specify the earliest desired release date of the class file; it should contain a date in the format <#190#>YYYY/MM/DD<#190#>. If a version of the class older than this date is found, a warning is issued. For example, to specify a two-column article, using a version of 91 released after June 1994, you specify: verbatim10


92 [<<#192#>option-list<#192#>>] {<<#193#>class-name<#193#>>}

This command is still supported for compatibility with old files. It is essentially the same as 93 except that it invokes <#195#>LaTeX~2.09 compatibility mode<#195#>. It also causes any options in the <<#196#>option-list<#196#>> that are not processed by the class file to be loaded as packages after the class has been loaded. See Section~#Sec209#197> for more details on LaTeX~2.09 compatibility mode.


94 [<<#199#>option-list<#199#>>] {<<#200#>package-name<#200#>>} [<<#201#>release-date<#201#>>]

Any number of 95 commands is allowed. Each package file (as denoted by <<#203#>package-name<#203#>>) defines new elements (or modifies those defined in the class file loaded by the <<#204#>class-name<#204#>> argument of the 96 command). A package file thus extends the range of documents which can be processed. The <<#205#>option-list<#205#>> argument can contain a list of options, each of which can modify the formatting of elements which are defined in this <<#206#>package-name<#206#>> file. As above, <<#207#>release-date<#207#>> can contain the earliest desired release date of the package file in the format <#208#>YYYY/MM/DD<#208#>; if an older version of the package is found, a warning is issued. For example, to load the 97 package for the 98 driver, using a version of 99 released after June 1994, you write: verbatim11 Each package is loaded only once. If the same package is requested more than once, nothing happens in the second or following attempt unless the package has been requested with options that were not given in the original 100. If such extra options are specified then an error message is produced. See Section~#Secproblems#209> how to resolve this problem. As well as processing the options given in the <<#210#>option-list<#210#>> of the 101 command, each package processes the <<#211#>option-list<#211#>> of the 102 command as well. This means that any option which should be processed by every package (to be precise, by every package that specifies an action for it) can be specified just once, in the 103 command, rather than being repeated for each package that needs it.


104

If this command is placed in the preamble then a list of the files read in (as a result of processing the document) will be displayed on the terminal (and in the log file) at the end of the run. Where possible, a short description will also be produced. <#215#>Warning<#215#>: this command will list only files which were read using LaTeX<#216#><#216#> commands such as 105{<<#217#>file<#217#>>} or 106{<<#218#>file<#218#>>}. If the file was read using the primitive TeX<#219#><#219#> syntax 107<#220#>file<#220#> (without 108 braces around the file name) then it will not be listed; failure to use the LaTeX<#221#><#221#> form with the braces can cause more severe problems, possibly leading to overwriting important files, so <#222#>always put in the braces<#222#>.


109 {<<#224#>num<#224#>>}

TeX~3 introduced a new primitive 110 which controls the format of error messages. LaTeX2e\ provides an interface to this through the standard 111 command. As most LaTeX\ users do not want to see the internal definitions of LaTeX\ commands each time they make an error, LaTeX2e<#226#><#226#> sets this to -1 by default.