summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/man/man1/fmtutil.1
blob: 1b4357cdfa908f9534fb6b367376d140092f26ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.46.5.
.TH FMTUTIL "1" "April 2015" "TeX Live" "User Commands"
.SH NAME
fmtutil \- manage TeX formats, Metafont bases and Metapost mems, per-user
.br
fmtutil-sys \- manage TeX formats, Metafont bases and Metapost mems, system-wide
.br
mktexfmt \- create a TeX format, Metafont base, or Metapost mem
.SH SYNOPSIS
.B fmtutil
[\fI\,OPTION\/\fR] ... [\fI\,COMMAND\/\fR]
.br
.B fmtutil-sys
[\fI\,OPTION\/\fR] ... [\fI\,COMMAND\/\fR]
.br
.B mktexfmt
\fI\,FORMAT.fmt|BASE.base|MEM.mem|FMTNAME.EXT\/\fR
.SH DESCRIPTION
fmtutil version svn36788 (2015\-04\-13 00:53:26 +0900)
.PP
Rebuild and manage TeX formats, Metafont bases and MetaPost mems.
.PP
If the command name ends in mktexfmt, only one format can be created.
The only options supported are \fB\-\-help\fR and \fB\-\-version\fR, and the command
line must consist of either a format name, with its extension, or a
plain name that is passed as the argument to \fB\-\-byfmt\fR (see below).  The
full name of the generated file (if any) is written to stdout, and
nothing else.
.PP
If not operating in mktexfmt mode, the command line can be more general,
and multiple formats can be generated, as follows.
.SH OPTIONS
.TP
\fB\-\-cnffile\fR FILE
read FILE instead of fmtutil.cnf
(can be given multiple times, in which case
all the files are used)
.HP
\fB\-\-fmtdir\fR DIRECTORY
.TP
\fB\-\-no\-engine\-subdir\fR
don't use engine\-specific subdir of the fmtdir
.TP
\fB\-\-no\-error\-if\-no\-format\fR
exit successfully if no format is selected
.TP
\fB\-\-no\-error\-if\-no\-engine\fR=\fI\,ENGINE1\/\fR,ENGINE2,...
exit successfully even if the required engine
.IP
is missing, if it is included in the list.
.TP
\fB\-\-quiet\fR
be silent
.TP
\fB\-\-test\fR
(not implemented, just for compatibility)
.TP
\fB\-\-dolinks\fR
(not implemented, just for compatibility)
.TP
\fB\-\-force\fR
(not implemented, just for compatibility)
.SS "Commands:"
.TP
\fB\-\-all\fR
recreate all format files
.TP
\fB\-\-missing\fR
create all missing format files
.TP
\fB\-\-refresh\fR
recreate only existing format files
.TP
\fB\-\-byengine\fR ENGINENAME
(re)create formats using ENGINENAME
.TP
\fB\-\-byfmt\fR FORMATNAME
(re)create format for FORMATNAME
.TP
\fB\-\-byhyphen\fR HYPHENFILE
(re)create formats that depend on HYPHENFILE
.TP
\fB\-\-enablefmt\fR FORMATNAME
enable formatname in config file
.TP
\fB\-\-disablefmt\fR FORMATNAME
disable formatname in config file
.TP
\fB\-\-listcfg\fR
list (enabled and disabled) configurations,
filtered to available formats
.TP
\fB\-\-catcfg\fR
output the content of the config file
.TP
\fB\-\-showhyphen\fR FORMATNAME
print name of hyphenfile for format FORMATNAME
.TP
\fB\-\-version\fR
show version information and exit
.TP
\fB\-\-help\fR
show this message and exit
.SH ENVIRONMENT
.PP
Explanation of trees and files normally used:
.IP
If \fB\-\-cnffile\fR is specified on the command line (possibly multiple
times), its value(s) are used.  Otherwise, fmtutil reads all the
fmtutil.cnf files found by running `kpsewhich \fB\-all\fR fmtutil.cnf', in the
order returned by kpsewhich.
.IP
In any case, if multiple fmtutil.cnf files are found, all the format
definitions found in all the fmtutil.cnf files are merged.
.IP
Thus, if fmtutil.cnf files are present in all trees, and the default
layout is used as shipped with TeX Live, the following files are
read, in the given order.
.nf
.IP
For fmtutil\-sys:
TEXMFSYSCONFIG \fI\,$TEXLIVE/YYYY/texmf\-config/web2c/fmtutil.cnf\/\fP
TEXMFSYSVAR    \fI\,$TEXLIVE/YYYY/texmf\-var/web2c/fmtutil.cnf\/\fP
TEXMFLOCAL     \fI\,$TEXLIVE/texmf\-local/web2c/fmtutil.cnf\/\fP
TEXMFDIST      \fI\,$TEXLIVE/YYYY/texmf\-dist/web2c/fmtutil.cnf\/\fP
.IP
For fmtutil:
TEXMFCONFIG    $HOME/.texliveYYYY/texmf\-config/web2c/fmtutil.cnf
TEXMFVAR       $HOME/.texliveYYYY/texmf\-var/web2c/fmtutil.cnf
TEXMFHOME      \fI\,$HOME/texmf/web2c/fmtutil.cnf\/\fP
TEXMFSYSCONFIG \fI\,$TEXLIVE/YYYY/texmf\-config/web2c/fmtutil.cnf\/\fP
TEXMFSYSVAR    \fI\,$TEXLIVE/YYYY/texmf\-var/web2c/fmtutil.cnf\/\fP
TEXMFLOCAL     \fI\,$TEXLIVE/texmf\-local/web2c/fmtutil.cnf\/\fP
TEXMFDIST      \fI\,$TEXLIVE/YYYY/texmf\-dist/web2c/fmtutil.cnf\/\fP
.IP
(where YYYY is the TeX Live release version).
.fi
.IP
According to the actions, fmtutil might write to one of the given files
or create a new fmtutil.cnf, described further below.
.PP
Where changes are saved:
.IP
If config files are given on the command line, then the first one
given will be used to save any changes from \fB\-\-enable\fR or \fB\-\-disable\fR.
If the config files are taken from kpsewhich output, then the
algorithm is more complex:
.IP
1) If \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP or \fI\,$TEXMFHOME/web2c/fmtutil.cnf\/\fP
appears in the list of used files, then the one listed first by
kpsewhich \fB\-\-all\fR (equivalently, the one returned by kpsewhich
fmtutil.cnf), is used.
.IP
2) If neither of the above two are present and changes are made, a
new config file is created in \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP.
.IP
In general, the idea is that if a given config file is not writable, a
higher\-level one can be used.  That way, the distribution's settings
can be overridden for system\-wide using TEXMFLOCAL, and then system
settings can be overridden again for a particular using using TEXMFHOME.
.PP
Resolving multiple definitions of a format:
.IP
If a format is defined in more than one config file, then the definition
coming from the first\-listed fmtutil.cnf is used.
.PP
Disabling formats:
.IP
fmtutil.cnf files with higher priority (listed earlier) can disable
formats mentioned in lower priority (listed later) fmtutil.cnf files by
writing, e.g.,
.IP
#! <fmtname> <enginename> <hyphen> <args>
.IP
in the higher\-priority fmtutil.cnf file.
.IP
As an example, suppose you have want to disable the luajitlatex format.
You can create the file \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP with the content
.IP
#! luajitlatex luajittex language.dat,language.dat.lua lualatex.ini
.IP
and call fmtutil.
.PP
fmtutil vs. fmtutil\-sys (fmtutil \fB\-\-sys\fR):
.IP
When fmtutil\-sys is run or the command line option \fB\-\-sys\fR is used,
TEXMFSYSCONFIG and TEXMFSYSVAR are used instead of TEXMFCONFIG and
TEXMFVAR, respectively.  This is the primary difference between
fmtutil\-sys and fmtutil.
.IP
Other locations may be used if you give them on the command line, or
these trees don't exist, or you are not using the original TeX Live.
.SH "REPORTING BUGS"
Report bugs to: tex\-k@tug.org
.br
TeX Live home page: <http://tug.org/texlive/>