home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume8 / se / part02 / extern.h < prev    next >
Encoding:
C/C++ Source or Header  |  1987-01-25  |  4.7 KB  |  134 lines

  1. /*
  2.  * $Header: extern.h,v 1.2 86/07/14 16:44:30 arnold Exp $
  3.  */
  4.  
  5. /*
  6.  * $Log:    extern.h,v $
  7.  * Revision 1.2  86/07/14  16:44:30  arnold
  8.  * Removed stuff that was Georgia Tech specific.
  9.  * 
  10.  * Revision 1.1  86/05/06  13:36:05  osadr
  11.  * Initial revision
  12.  * 
  13.  * 
  14.  */
  15.  
  16. /*
  17. ** extern.h
  18. **
  19. ** external data definitions
  20. ** for the screen editor
  21. */
  22.  
  23. /* Concerning line numbers: */
  24. extern int Line1;        /* first line number on command */
  25. extern int Line2;        /* second line number on command */
  26. extern int Nlines;        /* number of line numbers specified */
  27. extern int Curln;        /* current line; value of dot */
  28. extern int Lastln;        /* last line; value of dollar */
  29.  
  30.  
  31. /* Concerning patterns: */
  32. extern char Pat[MAXPAT];    /* saved pattern */
  33.  
  34.  
  35. /* Concerning the text of lines: */
  36. extern char Txt[MAXLINE];    /* text of current line */
  37.  
  38.  
  39. /* Concerning file names: */
  40. extern char Savfil[MAXLINE];    /* remembered file name */
  41.  
  42.  
  43. /* Concerning line descriptors: */
  44. extern LINEDESC Buf[MAXBUF];
  45. #ifdef OLD_SCRATCH
  46. extern LINEDESC *Lastbf;    /* last pointer used in Buf */
  47. extern LINEDESC *Free;        /* head of free list */
  48. #endif
  49. extern LINEDESC *Line0;        /* head of list of line descriptors */
  50.  
  51.  
  52. /* Concerning the 'undo' command: */
  53. extern LINEDESC *Limbo;        /* head of limbo list for undo */
  54. extern int Limcnt;        /* number of lines in limbo list */
  55.  
  56.  
  57. /* Concerning the scratch file: */
  58. extern filedes Scr;        /* scratch file descriptor */
  59. extern unsigned Scrend;        /* end of info on scratch file */
  60. extern char Scrname[MAXLINE];    /* name of scratch file */
  61. extern int Lost_lines;        /* number of garbage lines in scratch file */
  62.  
  63.  
  64. /* Concerning miscellaneous variables */
  65. extern int Buffer_changed;    /* YES if buffer changed since last write */
  66. extern int Errcode;        /* cause of most recent error */
  67. extern int Saverrcode;        /* cause of previous error */
  68. extern int Probation;        /* YES if unsaved buffer can be destroyed */
  69. extern int Argno;        /* command line argument pointer */
  70. extern char Last_char_scanned;    /* last char scanned with ctl-s or -l */
  71. #ifdef HARD_TERMS
  72. extern int Tspeed;        /* terminal speed in characters/second */
  73. #endif
  74. extern char Peekc;        /* push a SKIP_RIGHT if adding delimiters */
  75. #ifdef BSD4_2
  76. extern int Reading;        /* are we doing terminal input? */
  77. #endif
  78.  
  79.  
  80. /* Concerning options: */
  81. extern int Tabstops[MAXLINE];    /* array of tab stops */
  82. extern char Unprintable;    /* char to print for unprintable chars */
  83. extern int Absnos;        /* use absolute numbers in margin */
  84. extern int Nchoise;        /* choice of line number for cont. display */
  85. extern int Overlay_col;        /* initial cursor column for 'v' command */
  86. extern int Warncol;        /* where to turn on column warning */
  87. extern int Firstcol;        /* leftmost column to display */
  88. extern int Indent;        /* indent col; 0=same as previous line */
  89. extern int Notify;        /* notify user if he has mail in mail file */
  90. extern int Globals;        /* substitutes in a global don't fail */
  91. extern int No_hardware;        /* never use hardware insert/delete */
  92.  
  93.  
  94. #ifdef HARD_TERMS
  95. /* Concerning the terminal type */
  96. extern int Term_type;          /* terminal type */
  97. #endif
  98.  
  99.  
  100. /* Concerning the screen format: */
  101. extern char Screen_image[MAXROWS][MAXCOLS];
  102. extern char Msgalloc[MAXCOLS];    /* column allocation of status line */
  103. extern int Nrows;        /* number of rows on screen */
  104. extern int Ncols;        /* number of columns on screen */
  105. extern int Currow;        /* vertical cursor coordinate */
  106. extern int Curcol;        /* horizontal cursor coordinate */
  107. extern int Toprow;        /* top row of window field on screen */
  108. extern int Botrow;        /* bottom row of window field on screen */
  109. extern int Cmdrow;        /* row number of command line */
  110. extern int Topln;        /* line number of first line on screen */
  111. extern int Insert_mode;        /* flag to specify character insertion */
  112. extern int Invert_case;        /* flag to specify case mapping on input */
  113. extern int First_affected;    /* number of first line affected by cmd */
  114. extern int Rel_a;        /* char to use for first alpha line number */
  115. extern int Rel_z;        /* char to use for last alpha line number */
  116. extern int Scline[MAXROWS];    /* lines currently on screen (rel to Sctop) */
  117. extern int Sctop;        /* first line currently on screen */
  118. extern int Sclen;        /* number of lines currently on screen */
  119. extern char Blanks[MAXCOLS];    /* all blanks for filling in lines on screen */
  120. extern char Tobuf[MAXTOBUF];    /* buffer for collecting terminal output */
  121. extern char *Tobp;        /* pointer to last used part of Tobuf */
  122.  
  123.  
  124. /* Concerning interrupts: */
  125. extern int Int_caught;        /* caught a SIGINT from user */
  126. extern int Hup_caught;        /* caught a SIGHUP when phone line dropped */
  127. #ifdef SIGTSTP
  128. extern int Catching_stops;    /* catching or ignoring SIGTSTP's? */
  129. #endif
  130.  
  131. /* Concerning file encryption: */
  132. extern int Crypting;        /* doing file encryption? */
  133. extern char Key[KEYSIZE];    /* encryption key */
  134.