* $Source: /u1/X/xterm/RCS/tabs.c,v $
* $Header: tabs.c,v 10.100 86/12/01 14:45:38 jg Rel $
static char *rcsid_tabs_c
= "$Header: tabs.c,v 10.100 86/12/01 14:45:38 jg Rel $";
#include <X/mit-copyright.h>
/* Copyright Massachusetts Institute of Technology 1984 */
/* @(#)tabs.c X10/6.6B 12/26/86 */
* This file presumes 32bits/word. This is somewhat of a crock, and should
* places tabstops at only every 8 columns
for (i
=0; i
<TAB_ARRAY_SIZE
; ++i
)
for (i
=0; i
<MAX_TABS
; i
+=8)
* places a tabstop at col
tabs
[col
>> 5] |= (1 << (col
& 31));
* clears a tabstop at col
tabs
[col
>> 5] &= ~(1 << (col
& 31));
* returns the column of the next tabstop
* (or MAX_TABS - 1 if there are no more).
* A tabstop at col is ignored.
register Screen
*screen
= &term
.screen
;
if(screen
->curses
&& screen
->do_wrap
&& (term
.flags
& WRAPAROUND
)) {
col
= screen
->cur_col
= screen
->do_wrap
= 0;
for (++col
; col
<MAX_TABS
; ++col
)
if (tabs
[col
>> 5] & (1 << (col
& 31)))
for (i
=0; i
<TAB_ARRAY_SIZE
; ++i
)