ex_v.c revision f6db9f272f0061301cfaa1c0001b7d636eae31f4
883N/A * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
883N/A * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
#include "ex.h"
#include "ex_re.h"
#include "ex_tty.h"
#include "ex_vis.h"
* ex_v.c entry points, checking of terminal characteristics
* ex_vadj.c logical screen control, use of intelligent operations
* ex_vget.c input of single keys and reading of input lines
* ex_vmain.c main command decoding, some command processing.
* ex_voperate.c decoding of operator/operand sequences and
* ex_vops.c major operator interfaces, undos, motions, deletes,
* ex_vops2.c subroutines for operator interfaces in ex_vops.c,
* ex_vops3.c structured motion definitions of ( ) { } and [ ] operators,
* ex_vput.c output routines, clearing, physical mapping of logical cursor
* ex_vwind.c window level control of display, forward and backward rolls,
void setsize();
void winch();
void vintr();
int windowchg;
int sigok;
void windowinit()
windowchg = 0;
setsize();
setwind();
void redraw()
vsave();
windowinit();
vclear();
vclean();
vfixcurs();
#ifdef __STDC__
int sig;
#ifdef XPG4
if (sigok) {
redraw();
windowchg++;
setsize()
#ifdef XPG4
l = lines;
oop(void)
unsigned char *ic;
int resize;
windowchg = 0;
ovbeg();
ic--;
getDOT();
donewline();
setwind();
if (!inglobal)
savevis();
f = ostart();
outcol = 0;
vmain();
vclean();
ovend(f);
ovbeg(void)
if (inopen)
fixzero();
setdot();
pastwh();
splitw++;
vclreol();
holdcm = 0;
splitw = 0;
ostop(f);
setoutt();
undvis();
inopen = 0;
flusho();
vop(void)
extern unsigned char termtype[];
if (initev) {
if (generic_type)
putNFL();
putNFL();
oop();
if (initev)
goto toopen;
if (!clear_screen) {
if (initev)
goto toopen;
if (!scroll_forward) {
if (initev)
goto toopen;
windowchg = 0;
ovbeg();
c = getchar();
pastwh();
setwind();
donewline();
if (!inglobal)
savevis();
vmoving = 0;
f = ostart();
if (initev == 0) {
vmain();
ovend(f);
fixzero(void)
if (!ochng)
sync();
savevis(void)
if (inglobal)
saveall();
undvis(void)
if (ruptible)
squish();
setwind(void)
switch (bastate) {
case ONEOPEN:
if (auto_right_margin)
WCOLS--;
case HARDOPEN:
ZERO = 0;
holdcm++;
case CRTOPEN:
case VISUAL:
if (ZERO < 0)
ZERO = 0;
static int beenhere;
serror((unsigned char *)
Command);
if(beenhere)
for (i = 0; i < ZERO; i++)
for (; i <= WECHO; i++)
if(beenhere++) {
for (; i < TUBELINES; i++)
if(!undo) {
vUNDdot = 0;
#ifdef CBREAK
vmoving = 0;
splitw = 0;
doomed = 0;
holdupd = 0;
if(!undo)
Peekkey = 0;
if (vSCROLL == 0)
#ifdef CBREAK
#ifdef __STDC__
int sig;
if (vcatch)
onintr(0);
draino();
basWTOP = b;