Groff Cheatsheet
The helpful GNU troff cheatsheet along with examples.
Index
General
| Command |
Functionality |
| .RP [no] |
Prints cover page on its own. Can be avoided with .RP no |
| .TL |
Title of the document |
| .AU |
Author Name |
| .AI |
Author Institution |
| .AB [no] and .AE block |
Abstract beginning and end blocks. .AB no ensures the abstract keyword is silenced |
| .DA [XXX] |
Current date on title page and footers |
| .ND [XXX] |
Current date only on the title page |
| .1C |
1 columned layout |
| .2C |
2 columned layout |
| .MC [WIDTH[GUTTER]] |
Multiple column layout (by default 2 with no args) |
| .XS page_num and .XE |
Table of contents block |
| .XA page_num |
Entry in the table of contents block |
| .PX |
Print a manually-generated table of contents without resetting the page number. |
Text Formatting
| Command |
Functionality |
| .B |
Bold |
| .I |
Italics |
| .BI |
Bold and Italics |
| .P1 |
Prints the header on page 1. The default is to suppress the header. |
| .BX |
Box |
| .UL |
Underline |
| .LG |
Prints all text following in larger type (2 points larger than the current point size) |
| .SM |
Prints all text following in smaller type (2 points smaller than the current point size) |
| .NL |
Prints all text following in the normal point size |
| .R |
Sets its first argument in roman (or regular) type. It operates similarly to the B macro otherwise. |
| .CW |
Sets its first argument in italic type. It operates similarly to the B macro otherwise. |
| Command |
Functionality |
| .PP |
Standard paragraph |
| .QP |
Quoted paragraph |
| .XP |
The XP macro produces an exdented paragraph. The first line of the paragraph begins at the left margin, and subsequent lines are indented (the opposite of PP). |
| .RS and .RE |
Start and end a section of indented text, respectively. The PI register controls the amount of indent. |
| .IP |
List points. Use .IP \(bu [width] for bullet points with given width. Use .IP [number] for numbered points. |
| .TA |
Tabbing |
Headings
| Command |
Functionality |
| .NH xxx |
Numbered heading where numbers specify levels of depth |
| .SH xxx |
Section heading (un-numbered) |
| .LH |
Left header |
| .CH |
Center header |
| .RH |
Right header |
| .LF |
Left footer |
| .CF |
Center footer |
| .RF |
Right footer |
| .OH |
Headers for odd pages. eg: .OH 'left'center'right' |
| .EH |
Headers for even pages. |
Pre Processing
| Command |
Functionality |
| .TS [H] and .TE |
Denotes a table, to be processed by the tbl preprocessor. The optional H argument instructs groff to create a running header with the information up to the TH macro. |
| .PS and .PE |
Denotes a graphic, to be processed by the pic preprocessor. You can create a pic file by hand, using the AT&T pic manual available on the Web as a reference, or by using a graphics program such as xfig. |
| .EQ [align] and .EN |
Denotes an equation, to be processed by the eqn preprocessor. The optional align argument can be C, L, or I to center (the default), left-justify, or indent the equation. |
| .[ and .] |
References and citations block, to be processed by the refer preprocessor. |
Custom Macros
| Command |
Functionality |
| .de and .. |
You can define macros between this block. They can then be sourced by the same file as well as other files |
| .so filename |
Source macros from filename |
Graphics
| Command |
Functionality |
| .PSPIC -[L/R/C/I n] [width[Height]] filename.eps |
Insert a post script image into groff. |
| .PDFPIC -[L/R/C/I n] [width[Height]] filename.eps |
Insert a PDF image into groff. |
Configuring Paper Size
You can configure your virtual paper size using groff postprocessor that is built in. -P is used to pass in arguments to the posst processor:
groff -Tpdf -P-pa4 -P-l -ms file.ms > file.pdf
The command above takes an A4 sized virtual paper in landscape mode. Other valid formats are A, B, D sized papers along with letters, statements, ledgers and tabloids. Full reference is available in the DESC section of the groff_font man page.