## NAME

g.mkfontcap - Generates the font configuration file by scanning various directories for fonts.

## KEYWORDS

general

## SYNOPSIS

g.mkfontcap
g.mkfontcap --help
g.mkfontcap [-os] [extradirs=string] [--help] [--verbose] [--quiet] [--ui]

### Flags:

-o
  Overwrite font configuration file if already existing
-s
  Write font configuration file to standard output instead of $GISBASE/etc
--help
  Print usage summary
--verbose
  Verbose module output
--quiet
  Quiet module output
--ui
  Force launching GUI dialog

### Parameters:

extradirs=string
  List of extra directories to scan
  Comma-separated list of extra directories to scan for Freetype-compatible fonts as well as the defaults (see documentation)

## DESCRIPTION

g.mkfontcap is a utilty to generate a GRASS font configuration file ("fontcap") containing details of the fonts available on the current system. If Freetype is not installed, the font list will be limited to the set of Hershey stroke fonts supplied with GRASS. With Freetype enabled however, the module will recursively scan all files within a predefined hierarchy to find Freetype-compatible scalable fonts. The list of directories scanned is currently:

        /usr/lib/X11/fonts
        /usr/share/X11/fonts
        /usr/share/fonts
        /usr/local/share/fonts
        ${HOME}/Library/Fonts
        /Library/Fonts
        /System/Library/Fonts
        ${WINDIR}/Fonts

These correspond to directories where fonts can be found on some common operating systems. Extra directories to search can easily by added using the extradirs parameter, which accepts a comma-separated list. An extra directory may optionally contain an environment variable at the start of the string, if enclosed in ${xxx} syntax (see examples above).

The module will normally write to the standard fontcap file location, `$GISBASE/etc/fontcap`. If the environment variable `GRASS_FONT_CAP` is set, the output will instead be written to the file specified by that variable. This is useful if you don't have permission to modify `$GISBASE/etc/fontcap`: in this case you can use e.g.

    # use local file version instead of system copy
    GRASS_FONT_CAP=$HOME/.gfontcap
    export GRASS_FONT_CAP

    g.mkfontcap

to create a personal copy and then to make GRASS use that file instead of the system copy.

The output list of fonts is sorted first by type (Stroke fonts first, followed by Freetype) and within each type by the short name of the font.

## SEE ALSO

d.font

## AUTHOR

Paul Kelly

## SOURCE CODE

Available at: g.mkfontcap source code (history)

Accessed: Wednesday Jun 11 21:28:00 2025

Main index | General index | Topics index | Keywords index | Graphical index | Full index

© 2003-2023 GRASS Development Team, GRASS GIS 7.8.8 Reference Manual