P - display text with pagination and tab escape.

Syntax:

p [options]* file*
(+|-)Ansiterminal (-)    (+|-)ASciiSubset (-)
(+|-)Tabs (+)            Tabs=number[,number]* (4)
(+|-)Fred (-)            Lineskip=number (0)
(+|-)FormFeed (-)        PageSkip=number (0)
(+|-)Raw (-)             Fileskip=number (0)
+FortranSlew             Pagelength=number
lineWidth=number (79)    Tabs=Gmap

Options:

+Ansiterminal
lets P use ANSI terminal escape sequences to speed up the display of text.
+ASciiSubset
translates some ASCII characters into escape sequences for printing. This is for older "TTY" type terminals that did not support the full ASCII character set.
Fileskip=number
skips "number" end-of-file marks in "file" before beginning to print.
+Fred
translates FRED escape characters into recognizable format. For example, the FRED "\F" character is octal 034. With +Fred, P displays the character as "\F"; without +Fred, P displays the character in its octal format.
+FormFeed
pauses on formfeed characters.
+FortranSlew
interprets ANSI Fortran control characters in the first character position of each line.
Lineskip=number
skips "number" lines of "file" before beginning to display.
lineWidth=number
folds lines longer than "number" characters after the number'th character. lineWidth=0 tells P not to fold long lines. The default value is 79.
Pagelength=number
displays "number" lines before pausing. The default is your terminal pagination; if you have not set such a pagination value, the default is 18. You can turn off paging with Pagelength=0.
PageSkip=number
reads through "file" and begins displaying text after "number" formfeed characters. This is equivalent to skipping "number" pages if your pages end with formfeeds. PageSkip= is NOT related to the Pagelength= parameter.
+Raw
stops special processing of characters; all characters are simply sent to the terminal "as is".
Tabs=n1,n2,n3
sets tab stops at positions n1,n2,n3,... Tab stops beyond the last specified one are set by taking the difference between the last two tab positions and using that interval for all later tab stops. For example,
tabs=8,16,24,30,35

sets tabs at 8, 16, 24, 30, 35, 40, 45, and so on. If you only specify one number, as in Tabs=N, P sets every N positions. By default, tabs are set every four positions.

Tabs=Gmap
is equivalent to Tabs=8,16,32,72.
-Tabs
outputs tabs as the escape sequence "\ " instead of expanding the tabs to appropriate tab stop positions. However, if +Raw is in effect, ASCII tab characters are transmitted instead of the "\ " escape sequence.

Examples:

p myfile
pauses at terminal pagination or 18 lines (default)
p l=20 afile
starts printing at line 20
p l=32 p=999
starts at line 32, pauses every 999 lines
p
prints *src
p <afile
"afile" is read as the standard input
p ps=3 file
start printing at the 3rd page of a TFed document.

Description:

P displays the contents of a file on the terminal. When P reaches the end of a page (a formfeed character if +Formfeed is in effect, or the given pagelength), P outputs a linefeed, then pauses. When displaying a number of files consecutively, P also pauses at the end of each file.

If you specify PageSkip=, P ignores any given page length while skipping and only uses formfeed characters to determine when a page ends.

When you're displaying more than one file, identifier headings are displayed at the beginning of each file.

All options act globally and may be placed anywhere on the command line.

As P types the file, it translates characters according to the following table (unless in raw mode). What you get depends on what kind of terminal you are using.

                   TTY             TTY
                   (+AScii)     (default)
Tab                \<blank>      \<blank>
Formfeed           \014           \014
Open brace          \(              {
Close brace         \)              }
Or bar              \!              |
Accent Grave        \_              `
Strange ASCII       \nnn           \nnn

The escape sequence for the tab character is used only if -Tabs is in effect.

Copyright © 1996, Thinkage Ltd.