[comp.os.minix] clr

tholm@uvicctr.UUCP (Terrence W. Holm) (05/18/88)

EFTH Minix report #11  - May 1988 -  clr(1) with termcap


This is a modification of clr(1) with termcap capabilities.
The program is verbose so that Minix users can see how
to use termcap(3).


echo x - clr.c
gres '^X' '' > clr.c << '/'
X/* clr - clear the screen		Author: Andy Tanenbaum */
X
X/* Changed for termcap.       1988-Apr-2          efth         */
X
X
X#include <stdio.h>
X
X#define  TC_BUFFER  1024	/* Size of termcap(3) buffer	*/
X
X
Xchar *getenv();
Xchar *tgetstr();
Xint   Putchar();
X
X
Xmain()
X  {
X  char *term;
X  char  buffer[ TC_BUFFER ];
X  char  clear[ 30 ];
X  char *p = &clear[0];
X
X  if ( (term = getenv( "TERM" )) == NULL )
X    Error( "$TERM not defined" );
X
X  if ( tgetent( buffer, term ) != 1 )
X    Error( "No termcap definition for $TERM" );
X
X  if ( (tgetstr( "cl", &p )) == NULL )
X    Error( "No clear (cl) entry for $TERM" );
X
X  /*  Clear the screen  */
X
X  tputs( clear, 1, Putchar );
X
X  exit(0);
X  }
X
X
X
XError( str )
X  char *str;
X
X  {
X  fprintf( stderr, "clr: %s\n", str );
X  exit( 1 );
X  }
X
X
X
XPutchar( c )
X  char  c;
X
X  {
X  putchar( c );
X  }
X
/
--------------------------------------------------------------------
               Edwin L. Froese
                  (in London for the month)

               Terrence W. Holm
                  {uw-beaver,ubc-cs}!uvicctr!sirius!tholm