rem: printf("\n%s%s%s%s", q->capclr_hdr, q->columnhdr, Caps_off, Cap_clr_eol);
add: PUTP("\n%s%s%s%s", q->capclr_hdr, q->columnhdr, Caps_off, Cap_clr_eol);
context: static void do_window (proc_t **ppt, WIN_t *q, int *lscr){#ifdef SORT_SUPRESS   /* the 1 flag that DOES and 2 flags that MAY impact our proc table qsort */#define srtMASK  ~( Qsrt_NORMAL | Show_CMDLIN | Show_CTIMES )   static PFLG_t sav_indx = 0;   static int    sav_flgs = -1;#endif   int i, lwin;      /*       ** Display Column Headings -- and distract 'em while we sort (maybe) */   printf("\n%s%s%s%s", q->capclr_hdr, q->columnhdr, Caps_off, Cap_clr_eol);#ifdef SORT_SUPRESS   if (CHKw(Curwin, NEWFRAM_cwo)   || sav_indx != q->sortindx   || sav_flgs != (q->winflags & srtMASK)) {      sav_indx = q->sortindx;      sav_flgs = (q->winflags & srtMASK);#endif                                                /* this one's always needed! */      if (CHKw(q, Qsrt_NORMAL)) Frame_srtflg = 1;         else Frame_srtflg = -1;      Frame_ctimes = CHKw(q, Show_CTIMES);      /* this and next, only maybe */      Frame_cmdlin = CHKw(q, Show_CMDLIN);      qsort(ppt, (unsigned)Frame_maxtask, sizeof(proc_t *)         , Fieldstab[q->sortindx].sort);#ifdef SORT_SUPRESS   }#endif      /* account for column headings */   if (!Batch) (*lscr)++;   lwin = 1;   i = 0;   while ( -1 != ppt[i]->pid && *lscr < Max_lines   &&  (!q->winlines || (lwin <= q->winlines)) ) {      if ((CHKw(q, Show_IDLEPS)      || ('S' != ppt[i]->state && 'Z' != ppt[i]->state))      && ((!q->colusrnam[0])      || (!strcmp(q->colusrnam, ppt[i]->euser)) ) ) {            /*             ** Display a process Row */         show_a_task(q, ppt[i]);         if (!Batch) (*lscr)++;         ++lwin;      }      ++i;   }      /* for this frame that window's toast, cleanup for next time */   q->winlines = 0;   OFFw(Curwin, FLGSOFF_cwo);#ifdef SORT_SUPRESS#undef srtMASK#endif}