Copyright (C) 2000-2012 |
GNU Info (dvips.info)Configuration file searchingConfiguration file searching ---------------------------- The Dvips program loads many different configuration files, so that parameters can be set globally across the system, on a per-device basis, or individually by each user. 1. Dvips first reads (if it exists) `config.ps'; it is searched for along the path for Dvips configuration files, as described in Note: Supported file formats. 2. A user-specific startup file is loaded, so individual users can override any options set in the global file. The environment variable `DVIPSRC', if defined, is used as the specification of the startup file. If this variable is undefined, Dvips uses a platform-specific default name. On Unix Dvips looks for the default startup file under the name `$HOME/.dvipsrc', which is in the user's home directory. On MS-DOS and MS-Windows, where users generally don't have their private directories, the startup file is called `dvips.ini' and it is searched for along the path for Dvips configuration files (as described in Note: Supported file formats.); users are expected to set this path as they see fit for their taste. 3. The command line is read and parsed: if the `-PDEVICE' option is encountered, at that point `config.DEVICE' is loaded. Thus, the printer configuration file can override anything in the site-wide or user configuration file, and it can also override options in the command line up to the point that the `-P' option was encountered. (On MS-DOS, the printer configuration files are called `DEVICE.cfg', since DOS doesn't allow more than 3 characters after the dot in filenames.) 4. If no `-P' option was specified, and also the `-o' and `-f' command line options were not used, Dvips checks the environment variable `PRINTER'. If it exists, then `config.$PRINTER' (`$PRINTER.cfg' on MS-DOS) is loaded (if it exists). Because the `.dvipsrc' file is read before the printer-specific configuration files, individual users cannot override settings in the latter. On the other hand, the `TEXCONFIG' path usually includes the current directory, and can in any case be set to anything, so the users can always define their own printer-specific configuration files to be found before the system's. A few command-line options are treated specially, in that they are not overridden by configuration files: `-D' As well as setting the resolution, this unsets the mode, if the mode was previously set from a configuration file. If `config.$PRINTER' is read, however, any `D' or `M' lines from there will take effect. `-mode' This overrides any mode setting (`M' line) in configuration files. `-mode' does not affect the resolution. `-o' This overrides any output setting (`o' line) in configuration files. The purpose of these special cases is to (1) minimize the chance of having a mismatched mode and resolution (which `mktexpk' cannot resolve), and (2) let command-line options override config files where possible. |