home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!usc!news.service.uci.edu!network.ucsd.edu!mvb.saic.com!vmsnet-sources
- From: flowers@memstvx1.memst.edu
- Newsgroups: vmsnet.sources
- Subject: C Swing v3.6.4 patches, part 02/04
- Message-ID: <9908349@MVB.SAIC.COM>
- Date: Mon, 04 Jan 1993 20:21:10 GMT
- Organization: Memphis State University
- Lines: 1325
- Approved: Mark.Berryman@Mvb.Saic.Com
-
- Submitted-by: flowers@memstvx1.memst.edu
- Posting-number: Volume 4, Issue 23
- Archive-name: cswing/patch3_02
- Patch-to: cswing: Volume 3, Issue 35-52,93,211-218
-
- -+-+-+-+-+-+-+-+ START OF PART 2 -+-+-+-+-+-+-+-+
- X sprintf(work,s_str,j);
- X work_len = strlen(work);
- X for (j = 0; j < work_len; j++) out`5Bii++`5D = work`
- V5Bj`5D;
- X `7D
- X else if (count > max_col)
- X `7B
- X**************
- X*** 346,353
- X `7D /* if ch is a space */
- X `20
- X /*
- X! ** else, if ok to fill line and ch is `5EL, `5EG, or a
- X! ** Verbose control char
- X `09 ** display the control char as reverse video char
- X */
- X else if (ok && ((ch == '\014') `7C`7C
- X--- 445,452 -----
- X `7D /* if ch is a space */
- X `20
- X /*
- X! ** else, if ok to fill line and ch is `5EG, `5EK, `5EL, a Verbo
- Vse
- X! ** control character, or an escape that was not followed by `5B
- V#m,
- X `09 ** display the control char as reverse video char
- X */
- X else if (ok && ((ch == '\007') `7C`7C
- X**************
- X*** 350,358
- X ** Verbose control char
- X `09 ** display the control char as reverse video char
- X */
- X! else if (ok && ((ch == '\014') `7C`7C
- X! (ch == '\007') `7C`7C
- X! ((ch < ' ') && MOST_V_OPT)))
- X `7B
- X for (j=0; j < r_len; j++)
- X out`5Bii++`5D = r_str`5Bj`5D;
- X--- 449,459 -----
- X ** control character, or an escape that was not followed by `5B
- V#m,
- X `09 ** display the control char as reverse video char
- X */
- X! else if (ok && ((ch == '\007') `7C`7C
- X! (ch == '\013') `7C`7C
- X! (ch == '\014') `7C`7C
- X! (ch == '\033') `7C`7C
- X! ((ch < ' ' `7C`7C ch > 126) && MOST_V_OPT)))
- X `7B
- X for (j=0; j < r_len; j++)
- X out`5Bii++`5D = r_str`5Bj`5D;
- X**************
- X*** 383,389
- X out`5Bii++`5D = r_str`5Bj`5D;
- X out`5Bii++`5D = d_char;
- X `7D
- X! else if (ok && ((count > max_col) `7C`7C (count == max_col && MOST_W_O
- VPT)))
- X `7B
- X bold = 1;
- X `09 ii--;
- X--- 484,490 -----
- X out`5Bii++`5D = r_str`5Bj`5D;
- X out`5Bii++`5D = d_char;
- X `7D
- X! else if (ok && count > max_col)
- X `7B
- X `09 ii--;
- X if (ok && bold)
- X**************
- X*** 385,391
- X `7D
- X else if (ok && ((count > max_col) `7C`7C (count == max_col && MOST_W_O
- VPT)))
- X `7B
- X- bold = 1;
- X `09 ii--;
- X for (j=0; j < r_len; j++)
- X out`5Bii++`5D = r_str`5Bj`5D;
- X--- 486,491 -----
- X `7D
- X else if (ok && count > max_col)
- X `7B
- X `09 ii--;
- X if (ok && bold)
- X for (j=0; j < n_len; j++)
- X**************
- X*** 387,392
- X `7B
- X bold = 1;
- X `09 ii--;
- X for (j=0; j < r_len; j++)
- X out`5Bii++`5D = r_str`5Bj`5D;
- X out`5Bii++`5D = d_char;
- X--- 487,496 -----
- X else if (ok && count > max_col)
- X `7B
- X `09 ii--;
- X+ if (ok && bold)
- X+ for (j=0; j < n_len; j++)
- X+ out`5Bii++`5D = n_str`5Bj`5D;
- X+ bold = 1;
- X for (j=0; j < r_len; j++)
- X out`5Bii++`5D = r_str`5Bj`5D;
- X out`5Bii++`5D = d_char;
- X**************
- X*** 424,429
- X */
- X if(extract_line(&beg, &end) && MOST_W_OPT) ch = '\\'; else ch =
- V '>';
- X len = end - beg + 1;
- X /*
- X ** if line is too long
- X ** set Verbose and display of tabs
- X--- 528,534 -----
- X */
- X if(extract_line(&beg, &end) && MOST_W_OPT) ch = '\\'; else ch =
- V '>';
- X len = end - beg + 1;
- X+`20
- X /*
- X ** if line is too long
- X ** set Verbose and display of tabs
- X**************
- X*** 436,441
- X MOST_T_OPT = 1;
- X line = (char *) beg;
- X `7D
- X /*
- X ** else have line analyzed for character display attributes
- X */
- X--- 541,547 -----
- X MOST_T_OPT = 1;
- X line = (char *) beg;
- X `7D
- X+`20
- X /*
- X ** else have line analyzed for character display attributes
- X */
- X**************
- X*** 441,446
- X */
- X else len = analyse_line(beg, end, line, attr);
- X `7D
- X /*
- X ** binary line
- X */
- X--- 547,553 -----
- X */
- X else len = analyse_line(beg, end, line, attr);
- X `7D
- X+`20
- X /*
- X ** binary line
- X */
- X**************
- X*** 480,486
- X int apparant_distance(unsigned char *pos)
- X `7B
- X int i;
- X! unsigned char *cur_pos, *save_pos, ch;
- X `20
- X cur_pos = C_POS;
- X save_pos = pos;
- X--- 587,595 -----
- X int apparant_distance(unsigned char *pos)
- X `7B
- X int i;
- X! unsigned char *cur_pos, *save_pos, ch, *e;
- X! extern int W_LINE;
- X! extern int TAB_R;
- X `20
- X cur_pos = C_POS;
- X save_pos = pos;
- X**************
- X*** 486,491
- X save_pos = pos;
- X C_POS = pos;
- X pos = beg_of_line();
- X C_POS = cur_pos;
- X `20
- X i = 1;
- X--- 595,601 -----
- X save_pos = pos;
- X C_POS = pos;
- X pos = beg_of_line();
- X+ e = end_of_line();
- X C_POS = cur_pos;
- X `20
- X i = 1;
- X**************
- X*** 498,503
- X `7B
- X if (i > 1) i--;
- X `7D
- X /*
- X ** `5EM (overstrike line)
- X */
- X--- 608,614 -----
- X `7B
- X if (i > 1) i--;
- X `7D
- X+`20
- X /*
- X ** `5EM (overstrike line)
- X */
- X**************
- X*** 503,509
- X */
- X else if (!MOST_V_OPT && ch == '\015')
- X `7B
- X! if (i != 1) i = 1;
- X `7D
- X /*
- X ** `5EI (8 column tabs)
- X--- 614,620 -----
- X */
- X else if (!MOST_V_OPT && ch == '\015')
- X `7B
- X! if (i > 1) i = 1;
- X `7D
- X `20
- X /*
- X**************
- X*** 505,510
- X `7B
- X if (i != 1) i = 1;
- X `7D
- X /*
- X ** `5EI (8 column tabs)
- X */
- X--- 616,622 -----
- X `7B
- X if (i > 1) i = 1;
- X `7D
- X+`20
- X /*
- X ** underline, bold, or reverse via <ESC>`5B#m
- X */
- X**************
- X*** 506,512
- X if (i != 1) i = 1;
- X `7D
- X /*
- X! ** `5EI (8 column tabs)
- X */
- X else if (ch == '\t' && (!MOST_T_OPT `7C`7C !MOST_V_OPT))
- X `7B
- X--- 618,624 -----
- X `7D
- X `20
- X /*
- X! ** underline, bold, or reverse via <ESC>`5B#m
- X */
- X else if (!MOST_V_OPT && ch == '\033' && pos <= e - 2 &&
- X *pos == '`5B' &&
- X**************
- X*** 508,513
- X /*
- X ** `5EI (8 column tabs)
- X */
- X else if (ch == '\t' && (!MOST_T_OPT `7C`7C !MOST_V_OPT))
- X `7B
- X i = 8 * ((i - 1)/8 + 1) + 1;
- X--- 620,635 -----
- X /*
- X ** underline, bold, or reverse via <ESC>`5B#m
- X */
- X+ else if (!MOST_V_OPT && ch == '\033' && pos <= e - 2 &&
- X+ *pos == '`5B' &&
- X+ (*(pos + 1) == '1' `7C`7C *(pos + 1) == '4' `7C`7C
- X+ *(pos + 1) == '7' `7C`7C *(pos + 1) == '0') &&
- X+ *(pos + 2) == 'm')
- X+ i -= 3;
- X+`20
- X+ /*
- X+ ** `5EI (8 column tabs)
- X+ */
- X else if (ch == '\t' && (!MOST_T_OPT `7C`7C !MOST_V_OPT))
- X `7B
- X if (MOST_W_OPT && W_LINE)
- X**************
- X*** 510,516
- X */
- X else if (ch == '\t' && (!MOST_T_OPT `7C`7C !MOST_V_OPT))
- X `7B
- X! i = 8 * ((i - 1)/8 + 1) + 1;
- X `7D
- X /*
- X ** other control chars
- X--- 632,646 -----
- X */
- X else if (ch == '\t' && (!MOST_T_OPT `7C`7C !MOST_V_OPT))
- X `7B
- X! if (MOST_W_OPT && W_LINE)
- X! `7B
- X! if (i == 1)
- X! i += TAB_R;
- X! else
- X! i = 8 * ((i - 1)/8 + 1) + 1 + TAB_R;
- X! `7D
- X! else
- X! i = 8 * ((i - 1)/8 + 1) + 1;
- X `7D
- X `20
- X /*
- X**************
- X*** 512,517
- X `7B
- X i = 8 * ((i - 1)/8 + 1) + 1;
- X `7D
- X /*
- X ** other control chars
- X */
- X--- 642,648 -----
- X else
- X i = 8 * ((i - 1)/8 + 1) + 1;
- X `7D
- X+`20
- X /*
- X ** other escape or control chars
- X */
- X**************
- X*** 513,519
- X i = 8 * ((i - 1)/8 + 1) + 1;
- X `7D
- X /*
- X! ** other control chars
- X */
- X else if (ch < ' ' `7C`7C ch > 126)
- X `7B
- X--- 644,650 -----
- X `7D
- X `20
- X /*
- X! ** other escape or control chars
- X */
- X else if (ch < ' ' `7C`7C ch > 126)
- X `7B
- X**************
- X*** 518,526
- X else if (ch < ' ' `7C`7C ch > 126)
- X `7B
- X /*
- X! ** `5EL (linefeed) and `5EG (bell) are always
- X! ** displayed (as reverse video ch)
- X! ** otherwise control chars have no width
- X */
- X if (ch == '\014' `7C`7C ch == '\007' `7C`7C MOST_V_OPT)
- X `7B
- X--- 649,658 -----
- X else if (ch < ' ' `7C`7C ch > 126)
- X `7B
- X /*
- X! ** `5EG (bell) , `5EK (vertical tab), `5EL (linefeed) and
- X! ** `5E`5B (escape) not followed by `5B#m are always displ
- Vayed
- X! ** (as reverse video ch),
- X! ** otherwise non-Verbose control chars have no width
- X */
- X if (MOST_V_OPT `7C`7C ch == '\007' `7C`7C ch == '\013' `7C
- V`7C
- X ch == '\014' `7C`7C ch == '\033')
- X**************
- X*** 522,528
- X ** displayed (as reverse video ch)
- X ** otherwise control chars have no width
- X */
- X! if (ch == '\014' `7C`7C ch == '\007' `7C`7C MOST_V_OPT)
- X `7B
- X i++;
- X `7D
- X--- 654,661 -----
- X ** (as reverse video ch),
- X ** otherwise non-Verbose control chars have no width
- X */
- X! if (MOST_V_OPT `7C`7C ch == '\007' `7C`7C ch == '\013' `7C
- V`7C
- X! ch == '\014' `7C`7C ch == '\033')
- X `7B
- X i++;
- X `7D
- $ CALL UNPACK LINE_C.PAT;364 1365702257
- $ create 'f'
- X*** disk$disk1:`5Bflowers.swing.vmsnet`5Dlink_v5.com;2
- X--- disk$disk1:`5Bflowers.swing.src`5Dlink_v5.com;5
- X**************
- X*** 13,19
- X $ link/nouserlib/nodebug/traceback/nomap/exe=EXE:most.exe -
- X OBJ:main,OBJ:swing.olb/lib,SRC:most_options/opt
- X $ delete/nolog OBJ:main.obj;
- X! $ delete OBJ:swing.olb.*/nolog
- X $!
- X $ dir/siz/date EXE:Cswing.exe,Most.exe
- X $ set nover
- X--- 13,19 -----
- X $ link/nouserlib/nodebug/traceback/nomap/exe=EXE:most.exe -
- X OBJ:main,OBJ:swing.olb/lib,SRC:most_options/opt
- X $ delete/nolog OBJ:main.obj;
- X! $ delete/nolog OBJ:swing.olb;*
- X $!
- X $ dir/siz/date EXE:Cswing.exe,Most.exe
- X $ set nover
- $ CALL UNPACK LINK_V5_COM.PAT;364 1971275007
- $ create 'f'
- X*** disk$disk1:`5Bflowers.swing.vmsnet`5Dmain.c;2
- X--- disk$disk1:`5Bflowers.swing.src`5Dmain.c;3
- X**************
- X*** 1,4
- X! #define __MOST_VERSION__ "3.02FM"
- X #define __MOST_USAGE__ "most `5B-bcklstvw`5D `5B+line`5D `5B+/string`5D `5
- VB+d`5D filename `5Bfilename ...`5D"
- X /*
- X ** == Changes from original 3.01 to my 3.02 by Harry Flowers 08 Apr 1992 =
- V=
- X--- 1,4 -----
- X! #define __MOST_VERSION__ "3.03FM"
- X #define __MOST_USAGE__ "most `5B-bcklstvw`5D `5B+line`5D `5B+/string`5D `5
- VB+d`5D filename `5Bfilename ...`5D"
- X /*
- X ** == Changes from original 3.01 to my 3.02 by Harry Flowers 08 Apr 1992 =
- V=
- X**************
- X*** 36,42
- X ** Renamed some switches and toggles so that switches are all MOST_ch_OPT
- X ** and toggles have informative names. Made case-sensitivity of sear
- Vches
- X ** a regular (-c) rather than extended (+c) switch. Eliminated any c
- Vase-
- X! ** sensitivity for switch, toggle, or command letter throughout the
- X ** program.
- X ** If a new file is fetched from within MOST (`5EKG), it is now added to
- V the
- X ** ring buffer, along with those from the command line or CSWING call
- V.
- X--- 36,42 -----
- X ** Renamed some switches and toggles so that switches are all MOST_ch_OPT
- X ** and toggles have informative names. Made case-sensitivity of sear
- Vches
- X ** a regular (-c) rather than extended (+c) switch. Eliminated any c
- Vase-
- X! ** sensitivity for switch, toggle, or command letters throughout the
- X ** program.
- X ** If a new file is fetched from within MOST (`5EKG), it is now added to
- V the
- X ** ring buffer, along with those from the command line or CSWING call
- V.
- X**************
- X*** 47,61
- X ** in Verbose ASCII mode (`5Ech is still used in binary mode). Cntrl
- V-L
- X ** (linefeed) and cntrl-G (bell) are always displayed rather than act
- Ved
- X ** on in ASCII mode.
- X! ** Replaced the \ with reversed video \ as the indicator of position 80 o
- Vr
- X! ** 132 in Wrap mode. If non-printing control characters or escape
- X! ** sequences are present, the reversed-\ still stays on the 80th or 1
- V32nd
- X! ** character, rather than filling the line to the 80th or 132nd scree
- Vn
- X! ** column (i.e., such lines are short). You can then toggle to Verbo
- Vse
- X! ** mode (:O v) to see what the non-printing characters are, without a
- X! ** change in the wrapping positions (still screws up badly in Wrap mo
- Vde
- X! ** if bolding of line was intended via `5EM; improved but did not per
- Vfect
- X! ** handling of bolded or underlined characters via `5EH in Wrap mode)
- V.
- X ** Provided a MOST.DOC_FM with the switch/command changes documented.
- X **
- X ** `5BThis is the prominent modification notice required; see below.`
- V5D
- X--- 47,55 -----
- X ** in Verbose ASCII mode (`5Ech is still used in binary mode). Cntrl
- V-L
- X ** (linefeed) and cntrl-G (bell) are always displayed rather than act
- Ved
- X ** on in ASCII mode.
- X! ** Replaced the \ with reversed video \ as the indicator of wrap column
- X! ** and improved but did not perfect handling of bolded or underlined
- X! ** characters via `5EH or `5EM in Wrap mode).
- X ** Provided a MOST.DOC_FM with the switch/command changes documented.
- X **
- X ** == Changes from 3.02FM to 3.03FM by Foteos Macrides 28-Nov-1992 ==
- X**************
- X*** 58,63
- X ** handling of bolded or underlined characters via `5EH in Wrap mode)
- V.
- X ** Provided a MOST.DOC_FM with the switch/command changes documented.
- X **
- X ** `5BThis is the prominent modification notice required; see below.`
- V5D
- X */
- X /*
- X--- 52,74 -----
- X ** characters via `5EH or `5EM in Wrap mode).
- X ** Provided a MOST.DOC_FM with the switch/command changes documented.
- X **
- X+ ** == Changes from 3.02FM to 3.03FM by Foteos Macrides 28-Nov-1992 ==
- X+ **
- X+ ** Fixed bug in initialization of SEARCH_STR when called from CSWING.
- X+ ** Fixed bug getting last line of files in Binary mode.
- X+ ** Fixed bug in initialization of marks.
- X+ ** Modified Wrap mode to maintain a full screen width to the \ even if
- X+ ** non-printing control characters or escape sequences are present,
- X+ ** and to not wrap the last character in lines that are equal to the
- X+ ** screen width.
- X+ ** Corrected handling of underlining, bolding or reversing via `5EH, `5EM
- V or
- X+ ** <ESC>`5B#m (# = 1, 4, or 7) and debugged problems with tab expansi
- Vons.
- X+ ** Fixed searches to work properly in ASCII and Binary modes. Searches a
- Vre
- X+ ** disabled when the Selective Indentation Display is set, and approp
- Vriate
- X+ ** most_messages are issued if searches are requested.
- X+ ** Added lots more informational most_messages.
- X+ ** Updated MOST.DOC_FM.
- X+ **
- X ** `5BThis is the prominent modification notice required; see below.`
- V5D
- X */
- X /*
- X**************
- X*** 165,171
- X #include "sysdep.h"
- X #include "most.h"
- X `20
- X- int MOST_A_OPT = 0; /* automatically choose -b if necessary
- V */
- X int MOST_B_OPT = 0; /* display binary File
- V */
- X int MOST_C_OPT = 0; /* case-sensitive searches
- V */
- X int MOST_D_OPT = 0; /* delete file mode (see ':D')
- V */
- X--- 176,181 -----
- X #include "sysdep.h"
- X #include "most.h"
- X `20
- X int MOST_B_OPT = 0; /* display binary File
- V */
- X int MOST_C_OPT = 0; /* case-sensitive searches
- V */
- X int MOST_D_OPT = 0; /* delete file mode (see ':D')
- V */
- X**************
- X*** 235,243
- X `7B
- X switch (*str++)
- X `7B
- X- case 'a':
- X- case 'A':
- X- MOST_A_OPT = 1; break; /* check to see if file is binary
- V */
- X case 'b':
- X case 'B':
- X MOST_B_OPT = 1; break; /* binary display 8 bit */
- X--- 245,250 -----
- X `7B
- X switch (*str++)
- X `7B
- X case 'b':
- X case 'B':
- X MOST_B_OPT = 1; break; /* binary display 8 bit */
- X**************
- X*** 286,292
- X int main(int argc, char *argv`5B`5D)
- X `7B
- X char file`5B80`5D, *switches, filename`5B80`5D;
- X! int quit,i,piped,a_opt, j;
- X unsigned long context;
- X extern char *getenv(char *);
- X extern int isatty(int);
- X--- 293,299 -----
- X int main(int argc, char *argv`5B`5D)
- X `7B
- X char file`5B80`5D, *switches, filename`5B80`5D;
- X! int quit,i,piped,j;
- X unsigned long context;
- X extern char *getenv(char *);
- X extern int isatty(int);
- X**************
- X*** 322,328
- X /* assume input is from stdin */
- X file`5B0`5D = '\0'; /* tells most this is stdin */
- X piped = 1;
- X- MOST_A_OPT = 0; /* in this version since we cannot do an fseek
- V */
- X `7D
- X else
- X strcpy(file,argv`5Bi`5D);
- X--- 329,334 -----
- X /* assume input is from stdin */
- X file`5B0`5D = '\0'; /* tells most this is stdin */
- X piped = 1;
- X `7D
- X else
- X strcpy(file,argv`5Bi`5D);
- X**************
- X*** 332,339
- X `20
- X get_terminfo(); /* set up esc sequences etc... */
- X init_tty();`20
- X- if (MOST_B_OPT) MOST_A_OPT = 0; /* explicit b overrides a */
- X- a_opt = MOST_A_OPT;
- X `20
- X if (!piped)
- X `7B
- X--- 338,343 -----
- X `20
- X get_terminfo(); /* set up esc sequences etc... */
- X init_tty();`20
- X `20
- X if (!piped)
- X `7B
- X**************
- X*** 384,390
- X void most_less(int num_most_args, char *most_args`5B`5D)
- X `7B
- X char file`5B80`5D, *switches, filename`5B80`5D;
- X! int quit,i,piped,a_opt, j;
- X unsigned long context;
- X extern char *getenv(char *);
- X extern int isatty(int);
- X--- 388,394 -----
- X void most_less(int num_most_args, char *most_args`5B`5D)
- X `7B
- X char file`5B80`5D, *switches, filename`5B80`5D;
- X! int quit,i,piped,j;
- X unsigned long context;
- X extern char *getenv(char *);
- X extern int isatty(int);
- X**************
- X*** 393,399
- X /*
- X ** intitialize options and toggles for each call to interface
- X */
- X- MOST_A_OPT = 0; /* automatically choose -b if necessary
- V */
- X MOST_B_OPT = 0; /* display binary File
- V */
- X MOST_C_OPT = 0; /* case-sensitive searches
- V */
- X MOST_D_OPT = 0; /* delete file mode (see ':D')
- V */
- X--- 397,402 -----
- X /*
- X ** intitialize options and toggles for each call to interface
- X */
- X MOST_B_OPT = 0; /* display binary File
- V */
- X MOST_C_OPT = 0; /* case-sensitive searches
- V */
- X MOST_D_OPT = 0; /* delete file mode (see ':D')
- V */
- X**************
- X*** 405,411
- X MOST_W_OPT = 0; /* wrap lines
- V */
- X STARTING_LINE = 1; /* starting line for initial display
- V */
- X SEARCH_DIR = 1; /* for toggling direction of string searches
- V */
- X! SEARCH_STR`5B80`5D = '\0'; /* for setting starting line based on a s
- Vtring */
- X SELECTIVE_I_DISPLAY = 0; /* selective indentation display
- V */
- X NEXT_RING_FILE = 1; /* for cycling through file ring
- V */
- X `20
- X--- 408,414 -----
- X MOST_W_OPT = 0; /* wrap lines
- V */
- X STARTING_LINE = 1; /* starting line for initial display
- V */
- X SEARCH_DIR = 1; /* for toggling direction of string searches
- V */
- X! SEARCH_STR`5B0`5D = '\0'; /* for setting starting line based on a s
- Vtring */
- X SELECTIVE_I_DISPLAY = 0; /* selective indentation display
- V */
- X NEXT_RING_FILE = 1; /* for cycling through file ring
- V */
- X `20
- X**************
- X*** 429,436
- X `20
- X get_terminfo(); /* set up esc sequences etc... */
- X init_tty();`20
- X- if (MOST_B_OPT) MOST_A_OPT = 0; /* explicit b overrides a */
- X- a_opt = MOST_A_OPT;
- X `20
- X #ifdef VMS
- X /* note short circuit evaluation is crucial here */
- X--- 432,437 -----
- X `20
- X get_terminfo(); /* set up esc sequences etc... */
- X init_tty();`20
- X `20
- X #ifdef VMS
- X /* note short circuit evaluation is crucial here */
- $ CALL UNPACK MAIN_C.PAT;364 1179850251
- $ create 'f'
- X*** disk$disk1:`5Bflowers.swing.vmsnet`5Dmost.doc_fm;363
- X--- disk$disk1:`5Bflowers.swing.src`5Dmost.doc_fm;3
- X**************
- X*** 1,4
- X! MOST(3.02FM) 10-10-92
- X `20
- X NAME
- X `20
- X--- 1,4 -----
- X! MOST(3.03FM) 11-28-92
- X `20
- X NAME
- X `20
- X**************
- X*** 11,19
- X DESCRIPTION
- X `20
- X MOST is a paging program that displays, one windowful at a time, the
- X! contents of a file on a vtxxx compatable terminal. It pauses after
- X! each windowful and prints on the window status line of the screen
- X! the file name, current line number, and the percentage of the file
- X so far displayed.
- X `20
- X Unlike other paging programs, MOST is capable of displaying an
- X--- 11,19 -----
- X DESCRIPTION
- X `20
- X MOST is a paging program that displays, one windowful at a time, the
- X! contents of a file on a vtxxx compatable terminal. It pauses after
- X! each windowful and prints on the window status line of the screen
- X! the file name, current line number, and the percentage of the file
- X so far displayed.
- X `20
- X Unlike other paging programs, MOST is capable of displaying an
- X**************
- X*** 16,22
- X the file name, current line number, and the percentage of the file
- X so far displayed.
- X `20
- X! Unlike other paging programs, MOST is capable of displaying an
- X arbitrary number of windows as long as each window occupies at least
- X two screen lines. Each window may contain the same file or a
- X different file. In addition, each window has its own mode. For
- X--- 16,22 -----
- X the file name, current line number, and the percentage of the file
- X so far displayed.
- X `20
- X! Unlike other paging programs, MOST is capable of displaying an
- X arbitrary number of windows as long as each window occupies at least
- X two screen lines. Each window may contain the same file or a
- X different file. In addition, each window has its own mode. For
- X**************
- X*** 18,27
- X `20
- X Unlike other paging programs, MOST is capable of displaying an
- X arbitrary number of windows as long as each window occupies at least
- X! two screen lines. Each window may contain the same file or a
- X! different file. In addition, each window has its own mode. For
- X! example, one window may display a file with its lines wrapped while
- X! another may be truncating the lines. Windows may be `60locked
- V'
- X together in the sense that if one of the locked windows scrolls, all
- X locked windows will scroll. MOST is also capable of ignoring lines
- X that are indented beyond a user specified value. This is useful
- X--- 18,27 -----
- X `20
- X Unlike other paging programs, MOST is capable of displaying an
- X arbitrary number of windows as long as each window occupies at least
- X! two screen lines. Each window may contain the same file or a
- X! different file. In addition, each window has its own mode. For
- X! example, one window may display a file with its lines wrapped while
- X! another may be truncating the lines. Windows may be `60locked
- V'
- X together in the sense that if one of the locked windows scrolls, all
- X locked windows will scroll. MOST is also capable of ignoring lines
- X that are indented beyond a user specified value. This is useful
- X**************
- X*** 23,31
- X example, one window may display a file with its lines wrapped while
- X another may be truncating the lines. Windows may be `60locked
- V'
- X together in the sense that if one of the locked windows scrolls, all
- X! locked windows will scroll. MOST is also capable of ignoring lines
- X! that are indented beyond a user specified value. This is useful
- X! when viewing computer programs to pick out gross features of the
- X code. See the `60:O' command for a description of this feature.
- X `20
- X In addition to displaying ordinary text files, MOST can also display
- X--- 23,31 -----
- X example, one window may display a file with its lines wrapped while
- X another may be truncating the lines. Windows may be `60locked
- V'
- X together in the sense that if one of the locked windows scrolls, all
- X! locked windows will scroll. MOST is also capable of ignoring lines
- X! that are indented beyond a user specified value. This is useful
- X! when viewing computer programs to pick out gross features of the
- X code. See the `60:O' command for a description of this feature.
- X `20
- X In addition to displaying ordinary text files, MOST can also display
- X**************
- X*** 30,36
- X `20
- X In addition to displaying ordinary text files, MOST can also display
- X binary files as well as files with arbitrary ascii characters. When
- X! a file is read into a buffer, MOST examines the first 32 bytes of
- X the file to determine if the file is a binary file and then switches
- X to the appropriate mode. However, this feature may be disabled with
- X the -k option. See the description of the -b, -k, -v. and -t
- X--- 30,36 -----
- X `20
- X In addition to displaying ordinary text files, MOST can also display
- X binary files as well as files with arbitrary ascii characters. When
- X! a file is read into a buffer, MOST examines the first 32 bytes of
- X the file to determine if the file is a binary file and then switches
- X to the appropriate mode. However, this feature may be disabled with
- X the -k option. See the description of the -b, -k, -v, and -t
- X**************
- X*** 33,39
- X a file is read into a buffer, MOST examines the first 32 bytes of
- X the file to determine if the file is a binary file and then switches
- X to the appropriate mode. However, this feature may be disabled with
- X! the -k option. See the description of the -b, -k, -v. and -t
- X options for further details.
- X `20
- X Text files may contain combinations of underscore and backspace
- X--- 33,39 -----
- X a file is read into a buffer, MOST examines the first 32 bytes of
- X the file to determine if the file is a binary file and then switches
- X to the appropriate mode. However, this feature may be disabled with
- X! the -k option. See the description of the -b, -k, -v, and -t
- X options for further details.
- X `20
- X Text files may contain combinations of underscore (_`5EHch where '_
- V'
- X**************
- X*** 36,45
- X the -k option. See the description of the -b, -k, -v. and -t
- X options for further details.
- X `20
- X! Text files may contain combinations of underscore and backspace
- X! characters causing a printer to underline or overstrike. When MOST
- X! recognizes this, it inserts the appropriate escape sequences to
- X! achieve the desired effect on vtxxx compatable terminals. In
- X addition, some files cause the printer to overstrike some characters
- X by embedding carriage return characters in the middle of a line.
- X When this occurs, MOST displays the ovestruck character with a bold
- X--- 36,46 -----
- X the -k option. See the description of the -b, -k, -v, and -t
- X options for further details.
- X `20
- X! Text files may contain combinations of underscore (_`5EHch where '_
- V'
- X! is underscore and 'ch' is a character) and backspace characters
- X! (ch`5EHch) causing a printer to underline or overstrike. When MOS
- VT
- X! recognizes this, it inserts the appropriate escape sequences to
- X! achieve the desired effect on vtxxx compatable terminals. In
- X addition, some files cause the printer to overstrike some characters
- X by embedding a carriage return character (`5EM) in the middle of
- V a
- X line. When this occurs, MOST displays the overstruck character with
- X**************
- X*** 41,53
- X recognizes this, it inserts the appropriate escape sequences to
- X achieve the desired effect on vtxxx compatable terminals. In
- X addition, some files cause the printer to overstrike some characters
- X! by embedding carriage return characters in the middle of a line.
- X! When this occurs, MOST displays the ovestruck character with a bold
- X! attribute. This feature facilitates the reading of unix man pages
- X! or a document produced by RUNOFF. In particular, viewing this
- X! document with MOST should illustrate this behavior provided that the
- X! underline characters have not been stripped. This may be turned off
- X! with the -v option.
- X `20
- X By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X--- 42,58 -----
- X recognizes this, it inserts the appropriate escape sequences to
- X achieve the desired effect on vtxxx compatable terminals. In
- X addition, some files cause the printer to overstrike some characters
- X! by embedding a carriage return character (`5EM) in the middle of
- V a
- X! line. When this occurs, MOST displays the overstruck character with
- X! a bold attribute. This feature facilitates the reading of unix man
- X! pages or a document produced by RUNOFF. Text files also can contain
- X! the vt100 escape sequences: `5E`5B`5B1m (bold), `5E`5B`5B4m (underl
- Vine), `5E`5B`5B7m
- X! (reverse video), and `5E`5B`5B0m (normal). Interpretation of the co
- Vntrol
- X! characters and escape sequences may be turned off with the -v option
- X! or :Ov toggle (Verbose, see below). Other vt100 escape sequences
- X! and the control characters `5EG (bell), `5EK (vertical tab) and
- V `5EL
- X! (linefeed) are made Verbose by default when encountered in text
- X! files.
- X `20
- X By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X**************
- X*** 49,55
- X underline characters have not been stripped. This may be turned off
- X with the -v option.
- X `20
- X! By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X is indicated by a reverse video `60>' in the far right column of th
- Ve
- X terminal screen. The RIGHT and LEFT arrow keys may be used to view
- X--- 54,60 -----
- X (linefeed) are made Verbose by default when encountered in text
- X files.
- X `20
- X! By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X is indicated by a reverse video `60>' in the far right column of th
- Ve
- X terminal screen. The RIGHT and LEFT arrow keys may be used to view
- X**************
- X*** 51,62
- X `20
- X By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X! is indicated by a reverse video `60>' in the far right column of th
- Ve
- X! terminal screen. The RIGHT and LEFT arrow keys may be used to view
- X! lines which extend past the margins of the screen. The -w option
- X! may be used to override this feature. When a window is wrapped,
- X! the character `60\' will appear in reverse video at the right edge o
- Vf
- X! the window.
- X `20
- X Commands are listed below.
- X `20
- X--- 56,67 -----
- X `20
- X By default, lines with more characters than the terminal width are
- X not wrapped but are instead truncated. When truncation occurs, this
- X! is indicated by a reverse video `60>' in the far right column of th
- Ve
- X! terminal screen. The RIGHT and LEFT arrow keys may be used to view
- X! lines which extend past the margins of the screen. The -w option
- X! may be used to override this feature. When a window is wrapped, the
- X! character `60\' will appear in reverse video at the right edge of th
- Ve
- X! window.
- X `20
- X Commands are listed below.
- X `20
- X**************
- X*** 62,71
- X `20
- X OPTIONS
- X `20
- X! -b binary mode. Use this switch when you want to view files
- X! containing 8 bit characters. MOST will display the file
- X! 16 bytes per line in hexidecimal notation. A typical line
- X! looks like:
- X `20
- X 01000000 40001575 9C23A020 4000168D ....@..u.#. @...
- X `20
- X--- 67,76 -----
- X `20
- X OPTIONS
- X `20
- X! -b Binary mode. Use this switch when you want to view files
- X! containing 8 bit characters. MOST will display the file 16
- X! bytes per line in hexidecimal notation. A typical line looks
- X! like:
- X `20
- X 01000000 40001575 9C23A020 4000168D ....@..u.#. @...
- X `20
- X**************
- X*** 75,85
- X `20
- X -c Make searches case sensitive. By default, they are not.
- X `20
- X! -k `60Kanji' option. Ordinarily, MOST will go into binary mode
- X! if the file consists of non-ascii characters. Sometimes
- X! this feature is not desirable since some terminals have a
- X! special interpretation for eight bit characters. The -k
- X! option turns off the automatic sensing.
- X `20
- X -l Use `5EL (formfeed) to clear screen.
- X `20
- X--- 80,90 -----
- X `20
- X -c Make searches case sensitive. By default, they are not.
- X `20
- X! -k `60Kanji' option. Ordinarily, MOST will go into binary mode i
- Vf
- X! the file consists of non-ascii characters. Sometimes this
- X! feature is not desirable since some terminals have a special
- X! interpretation for eight bit characters. The -k option turns
- X! off the automatic sensing.
- X `20
- X -l Use `5EL (formfeed) to clear screen.
- X `20
- X**************
- X*** 83,89
- X `20
- X -l Use `5EL (formfeed) to clear screen.
- X `20
- X! -s Squeeze. Replace multiple blank lines with a single blank
- X line.
- X `20
- X -t Display tabs as reversed video `60I'. This option is acted
- X--- 88,94 -----
- X `20
- X -l Use `5EL (formfeed) to clear screen.
- X `20
- X! -s Squeeze. Replace multiple blank lines with a single blank
- X line.
- X `20
- X -t Display tabs as reverse video `60I'. This option is acted o
- Vn
- X**************
- X*** 86,93
- X -s Squeeze. Replace multiple blank lines with a single blank
- X line.
- X `20
- X! -t Display tabs as reversed video `60I'. This option is acted
- X! on only when used with the -v option.
- X `20
- X -v Verbose. Display control characters in reverse video, e.g.
- X control-A is displayed as a reverse video 'A'. Normally
- X--- 91,98 -----
- X -s Squeeze. Replace multiple blank lines with a single blank
- X line.
- X `20
- X! -t Display tabs as reverse video `60I'. This option is acted o
- Vn
- X! only when used with the -v option.
- X `20
- X -v Verbose. Display control characters in reverse video, e.g.
- X CONTROL_H is displayed as a reverse video 'H'. Normally MOST
- X**************
- X*** 89,97
- X -t Display tabs as reversed video `60I'. This option is acted
- X on only when used with the -v option.
- X `20
- X! -v Verbose. Display control characters in reverse video, e.g.
- X! control-A is displayed as a reverse video 'A'. Normally
- X! MOST interprets control characters.
- X `20
- X -w Wrap lines within window.
- X `20
- X--- 94,104 -----
- X -t Display tabs as reverse video `60I'. This option is acted o
- Vn
- X only when used with the -v option.
- X `20
- X! -v Verbose. Display control characters in reverse video, e.g.
- X! CONTROL_H is displayed as a reverse video 'H'. Normally MOST
- X! interprets legitimate control characters and escape sequences
- X! (see above) and does not display ones which would not modify
- X! the screen output.
- X `20
- X -w Wrap lines within window.
- X `20
- X**************
- X*** 101,111
- X +/string
- X Start up at the line containing the first occurence of string.
- X `20
- X! +d This switch should only be used if you want the option to
- X! delete a file while viewing it. This makes it easier to
- X! clean unwanted files out of a directory. The file is
- X! deleted with the interactive key sequence `60:D' and then
- X! confirming with `60y'.
- X `20
- X USAGE
- X Environment
- X--- 108,117 -----
- X +/string
- X Start up at the line containing the first occurence of string.
- X `20
- X! +d This switch should only be used if you want the option to
- X! delete a file while viewing it. This makes it easier to clean
- X! unwanted files out of a directory. The file is deleted with
- X! the interactive key sequence `60:D' and then confirming with `60
- Vy'.
- X `20
- X USAGE
- X Environment
- X**************
- X*** 114,124
- X `20
- X MOST_SWITCHES
- X `20
- X! This logical sets commonly used switches. For example, you
- X! might wish to use MOST with the -c option so that searches
- X! are case sensitive. Some people prefer to use MOST with the
- X! -s option so that excess blank lines are not displayed. On
- X! VMS this is normally done in the login.com through the line:
- X `20
- X $ define MOST_SWITCHES "-cs"
- X `20
- X--- 120,130 -----
- X `20
- X MOST_SWITCHES
- X `20
- X! This logical sets commonly used switches. For example, you
- X! might wish to use MOST with the -c option so that searches are
- X! case sensitive. Some people prefer to use MOST with the -s
- X! option so that excess blank lines are not displayed. On VMS
- X! this is normally done in the login.com through the line:
- X `20
- X $ define MOST_SWITCHES "-cs"
- X `20
- X**************
- X*** 124,137
- X `20
- X MOST_EDITOR (VMS only)
- X `20
- X! Set this logical to one of three callable editors (EDT, TPU,
- X! or EMACS), or to one that can be invoked via a spawn (e.g.,
- X! SEDT). The default is EDT. Since VMS does not support
- X! callable EMACS, MOST will attempt to attach to a kept EMACS.
- X! For this case, MOST looks for the logical name EMACS_PID and
- X! attaches to the process with that pid. It then defines the
- X! logicals EMACS_FILE_NAME and EMACS_FILE_LINE which EMACS can
- X! check upon attaching to it.
- X `20
- X MOST_HELP
- X `20
- X--- 130,143 -----
- X `20
- X MOST_EDITOR (VMS only)
- X `20
- X! Set this logical to one of three callable editors (EDT, TPU, or
- X! EMACS), or to one that can be invoked via a spawn (e.g., SEDT).
- X! The default is EDT. Since VMS does not support callable EMACS,
- X! MOST will attempt to attach to a kept EMACS. For this case,
- X! MOST looks for the logical name EMACS_PID and attaches to the
- X! process with that pid. It then defines the logicals
- X! EMACS_FILE_NAME and EMACS_FILE_LINE which EMACS can check upon
- X! attaching to it.
- X `20
- X MOST_HELP
- X `20
- X**************
- X*** 135,146
- X `20
- X MOST_HELP
- X `20
- X! This logical should point to the MOST helpfile (MOST.DOC_FM).
- X! If help.c was compiled with the logical MOST_HELP_USE_DOC
- X! defined the help command (H or ?) will invoke a window in
- X! which the helpfile will be placed. If the compilation logical
- X! was not defined, a short help summary will be displayed, and
- X! there is no need to define the MOST_HELP environment logical.
- X `20
- X Command Usage
- X `20
- X--- 141,152 -----
- X `20
- X MOST_HELP
- X `20
- X! This logical should point to the MOST helpfile (MOST.DOC_FM).
- X! If help.c was compiled with the logical MOST_HELP_USE_DOC
- X! defined, the help command (H or ?) will invoke a window in which
- X! the helpfile will be placed. If the compilation logical was not
- X! defined, a short help summary will be displayed, and there is no
- X! need to define the MOST_HELP environment logical.
- X `20
- X Command Usage
- X `20
- X**************
- X*** 144,151
- X `20
- X Command Usage
- X `20
- X! The commands take effect immediately. It is not necessary to
- X! type a carriage return. Command keys are case-insensitive.
- X `20
- X In the following commands, # is a numerical argument (1 by
- X default). A '->' is used to indicate that a pair of command
- X--- 150,157 -----
- X `20
- X Command Usage
- X `20
- X! The commands take effect immediately. It is not necessary to type a
- X! carriage return. Command keys are case-insensitive.
- X `20
- X In the following commands, # is a numerical argument (1 or 0, as
- X appropriate, by default). A '->' is used to indicate that a pair of
- X**************
- X*** 147,155
- X The commands take effect immediately. It is not necessary to
- X type a carriage return. Command keys are case-insensitive.
- X `20
- X! In the following commands, # is a numerical argument (1 by
- X! default). A '->' is used to indicate that a pair of command
- X! keys should be entered in sequence.
- X `20
- X NEXT_SCREEN, N, CONTROL_N, SPACE
- X `20
- X--- 153,161 -----
- X The commands take effect immediately. It is not necessary to type a
- X carriage return. Command keys are case-insensitive.
- X `20
- X! In the following commands, # is a numerical argument (1 or 0, as
- X! appropriate, by default). A '->' is used to indicate that a pair of
- X! command keys should be entered in sequence.
- X `20
- X NEXT_SCREEN, N, CONTROL_N, SPACE
- X `20
- X**************
- X*** 153,159
- X `20
- X NEXT_SCREEN, N, CONTROL_N, SPACE
- X `20
- X! Display another windowful, or jump # windowfuls if # is
- X specified.
- X `20
- X PREV_SCREEN, P, CONTROL_P
- X--- 159,165 -----
- X `20
- X NEXT_SCREEN, N, CONTROL_N, SPACE
- X `20
- X! Display another windowful, or jump # windowfuls if # is
- X specified.
- X `20
- X PREV_SCREEN, P, CONTROL_P
- X**************
- X*** 158,164
- X `20
- X PREV_SCREEN, P, CONTROL_P
- X `20
- X! Skip back # windowfuls and then display a windowful.
- X `20
- X DOWN_ARROW, D, CONTROL_D, J, CONTROL_J
- X `20
- X--- 164,170 -----
- X `20
- X PREV_SCREEN, P, CONTROL_P
- X `20
- X! Skip back # windowfuls and then display a windowful.
- X `20
- X DOWN_ARROW, D, CONTROL_D, J, CONTROL_J
- X `20
- X**************
- X*** 170,176
- X `20
- X RIGHT_ARROW, >, TAB, CONTROL_I
- X `20
- X! Scroll window left 59# columns to view lines that are
- X beyond the right margin of the window.
- X `20
- X LEFT_ARROW, <
- X--- 176,182 -----
- X `20
- X RIGHT_ARROW, >, TAB, CONTROL_I
- X `20
- X! Scroll window left 59# columns to view lines that are
- X beyond the right margin of the window.
- X `20
- X LEFT_ARROW, <
- X**************
- X*** 175,181
- X `20
- X LEFT_ARROW, <
- X `20
- X! Scroll window right 59# columns to view lines that are
- X beyond the left margin of the window.
- X `20
- X CONTROL_W, CONTROL_R
- X--- 181,187 -----
- X `20
- X LEFT_ARROW, <
- X `20
- X! Scroll window right 59# columns to view lines that are
- X beyond the left margin of the window.
- X `20
- X CONTROL_W, CONTROL_R
- X**************
- X*** 182,189
- X `20
- X Redraw the window.
- X `20
- X! G If # is not specified, then prompt for a line number
- X! then jump to that line otherwise just jump to line #.
- X `20
- X % If # is not specified, then prompt for a percent number
- X then jump to that percent of the file otherwise just
- X--- 188,195 -----
- X `20
- X Redraw the window.
- X `20
- X! G If # is not specified, then prompt for a line number then
- X! jump to that line, otherwise just jump to line #.
- X `20
- X % If # is not specified, then prompt for a percent number
- X then jump to that percent of the file, otherwise just jump
- X**************
- X*** 185,193
- X G If # is not specified, then prompt for a line number
- X then jump to that line otherwise just jump to line #.
- X `20
- X! % If # is not specified, then prompt for a percent number
- X! then jump to that percent of the file otherwise just
- X! jump to # percent of the file.
- X `20
- X W If the current screen width is 80, make it 132 and
- X vica-versa. For other values, this command is ignored.
- X--- 191,199 -----
- X G If # is not specified, then prompt for a line number then
- X jump to that line, otherwise just jump to line #.
- X `20
- X! % If # is not specified, then prompt for a percent number
- +-+-+-+-+-+-+-+- END OF PART 2 +-+-+-+-+-+-+-+-
-
-