⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vars.c

📁 操作系统源代码
💻 C
字号:
/* vars.c *//* Author: *	Steve Kirkendall *	14407 SW Teal Blvd. #C *	Beaverton, OR 97005 *	kirkenda@cs.pdx.edu *//* This file contains variables which weren't happy anyplace else */#include "config.h"#include "vi.h"/*------------------------------------------------------------------------*//* used to remember whether the file has been modified */struct _viflags	viflags;/* used to access the tmp file */long		lnum[MAXBLKS];long		nlines;int		tmpfd = -1;int		tmpnum;#ifndef CRUNCHint		wset = FALSE;#endif/* used to keep track of the current file & alternate file */long		origtime;char		origname[256];char		prevorig[256];long		prevline = 1;/* used to track various places in the text */MARK		mark[NMARKS];	/* marks 'a through 'z, plus mark '' */MARK		cursor;		/* the cursor position within the file *//* which mode of the editor we're in */int		mode;		/* vi mode? ex mode? quitting? *//* used to manage the args list */char		args[BLKSIZE];	/* list of filenames to edit */int		argno;		/* index of current file in args list */int		nargs;		/* number of filenames in args[] *//* dummy var, never explicitly referenced */int		bavar;		/* used only in BeforeAfter macros *//* used to detect changes that invalidate cached text/blocks */long		changes;	/* incremented when file is changed */int		significant;	/* boolean: was a *REAL* change made? *//* used to support the pfetch() macro */int		plen;		/* length of the line */long		pline;		/* line number that len refers to */long		pchgs;		/* "changes" level that len refers to */char		*ptext;		/* text of previous line, if valid *//* misc temporary storage - mostly for strings */BLK		tmpblk;		/* a block used to accumulate changes *//* screen oriented stuff */long		topline;	/* file line number of top line */int		leftcol;	/* column number of left col */int		physcol;	/* physical column number that cursor is on */int		physrow;	/* physical row number that cursor is on *//* used to help minimize that "[Hit a key to continue]" message */int		exwrote;	/* Boolean: was the last ex command wordy? *//* This variable affects the behaviour of certain functions -- most importantly * the input function. */int		doingdot;	/* boolean: are we doing the "." command? *//* This variable affects the behaviour of the ":s" command, and it is also * used to detect & prohibit nesting of ":g" commands */int		doingglobal;	/* boolean: are doing a ":g" command? *//* This variable is zeroed before a command executes, and later ORed with the * command's flags after the command has been executed.  It is used to force * certain flags to be TRUE for *some* invocations of a particular command. * For example, "/regexp/+offset" forces the LNMD flag, and sometimes a "p" * or "P" command will force FRNT. */int		force_flags;/* These are used for reporting multi-line changes to the user */long		rptlines;	/* number of lines affected by a command */char		*rptlabel;	/* description of how lines were affected *//* These store info that pertains to the shift-U command */long	U_line;			/* line# of the undoable line, or 0l for none */char	U_text[BLKSIZE];	/* contents of the undoable line */#ifndef NO_VISIBLE/* These are used to implement the 'v' and 'V' commands */MARK	V_from;			/* starting point for v or V */int	V_linemd;		/* boolean: doing line-mode version? (V, not v) */#endif/* Bigger stack req'ed for TOS and TURBOC */#if TOSlong	_stksize = 16384;#endif#if TURBOC#include <dos.h>extern unsigned _stklen = 16384U;#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -