source: trunk/third/nvi/common/common.h @ 14302

Revision 14302, 2.6 KB checked in by ghudson, 25 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r14301, which included commits to RCS files with non-trunk default branches.
Line 
1/*-
2 * Copyright (c) 1991, 1993, 1994
3 *      The Regents of the University of California.  All rights reserved.
4 * Copyright (c) 1991, 1993, 1994, 1995, 1996
5 *      Keith Bostic.  All rights reserved.
6 *
7 * See the LICENSE file for redistribution information.
8 *
9 *      @(#)common.h    10.13 (Berkeley) 9/25/96
10 */
11
12/*
13 * Porting information built at configuration time.  Included before
14 * any of nvi's include files.
15 */
16#include "port.h"
17
18/*
19 * Pseudo-local includes.  These are files that are unlikely to exist
20 * on most machines to which we're porting vi, and we want to include
21 * them in a very specific order, regardless.
22 */
23#include <db.h>
24#include <regex.h>
25
26/*
27 * Forward structure declarations.  Not pretty, but the include files
28 * are far too interrelated for a clean solution.
29 */
30typedef struct _cb              CB;
31typedef struct _csc             CSC;
32typedef struct _event           EVENT;
33typedef struct _excmd           EXCMD;
34typedef struct _exf             EXF;
35typedef struct _fref            FREF;
36typedef struct _gs              GS;
37typedef struct _lmark           LMARK;
38typedef struct _mark            MARK;
39typedef struct _msg             MSGS;
40typedef struct _option          OPTION;
41typedef struct _optlist         OPTLIST;
42typedef struct _scr             SCR;
43typedef struct _script          SCRIPT;
44typedef struct _seq             SEQ;
45typedef struct _tag             TAG;
46typedef struct _tagf            TAGF;
47typedef struct _tagq            TAGQ;
48typedef struct _text            TEXT;
49
50/* Autoindent state. */
51typedef enum { C_NOTSET, C_CARATSET, C_NOCHANGE, C_ZEROSET } carat_t;
52
53/* Busy message types. */
54typedef enum { BUSY_ON = 1, BUSY_OFF, BUSY_UPDATE } busy_t;
55
56/*
57 * Routines that return a confirmation return:
58 *
59 *      CONF_NO         User answered no.
60 *      CONF_QUIT       User answered quit, eof or an error.
61 *      CONF_YES        User answered yes.
62 */
63typedef enum { CONF_NO, CONF_QUIT, CONF_YES } conf_t;
64
65/* Directions. */
66typedef enum { NOTSET, FORWARD, BACKWARD } dir_t;
67
68/* Line operations. */
69typedef enum { LINE_APPEND, LINE_DELETE, LINE_INSERT, LINE_RESET } lnop_t;
70
71/* Lock return values. */
72typedef enum { LOCK_FAILED, LOCK_SUCCESS, LOCK_UNAVAIL } lockr_t;
73
74/* Sequence types. */
75typedef enum { SEQ_ABBREV, SEQ_COMMAND, SEQ_INPUT } seq_t;
76
77/*
78 * Local includes.
79 */
80#include "key.h"                /* Required by args.h. */
81#include "args.h"               /* Required by options.h. */
82#include "options.h"            /* Required by screen.h. */
83
84#include "msg.h"                /* Required by gs.h. */
85#include "cut.h"                /* Required by gs.h. */
86#include "seq.h"                /* Required by screen.h. */
87#include "util.h"               /* Required by ex.h. */
88#include "mark.h"               /* Required by gs.h. */
89#include "../ex/ex.h"           /* Required by gs.h. */
90#include "gs.h"                 /* Required by screen.h. */
91#include "screen.h"             /* Required by exf.h. */
92#include "exf.h"
93#include "log.h"
94#include "mem.h"
95
96#include "com_extern.h"
Note: See TracBrowser for help on using the repository browser.