Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
UPDMAP(1)			  User Commands 		       UPDMAP(1)

NAME
     updmap - manage TeX font maps
     updmap-sys - manage TeX font maps, system-wide
     updmap-user - manage TeX font maps, per-user

SYNOPSIS
     updmap [-user|-sys] [OPTION] ... [COMMAND]
     updmap-user [OPTION] ... [COMMAND]
     updmap-sys [OPTION] ... [COMMAND]

DESCRIPTION
     updmap version r70707 (2024-03-19 23:03:22 +0100)

     Update  the  default  font  map  files  used by pdftex and dvipdfm(x) (pdf-
     tex.map), dvips (psfonts.map), and optionally pxdvi, as determined  by  all
     configuration files updmap.cfg (usually the ones returned by running "kpse-
     which --all updmap.cfg", but see below).

     Among  other  things,  these  map	files  are used to determine which fonts
     should be used as bitmaps and which as outlines,  and  to	determine  which
     font files are included, typically subsetted, in the PDF or PostScript out-
     put.

     These  maps  are  for fonts installed within the TeX hierarchy, and are not
     related to any system font lookups. They are  primarily  used  for  Type  1
     fonts, though a few OpenType and TrueType fonts are involved also.

     updmap-sys  (or updmap -sys) is intended to affect the system-wide configu-
     ration, while updmap-user (or updmap -user) affects personal  configuration
     files only, overriding the system files.

     As  a  consequence, once updmap-user has been run, even a single time, run-
     ning updmap-sys no longer has any	effect.   updmap-sys  issues  a  warning
     about	this,	  since     it	   is	  rarely     desirable.      See
     https://tug.org/texlive/scripts-sys-user.html for details.

     By default, the TeX filename database (ls-R) is also updated; use	--nohash
     to skip that step.

     The updmap system is regrettably complicated, for both inherent and histor-
     ical reasons.  A general overview:

     - updmap.cfg files are mainly about listing other files, namely the

	    font-specific  .maps,  in  which each line gives information about a
	    different TeX (.tfm) font.

     - updmap reads the updmap.cfg files and then concatenates the

	    contents of those .map files into the main output files, generically
	    named:  psfonts.map  for  dvips,  and  pdftex.map  for  pdftex   and
	    dvipdfmx.

     - The updmap.cfg files themselves are created and updated at package

	    installation time, by the system installer or the package manager or
	    by hand, and not (by default) by updmap.

OPTIONS
     --cnffile FILE
	    read FILE for the updmap configuration (can be given multiple times,
	    in which case all the files are used)

     --dvipdfmxoutputdir DIR
	    specify output directory (dvipdfm(x) syntax)

     --dvipsoutputdir DIR
	    specify output directory (dvips syntax)

     --pdftexoutputdir DIR
	    specify output directory (pdftex syntax)

     --pxdvioutputdir DIR
	    specify output directory (pxdvi syntax)

     --outputdir DIR
	    specify output directory (for all files)

     --[no-]copy
	    create generic files as copies (default); with -no-copy, create sym-
	    links

     --force
	    recreate files even if config hasn't changed

     --nomkmap
	    do not recreate map files

     --nohash
	    do not run mktexlsr (a.k.a. texhash)

     --sys  affect system-wide files (equivalent to updmap-sys)

     --user
	    affect personal files (equivalent to updmap-user)

     -n, --dry-run
	    only show the configuration, no output

     --quiet, --silent
	    reduce verbosity

   Commands:
     --help
	    show this message and exit

     --version
	    show version information and exit

     --showoption OPTION
	    show the current setting of OPTION

     --showoptions OPTION
	    show possible settings for OPTION

     --setoption OPTION VALUE
	    set OPTION to value; option names below

     --setoption OPTION=VALUE
	    as above, just different syntax

     --enable MAPTYPE MAPFILE
	    add "MAPTYPE MAPFILE" to updmap.cfg, where MAPTYPE is Map, MixedMap,
	    or KanjiMap

     --enable Map=MAPFILE
	    add "Map MAPFILE" to updmap.cfg

     --enable MixedMap=MAPFILE
	    add "MixedMap MAPFILE" to updmap.cfg

     --enable KanjiMap=MAPFILE
	    add "KanjiMap MAPFILE" to updmap.cfg

     --disable MAPFILE
	    disable MAPFILE, of whatever type

     --listmaps
	    list all maps (details below)

     --listavailablemaps
	    list available maps (details below)

     --syncwithtrees
	    disable unavailable map files in updmap.cfg

     The main output:

	    The  main  output  of  updmap is the files containing the individual
	    font map lines which the drivers (dvips, pdftex, etc.) read to  han-
	    dle fonts.

	    The  map files for dvips (psfonts.map) and pdftex and dvipdfmx (pdf-
	    tex.map) are written to TEXMFVAR/fonts/map/updmap/{dvips,pdftex}/.

	    In addition, information about Kanji  fonts  is  written  to  TEXMF-
	    VAR/fonts/map/updmap/dvipdfmx/kanjix.map,  and  optionally to TEXMF-
	    VAR/fonts/map/updmap/pxdvi/xdvi-ptex.map.  These are for Kanji  only
	    and are not like other map files.  dvipdfmx reads pdftex.map for the
	    map entries for non-Kanji fonts.

	    If	no  option  is given, so the invocation is just "updmap-user" or
	    "updmap-sys", these output files are always recreated.

	    Otherwise, if an option such as --enable or --disable is given,  the
	    output  files  are	recreated if the list of enabled map files (from
	    updmap.cfg) has changed.  The --force option overrides this,  always
	    recreating the output files.

     Explanation of the map types:

	    The normal type is Map.

	    The  only  difference  between Map and MixedMap is that MixedMap en-
	    tries are not added to psfonts_pk.map.  The purpose is to help users
	    with devices that render Type 1 outline fonts worse than  mode-tuned
	    Type 3 bitmap fonts.  So, MixedMap is used for fonts that are avail-
	    able as both Type 1 and Metafont.

	    KanjiMap entries are added to psfonts_t1.map and kanjix.map.

     Explanation  of  the OPTION names for --showoptions, --showoption, --setop-
     tion:

     dvipsPreferOutline
	    true,false	(default true)

	    Whether dvips uses bitmaps or outlines, when both are available.

     dvipsDownloadBase35
	    true,false	(default true)

	    Whether dvips includes the standard 35 PostScript fonts in its  out-
	    put.

     pdftexDownloadBase14
	    true,false	 (default true)

	    Whether pdftex includes the standard 14 PDF fonts in its output.

     pxdviUse
	    true,false	(default false)

	    Whether  maps  for	pxdvi (Japanese-patched xdvi) are under updmap's
	    control.

     jaEmbed
	    (any string)

     jaVariant
	    (any string)

     scEmbed
	    (any string)

     tcEmbed
	    (any string)

     koEmbed
	    (any string)

	    See below.

     LW35   URWkb,URW,ADOBEkb,ADOBE  (default URWkb)

	    Adapt the font and file names of the standard 35 PostScript fonts.

     URWkb  URW fonts with "berry" filenames	(e.g. uhvbo8ac.pfb)

     URW    URW fonts with "vendor" filenames	(e.g. n019064l.pfb)

     ADOBEkb
	    Adobe fonts with "berry" filenames	(e.g. phvbo8an.pfb)

     ADOBE  Adobe fonts with "vendor" filenames (e.g. hvnbo___.pfb)

	    These options are only read and acted on by updmap;  dvips,  pdftex,
	    etc.,  do  not  know anything about them.  They work by changing the
	    default map file which the programs read, so they can be  overridden
	    by	specifying  command-line  options  or configuration files to the
	    programs, as explained at the beginning of updmap.cfg.

	    The options jaEmbed and jaVariant (formerly  kanjiEmbed  and  kanji-
	    Variant)  specify  special	replacements in the map lines.	If a map
	    contains the string @jaEmbed@, then this will  be  replaced  by  the
	    value  of  that option; similarly for jaVariant.  In this way, users
	    of Japanese TeX can select different fonts to be included in the fi-
	    nal output.  The counterpart  for  Simplified  Chinese,  Traditional
	    Chinese  and  Korean  fonts are scEmbed, tcEmbed and koEmbed respec-
	    tively.

ENVIRONMENT
     Explanation of trees and files normally used:

	    If --cnffile is specified on the command line (can be given multiple
	    times), its value(s) is(are) used.	Otherwise, updmap reads all  the
	    updmap.cfg	files  found  by running `kpsewhich -all updmap.cfg', in
	    the order returned by kpsewhich (which is the order of trees defined
	    in texmf.cnf).

	    In either case, if multiple updmap.cfg files are found, all the maps
	    mentioned in all the updmap.cfg files are merged.

	    Thus, if updmap.cfg 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.

	    For updmap-sys:
	    TEXMFSYSCONFIG $TEXLIVE/YYYY/texmf-config/web2c/updmap.cfg
	    TEXMFSYSVAR    $TEXLIVE/YYYY/texmf-var/web2c/updmap.cfg
	    TEXMFLOCAL	   $TEXLIVE/texmf-local/web2c/updmap.cfg
	    TEXMFDIST	   $TEXLIVE/YYYY/texmf-dist/web2c/updmap.cfg

	    For updmap-user:
	    TEXMFCONFIG    $HOME/.texliveYYYY/texmf-config/web2c/updmap.cfg
	    TEXMFVAR	   $HOME/.texliveYYYY/texmf-var/web2c/updmap.cfg
	    TEXMFHOME	   $HOME/texmf/web2c/updmap.cfg
	    TEXMFSYSCONFIG $TEXLIVE/YYYY/texmf-config/web2c/updmap.cfg
	    TEXMFSYSVAR    $TEXLIVE/YYYY/texmf-var/web2c/updmap.cfg
	    TEXMFLOCAL	   $TEXLIVE/texmf-local/web2c/updmap.cfg
	    TEXMFDIST	   $TEXLIVE/YYYY/texmf-dist/web2c/updmap.cfg

	    (where YYYY is the TeX Live release version).

	    According to the actions, updmap might write to  one  of  the  given
	    files or create a new updmap.cfg, described further below.

     Where and which updmap.cfg changes are saved:

	    When no options are given, the updmap.cfg file(s) are only read, not
	    written.   It's when an option --setoption, --enable or --disable is
	    specified that an updmap.cfg needs to be updated.  In this case:

	    1) If config files are given on the command line, then the first one
	    given is used to save any such changes.

	    2) If the config files are taken from kpsewhich output, then the al-
	    gorithm is more complex:

	    2a) If $TEXMFCONFIG/web2c/updmap.cfg or  $TEXMFHOME/web2c/updmap.cfg
	    appears  in  the  list  of	used files, then the one listed first by
	    kpsewhich --all (equivalently, the one  returned  by  kpsewhich  up-
	    dmap.cfg), is used.

	    2b)  If neither of the above two are present and changes are made, a
	    new config file is created in $TEXMFCONFIG/web2c/updmap.cfg.

	    In general, the idea is that if the user cannot  write  to	a  given
	    config file, a higher-level one can be used.  That way, the distrib-
	    ution's settings can be overridden system-wide using TEXMFLOCAL, and
	    system  settings  can  be  overridden  again  in a particular user's
	    TEXMFHOME or TEXMFCONFIG.

     Resolving multiple definitions of a font:

	    If a font is defined in more than one map file, then the  definition
	    coming  from  the first-listed updmap.cfg is used.	If a font is de-
	    fined multiple times within the same map file, one is  chosen  arbi-
	    trarily.  In both cases a warning is issued.

     Disabling maps:

	    updmap.cfg	files  with higher priority (listed earlier) can disable
	    maps mentioned in lower priority (listed later) updmap.cfg files  by
	    writing, e.g.,

	    #! Map mapname.map

	    or

	    #! MixedMap mapname.map

     in the higher-priority updmap.cfg file.
	    (The #! must be at the

	    beginning of the line, with at least one space or tab afterward, and
	    whitespace between each word on the list.)

	    As	an  example,  suppose  you have a copy of MathTime Pro fonts and
	    want to disable the Belleek version of the fonts; that  is,  disable
	    the map belleek.map.  You can create the file $TEXMFCONFIG/web2c/up-
	    dmap.cfg with the content

	    #! Map belleek.map Map mt-plus.map Map mt-yy.map

	    and call updmap.

     Listing of maps:

	    The two options --listmaps and --listavailablemaps list all maps de-
	    fined  in  any  of	the  updmap.cfg files (for --listmaps), and only
	    those actually found on the system (for  --listavailablemaps).   The
	    output  format  is	one line per font map, with the following fields
	    separated by tabs: map, type (Map, MixedMap, KanjiMap), status  (en-
	    abled, disabled), origin (the updmap.cfg file where it is mentioned,
	    or 'builtin' for the three basic maps).

	    In	the case of --listmaps there can be one additional fields (again
	    separated by tab) containing '(not available)' for those  map  files
	    that cannot be found.

     updmap-user vs. updmap-sys:

	    When  updmap-sys is run, TEXMFSYSCONFIG and TEXMFSYSVAR are used in-
	    stead of TEXMFCONFIG and TEXMFVAR, respectively.  This is  the  pri-
	    mary difference between updmap-sys and updmap-user.

	    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.

     To  see  the  precise  locations of the various files that will be read and
     written, give the -n option (or read the source).

EXAMPLES
     The log file is written to TEXMFVAR/web2c/updmap.log.

     For step-by-step instructions on  making  new  fonts  known  to  TeX,  read
     https://tug.org/fonts/fontinstall.html.   For even more terse instructions,
     read the beginning of the main updmap.cfg file.

FILES
     Configuration and input files:

     updmap.cfg
	    Main configuration file.  In texmf-dist/web2c by default, but may be
	    located elsewhere depending on your distribution.  Each  texmf  tree
	    read should have its own updmap.cfg.

     dvips35.map
	    Map file for standard 35 PostScript fonts for use with dvips(1).

     pdftex35.map
	    Map file for standard 35 PostScript fonts for use with pdftex(1).

     ps2pk35.map
	    Map file for standard 35 PostScript fonts for use with ps2pk(1).

     Output files:

     psfonts.map
	    For  dvips(1).   Same as psfonts_t1.map if option dvipsPreferOutline
	    active, else as psfonts_pk.map.

     psfonts_pk.map
	    For dvips(1).  Without information from MixedMap files.  (Setting of
	    dvipsPreferOutline ignored.)

     psfonts_t1.map
	    For dvips(1).  With information from MixedMap  files.   (Setting  of
	    dvipsPreferOutline ignored.)

     download35.map
	    For  dvips(1).  Always downloads the standard 35 fonts.  (Setting of
	    dvipsDownloadBase35 ignored.)

     builtin35.map
	    For dvips(1).  Never downloads the standard 35 fonts.   (Setting  of
	    dvipsDownloadBase35 ignored.)

     pdftex.map
	    For  pdftex(1).   Same  as pdftex_dl14.map if option pdftexDownload-
	    Base14 active, else as pdftex_ndl14.map.

     pdftex_dl14.map
	    For pdftex(1).  Always downloads the standard 14 fonts.

     pdftex_ndl14.map
	    For pdftex(1).  Never downloads the standard 14 fonts.

     ps2pk.map
	    Similar to psfonts.map file, but forces all fonts to be  downloaded,
	    so this map file can be used with xdvi(1) and ps2pk(1).

     Configuration files for dvips(1):

     config.builtin35
	    Loads builtin35.map instead of psfonts.map.

     config.download35
	    Loads download35.map instead of psfonts.map.

     config.outline
	    Loads psfonts_t1.map instead of psfonts.map.

     config.pdf
	    Loads  psfonts_t1.map instead of psfonts.map and has additional set-
	    tings for PDF generation.

     config.pk
	    Loads psfonts_pk.map instead of psfonts.map.

     config.www
	    Loads psfonts_t1.map instead  of  psfonts.map.   (For  compatibility
	    with old versions.)

     config.gstopk
	    Loads psfonts_t1.map instead of psfonts.map.

REPORTING BUGS
     Report bugs to: tex-live@tug.org
     TeX Live home page: <https://tug.org/texlive/>

TeX Live			  February 2025 		       UPDMAP(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=updmap&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help