* Copyright (c) 1980 The Regents of the University of California.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
"@(#) Copyright (c) 1980 The Regents of the University of California.\n\
static char sccsid
[] = "@(#)colcrt.c 5.4 (Berkeley) 6/1/90";
* colcrt - replaces col for crts with new nroff esp. when using tbl.
* Bill Joy UCB July 14, 1977
* This filter uses a screen buffer, 267 half-lines by 132 columns.
* It interprets the up and down sequences generated by the new
* nroff when used with tbl and by \u \d and \r.
* General overstriking doesn't work correctly.
* Underlining is split onto multiple lines, etc.
* Option - suppresses all underlining.
* Option -2 forces printing of all half lines.
while (argc
> 0 && argv
[0][0] == '-') {
printf("usage: %s [ - ] [ -2 ] [ file ... ]\n", progname
);
if (!(f
= fopen(argv
[0], "r"))) {
cp
= &page
[outline
][outcol
];
for (cp
--; cp
>= dp
&& *cp
== 0; cp
--)
if (plus(c
, *cp
) || plus(*cp
, c
))
else if (*cp
== ' ' || *cp
== 0)
return (c
== '|' && d
== '-' || d
== '_');
for (i
= first
| 1; i
< l
; i
++) {
for (i
= first
; i
< l
; i
++) {
if (printall
== 0 && lastomit
== 0 && *cp
== 0) {
bcopy(page
[ol
], page
, (267 - ol
) * 132);
bzero(page
[267- ol
], ol
* 132);
for (cp
= page
[l
], dp
= page
[m
]; *cp
; cp
++, dp
++) {
if (*dp
!= ' ' && *dp
!= '|' && *dp
!= 0)
for (cp
= page
[l
], dp
= page
[m
]; *cp
; cp
++, dp
++)