📄 ckuusr.h
字号:
/* C K U U S R . H -- Symbol definitions for C-Kermit ckuus*.c modules */ /* Author: Frank da Cruz <fdc@columbia.edu>, Columbia University Academic Information Systems, New York City. Copyright (C) 1985, 1996, Trustees of Columbia University in the City of New York. The C-Kermit software may not be, in whole or in part, licensed or sold for profit as a software product itself, nor may it be included in or distributed with commercial products or otherwise distributed by commercial concerns to their clients or customers without written permission of the Office of Kermit Development and Distribution, Columbia University. This copyright notice must not be removed, altered, or obscured.*/#ifndef CKUUSR_H#define CKUUSR_H#include "ckucmd.h" /* Get symbols from command package */ /* Sizes of things */#define FSPECL 300 /* Max length for MSEND/GET string */#define VNAML 64 /* Max length for variable name */#define ARRAYREFLEN 128 /* Max length for array reference */#define FORDEPTH 10 /* Maximum depth of nested FOR loops */#define GVARS 126 /* Highest global var allowed */#define MAXTAKE 32 /* Maximum nesting of TAKE files */#define MACLEVEL 64 /* Maximum nesting for macros */#define NARGS 10 /* Max number of macro arguments */#define LINBUFSIZ (CMDBL + 10) /* Size of line[] buffer */#define TMPBUFSIZ 257 /* Size of temporary buffer */#define LBLSIZ 50 /* Maximum length for a GOTO label */#define INPBUFSIZ 256 /* Size of INPUT buffer */#define CMDSTKL ( MACLEVEL + MAXTAKE + 2) /* Command stack depth */#define MAC_MAX 256 /* Maximum number of macros */#define MSENDMAX 100 /* Number of filespecs for MSEND */#define PROMPTL 256 /* Max length for prompt */#ifndef NOMINPUT /* MINPUT command */#ifndef NOSPL#define CK_MINPUT#ifndef MINPMAX#ifdef BIGBUFOK#define MINPMAX 96 /* Max number of MINPUT strings */#else#define MINPMAX 16#endif /* BIGBUFOK */#endif /* MINPMAX */#define MINPBUFL 256 /* Size of MINPUT temp buffer */#endif /* NOSPL */#endif /* NOMINPUT */#define ARRAYBASE 95 /* Lowest array-name character *//* Bit values (1, 2, 4, 8, ...) for the ccflgs field */#define CF_APC 1 /* Executing an APC command */#define CF_KMAC 2 /* Executing a \Kmacro */#define CF_CMDL 4 /* Macro from -C "blah" command line */#define CF_REXX 8 /* Macro from REXX interpreter */struct cmdptr { /* Command stack structure */ int src; /* Command Source */ int lvl; /* Current TAKE or DO level */ int ccflgs; /* Flags */};struct mtab { /* Macro table, like keyword table */ char *kwd; /* But with pointers for vals */ char *mval; /* instead of ints. */ short flgs;};struct localvar { /* Local variable structure. */ char * lv_name; char * lv_value; struct localvar * lv_next;};/* C-Kermit Initialization file... System-dependent defaults are built into the program, see below. These can be overridden in either of two ways: 1. CK_DSYSINI is defined at compile time, in which case a default system-wide initialization file name is chosen from below, or: 2: CK_SYSINI is defined to be a string, which lets the program builder choose the initialization filespec at compile time. These can be given on the CC command line, so the source code need not be changed.*/#ifndef CK_SYSINI /* If no initialization file given, */#ifdef CK_DSYSINI /* but CK_DSYSINI is defined... *//* Supply system-dependent "default default" initialization file */#ifdef UNIX /* For UNIX, system-wide *//* This allows one copy of the standard init file on the whole system, *//* rather than a separate copy in each user's home directory. */#ifdef HPUX10#define CK_SYSINI "/usr/share/lib/kermit/ckermit.ini"#else#ifdef CU_ACIS#define CK_SYSINI "/usr/share/lib/kermit/ckermit.ini"#else#define CK_SYSINI "/usr/local/bin/ckermit.ini"#endif /* CU_ACIS */#endif /* HPUX10 *//* Fill in #else..#ifdef's here for VMS, OS/2, etc. *//* Fill in matching #endif's here. */#endif /* UNIX */#endif /* CK_DSYSINI */#endif /* CK_SYSINI */#ifdef CK_SYSINI /* Init-file precedence */#ifndef CK_INI_A /* A means system-wide file first */#ifndef CK_INI_B /* B means user's first */#define CK_INI_A /* A is default */#endif /* CK_INI_B */#endif /* CK_INI_A */#else#ifdef CK_INI_A /* Otherwise */#undef CK_INI_A /* make sure these aren't defined */#endif /* CK_INI_A */#ifdef CK_INI_B#undef CK_INI_B#endif /* CK_INI_B */#endif /* CK_SYSINI */#ifdef CK_SYSINI /* One more check... */#ifdef CK_INI_A /* Make sure they're not both */#ifdef CK_INI_B /* defined. */#undef CK_INI_B#endif /* CK_INI_B */#endif /* CK_INI_A */#endif /* CK_SYSINI *//* If neither CK_DSYSINI nor CK_SYSINI are defined, these are the built-in defaults for each system:*/#ifdef vms#define KERMRC "CKERMIT.INI"#define KERMRCL 256#else#ifdef OS2#ifdef NT#define KERMRC "k95.ini"#else#define KERMRC "k2.ini"#endif /* NT */#define KERMRCL 256#else#ifdef UNIX#define KERMRC ".kermrc"#define KERMRCL 256#else#ifdef OSK#define KERMRC ".kermrc"#define KERMRCL 256#else#ifdef STRATUS#define KERMRC "ckermit.ini"#define KERMRCL 256#else#define KERMRC "CKERMIT.INI"#define KERMRCL 256#endif /* STRATUS */#endif /* OSK */#endif /* UNIX */#endif /* OS2 */#endif /* vms */#ifndef KERMRCL#define KERMRCL 256#endif /* KERMRCL *//* User interface features */#ifdef CK_CURSES /* Thermometer */#ifndef NO_PCT_BAR#ifndef CK_PCT_BAR#define CK_PCT_BAR#endif /* NO_PCT_BAR */#endif /* CK_PCT_BAR */#endif /* CK_CURSES */#ifdef KUI /* KUI requires the Thermometer code */#ifndef NO_PCT_BAR#ifndef CK_PCT_BAR#define CK_PCT_BAR#endif /* NO_PCT_BAR */#endif /* CK_PCT_BAR */#endif /* KUI *//* Includes */#ifdef MINIX/* why? */#include <sys/types.h>#endif /* MINIX *//* Symbols for command source */#define CMD_KB 0 /* KeyBoard or standard input */#define CMD_TF 1 /* TAKE command File */#define CMD_MD 2 /* Macro Definition *//* SET TRANSFER CANCELLATION command should be available in all versions. But for now...*/#ifdef UNIX /* UNIX has it */#ifndef XFRCAN#define XFRCAN#endif /* XFRCAN */#endif /* UNIX */#ifdef VMS /* VMS has it */#ifndef XFRCAN#define XFRCAN#endif /* XFRCAN */#endif /* VMS */#ifdef datageneral /* DG AOS/VS has it */#ifndef XFRCAN#define XFRCAN#endif /* XFRCAN */#endif /* datageneral */#ifdef STRATUS /* Stratus VOS has it */#ifndef XFRCAN#define XFRCAN#endif /* XFRCAN */#endif /* STRATUS */#ifdef OSK /* OS-9 */#ifndef XFRCAN#define XFRCAN#endif /* XFRCAN */#endif /* OSK *//* Top Level Commands *//* Values associated with top-level commands must be 0 or greater. */ #define XXBYE 0 /* BYE */#define XXCLE 1 /* CLEAR */#define XXCLO 2 /* CLOSE */#define XXCON 3 /* CONNECT */#define XXCPY 4 /* COPY */#define XXCWD 5 /* CWD (Change Working Directory) */#define XXDEF 6 /* DEFINE (a command macro) */#define XXDEL 7 /* (Local) DELETE */#define XXDIR 8 /* (Local) DIRECTORY */#define XXDIS 9 /* DISABLE */#define XXECH 10 /* ECHO */#define XXEXI 11 /* EXIT */#define XXFIN 12 /* FINISH */#define XXGET 13 /* GET */#define XXHLP 14 /* HELP */#define XXINP 15 /* INPUT */#define XXLOC 16 /* LOCAL */#define XXLOG 17 /* LOG */#define XXMAI 18 /* MAIL */#define XXMOU 19 /* (Local) MOUNT */#define XXMSG 20 /* (Local) MESSAGE */#define XXOUT 21 /* OUTPUT */#define XXPAU 22 /* PAUSE */#define XXPRI 23 /* (Local) PRINT */#define XXQUI 24 /* QUIT */#define XXREC 25 /* RECEIVE */#define XXREM 26 /* REMOTE */#define XXREN 27 /* (Local) RENAME */#define XXSEN 28 /* SEND */#define XXSER 29 /* SERVER */#define XXSET 30 /* SET */#define XXSHE 31 /* Command for SHELL */#define XXSHO 32 /* SHOW */#define XXSPA 33 /* (Local) SPACE */#define XXSTA 34 /* STATISTICS */#define XXSUB 35 /* (Local) SUBMIT */#define XXTAK 36 /* TAKE */#define XXTRA 37 /* TRANSMIT */#define XXTYP 38 /* (Local) TYPE */#define XXWHO 39 /* (Local) WHO */#define XXDIAL 40 /* (Local) DIAL */#define XXLOGI 41 /* (Local) SCRIPT */#define XXCOM 42 /* Comment */#define XXHAN 43 /* HANGUP */#define XXXLA 44 /* TRANSLATE */#define XXIF 45 /* IF */#define XXLBL 46 /* label */#define XXGOTO 47 /* GOTO */#define XXEND 48 /* END */#define XXSTO 49 /* STOP */#define XXDO 50 /* DO */#define XXPWD 51 /* PWD */#define XXTES 52 /* TEST */#define XXASK 53 /* ASK */#define XXASKQ 54 /* ASKQ */#define XXASS 55 /* ASSIGN */#define XXREI 56 /* REINPUT */#define XXINC 57 /* INCREMENT */#define XXDEC 59 /* DECREMENT */#define XXELS 60 /* ELSE */#define XXEXE 61 /* EXECUTE */#define XXWAI 62 /* WAIT */#define XXVER 63 /* VERSION */#define XXENA 64 /* ENABLE */#define XXWRI 65 /* WRITE */#define XXCLS 66 /* CLS (clear screen) */#define XXRET 67 /* RETURN */#define XXOPE 68 /* OPEN */#define XXREA 69 /* READ */#define XXON 70 /* ON */#define XXDCL 71 /* DECLARE */#define XXBEG 72 /* BEGIN (not used) */#define XXFOR 72 /* FOR */#define XXWHI 73 /* WHILE */#define XXIFX 74 /* Extended IF */#define XXCMS 75 /* SEND from command output (not yet) */#define XXCMR 76 /* RECEIVE to a command's input (not yet) */#define XXCMG 77 /* GET to a command's input (not yet) */#define XXSUS 78 /* SUSPEND */#define XXERR 79 /* ERROR */#define XXMSE 80 /* MSEND */#define XXBUG 81 /* BUG */#define XXPAD 82 /* PAD (as in X.25 PAD) ANYX25 */#define XXRED 83 /* REDIAL */#define XXGTA 84 /* _getargs (invisible internal) */#define XXPTA 85 /* _putargs (invisible internal) */#define XXGOK 86 /* GETOK - Ask for YES/NO */#define XXTEL 87 /* TELNET */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -