summaryrefslogtreecommitdiffstats
path: root/doc/groff.html.node/DESC-File-Format.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/groff.html.node/DESC-File-Format.html')
-rw-r--r--doc/groff.html.node/DESC-File-Format.html258
1 files changed, 258 insertions, 0 deletions
diff --git a/doc/groff.html.node/DESC-File-Format.html b/doc/groff.html.node/DESC-File-Format.html
new file mode 100644
index 0000000..11e1b73
--- /dev/null
+++ b/doc/groff.html.node/DESC-File-Format.html
@@ -0,0 +1,258 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by GNU Texinfo 7.0.3, https://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<!-- This manual documents GNU troff version 1.23.0.
+
+Copyright © 1994-2023 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
+copy of the license is included in the section entitled "GNU Free
+Documentation License". -->
+<title>DESC File Format (The GNU Troff Manual)</title>
+
+<meta name="description" content="DESC File Format (The GNU Troff Manual)">
+<meta name="keywords" content="DESC File Format (The GNU Troff Manual)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="Generator" content="makeinfo">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="index.html" rel="start" title="Top">
+<link href="Request-Index.html" rel="index" title="Request Index">
+<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
+<link href="Device-and-Font-Description-Files.html" rel="up" title="Device and Font Description Files">
+<link href="Font-Description-File-Format.html" rel="next" title="Font Description File Format">
+<link href="Device-and-Font-Description-Files.html" rel="prev" title="Device and Font Description Files">
+<style type="text/css">
+<!--
+a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
+span.r {font-family: initial; font-weight: normal; font-style: normal}
+span:hover a.copiable-link {visibility: visible}
+-->
+</style>
+
+
+</head>
+
+<body lang="en">
+<div class="subsection-level-extent" id="DESC-File-Format">
+<div class="nav-panel">
+<p>
+Next: <a href="Font-Description-File-Format.html" accesskey="n" rel="next">Font Description File Format</a>, Previous: <a href="Device-and-Font-Description-Files.html" accesskey="p" rel="prev">Device and Font Description Files</a>, Up: <a href="Device-and-Font-Description-Files.html" accesskey="u" rel="up">Device and Font Description Files</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Request-Index.html" title="Index" rel="index">Index</a>]</p>
+</div>
+<hr>
+<h4 class="subsection" id="DESC-File-Format-1">6.2.1 <samp class="file">DESC</samp> File Format</h4>
+<a class="index-entry-id" id="index-DESC-file-format"></a>
+<a class="index-entry-id" id="index-font-description-file-format"></a>
+<a class="index-entry-id" id="index-format-of-font-description-file"></a>
+
+<p>The <samp class="file">DESC</samp> file contains a series of directives; each begins a
+line. Their order is not important, with two exceptions: (1) the
+<code class="code">res</code> directive must precede any <code class="code">papersize</code> directive; and
+(2) the <code class="code">charset</code> directive must come last (if at all). If a
+directive name is repeated, later entries in the file override previous
+ones (except that the paper dimensions are computed based on the
+<code class="code">res</code> directive last seen when <code class="code">papersize</code> is encountered).
+Spaces and/or tabs separate words and are ignored at line boundaries.
+<a class="index-entry-id" id="index-comments-in-device-description-files"></a>
+<a class="index-entry-id" id="index-device-description-files_002c-comments"></a>
+<a class="index-entry-id" id="index-_0023"></a>
+Comments start with the &lsquo;<samp class="samp">#</samp>&rsquo; character and extend to the end of a
+line. Empty lines are ignored.
+</p>
+<dl class="table">
+<dt id='index-family-1'><span><code class="code">family <var class="var">fam</var></code><a class="copiable-link" href='#index-family-1'> &para;</a></span></dt>
+<dd><p>The default font family is <var class="var">fam</var>.
+</p>
+</dd>
+<dt id='index-fonts-2'><span><code class="code">fonts <var class="var">n</var> <var class="var">F1</var> <span class="r">&hellip;</span> <var class="var">Fn</var></code><a class="copiable-link" href='#index-fonts-2'> &para;</a></span></dt>
+<dd><p>Fonts <var class="var">F1</var>, &hellip;, <var class="var">Fn</var> are mounted at font positions
+<var class="var">m</var>+1, &hellip;, <var class="var">m</var>+<var class="var">n</var> where <var class="var">m</var> is the number of
+<code class="code">styles</code> (see below). This directive may extend over more than one
+line. A font name of&nbsp;<code class="code">0</code> causes no font to be mounted at the
+corresponding position.
+</p>
+</dd>
+<dt id='index-hor'><span><code class="code">hor <var class="var">n</var></code><a class="copiable-link" href='#index-hor'> &para;</a></span></dt>
+<dd><a class="index-entry-id" id="index-horizontal-motion-quantum"></a>
+<a class="index-entry-id" id="index-motion-quantum_002c-horizontal"></a>
+<a class="index-entry-id" id="index-quantum_002c-horizontal-motion"></a>
+<a class="index-entry-id" id="index-horizontal-resolution"></a>
+<a class="index-entry-id" id="index-resolution_002c-horizontal"></a>
+<p>The horizontal motion quantum is <var class="var">n</var>&nbsp;basic units. All
+horizontal quantities are rounded to multiples of&nbsp;<var class="var">n</var>.
+</p>
+</dd>
+<dt id='index-image_005fgenerator'><span><code class="code">image_generator <var class="var">program</var></code><a class="copiable-link" href='#index-image_005fgenerator'> &para;</a></span></dt>
+<dd><a class="index-entry-id" id="index-PostScript_002c-PNG-image-generation"></a>
+<a class="index-entry-id" id="index-PNG-image-generation-from-PostScript"></a>
+<p>Use <var class="var">program</var> to generate PNG images from PostScript input. Under
+GNU/Linux, this is usually <code class="code">gs</code>, but under other systems (notably
+Cygwin) it might be set to another name. The <code class="code">grohtml</code> driver uses
+this directive.
+</p>
+</dd>
+<dt id='index-paperlength'><span><code class="code">paperlength <var class="var">n</var></code><a class="copiable-link" href='#index-paperlength'> &para;</a></span></dt>
+<dd><p>The vertical dimension of the output medium is <var class="var">n</var>&nbsp;basic units
+(deprecated: use <code class="code">papersize</code> instead).
+</p>
+</dd>
+<dt id='index-papersize'><span><code class="code">papersize <var class="var">format-or-dimension-pair-or-file-name</var> <span class="r">&hellip;</span></code><a class="copiable-link" href='#index-papersize'> &para;</a></span></dt>
+<dd><p>The dimensions of the output medium are as according to the
+argument, which is either a standard paper format, a pair of dimensions,
+or the name of a plain text file containing either of the foregoing.
+</p>
+<p>Recognized paper formats are the ISO and DIN formats
+<code class="code">A0</code>&ndash;<code class="code">A7</code>, <code class="code">B0</code>&ndash;<code class="code">B7</code>, <code class="code">C0</code>&ndash;<code class="code">C7</code>,
+<code class="code">D0</code>&ndash;<code class="code">D7</code>; the U.S. paper types <code class="code">letter</code>,
+<code class="code">legal</code>, <code class="code">tabloid</code>, <code class="code">ledger</code>, <code class="code">statement</code>, and
+<code class="code">executive</code>; and the envelope formats <code class="code">com10</code>, <code class="code">monarch</code>,
+and <code class="code">DL</code>. Matching is performed without regard for lettercase.
+</p>
+<p>Alternatively, the argument can be a custom paper format in the format
+<code class="code"><var class="var">length</var>,<var class="var">width</var></code> (with no spaces before or after the
+comma). Both <var class="var">length</var> and <var class="var">width</var> must have a unit appended;
+valid units are &lsquo;<samp class="samp">i</samp>&rsquo; for inches, &lsquo;<samp class="samp">c</samp>&rsquo; for centimeters, &lsquo;<samp class="samp">p</samp>&rsquo;
+for points, and &lsquo;<samp class="samp">P</samp>&rsquo; for picas. Example: &lsquo;<samp class="samp">12c,235p</samp>&rsquo;. An
+argument that starts with a digit is always treated as a custom paper
+format.
+</p>
+<p>Finally, the argument can be a file name (e.g., <samp class="file">/etc/papersize</samp>);
+if the file can be opened, the first line is read and a match attempted
+against each of the other forms. No comment syntax is supported.
+</p>
+<p>More than one argument can be specified;
+each is scanned in turn and the first valid paper specification used.
+</p>
+</dd>
+<dt id='index-paperwidth'><span><code class="code">paperwidth <var class="var">n</var></code><a class="copiable-link" href='#index-paperwidth'> &para;</a></span></dt>
+<dd><p>The horizontal dimension of the output medium is <var class="var">n</var>&nbsp;basic
+units (deprecated: use <code class="code">papersize</code> instead).
+</p>
+</dd>
+<dt id='index-pass_005ffilenames'><span><code class="code">pass_filenames</code><a class="copiable-link" href='#index-pass_005ffilenames'> &para;</a></span></dt>
+<dd><p>Direct GNU <code class="code">troff</code> to emit the name of the source file being
+processed. This is achieved with the intermediate output command
+&lsquo;<samp class="samp">x F</samp>&rsquo;, which <code class="code">grohtml</code> interprets.
+</p>
+</dd>
+<dt id='index-postpro'><span><code class="code">postpro <var class="var">program</var></code><a class="copiable-link" href='#index-postpro'> &para;</a></span></dt>
+<dd><p>Use <var class="var">program</var> as the postprocessor.
+</p>
+</dd>
+<dt id='index-prepro'><span><code class="code">prepro <var class="var">program</var></code><a class="copiable-link" href='#index-prepro'> &para;</a></span></dt>
+<dd><p>Use <var class="var">program</var> as a preprocessor. The <code class="code">html</code> and <code class="code">xhtml</code>
+output devices use this directive.
+</p>
+</dd>
+<dt id='index-print'><span><code class="code">print <var class="var">program</var></code><a class="copiable-link" href='#index-print'> &para;</a></span></dt>
+<dd><p>Use <var class="var">program</var> as a spooler program for printing. If omitted, the
+<samp class="option">-l</samp> and <samp class="option">-L</samp> options of <code class="code">groff</code> are ignored.
+</p>
+</dd>
+<dt id='index-res'><span><code class="code">res <var class="var">n</var></code><a class="copiable-link" href='#index-res'> &para;</a></span></dt>
+<dd><a class="index-entry-id" id="index-device-resolution-1"></a>
+<a class="index-entry-id" id="index-resolution_002c-device-1"></a>
+<p>The device resolution is <var class="var">n</var>&nbsp;basic units per inch.
+</p>
+</dd>
+<dt id='index-sizes'><span><code class="code">sizes <var class="var">s1</var> <span class="r">&hellip;</span> <var class="var">sn</var> 0</code><a class="copiable-link" href='#index-sizes'> &para;</a></span></dt>
+<dd><p>The device has fonts at <var class="var">s1</var>, &hellip;, <var class="var">sn</var> scaled points (see
+below). The list of sizes must be terminated by&nbsp;<code class="code">0</code>. Each
+<var class="var">si</var> can also be a range of sizes <var class="var">m</var>&ndash;<var class="var">n</var>. The list can
+extend over more than one line.
+</p>
+</dd>
+<dt id='index-sizescale'><span><code class="code">sizescale <var class="var">n</var></code><a class="copiable-link" href='#index-sizescale'> &para;</a></span></dt>
+<dd><p>A typographical point is subdivided into <var class="var">n</var>&nbsp;scaled points.
+The default is&nbsp;<code class="code">1</code>. See <a class="xref" href="Using-Fractional-Type-Sizes.html">Using Fractional Type Sizes</a>.
+</p>
+</dd>
+<dt id='index-styles-2'><span><code class="code">styles <var class="var">S1</var> <span class="r">&hellip;</span> <var class="var">Sm</var></code><a class="copiable-link" href='#index-styles-2'> &para;</a></span></dt>
+<dd><p>The first&nbsp;<var class="var">m</var> mounting positions are associated with styles
+<var class="var">S1</var>, &hellip;, <var class="var">Sm</var>.
+</p>
+</dd>
+<dt id='index-tcommand'><span><code class="code">tcommand</code><a class="copiable-link" href='#index-tcommand'> &para;</a></span></dt>
+<dd><p>The postprocessor can handle the &lsquo;<samp class="samp">t</samp>&rsquo; and &lsquo;<samp class="samp">u</samp>&rsquo; intermediate
+output commands.
+</p>
+</dd>
+<dt id='index-unicode'><span><code class="code">unicode</code><a class="copiable-link" href='#index-unicode'> &para;</a></span></dt>
+<dd><p>The output device supports the complete Unicode repertoire. This
+directive is useful only for devices that produce character entities
+instead of glyphs.
+</p>
+<p>If <code class="code">unicode</code> is present, no <code class="code">charset</code> section is required in
+the font description files since the Unicode handling built into
+<code class="code">groff</code> is used. However, if there are entries in a font
+description file&rsquo;s <code class="code">charset</code> section, they either override the
+default mappings for those particular characters or add new mappings
+(normally for composite characters).
+</p>
+<p>The <code class="code">utf8</code>, <code class="code">html</code>, and <code class="code">xhtml</code> output devices use this
+directive.
+</p>
+</dd>
+<dt id='index-unitwidth'><span><code class="code">unitwidth <var class="var">n</var></code><a class="copiable-link" href='#index-unitwidth'> &para;</a></span></dt>
+<dd><p>Quantities in the font description files are in basic units for fonts
+whose type size is <var class="var">n</var>&nbsp;scaled points.
+</p>
+</dd>
+<dt id='index-unscaled_005fcharwidths'><span><code class="code">unscaled_charwidths</code><a class="copiable-link" href='#index-unscaled_005fcharwidths'> &para;</a></span></dt>
+<dd><p>Make the font handling module always return unscaled character widths.
+The <code class="code">grohtml</code> driver uses this directive.
+</p>
+</dd>
+<dt id='index-use_005fcharnames_005fin_005fspecial-1'><span><code class="code">use_charnames_in_special</code><a class="copiable-link" href='#index-use_005fcharnames_005fin_005fspecial-1'> &para;</a></span></dt>
+<dd><p>GNU <code class="code">troff</code> should encode special characters inside device control
+commands; see <a class="ref" href="Postprocessor-Access.html">Postprocessor Access</a>. The <code class="code">grohtml</code> driver
+uses this directive.
+</p>
+</dd>
+<dt id='index-vert'><span><code class="code">vert <var class="var">n</var></code><a class="copiable-link" href='#index-vert'> &para;</a></span></dt>
+<dd><a class="index-entry-id" id="index-vertical-motion-quantum"></a>
+<a class="index-entry-id" id="index-motion-quantum_002c-vertical"></a>
+<a class="index-entry-id" id="index-quantum_002c-vertical-motion"></a>
+<a class="index-entry-id" id="index-vertical-resolution"></a>
+<a class="index-entry-id" id="index-resolution_002c-vertical"></a>
+<p>The vertical motion quantum is <var class="var">n</var>&nbsp;basic units. All vertical
+quantities are rounded to multiples of&nbsp;<var class="var">n</var>.
+</p>
+</dd>
+<dt id='index-charset'><span><code class="code">charset</code><a class="copiable-link" href='#index-charset'> &para;</a></span></dt>
+<dd><p>This line and everything following it in the file are ignored. It is
+recognized for compatibility with other <code class="code">troff</code> implementations.
+In GNU <code class="code">troff</code>, character set repertoire is described on a
+per-font basis.
+</p></dd>
+</dl>
+
+<a class="index-entry-id" id="index-spare1"></a>
+<a class="index-entry-id" id="index-spare2"></a>
+<a class="index-entry-id" id="index-biggestfont"></a>
+<p>GNU <code class="code">troff</code> recognizes but ignores the directives <code class="code">spare1</code>,
+<code class="code">spare2</code>, and <code class="code">biggestfont</code>.
+</p>
+<p>The <code class="code">res</code>, <code class="code">unitwidth</code>, <code class="code">fonts</code>, and <code class="code">sizes</code> lines
+are mandatory. Directives not listed above are ignored by GNU
+<code class="code">troff</code> but may be used by postprocessors to obtain further
+information about the device.
+</p>
+
+</div>
+<hr>
+<div class="nav-panel">
+<p>
+Next: <a href="Font-Description-File-Format.html">Font Description File Format</a>, Previous: <a href="Device-and-Font-Description-Files.html">Device and Font Description Files</a>, Up: <a href="Device-and-Font-Description-Files.html">Device and Font Description Files</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Request-Index.html" title="Index" rel="index">Index</a>]</p>
+</div>
+
+
+
+</body>
+</html>