.\"$Id: pp.man,v 1.47 1995/01/16 09:32:19 rl Rel $ .TH PP 1 "$Date: 1995/01/16 09:32:19 $" "$Revision: 1.47 $" .\" .\" pp - pretty printer .\" .\" Author: .\" Author: .\" Dr. Zvi Har'El, לארה יבצ ר"ד .\" Department of Mathematics, הקיטמתמל הטלוקפה .\" Technion, Israel Institute of Technology, ל"טמ - ןוינכטה .\" Haifa 32000, Israel. לארשי ,32000 הפיח .\" E-Mail: rl@math.technion.ac.il .\" .SH NAME pp \- pretty printer .SH SYNOPSIS .B pp .RB [ \-a ] .RB [ \-d ] .RB [ \-k ] .RB [ \-x ] .RB [ \-2 ] .RB [ \-f\fIF ] .RB [ \-h\fIF ] .RB [ \-n\fIN ] .RB [ \-s\fIN ] .RB [ \-t\fIN ] .RB [ \-o\fIN ] .RB [ \-w\fIN ] .RB [ \-T\fIdevice ] .RB [ \-.\fIrequest ] .I file \&... .SH DESCRIPTION .I Pp formats one or more .IR file s for printing. If .I file is .B \- or no .I file is specified, standard input is formatted. Empty files are silently ignored. .PP The printout is separated into pages, headed by the name of the .IR file , and footed by the date and the page number. .I C keywords are emboldened, and comments are italicized. Furthermore, declared .I C function names are displayed on the right margin in bold italics, and appear in the sub-header if the function continues to a second page. The bell (Ctrl-G) character is printed as a bullet. The backspace (Ctrl-H) character is interpreted as an overstrike. Other non-printable characters cause an error and the printout is discarded. .PP The options, which may appear in any order and, unless toggled or changed, apply to all following .IR files , are: .PP .TP .B \-a Replace .I C composite operators by a single character, e.g., replace `\->' by an arrow. .TP .B \-d Use current date instead of the default file modification time. .TP .B \-k Keep long lines, instead of breaking them at a word boundary. .TP .B \-x Format ordinary text, without interpreting .I C constructs. .TP .B \-2 Format two-sided pages. .TP .BI \-f F Use the font family .IR F . The following families may be specified: .B A .ft AR (AvantGarde), .B BM .ie \n(.g .ft BMR .el .ft KR (Bookman), .B C .ie \n(.g .ft CR .el .ft CW (Courier), .B H .ie \n(.g .ft HR .el .ft H (Helvetica), .B HN .ie \n(.g .ft HNR .el .ft Hr (Helvetica-Narrow), .B N .ft NR (NewCenturySchlbk), .B P .ie \n(.g .ft PR .el .ft PA (Palatino) .ft R and .B T (Times, the default). .TP .BI \-h F Use the Hebrew font .I F for printing characters in the range 224-250 (ISO-8859-8 encoding of Hebrew letters). The constant width font .B OldJaffaCW is recommended as a best match to the Courier font family. By default, these characters are printed in the current font. .TP .BI \-n N Number every .IR N th line. .TP .BI \-s N Set type size to .I N points, vertical spacing to .IR N /60 inch, and tab stops every .IR N /20 inch. .TP .BI \-t N Set tab stops every .I N digit widths. .TP .BI \-o N Offset left margin by .I N digit widths. .TP .BI \-w N Set the page width to .I N digit widths. .TP .BI \-T device Prepare output for .IR device . Last setting overrides previous and applies to all .IR file s. If .I device is .BR \- , .I troff text is written on standard output. .TP .BI \-. request Issue a .I troff request before formatting the next .IR file . For example, use .B "\-.ls\e 2" to get doubly spaced output. .PP Options may be preset by defining the environment variable .IR PPOPT , with embedded white space quoted (by a \e). The default name for .I troff may be changed by defining the environment variable .IR PPROFF . .PP .SH BUGS A .I C function is assumed to start at column one with an identifier followed by optional white space and a left parentheses, and to terminate at column one with a right brace. .PP .SH AVAILABILITY .I pp and the Hebrew .I groff fonts are available by anonymous ftp from .I gauss.technion.ac.il (132.58.115.2). .PP .SH AUTHOR .nf Dr. Zvi Har'El, Department of Mathematics, Technion - Israel Institute of Technology, Haifa 32000, Israel. E-Mail: rl@math.technion.ac.il