forked from latex2html/latex2html
-
Notifications
You must be signed in to change notification settings - Fork 0
/
prefs.pm
428 lines (353 loc) · 14.7 KB
/
prefs.pm
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
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
###############################################################################
# $Id: prefs.pm,v 1.7 2002/04/28 12:21:51 RRM Exp $
#
# prefs.pm
#
# This file contains the preferences for the configuration procedure
# of LaTeX2HTML.
# You may modify this file to achieve a correct configuration on your
# system. UNIX users may also use the usual syntax conventioons of
# GNU configure to pass configuration parameters.
#
# Author: Marek Rouchal <[email protected]>
#
# This software is part of LaTeX2HTML, originally by Nikos Drakos
# It is published under the GNU Public License and comes without any
# warranty.
#
###############################################################################
# Changes History
#
# $Log: prefs.pm,v $
# Revision 1.7 2002/04/28 12:21:51 RRM
# variables $DVIPSOPT and $ICONSERVER are now configurable via prefs.pm
#
# Revision 1.5 1999/11/09 00:43:42 MRO
#
#
# -- added some changes suggested on the mail list recently: mainly cleanup
# of -dir option
# -- added installation support for latex2html styles
#
# Revision 1.4 1999/08/26 23:33:42 MRO
#
# -- added option to load l2hcfg.pm from previous installation
# -- fixed a bunch of bugs reported by Stefan Klupsch (thanks!)
#
# Revision 1.3 1999/06/10 22:59:59 MRO
#
#
# -- fixed an artifact in the *ball icons
# -- cleanups
# -- option documentation added
# -- fixed bug in color perl (determining path to rgb/crayola)
#
# Revision 1.2 1999/06/01 06:55:34 MRO
#
#
# - fixed small bug in L2hos/*
# - added some test_mode related output to latex2html
# - improved documentation
# - fixed small bug in pstoimg wrt. OS2
#
# Revision 1.1 1999/05/11 06:09:58 MRO
#
#
# - merged config stuff, did first tries on Linux. Simple document
# passes! More test required, have to ger rid of Warnings in texexpand
#
# Revision 1.9 1999/05/05 19:47:02 MRO
#
#
# - many cosmetic changes
# - final backup before merge
#
# Revision 1.8 1998/12/12 16:39:14 MRO
#
#
# -- cosmetic changes, reworked catching of STDERR in config.pl (Win32)
# -- new configure opt --disable-paths
# -- major cleanups
#
# Revision 1.7 1998/10/31 14:13:04 MRO
# -- changed OS-dependent module loading strategy: Modules are now located in
# different (OS-specific) directories nut have the same name: Easier to
# maintain and cleaner code
# -- Cleaned up config procedure
# -- Extended makefile functionality
#
# Revision 1.6 1998/08/09 20:45:19 MRO
# -- some cleanup
#
# Revision 1.5 1998/06/30 23:12:13 MRO
# -- Reworked os dependency setup, mainly for TeXlive integration.
# Started wrapper coding.
#
# Revision 1.4 1998/05/14 22:27:36 latex2html
# -- more work on config procedure (Makefile, GS_LIB)
# -- tested pstoimg in 98.1 environment successfully on Linux
#
# Revision 1.3 1998/05/06 22:31:09 latex2html
# -- Enhancements to the config procedure: Added a "generic" target
# in the Makefile for the TeXlive CD (not perfect yet)
# -- included test for kpsewhich / Web2C
# -- included latest stuff from Override.pm into os_*.pm
#
# Revision 1.2 1998/03/16 23:31:56 latex2html
# -- lots of cosmetic changes and bugfixes, thanks to Uli Wortmann
# for OS/2 testing
# -- start of install procedure; checks for installation paths implemented
#
# Revision 1.1 1998/03/02 23:38:39 latex2html
# Reworked configuration procedure substantially. Fixed some killing bugs.
# Should now run on Win32, too.
# The file prefs.pm contains user-configurable stuff for DOS platforms.
# UNIX users can override the settings with the configure utility (preferred).
#
package prefs;
require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(%prefs);
%prefs = ();
# When executables are specified, you may give either only the name of the
# executable (e.g. 'dvips'), the configuration then searches your system for
# the program. Or you may give a complete path.
# On DOS/Windows platforms you need not specify the extension (e.g. '.exe').
# You may specify multiple executable names, separated by commas ','.
# PLEASE SET THE PERL EXECUTABLE NAME ON THE COMMAND LINE OR IN
# CONFIG.BAT IF IT DIFFERS FROM 'perl'!!!
# Specify any additional search paths here, use `:' or `;´ as delimiter
$prefs{'EXTRAPATH'} = '';
# This is where the installation will take place. On UNIXish systems
# $prefs{'PREFIX'} = '/usr/local';
# is preferred. On DOS/Win, you might say
# $prefs{'PREFIX'} = 'C:\\progs\\latex2html';
$prefs{'PREFIX'} = '/usr/local';
# The following are derived from PREFIX if empty: BINDIR by adding /bin, and
# LIBDIR by adding /lib or /lib/latex2html, depending on whether PREFIX
# contains l2h or latex2html (case insensitive!), respectively.
# But you may specify something completely different, of course :-)
$prefs{'BINDIR'} = '';
$prefs{'LIBDIR'} = '';
$prefs{'SHLIBDIR'} = '';
# If set, only a short wrapper script is build that is going to be installed
# in BINDIR. This wrapper inludes the latex2html script, that is kept in
# LIBDIR
$prefs{'WRAPPER'} = 'no';
# If set, a special configuration is used to build a LaTeX2HTML that fits
# on the TeXlive cdrom. Only for experts :-)
$prefs{'TEXLIVE'} = 'no';
# This is how the LaTeX2HTML icons can be accessed from your HTTP server.
# It must be a valid URL on the server you are going to put your converted
# documents. Examples:
# Relative: /icons/latex2html
# Absolute: http://myserver.net/icons
# Note that this setting should be consistent with the following
# setting ICONSTORAGE.
# If left empty, an appropriate file: URL is assumed. This will show
# the icons o.k. on your local host, but won't work across the Web.
$prefs{'ICONPATH'} = '';
# This is the directory where the icons have to be copied so that they
# can be accessed with the path given above. Keep this empty if you do
# not want the icons to be installed in your Web server area.
# However, the icons are installed in SHLIBDIR/icons, no matter what.
$prefs{'ICONSTORAGE'} = '';
# Set a URL here, as the place to access icons from across the Web.
# This does not have to be on the local server, or at a related site.
$prefs{'ICONSERVER'} = '';
# set this to no if you do not want any image generation by LaTeX2HTML
$prefs{'IMAGES'} = 'yes';
# TeX and friends
#
# LaTeX and other executables of the TeX typesetting suite are needed to
# render parts of the documents that cannot be translated to HTML in a
# consistent way. If you don't have LaTeX, LaTeX2HTML will run anyway,
# but with reduced capabilities.
# the TeX executable
$prefs{'TEX'} = 'tex';
# the variants for LaTeX executable
# needed for image generation
$prefs{'LATEX'} = 'latex';
$prefs{'PDFLATEX'} = 'pdflatex';
$prefs{'LUALATEX'} = 'lualatex';
$prefs{'DVILUALATEX'} = 'dvilualatex';
# the initex executable
$prefs{'INITEX'} = 'initex';
# the kpsewhich (part of Web2C) executable. If it is found, we have
# Web2C
$prefs{'KPSEWHICH'} = 'kpsewhich';
$prefs{'WEB2C'} = 0;
# the root directory for TeX include files, e.g.
# /usr/lib/texmf/tex. If KPSEWHICH is found, this path is determined
# automatically (using KPSEWHICH -p tex).
# The LaTeX2HTML specific files are installed in
# $TEXPATH(/latex)/latex2html ( /latex added only if it exists )
# You may also specify this with the --with-texpath= configure option.
# This setting overrides the automatic selection.
$prefs{'TEXPATH'} = '';
# the "mktexlsr" update utility. This is needed to build the TeX file
# searching database (aka ls-R) after adding new style files
# This tool is automatically invoked after successful installation of
# the LaTeX2HTML style files (e.g. html.sty)
$prefs{'MKTEXLSR'} = 'mktexlsr,texhash,MakeTeXlsR';
# The dvips executable and its features. dvips32 added for OS/2
$prefs{'DVIPS'} = 'dvips,dvi2ps,dvips32';
# Many options can be used with dvips to produce better quality images
# or speed-up other aspects of image-generation.
# $prefs{'DVIPSOPT'} = ' -E'; # create encapsulated (EPS) images
# $prefs{'DVIPSOPT'} = ' -Ppdf'; # use Type 1 fonts, as for PDF
# $prefs{'DVIPSOPT'} = ' -Pcmz -Pamz'; # use CM and AMS Type 1 fonts
$prefs{'DVIPSOPT'} = ' -Ppdf';
# set this to 1 if you want dvips to create special fonts for better
# image generation. You need to set the following two items to correct
# values then, i.e. the driver with the given DPI must be available.
# To enable this option, set it to 1.
$prefs{'PK'} = 0;
# The MetaFont mode to use and its resolution. Common settings are
# toshiba(180), hppost(180)???
$prefs{'METAMODE'} = 'toshiba';
$prefs{'METADPI'} = 180;
# Set this to 0 if you do not want dvips to create EPS files even if
# it is capable to
$prefs{'EPS'} = 1;
# This must be set to 1 when your DVIPS reverses the order
# of output pages. Rarely needed. Try 0 first.
$prefs{'REVERSE'} = 0;
# Try to implement SVG image support. Set to 0 if you want
# to disable SVG support even if possible.
$prefs{'SVG'} = 1;
# Try to implement GIF image support. Set to 0 if you want
# to disable GIF support even if possible.
$prefs{'GIF'} = 1;
# Try to implement PNG image support. Set to 0 if you want
# to disable PNG support even if possible.
$prefs{'PNG'} = 1;
# The dvipng executable.
$prefs{'DVIPNG'} = 'dvipng';
# The pdftocairo executable.
$prefs{'PDFTOCAIRO'} = 'pdftocairo';
# The ps2pdf executable.
$prefs{'PS2PDF'} = 'ps2pdf';
# the pdfcrop executable needed for cropping PDF images
$prefs{'PDFCROP'} = 'pdfcrop';
# Ghostscript
# this is one of the crucial points. Use the most recent version of gs
# available. Versions known to work well are 3.33 and 4.03
# the Ghostscript executable
# set name depending on platform
if($::newcfg{'plat'} eq 'os2') {
$prefs{'GS'} = 'gsos2';
}
elsif($::newcfg{'plat'} eq 'win32') {
#$prefs{'GS'} = 'gswin32c';
# 2019-12-12 shige: 2-24)
$prefs{'GS'} = 'rungs,gswin32c';
}
else {
$prefs{'GS'} = 'gs';
}
# the Ghostscript device to use for regular conversion to portable
# bitmap format. The recommended device is pnmraw. ppmraw is ok, too but
# produces bigger intermediate files.
# The most suitable and available device is chosen automatically.
# Specify it here if you want to use a specific one.
$prefs{'GSDEVICE'} = '';
# the Ghostscript device to use for conversion of LaTeX images, e.g.
# formulas. Anti-aliasing is used then to give better images. Therefore
# a full color or full grey device is recommended (ppmraw, pgmraw)
# The most suitable and available device is chosen automatically.
# Specify it here if you want to use a specific one.
$prefs{'GSALIASDEVICE'} = '';
# the Netpbm utilities
# most of them are needed badly to create images.
# the pnmcrop executable needed for cropping of bitmaps
$prefs{'PNMCROP'} = 'pnmcrop';
# the pnmflip executable needed for flipping and rotating bitmaps
$prefs{'PNMFLIP'} = 'pnmflip';
# the pnmquant executable needed for limiting the number of colors
$prefs{'PNMQUANT'} = 'pnmquant';
# the pnmfile executable needed for determining bitmap properties
$prefs{'PNMFILE'} = 'pnmfile';
# the pnmcat executable needed for concatenating of bitmaps
$prefs{'PNMCAT'} = 'pnmcat';
# the pnmcut executable needed for extracting a portion of bitmaps
$prefs{'PNMCUT'} = 'pnmcut';
# the pnmpad extending bitmaps by padding with pixels of a fixed color
$prefs{'PNMPAD'} = 'pnmpad';
# the pbmrotate executable needed for rotating bitmaps
$prefs{'PNMROTATE'} = 'pnmrotate';
# the pbmscale executable needed for scaling bitmaps
$prefs{'PNMSCALE'} = 'pnmscale';
# the pbmmake executable needed for creation of alignment bitmaps
$prefs{'PBMMAKE'} = 'pbmmake';
# the ppmtogif executable needed for creation of GIF images
$prefs{'PPMTOGIF'} = 'ppmtogif,ppm2gif';
# the ppmtojpeg executable for constructing JPEG images from portable bitmaps
$prefs{'PPMTOJPEG'} = 'ppmtojpeg';
# the following is part of a separate package. Use at least
# the one from pnmtopng-2.31
# the pnmtopng executable needed for creation of PNG images
$prefs{'PNMTOPNG'} = 'pnmtopng,pnm2png';
# the giftopnm executable for converting GIF images to portable form
$prefs{'GIFTOPNM'} = 'giftopnm';
# the jpegtopnm executable for converting JPEG images to portable form
$prefs{'JPEGTOPNM'} = 'jpegtopnm';
# the pngtopnm executable for converting PNG images to portable form
$prefs{'PNGTOPNM'} = 'pngtopnm';
# the tifftopnm executable for converting TIFF images to portable form
$prefs{'TIFFTOPNM'} = 'tifftopnm';
# the anytopnm executable for converting arbitrary images to portable form
$prefs{'ANYTOPNM'} = 'anytopnm';
# the bmptoppm executable for converting BMP images to portable form
$prefs{'BMPTOPPM'} = 'bmptoppm';
# the pcxtoppm executable for converting PCX images to portable form
$prefs{'PCXTOPPM'} = 'pcxtoppm';
# the sgitopnm executable for converting SGI images to portable form
$prefs{'SGITOPNM'} = 'sgitopnm';
# the xbmtopbm executable for converting PBM images to portable form
$prefs{'XBMTOPBM'} = 'xbmtopbm';
# the xwdtopnm executable for converting XWD images to portable form
$prefs{'XWDTOPNM'} = 'xwdtopnm';
# if the Netpbm utility ppmtogif lack certain features (the most
# recent version of Netpbm is ok), the following utilities will
# be useful:
# the giftool executable needed for making GIFs interlaced and/or
# transparent
$prefs{'GIFTOOL'} = 'giftool';
# the giftrans executable needed for making GIFs transparent
$prefs{'GIFTRANS'} = 'giftrans';
# to speed things up, pstoimg issues piped commands. This may fail on
# some systems. On unsafe systems, this is automatically set to 0.
# Say 1 for pipe usage and 0 for no pipes.
$prefs{'PIPES'} = 1;
# if this is true, then the config procedure saves the absolute pathnames
# of the external programs in the perl scripts. This is necessary if
# running in an environment where e.g. gs is not always in the PATH
# environment. On the other hand, if this option is disabled, you can move
# the external tools around your filesystems and LaTeX2HTML will keep
# working without reconfiguration as long as the programs can be reached
# through PATH.
# The default is 1 for historical reasons. You can switch it of by saying
# --disable-paths when using configure.
$prefs{'ABSPATHS'} = 1;
# this is the path to a temporary disk space area. If the area is a ram
# drive, this setting may speed up image conversion. The following standard
# paths are checked on the respective platforms:
# UNIX : /tmp /usr/tmp /var/tmp /usr/local/tmp
# DOS/Windows : C:\TMP C:\TEMP C:\WINDOWS\TEMP
$prefs{'TMPSPACE'} = '';
# The location of the rgb.txt color definition file. If omitted, the
# file that comes with the LaTeX2HTML distribution is used.
$prefs{'RGB'} = '';
# The location of the crayola.txt color definition file. If omitted, the
# file that comes with the LaTeX2HTML distribution is used.
$prefs{'CRAYOLA'} = '';
# The names of HTML validators to look for on the system. Note: These
# tools should accept a single HTML filename as argument.
$prefs{'HTML_VALIDATOR'} = 'html4-check';
###########################################
# no need to edit anything below this line
sub get_preferences {
return %prefs;
}
1; # make require happy. DO NOT DELETE THIS LAST LINE!