home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume14 / jove4.9 / part02 / vars.c < prev   
Encoding:
C/C++ Source or Header  |  1988-04-25  |  4.2 KB  |  131 lines

  1. /***************************************************************************
  2.  * This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne.  JOVE *
  3.  * is provided to you without charge, and with no warranty.  You may give  *
  4.  * away copies of JOVE, including sources, provided that this notice is    *
  5.  * included in all the files.                                              *
  6.  ***************************************************************************/
  7.  
  8. #ifndef TXT_TO_C    /* so that jove.h isn't included twice in setmaps */
  9. #include "jove.h"
  10. #endif
  11.  
  12. struct variable    variables[] = {
  13.     VARIABLE, "abort-char", &AbortChar, V_CHAR,
  14. #ifdef UNIX
  15.     VARIABLE, "allow-^S-and-^Q", &OKXonXoff, V_BOOL|V_TTY_RESET,
  16. #endif /* UNIX */
  17.     VARIABLE, "allow-bad-filenames", &OkayBadChars, V_BOOL,
  18. #ifdef ABBREV
  19.     VARIABLE, "auto-case-abbrev", &AutoCaseAbbrev, V_BOOL,
  20. #endif
  21. #ifdef IBMPC
  22.     VARIABLE, "background-color", &Bgcolor, V_BASE10|V_CLRSCREEN,
  23. #endif /* IBMPC */
  24. #ifdef F_COMPLETION
  25.     VARIABLE, "bad-filename-extensions", (int *) BadExtensions, V_STRING,
  26. #endif
  27.     VARIABLE, "c-indentation-increment", &CIndIncrmt, V_BASE10,
  28.     VARIABLE, "case-ignore-search", &CaseIgnore, V_BOOL,
  29. #ifdef CMT_FMT
  30.      VARIABLE, "comment-format", (int *) CmtFmt, V_STRING,
  31. #endif
  32. #ifdef BIFF
  33.     VARIABLE, "disable-biff", &BiffChk, V_BOOL,
  34. #endif
  35. #ifdef F_COMPLETION
  36.     VARIABLE, "display-bad-filenames", &DispBadFs, V_BOOL,
  37. #endif
  38. #ifndef MAC
  39.     VARIABLE, "error-format-string", (int *) ErrFmtStr, V_STRING,
  40.     VARIABLE, "error-window-size", &EWSize, V_BASE10,
  41. #endif
  42.     VARIABLE, "expand-environment-variables", &DoEVexpand, V_BOOL,
  43.     VARIABLE, "file-creation-mode", &CreatMode, V_BASE8,
  44.     VARIABLE, "files-should-end-with-newline", &EndWNewline, V_BOOL,
  45. #ifdef IBMPC
  46.     VARIABLE, "foreground-color", &Fgcolor, V_BASE10|V_CLRSCREEN,
  47. #endif /* IBMPC */
  48.     VARIABLE, "internal-tabstop", &tabstop, V_BASE10|V_CLRSCREEN,
  49.     VARIABLE, "left-margin", &LMargin, V_BASE10,
  50. #ifdef UNIX
  51.     VARIABLE, "mailbox", (int *) Mailbox, V_FILENAME,
  52.     VARIABLE, "mail-check-frequency", (int *) &MailInt, V_BASE10,
  53. #endif /* UNIX */
  54. #ifdef MAC
  55.     VARIABLE, "macify", &Macmode, V_BOOL,
  56. #endif
  57. #ifdef BACKUPFILES
  58.     VARIABLE, "make-backup-files", &BkupOnWrite, V_BOOL,
  59. #endif
  60.     VARIABLE, "mark-threshold", &MarkThresh, V_BASE10,
  61.     VARIABLE, "marks-should-float", &MarksShouldFloat, V_BOOL,
  62.     VARIABLE, "match-regular-expressions", &UseRE, V_BOOL,
  63.     VARIABLE, "meta-key", &MetaKey, V_BOOL|V_TTY_RESET,
  64.     VARIABLE, "mode-line", (int *) ModeFmt, V_STRING|V_MODELINE,
  65. #ifdef IBMPC
  66.     VARIABLE, "mode-line-color", &Mdcolor, V_BASE10|V_MODELINE,
  67. #endif    
  68.     VARIABLE, "mode-line-should-standout", &BriteMode, V_BOOL|V_MODELINE,
  69.     VARIABLE, "paren-flash-delay", &PDelay, V_BASE10,
  70. #ifndef MAC
  71.     VARIABLE, "physical-tabstop", &phystab, V_BASE10|V_CLRSCREEN,
  72. #endif
  73. #ifdef IPROCS
  74.     VARIABLE, "process-prompt", (int *) proc_prompt, V_STRING,
  75. #endif
  76.     VARIABLE, "interrupt-character", &IntChar, V_CHAR|V_TTY_RESET,
  77.     VARIABLE, "right-margin", &RMargin, V_BASE10,
  78.     VARIABLE, "scroll-step", &ScrollStep, V_BASE10,
  79.     VARIABLE, "scroll-all-lines", &ScrollAll, V_BOOL,
  80.     VARIABLE, "search-exit-char", &SExitChar, V_CHAR,
  81.     VARIABLE, "send-typeout-to-buffer", &UseBuffers, V_BOOL,
  82. #ifndef MAC
  83.     VARIABLE, "shell", (int *) Shell, V_STRING,
  84.     VARIABLE, "shell-flags", (int *) ShFlags, V_STRING,
  85. #endif
  86. #ifndef MSDOS
  87.     VARIABLE, "sync-frequency", &SyncFreq, V_BASE10,
  88. #endif /* MSDOS */
  89.     VARIABLE, "tag-file", (int *) TagFile, V_FILENAME,
  90. #ifndef MAC
  91.     VARIABLE, "tmp-file-pathname", (int *) TmpFilePath, V_FILENAME,
  92. #endif
  93. #ifdef UNIX
  94.     VARIABLE, "update-time-frequency", &UpdFreq, V_BASE10,
  95. #endif /* UNIX */
  96. #ifdef ID_CHAR
  97.     VARIABLE, "use-i/d-char", &UseIC, V_BOOL,
  98. #endif
  99.     VARIABLE, "visible-bell", &VisBell, V_BOOL,
  100.     VARIABLE, "wrap-search", &WrapScan, V_BOOL,
  101. #ifndef MAC
  102.     VARIABLE, "write-files-on-make", &WtOnMk, V_BOOL,
  103. #endif
  104.     VARIABLE, 0, 0, 0
  105. };
  106.  
  107. #ifndef TXT_TO_C
  108. data_obj *
  109. findvar(prompt)
  110. char    *prompt;
  111. {
  112.     static char    *strings[(sizeof variables) / sizeof (struct variable)];
  113.     static int    beenhere = 0;
  114.     register int    com;
  115.  
  116.     if (beenhere == 0) {
  117.         register char    **strs = strings;
  118.         register struct variable    *v = variables;
  119.  
  120.         beenhere = 1;
  121.         for (; v->Name; v++)
  122.             *strs++ = v->Name;
  123.         *strs = 0;
  124.     }
  125.  
  126.     if ((com = complete(strings, prompt, NOTHING)) < 0)
  127.         return 0;
  128.     return (data_obj *) &variables[com];
  129. }
  130. #endif
  131.