groff.xml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
  4. <!ENTITY % general-entities SYSTEM "../general.ent">
  5. %general-entities;
  6. ]>
  7. <sect1 id="ch-system-groff" role="wrap">
  8. <?dbhtml filename="groff.html"?>
  9. <title>Groff-&groff-version;</title>
  10. <indexterm zone="ch-system-groff">
  11. <primary sortas="a-Groff">Groff</primary>
  12. </indexterm>
  13. <sect2 role="package">
  14. <title/>
  15. <para>The Groff package contains programs for processing and formatting
  16. text.</para>
  17. <segmentedlist>
  18. <segtitle>&buildtime;</segtitle>
  19. <segtitle>&diskspace;</segtitle>
  20. <seglistitem>
  21. <seg>&groff-ch6-sbu;</seg>
  22. <seg>&groff-ch6-du;</seg>
  23. </seglistitem>
  24. </segmentedlist>
  25. </sect2>
  26. <sect2 role="installation">
  27. <title>Installation of Groff</title>
  28. <para>Apply the patch that adds the <quote>ascii8</quote> and
  29. <quote>nippon</quote> devices to Groff:</para>
  30. <screen><userinput>patch -Np1 -i ../&groff-debian-patch;</userinput></screen>
  31. <note>
  32. <para>These devices are used by Man-DB when formatting non-English manual
  33. pages that are not in the ISO-8859-1 encoding. Currently, there is no
  34. working patch for Groff-1.19.x that adds this functionality.</para>
  35. <!-- Details: http://bugs.debian.org/196762 -->
  36. </note>
  37. <para>Many screen fonts don't have Unicode single quotes and dashes in them.
  38. Tell Groff to use the ASCII equivalents instead:</para>
  39. <screen><userinput>sed -i -e 's/2010/002D/' -e 's/2212/002D/' \
  40. -e 's/2018/0060/' -e 's/2019/0027/' font/devutf8/R.proto</userinput></screen>
  41. <para>Fix a bug that prevents Groff from compiling with GCC-&gcc-version;:
  42. </para>
  43. <screen><userinput>sed -i -e '264 s/char_block:://' src/devices/grohtml/post-html.cc</userinput></screen>
  44. <para>Groff expects the environment variable <envar>PAGE</envar> to
  45. contain the default paper size. For users in the United States,
  46. <parameter>PAGE=letter</parameter> is appropriate. Elsewhere,
  47. <parameter>PAGE=A4</parameter> may be more suitable. While the default
  48. paper size is configured during compilation, it can be overridden later
  49. by echoing either <quote>A4</quote> or <quote>letter</quote> to the
  50. <filename>/etc/papersize</filename> file.</para>
  51. <para>Prepare Groff for compilation:</para>
  52. <screen><userinput>PAGE=<replaceable>&lt;paper_size&gt;</replaceable> ./configure --prefix=/usr --enable-multibyte</userinput></screen>
  53. <para>Compile the package:</para>
  54. <screen><userinput>make</userinput></screen>
  55. <para>This package does not come with a test suite.</para>
  56. <para>Install the package:</para>
  57. <screen><userinput>make install</userinput></screen>
  58. <para>Some documentation programs, such as <command>xman</command>,
  59. will not work properly without the following symlinks:</para>
  60. <screen><userinput>ln -sv eqn /usr/bin/geqn
  61. ln -sv tbl /usr/bin/gtbl</userinput></screen>
  62. </sect2>
  63. <sect2 id="contents-groff" role="content">
  64. <title>Contents of Groff</title>
  65. <segmentedlist>
  66. <segtitle>Installed programs</segtitle>
  67. <seglistitem>
  68. <seg>addftinfo, afmtodit, eqn, eqn2graph, geqn (link to eqn), grn,
  69. grodvi, groff, groffer, grog, grolbp, grolj4, grops, grotty, gtbl
  70. (link to tbl), hpftodit, indxbib, lkbib, lookbib, mmroff, neqn,
  71. nroff, pfbtops, pic, pic2graph, post-grohtml, pre-grohtml, refer,
  72. soelim, tbl, tfmtodit, and troff</seg>
  73. </seglistitem>
  74. </segmentedlist>
  75. <variablelist>
  76. <bridgehead renderas="sect3">Short Descriptions</bridgehead>
  77. <?dbfo list-presentation="list"?>
  78. <?dbhtml list-presentation="table"?>
  79. <varlistentry id="addftinfo">
  80. <term><command>addftinfo</command></term>
  81. <listitem>
  82. <para>Reads a troff font file and adds some additional font-metric
  83. information that is used by the <command>groff</command> system</para>
  84. <indexterm zone="ch-system-groff addftinfo">
  85. <primary sortas="b-addftinfo">addftinfo</primary>
  86. </indexterm>
  87. </listitem>
  88. </varlistentry>
  89. <varlistentry id="afmtodit">
  90. <term><command>afmtodit</command></term>
  91. <listitem>
  92. <para>Creates a font file for use with <command>groff</command> and
  93. <command>grops</command></para>
  94. <indexterm zone="ch-system-groff afmtodit">
  95. <primary sortas="b-afmtodit">afmtodit</primary>
  96. </indexterm>
  97. </listitem>
  98. </varlistentry>
  99. <varlistentry id="eqn">
  100. <term><command>eqn</command></term>
  101. <listitem>
  102. <para>Compiles descriptions of equations embedded within troff
  103. input files into commands that are understood by
  104. <command>troff</command></para>
  105. <indexterm zone="ch-system-groff eqn">
  106. <primary sortas="b-eqn">eqn</primary>
  107. </indexterm>
  108. </listitem>
  109. </varlistentry>
  110. <varlistentry id="eqn2graph">
  111. <term><command>eqn2graph</command></term>
  112. <listitem>
  113. <para>Converts a troff EQN (equation) into a cropped image</para>
  114. <indexterm zone="ch-system-groff eqn2graph">
  115. <primary sortas="b-eqn2graph">eqn2graph</primary>
  116. </indexterm>
  117. </listitem>
  118. </varlistentry>
  119. <varlistentry id="geqn">
  120. <term><command>geqn</command></term>
  121. <listitem>
  122. <para>A link to <command>eqn</command></para>
  123. <indexterm zone="ch-system-groff geqn">
  124. <primary sortas="b-geqn">geqn</primary>
  125. </indexterm>
  126. </listitem>
  127. </varlistentry>
  128. <varlistentry id="grn">
  129. <term><command>grn</command></term>
  130. <listitem>
  131. <para>A <command>groff</command> preprocessor for gremlin files</para>
  132. <indexterm zone="ch-system-groff grn">
  133. <primary sortas="b-grn">grn</primary>
  134. </indexterm>
  135. </listitem>
  136. </varlistentry>
  137. <varlistentry id="grodvi">
  138. <term><command>grodvi</command></term>
  139. <listitem>
  140. <para>A driver for <command>groff</command> that produces TeX dvi
  141. format</para>
  142. <indexterm zone="ch-system-groff grodvi">
  143. <primary sortas="b-grodvi">grodvi</primary>
  144. </indexterm>
  145. </listitem>
  146. </varlistentry>
  147. <varlistentry id="groff">
  148. <term><command>groff</command></term>
  149. <listitem>
  150. <para>A front-end to the groff document formatting system; normally, it
  151. runs the <command>troff</command> program and a post-processor
  152. appropriate for the selected device</para>
  153. <indexterm zone="ch-system-groff groff">
  154. <primary sortas="b-groff">groff</primary>
  155. </indexterm>
  156. </listitem>
  157. </varlistentry>
  158. <varlistentry id="groffer">
  159. <term><command>groffer</command></term>
  160. <listitem>
  161. <para>Displays groff files and man pages on X and tty terminals</para>
  162. <indexterm zone="ch-system-groff groffer">
  163. <primary sortas="b-groffer">groffer</primary>
  164. </indexterm>
  165. </listitem>
  166. </varlistentry>
  167. <varlistentry id="grog">
  168. <term><command>grog</command></term>
  169. <listitem>
  170. <para>Reads files and guesses which of the <command>groff</command>
  171. options <option>-e</option>, <option>-man</option>, <option>-me</option>,
  172. <option>-mm</option>, <option>-ms</option>, <option>-p</option>,
  173. <option>-s</option>, and <option>-t</option> are required for printing
  174. files, and reports the <command>groff</command> command including those
  175. options</para>
  176. <indexterm zone="ch-system-groff grog">
  177. <primary sortas="b-grog">grog</primary>
  178. </indexterm>
  179. </listitem>
  180. </varlistentry>
  181. <varlistentry id="grolbp">
  182. <term><command>grolbp</command></term>
  183. <listitem>
  184. <para>Is a <command>groff</command> driver for Canon CAPSL printers
  185. (LBP-4 and LBP-8 series laser printers)</para>
  186. <indexterm zone="ch-system-groff grolbp">
  187. <primary sortas="b-grolbp">grolbp</primary>
  188. </indexterm>
  189. </listitem>
  190. </varlistentry>
  191. <varlistentry id="grolj4">
  192. <term><command>grolj4</command></term>
  193. <listitem>
  194. <para>Is a driver for <command>groff</command> that produces output
  195. in PCL5 format suitable for an HP LaserJet 4 printer</para>
  196. <indexterm zone="ch-system-groff grolj4">
  197. <primary sortas="b-grolj4">grolj4</primary>
  198. </indexterm>
  199. </listitem>
  200. </varlistentry>
  201. <varlistentry id="grops">
  202. <term><command>grops</command></term>
  203. <listitem>
  204. <para>Translates the output of GNU <command>troff</command> to
  205. PostScript</para>
  206. <indexterm zone="ch-system-groff grops">
  207. <primary sortas="b-grops">grops</primary>
  208. </indexterm>
  209. </listitem>
  210. </varlistentry>
  211. <varlistentry id="grotty">
  212. <term><command>grotty</command></term>
  213. <listitem>
  214. <para>Translates the output of GNU <command>troff</command> into
  215. a form suitable for typewriter-like devices</para>
  216. <indexterm zone="ch-system-groff grotty">
  217. <primary sortas="b-grotty">grotty</primary>
  218. </indexterm>
  219. </listitem>
  220. </varlistentry>
  221. <varlistentry id="gtbl">
  222. <term><command>gtbl</command></term>
  223. <listitem>
  224. <para>A link to <command>tbl</command></para>
  225. <indexterm zone="ch-system-groff gtbl">
  226. <primary sortas="b-gtbl">gtbl</primary>
  227. </indexterm>
  228. </listitem>
  229. </varlistentry>
  230. <varlistentry id="hpftodit">
  231. <term><command>hpftodit</command></term>
  232. <listitem>
  233. <para>Creates a font file for use with <command>groff -Tlj4</command>
  234. from an HP-tagged font metric file</para>
  235. <indexterm zone="ch-system-groff hpftodit">
  236. <primary sortas="b-hpftodit">hpftodit</primary>
  237. </indexterm>
  238. </listitem>
  239. </varlistentry>
  240. <varlistentry id="indxbib">
  241. <term><command>indxbib</command></term>
  242. <listitem>
  243. <para>Creates an inverted index for the bibliographic databases with a
  244. specified file for use with <command>refer</command>,
  245. <command>lookbib</command>, and <command>lkbib</command></para>
  246. <indexterm zone="ch-system-groff indxbib">
  247. <primary sortas="b-indxbib">indxbib</primary>
  248. </indexterm>
  249. </listitem>
  250. </varlistentry>
  251. <varlistentry id="lkbib">
  252. <term><command>lkbib</command></term>
  253. <listitem>
  254. <para>Searches bibliographic databases for references that contain
  255. specified keys and reports any references found</para>
  256. <indexterm zone="ch-system-groff lkbib">
  257. <primary sortas="b-lkbib">lkbib</primary>
  258. </indexterm>
  259. </listitem>
  260. </varlistentry>
  261. <varlistentry id="lookbib">
  262. <term><command>lookbib</command></term>
  263. <listitem>
  264. <para>Prints a prompt on the standard error (unless the standard input
  265. is not a terminal), reads a line containing a set of keywords from the
  266. standard input, searches the bibliographic databases in a specified file
  267. for references containing those keywords, prints any references found
  268. on the standard output, and repeats this process until the end of
  269. input</para>
  270. <indexterm zone="ch-system-groff lookbib">
  271. <primary sortas="b-lookbib">lookbib</primary>
  272. </indexterm>
  273. </listitem>
  274. </varlistentry>
  275. <varlistentry id="mmroff">
  276. <term><command>mmroff</command></term>
  277. <listitem>
  278. <para>A simple preprocessor for <command>groff</command></para>
  279. <indexterm zone="ch-system-groff mmroff">
  280. <primary sortas="b-mmroff">mmroff</primary>
  281. </indexterm>
  282. </listitem>
  283. </varlistentry>
  284. <varlistentry id="neqn">
  285. <term><command>neqn</command></term>
  286. <listitem>
  287. <para>Formats equations for American Standard Code for Information
  288. Interchange (ASCII) output</para>
  289. <indexterm zone="ch-system-groff neqn">
  290. <primary sortas="b-neqn">neqn</primary>
  291. </indexterm>
  292. </listitem>
  293. </varlistentry>
  294. <varlistentry id="nroff">
  295. <term><command>nroff</command></term>
  296. <listitem>
  297. <para>A script that emulates the <command>nroff</command> command
  298. using <command>groff</command></para>
  299. <indexterm zone="ch-system-groff nroff">
  300. <primary sortas="b-nroff">nroff</primary>
  301. </indexterm>
  302. </listitem>
  303. </varlistentry>
  304. <varlistentry id="pfbtops">
  305. <term><command>pfbtops</command></term>
  306. <listitem>
  307. <para>Translates a PostScript font in <filename
  308. class="extension">.pfb</filename> format to ASCII</para>
  309. <indexterm zone="ch-system-groff pfbtops">
  310. <primary sortas="b-pfbtops">pfbtops</primary>
  311. </indexterm>
  312. </listitem>
  313. </varlistentry>
  314. <varlistentry id="pic">
  315. <term><command>pic</command></term>
  316. <listitem>
  317. <para>Compiles descriptions of pictures embedded within troff or
  318. TeX input files into commands understood by TeX or
  319. <command>troff</command></para>
  320. <indexterm zone="ch-system-groff pic">
  321. <primary sortas="b-pic">pic</primary>
  322. </indexterm>
  323. </listitem>
  324. </varlistentry>
  325. <varlistentry id="pic2graph">
  326. <term><command>pic2graph</command></term>
  327. <listitem>
  328. <para>Converts a PIC diagram into a cropped image</para>
  329. <indexterm zone="ch-system-groff pic2graph">
  330. <primary sortas="b-pic2graph">pic2graph</primary>
  331. </indexterm>
  332. </listitem>
  333. </varlistentry>
  334. <varlistentry id="post-grohtml">
  335. <term><command>post-grohtml</command></term>
  336. <listitem>
  337. <para>Translates the output of GNU <command>troff</command> to
  338. HTML</para>
  339. <indexterm zone="ch-system-groff post-grohtml">
  340. <primary sortas="b-post-grohtml">post-grohtml</primary>
  341. </indexterm>
  342. </listitem>
  343. </varlistentry>
  344. <varlistentry id="pre-grohtml">
  345. <term><command>pre-grohtml </command></term>
  346. <listitem>
  347. <para>Translates the output of GNU <command>troff</command> to
  348. HTML</para>
  349. <indexterm zone="ch-system-groff pre-grohtml">
  350. <primary sortas="b-pre-grohtml">pre-grohtml</primary>
  351. </indexterm>
  352. </listitem>
  353. </varlistentry>
  354. <varlistentry id="refer">
  355. <term><command>refer</command></term>
  356. <listitem>
  357. <para>Copies the contents of a file to the standard output, except
  358. that lines between <emphasis>.[</emphasis> and <emphasis>.]</emphasis>
  359. are interpreted as citations, and lines between <emphasis>.R1</emphasis>
  360. and <emphasis>.R2</emphasis> are interpreted as commands for how
  361. citations are to be processed</para>
  362. <indexterm zone="ch-system-groff refer">
  363. <primary sortas="b-refer">refer</primary>
  364. </indexterm>
  365. </listitem>
  366. </varlistentry>
  367. <varlistentry id="soelim">
  368. <term><command>soelim</command></term>
  369. <listitem>
  370. <para>Reads files and replaces lines of the form <emphasis>.so
  371. file</emphasis> by the contents of the mentioned
  372. <emphasis>file</emphasis></para>
  373. <indexterm zone="ch-system-groff soelim">
  374. <primary sortas="b-soelim">soelim</primary>
  375. </indexterm>
  376. </listitem>
  377. </varlistentry>
  378. <varlistentry id="tbl">
  379. <term><command>tbl</command></term>
  380. <listitem>
  381. <para>Compiles descriptions of tables embedded within troff input
  382. files into commands that are understood by
  383. <command>troff</command></para>
  384. <indexterm zone="ch-system-groff tbl">
  385. <primary sortas="b-tbl">tbl</primary>
  386. </indexterm>
  387. </listitem>
  388. </varlistentry>
  389. <varlistentry id="tfmtodit">
  390. <term><command>tfmtodit</command></term>
  391. <listitem>
  392. <para>Creates a font file for use with <command>groff
  393. -Tdvi</command></para>
  394. <indexterm zone="ch-system-groff tfmtodit">
  395. <primary sortas="b-tfmtodit">tfmtodit</primary>
  396. </indexterm>
  397. </listitem>
  398. </varlistentry>
  399. <varlistentry id="troff">
  400. <term><command>troff</command></term>
  401. <listitem>
  402. <para>Is highly compatible with Unix <command>troff</command>; it
  403. should usually be invoked using the <command>groff</command> command,
  404. which will also run preprocessors and post-processors in the
  405. appropriate order and with the appropriate options</para>
  406. <indexterm zone="ch-system-groff troff">
  407. <primary sortas="b-troff">troff</primary>
  408. </indexterm>
  409. </listitem>
  410. </varlistentry>
  411. </variablelist>
  412. </sect2>
  413. </sect1>