[GNU Tools for Printed Media]

GNU roff (groff) — a GNU project


Table of Contents

If you would like to contribute to groff, please have a look at its mission statement, or send a mail to the list groff@gnu.org.

Please note that contributing to this package requires assigning copyright to the FSF.


Introduction

groff (GNU roff) is a typesetting system that reads plain text input that includes formatting commands to produce output in PostScript, PDF, HTML, or DVI formats or for display to a terminal. Formatting commands can be low-level typesetting primitives, macros from a supplied package, or user-defined macros. All three approaches can be combined.

A reimplementation and extension of troff and other programs from AT&T Unix, groff is widely available on POSIX and other systems owing to its long association with Unix manuals, including man pages. It and its predecessor have produced several best-selling software engineering texts. groff can create typographically sophisticated documents while consuming minimal system resources.

groff is distributed under the GNU General Public License.

Maintainer: G. Branden Robinson
Maintainer Emeritus: Bertrand Garrigues
Maintainer Emeritus: Werner Lemberg

Mission Statement

If you would like to contribute to groff, or are interested to know where groff is headed, have a look at its mission statement.

Examples of groff usage with the mom macro package can be found in groff-mission-statement.mom, mission-statement-style.mom and mission-statement-strings.mom, which were used to generate the PDF version.

Downloading groff

Source code releases of groff are available at the GNU software host (mirrors). The current version is 1.23.0 (05-Jul-2023). Release candidate archives for the next version may also be available from the GNU alpha site. We greatly appreciate feedback on these when they are newer than the most recent release. Read the INSTALL.extra file within for build requirements and instructions.

To participate in groff development, clone its Git repository. Read the INSTALL.extra and INSTALL.REPO files within for build requirements and instructions.

To view the contents of the repository in your browser, use Savannah's cgit interface. You can view any commit in isolation, and browse the entire source tree corresponding to its state as of that commit. Click the summary line of the commit message to expose these options.

Platform Source and Binary Packages

Most GNU/Linux distributions offer groff as source and binary packages, and often it is already installed with the base system, at least in part. Many subdivide the groff installation, usually based on run-time dependencies, debugging symbol information, or by separating the documentation. In addition to groff, look for packages with names like groff-dbg, groff-doc, or groff-full.

Documentation

Installing groff will also place its documentation on your system.

  • groff --help
    summarizes options and operands. Most commands installed by groff recognize this option.
  • man groff
    offers an overview of the system and a guide to further documentation. groff installs about five dozen man pages that describe every aspect of the system. We have collected these in our manuals directory.
  • info groff
    presents a book-length manual documenting the language of the formatter in detail, with many examples. You can also read this groff manual online.
  • Groff and mom: an overview
    contains a useful summary of basic groff concepts and workflow.
  • A research paper on the development of grohtml is also available.

The source distribution also contains README and MANIFEST files you should consult. Distributors often supply these in binary packages as well, installed in locations like /usr/share/doc/groff/.

Mailing Lists

groff has three mailing lists dedicated to it.

To subscribe to one of these groff mailing lists, visit the corresponding web page.

Alternatively, send an empty mail with a Subject: header line of subscribe to the relevant xxx-request list. For example, to subscribe yourself to the main groff discussion list, you would send mail to <groff-request@gnu.org> with no body and a Subject: header line of only subscribe.

Archives of these lists can be found at the following locations.

Bug Reports

Please report bugs using the bug tracker linked from the groff project page. Alternatively, but less preferably, you can use the form in the text file BUG-REPORT distributed with the groff source code; its purpose is to make sure that we have all the information we need to fix the bug. At the very least, read BUG-REPORT and make sure that you supply all the information that it asks for. Even if you are not sure that something is a bug, report it using BUG-REPORT: this will help us determine whether it really is a bug or not.

Return to the GNU Project home page.

Please send FSF & GNU inquiries to gnu@gnu.org. There are also other ways to contact the FSF.

Please send broken links and other corrections (or suggestions) to sinuhe@gnu.org.

Please see the Translations README for information on coordinating and submitting translations of this article.

©1996-1999, 2001, 2003-2014, 2022 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110, USA

Verbatim copying and distribution of this entire article are permitted worldwide, without royalty, in any medium, provided this notice, and the copyright notice, are preserved.

Updated: 2024年11月13日 Authors: wl, ps, bg, gbranden

AltStyle によって変換されたページ (->オリジナル) /