*** ./ansi.h.orig	Tue Jan  9 19:16:35 1996
--- ./ansi.h	Sat Jun 14 22:38:37 1997
***************
*** 56,62 ****
    PRIN,				/* Printer mode */
    PRINESC,			/* ESC seen in printer mode */
    PRINCSI,			/* CSI seen in printer mode */
!   PRIN4				/* CSI 4 seen in printer mode */
  };
  
  enum string_t 
--- 56,65 ----
    PRIN,				/* Printer mode */
    PRINESC,			/* ESC seen in printer mode */
    PRINCSI,			/* CSI seen in printer mode */
!   PRIN4,			/* CSI 4 seen in printer mode */
!   TEK,				/* Tektronix mode */
!   TEKESC,			/* Tektronix escape */
!   TEKEND			/* Tektronix ending sequence */
  };
  
  enum string_t 
*** ./ansi.c.orig	Thu May  1 17:33:31 1997
--- ./ansi.c	Sat Jun 14 22:38:37 1997
***************
*** 813,818 ****
--- 813,823 ----
  	    case 'k':
  	      StartString(AKA);
  	      break;
+ 	    case '\014':
+ 	      curr->w_state = TEK;
+ 	      RAW_PUTCHAR('\033');
+ 	      RAW_PUTCHAR(c);
+ 	      break;
  	    default:
  	      if (Special(c))
  	        {
***************
*** 876,881 ****
--- 881,907 ----
  		  goto tryagain;
  		}
  	    }
+ 	  break;
+ 	case TEK:
+ 	  switch (c)
+ 	    {
+ 	    case '@':
+ 	      if ((unsigned char)*(buf - 2) == ' ') /* XXX: Yucc! */
+ 		curr->w_state = TEKESC;
+ 	      /* FALLTHROUGH */
+ 	    default:
+ 	      RAW_PUTCHAR(c);
+ 	      break;
+ 	    }
+ 	  break;
+ 	case TEKESC:
+ 	  curr->w_state = (c == '\037') ? TEKEND : TEK;
+ 	  RAW_PUTCHAR(c);
+ 	  break;
+ 	case TEKEND:
+ 	  if (c == '\030')
+ 	    curr->w_state = LIT;
+ 	  RAW_PUTCHAR(c);
  	  break;
  	case LIT:
  	default:
