Commit | Line | Data |
---|---|---|
e659a7a0 KB |
1 | .\" Copyright (c) 1989 The Regents of the University of California. |
2 | .\" All rights reserved. | |
9c6b803e | 3 | .\" |
e659a7a0 KB |
4 | .\" This code is derived from software contributed to Berkeley by |
5 | .\" Robert Corbett. | |
6 | .\" | |
7 | .\" Redistribution and use in source and binary forms are permitted | |
8 | .\" provided that the above copyright notice and this paragraph are | |
9 | .\" duplicated in all such forms and that any documentation, | |
10 | .\" advertising materials, and other materials related to such | |
11 | .\" distribution and use acknowledge that the software was developed | |
12 | .\" by the University of California, Berkeley. The name of the | |
13 | .\" University may not be used to endorse or promote products derived | |
14 | .\" from this software without specific prior written permission. | |
15 | .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR | |
16 | .\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED | |
17 | .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | |
18 | .\" | |
b5dc1377 | 19 | .\" @(#)fpr.1 6.4 (Berkeley) %G% |
9c6b803e | 20 | .\" |
b62c4e46 | 21 | .TH FPR 1 "" |
9c6b803e KM |
22 | .UC 5 |
23 | .ds f. fpr.tbl | |
24 | .SH NAME | |
25 | fpr \- print Fortran file | |
26 | .SH SYNOPSIS | |
27 | .B fpr | |
28 | .SH DESCRIPTION | |
29 | .I Fpr | |
30 | is a filter that transforms files formatted according to | |
31 | Fortran's carriage control conventions into files formatted | |
32 | according to UNIX line printer conventions. | |
33 | .PP | |
34 | .I Fpr | |
35 | copies its input onto its output, replacing the carriage | |
36 | control characters with characters that will produce the intended | |
37 | effects when printed using | |
38 | .IR lpr (1). | |
39 | The first character of each line determines the vertical spacing as follows: | |
40 | ||
41 | .if t \{\ | |
42 | .\" tbl input for vertical spacing table | |
43 | .\" .TS | |
44 | .\" center box; | |
45 | .\" c | l. | |
46 | .\" Character Vertical Space Before Printing | |
47 | .\" _ | |
48 | .\" Blank One line | |
49 | .\" 0 Two lines | |
50 | .\" 1 To first line of next page | |
51 | .\" + No advance | |
52 | .\" .TE | |
53 | .\" end of tbl input for vertical spacing table | |
54 | .\" tbl output for vertical spacing table | |
55 | .TS | |
56 | .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 | |
57 | .de 35 | |
58 | .ps \n(.s | |
59 | .vs \n(.vu | |
60 | .in \n(.iu | |
61 | .if \n(.u .fi | |
62 | .if \n(.j .ad | |
63 | .if \n(.j=0 .na | |
64 | .. | |
65 | .nf | |
66 | .nr #~ 0 | |
67 | .if n .nr #~ 0.6n | |
68 | .ds #d .d | |
69 | .if \(ts\n(.z\(ts\(ts .ds #d nl | |
70 | .fc | |
71 | .nr 33 \n(.s | |
72 | .rm 80 81 | |
73 | .nr 80 0 | |
74 | .nr 38 \w\ 2Character\ 2 | |
75 | .if \n(80<\n(38 .nr 80 \n(38 | |
76 | .nr 38 \w\ 2Blank\ 2 | |
77 | .if \n(80<\n(38 .nr 80 \n(38 | |
78 | .nr 38 \w\ 20\ 2 | |
79 | .if \n(80<\n(38 .nr 80 \n(38 | |
80 | .nr 38 \w\ 21\ 2 | |
81 | .if \n(80<\n(38 .nr 80 \n(38 | |
82 | .nr 38 \w\ 2+\ 2 | |
83 | .if \n(80<\n(38 .nr 80 \n(38 | |
84 | .80 | |
85 | .rm 80 | |
86 | .nr 81 0 | |
87 | .nr 38 \w\ 2Vertical Space Before Printing\ 2 | |
88 | .if \n(81<\n(38 .nr 81 \n(38 | |
89 | .nr 38 \w\ 2One line\ 2 | |
90 | .if \n(81<\n(38 .nr 81 \n(38 | |
91 | .nr 38 \w\ 2Two lines\ 2 | |
92 | .if \n(81<\n(38 .nr 81 \n(38 | |
93 | .nr 38 \w\ 2To first line of next page\ 2 | |
94 | .if \n(81<\n(38 .nr 81 \n(38 | |
95 | .nr 38 \w\ 2No advance\ 2 | |
96 | .if \n(81<\n(38 .nr 81 \n(38 | |
97 | .81 | |
98 | .rm 81 | |
99 | .nr 38 1n | |
100 | .nr 79 0 | |
101 | .nr 40 \n(79+(1*\n(38) | |
102 | .nr 80 +\n(40 | |
103 | .nr 41 \n(80+(3*\n(38) | |
104 | .nr 81 +\n(41 | |
105 | .nr TW \n(81 | |
106 | .nr TW +1*\n(38 | |
107 | .if t .if (\n(TW+\n(.o)>7.65i .tm Table at line 45 file fpr.tbl is too wide - \n(TW units | |
108 | .ne 5v+2p | |
109 | .nr #I \n(.i | |
110 | .in +(\n(.lu-\n(TWu-\n(.iu)/2u | |
111 | .fc \ 2 \ 3 | |
112 | .nr #T 0-1 | |
113 | .nr #a 0-1 | |
114 | .nr #a 0-1 | |
115 | .eo | |
116 | .de T# | |
117 | .ds #d .d | |
118 | .if \(ts\n(.z\(ts\(ts .ds #d nl | |
119 | .mk ## | |
120 | .nr ## -1v | |
121 | .ls 1 | |
122 | .if \n(#T>=0 .nr #a \n(#T | |
123 | .if \n(T. .vs \n(.vu-\n(.sp | |
124 | .if \n(T. \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0 | |
125 | .if \n(T. .vs | |
126 | .if \n(#a>=0 .sp -1 | |
127 | .if \n(#a>=0 \h'|0'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu' | |
128 | .if \n(#a>=0 .sp -1 | |
129 | .if \n(#a>=0 \h'(|\n(41u+|\n(80u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu' | |
130 | .if \n(#a>=0 .sp -1 | |
131 | .if \n(#a>=0 \h'|\n(TWu'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v' | |
132 | .ls | |
133 | .. | |
134 | .ec | |
135 | .nr 36 \n(.v | |
136 | .vs \n(.vu-\n(.sp | |
137 | \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0 | |
138 | .vs \n(36u | |
139 | .mk #a | |
140 | .ta \n(80u \n(81u | |
141 | .nr 31 \n(.f | |
142 | .nr 35 1m | |
143 | \&\h'|\n(40u'\ 2\ 3Character\ 3\ 2\h'|\n(41u'\ 2Vertical Space Before Printing\ 3\ 2 | |
144 | .nr 36 \n(.v | |
145 | .vs \n(.vu-\n(.sp | |
146 | \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0 | |
147 | .vs \n(36u | |
148 | .ta \n(80u \n(81u | |
149 | .nr 31 \n(.f | |
150 | .nr 35 1m | |
151 | \&\h'|\n(40u'\ 2\ 3Blank\ 3\ 2\h'|\n(41u'\ 2One line\ 3\ 2 | |
152 | .ta \n(80u \n(81u | |
153 | .nr 31 \n(.f | |
154 | .nr 35 1m | |
155 | \&\h'|\n(40u'\ 2\ 30\ 3\ 2\h'|\n(41u'\ 2Two lines\ 3\ 2 | |
156 | .ta \n(80u \n(81u | |
157 | .nr 31 \n(.f | |
158 | .nr 35 1m | |
159 | \&\h'|\n(40u'\ 2\ 31\ 3\ 2\h'|\n(41u'\ 2To first line of next page\ 3\ 2 | |
160 | .ta \n(80u \n(81u | |
161 | .nr 31 \n(.f | |
162 | .nr 35 1m | |
163 | \&\h'|\n(40u'\ 2\ 3+\ 3\ 2\h'|\n(41u'\ 2No advance\ 3\ 2 | |
164 | .fc | |
165 | .nr T. 1 | |
166 | .T# 1 | |
167 | .in \n(#Iu | |
168 | .35 | |
169 | .nr #a 0 | |
170 | .TE | |
171 | .if \n-(b.=0 .nr c. \n(.c-\n(d.-9 | |
172 | .\" end of tbl output for vertical spacing table | |
173 | .\} | |
174 | .if n \{\ | |
175 | .nf | |
176 | +---------------+--------------------------------+ | |
177 | | Character | Vertical Space Before Printing | | |
178 | |---------------+--------------------------------| | |
179 | | Blank | One line | | |
180 | | 0 | Two lines | | |
181 | | 1 | To first line of next page | | |
182 | | + | No advance | | |
183 | +---------------+--------------------------------+ | |
184 | .fi | |
185 | .\} | |
186 | ||
187 | .PP | |
188 | A blank line is treated as if its first | |
189 | character is a blank. A blank that appears as a carriage control | |
190 | character is deleted. A zero is changed to a newline. A one is | |
191 | changed to a form feed. The effects of a "+" are simulated using | |
192 | backspaces. | |
193 | .SH EXAMPLES | |
194 | a.out | fpr | lpr | |
195 | .PP | |
196 | fpr < f77.output | lpr | |
9c6b803e KM |
197 | .SH BUGS |
198 | Results are undefined for input lines longer than 170 characters. |