home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / editor / stevie / version.c < prev   
Text File  |  1994-01-31  |  15KB  |  321 lines

  1. static    char    RCSid[] =
  2. "$Header: /nw/tony/src/stevie/src/RCS/version.c,v 3.69 89/08/13 11:41:58 tony Exp $";
  3.  
  4. /*
  5.  * Contains the declaration of the global version number variable.
  6.  *
  7.  * $Log:    version.c,v $
  8.  *
  9.  * Revision 3.69grr  91/10/08          Greg Roelofs
  10.  *   -  Fixed several errors (typos) in os2.c.
  11.  *   -  Created new OS/2 makefile for use with MSC's NMAKE; fixed
  12.  *      some errors (notably, lack of regexp and regsub).
  13.  *   -  Added a module definition file and made use of Kai Uwe Rommel's 
  14.  *      IsFileSystemFAT() code in os2.c to allow for HPFS long filenames.
  15.  *   -  ifdef'd out the vbeep code, since it doesn't seem to do anything
  16.  *      under OS/2's ANSI driver (OS/2 1.30.1 XR05015).
  17.  *
  18.  * Revision 3.69b  90/04/24            David Kirschbaum
  19.  * Had to do minor tweaks to reduce/remove Turbo C v2.0 error and 
  20.  * warning messages.  Also enabled BIOS (instead of NANSI) screen 
  21.  * I/O and HELP (for ":help" inline help .. nice!).  [Executable
  22.  * uploaded to Simtel & wuarchive as {...}msdos/editor/stevi69x.zip]
  23.  *
  24.  * Revision 3.69a  90/02/04            dave
  25.  * A couple of minor bugfixes, and a whole load of enhancements:
  26.  *   -    Added tag-stacking.
  27.  *   -    Added searches for sentences and paragraphs.
  28.  *   -    Enhancements to "help" command:
  29.  *     . Navigation of help screens, not just next-screen.
  30.  *     . Index of help screens.
  31.  *     . Screen for MSDOS-specific features.
  32.  *     . Screen for :set commands.
  33.  *     . A little context-sensitivity.
  34.  *   -    File mode is preserved (it wasn't in previous versions).
  35.  *   -    UNIX-like specifications of environments variables are expanded
  36.  *    in file names.  (E.g.- you can say  :e $HOME/autoexec.bat)
  37.  *   -    PC keys for Insert & Delete now work.
  38.  *   -    Ported to Turbo C for the PC.
  39.  *   -    Integrated Larry Shurr's BIOS option for the PC.
  40.  *   -    Added color and multi-line options for the PC, and hooks for them
  41.  *    in other systems.
  42.  *   -    Made "ctags" a little more general.
  43.  *
  44.  * Revision 3.69  89/08/13  11:41:58  tony
  45.  * Fixed a bug that caused messages from fileinfo() (in misccmds.c) to get
  46.  * screwed up. The routine smsg() which uses the kludge approach to varargs
  47.  * didn't have enough parameters for some of the calls made to it.
  48.  *
  49.  * Revision 3.68  89/08/06  09:51:20  tony
  50.  * Misc. minor changes to make lint happier before posting to USENET.
  51.  * 
  52.  * Revision 3.67  89/08/03  13:08:52  tony
  53.  * There was some code in ops.c that was duplicating the function of the
  54.  * getcmdln() routine in cmdline.c. I modified getcmdln() to be slightly
  55.  * more general, and changed dofilter() in ops.c to use it.
  56.  * 
  57.  * Revision 3.66  89/08/02  20:00:12  tony
  58.  * Fixed some problems with mode lines. There were still extra screen
  59.  * redraws that needed to be avoided. There was also a problem involving
  60.  * nested calls to docmdln() that can occur when mode lines are used.
  61.  * 
  62.  * Revision 3.65  89/08/02  15:50:03  tony
  63.  * Finally got around to providing full support for the "change" operator.
  64.  * Multi-line changes (like "cL" or "3cc") now work correctly. Also fixed
  65.  * a small problem with multi-line character-oriented deletes leaving the
  66.  * cursor in the wrong location (off by one character). This is mainly
  67.  * useful for multi-line changes (such as "c%") so the insert starts in
  68.  * the right place.
  69.  * 
  70.  * Revision 3.64  89/08/02  12:47:04  tony
  71.  * This message intentionally left blank.
  72.  * 
  73.  * Revision 3.63  89/08/02  12:43:44  tony
  74.  * I just noticed that I had used the RCS cookie for log messages in one
  75.  * of my prior version messages. This caused these version update messages
  76.  * to be duplicated in this file. I just removed that string, and the
  77.  * extra message copies that had been generated.
  78.  * 
  79.  * Revision 3.62  89/08/02  12:26:20  tony
  80.  * The ^G command now shows where you are in the file list, if more than one
  81.  * file is being edited. Also, the commands ":e#" and ":e!#" (note the lack
  82.  * of a space between the command and file name) will now work.
  83.  *
  84.  * Revision 3.61  89/08/02  11:03:16  tony
  85.  * Misc. cleanups regarding tags. Also added support for the "terse" option.
  86.  * This is ignored, but improves compatibility with vi, since we no longer
  87.  * complain about an unknown option if "terse" is used.
  88.  * 
  89.  * Revision 3.60  89/08/02  09:26:39  tony
  90.  * Added code to avoid screen redraws when input is being read from the
  91.  * "stuffin" buffer. This avoids extra redraws when switching to the
  92.  * alternate file, or when invoking the editor with one of the "+" options,
  93.  * or when using tags.
  94.  *
  95.  * Revision 3.59  89/08/01  16:28:31  tony
  96.  * Added better support for counts on several cursor motion commands. These
  97.  * include ^F, ^B, f, F, t, T, as well as the repeated character search
  98.  * commands (command and semi-colon).
  99.  *
  100.  * Revision 3.58  89/07/19  08:08:23  tony
  101.  * Added the ability for '~' to be an operator. If enabled (by defined TILDEOP
  102.  * in env.h), the parameter "tildeop" (or "to") may be set to turn tilde into
  103.  * an operator.
  104.  * 
  105.  * Revision 3.57  89/07/13  22:47:05  tony
  106.  * Made some generic speed improvements in screen.c and some TOS-specific
  107.  * improvements in tos.c. The TOS version is now much faster at screen
  108.  * updates than before.
  109.  * 
  110.  * Revision 3.56  89/07/13  14:52:03  tony
  111.  * Minor cleanups in normal.c
  112.  * 
  113.  * Revision 3.55  89/07/13  14:19:12  tony
  114.  * Cleaned up the logic in getcmdln() A LOT. The routine docmdln() needs a
  115.  * similar overhaul.
  116.  *
  117.  * Revision 3.54  89/07/12  21:40:01  tony
  118.  * Lots of misc. cleanup in normal.c and cmdline.c, but nothing much in the
  119.  * way of functional improvements. One change is that things like d/foo<CR>
  120.  * will now work since searches are less of a special case now.
  121.  * 
  122.  * Revision 3.53  89/07/11  16:16:08  tony
  123.  * Added general support for interrupt-handling for those environments that
  124.  * can actually generate them. Basically, long-running operations are now
  125.  * able to terminate early if an error occurs. These operations are: string
  126.  * searches, the global command (":g/.../"), and file reads. File writes
  127.  * should probably be done as well, but this is more dangerous. In all cases,
  128.  * the user is given an indication on the status line that the operation
  129.  * terminated due to an interrupt.
  130.  * 
  131.  * Revision 3.52  89/07/11  12:35:09  tony
  132.  * Improved the code in dosub() and doglob() that detects quoted characters
  133.  * and delimiters in search strings and replacement patterns. The current
  134.  * code didn't allow certain valid strings to be used. The delimiter is still
  135.  * required to be '/', but it can be quoted reliably now with backslash.
  136.  * 
  137.  * Revision 3.51  89/07/10  14:01:58  tony
  138.  * Removed the function addtobuff() since it was rarely used and could be
  139.  * replaced by calls to other library functions. Also removed some other
  140.  * obsolete code that was already ifdef'd out anyway.
  141.  * 
  142.  * Revision 3.50  89/07/10  13:10:32  tony
  143.  * Added a workaround in normal.c to avoid problems with broken versions of
  144.  * strncpy() that don't properly deal with a count of zero.
  145.  *
  146.  * Revision 3.49  89/07/07  16:28:37  tony
  147.  * Fixed a long-standing bug with 'cw' when the cursor is positioned on a
  148.  * word with only one character. Also fixed a problems with zero-length files
  149.  * and reverse searches.
  150.  *
  151.  * Revision 3.48  89/03/22  10:26:58  tony
  152.  * Fixed some outdated uses of the ":p" command (which has been changed to
  153.  * ":N" in os2.c and dos.c. Also added macros (F7 and F8) for dos and os/2
  154.  * to use the "cdecl" program to convert lines to and from a pseudo-english
  155.  * form. Use F7 to "explain" the declaration on the current line, and F8 to
  156.  * convert an english-style declaration to the C form. In both cases, the
  157.  * new form is placed on the next line, leaving the original line intact.
  158.  * 
  159.  * Revision 3.47  89/03/11  22:44:14  tony
  160.  * General cleanup. Removed the static "rcsid" variables and the log
  161.  * strings (except in version.c). Fixed some coding style inconsistencies
  162.  * and added a few register declarations.
  163.  * 
  164.  * Revision 3.46  89/02/14  09:52:07  tony
  165.  * Made a first pass at adding Robert Regn's changes, starting with the
  166.  * more portable ones. Added better support for '#' and '%' in colon
  167.  * commands, support for a configurable temp directory, and made the
  168.  * termcap code less picky about capabilities.
  169.  * 
  170.  * Revision 3.45  88/11/10  09:00:06  tony
  171.  * Added support for mode lines. Strings like "vi:stuff:" or "ex:stuff:"
  172.  * occurring in the first or last 5 lines of a file cause the editor to
  173.  * pretend that "stuff" was types as a colon command. This examination
  174.  * is done only if the parameter "modelines" (or "ml") is set. This is
  175.  * not enabled, by default, because of the security implications involved.
  176.  * 
  177.  * Revision 3.44  88/11/01  21:34:11  tony
  178.  * Fixed a couple of minor points for Minix, and improved the speed of
  179.  * the 'put' command dramatically.
  180.  * 
  181.  * Revision 3.43  88/10/31  13:11:33  tony
  182.  * Added optional support for termcap. Initialization is done in term.c
  183.  * and also affects the system-dependent files. To enable termcap in those
  184.  * environments that support it, define the symbol "TERMCAP" in env.h
  185.  *
  186.  * Revision 3.42  88/10/27  18:30:19  tony
  187.  * Removed support for Megamax. Added '%' as an alias for '1,$'. Made the
  188.  * 'r' command more robust. Now prints the string on repeated searches.
  189.  * The ':=" command now works. Some pointer operations are now safer.
  190.  * The ":!" and ":sh" now work correctly. Re-organized the help screens
  191.  * a little.
  192.  * 
  193.  * Revision 3.41  88/10/06  10:15:00  tony
  194.  * Fixed a bug involving ^Y that occurs when the cursor is on the last
  195.  * line, and the line above the screen is long. Also hacked up fileio.c
  196.  * to pass pathnames off to fixname() for system-dependent processing.
  197.  * Used under DOS & OS/2 to trim parts of the name appropriately.
  198.  * 
  199.  * Revision 3.40  88/09/16  08:37:36  tony
  200.  * No longer beeps when repeated searches fail.
  201.  *
  202.  * Revision 3.39  88/09/06  06:51:07  tony
  203.  * Fixed a bug with shifts that was introduced when replace mode was added.
  204.  * 
  205.  * Revision 3.38  88/08/31  20:48:28  tony
  206.  * Made another fix in search.c related to repeated searches.
  207.  * 
  208.  * Revision 3.37  88/08/30  20:37:16  tony
  209.  * After much prodding from Mark, I finally added support for replace mode.
  210.  * 
  211.  * Revision 3.36  88/08/26  13:46:34  tony
  212.  * Added support for the '!' (filter) operator.
  213.  * 
  214.  * Revision 3.35  88/08/26  08:46:01  tony
  215.  * Misc. changes to make lint happy.
  216.  * 
  217.  * Revision 3.34  88/08/25  15:13:36  tony
  218.  * Fixed a bug where the cursor didn't land on the right place after
  219.  * "beginning-of-word" searches if the word was preceded by the start
  220.  * of the line and a single character.
  221.  * 
  222.  * Revision 3.33  88/08/23  12:53:08  tony
  223.  * Fixed a bug in ssearch() where repeated searches ('n' or 'N') resulted
  224.  * in dynamic memory being referenced after it was freed.
  225.  * 
  226.  * Revision 3.32  88/08/17  07:37:07  tony
  227.  * Fixed a general problem in u_save() by checking both parameters for
  228.  * null values. The specific symptom was that a join on the last line of
  229.  * the file would crash the editor.
  230.  * 
  231.  * Revision 3.31  88/07/09  20:39:38  tony
  232.  * Implemented the "line undo" command (i.e. 'U').
  233.  * 
  234.  * Revision 3.30  88/06/28  07:54:22  tony
  235.  * Fixed a bug involving redo's of the '~' command. The redo would just
  236.  * repeat the replacement last performed instead of switching the case of
  237.  * the current character.
  238.  * 
  239.  * Revision 3.29  88/06/26  14:53:19  tony
  240.  * Added support for a simple form of the "global" command. It supports
  241.  * commands of the form "g/pat/d" or "g/pat/p", to delete or print lines
  242.  * that match the given pattern. A range spec may be used to limit the
  243.  * lines to be searched.
  244.  * 
  245.  * Revision 3.28  88/06/25  21:44:22  tony
  246.  * Fixed a problem in the processing of colon commands that caused
  247.  * substitutions of patterns containing white space to fail.
  248.  * 
  249.  * Revision 3.27  88/06/20  14:52:21  tony
  250.  * Merged in changes for BSD Unix sent in by Michael Lichter.
  251.  * 
  252.  * Revision 3.26  88/06/10  13:44:06  tony
  253.  * Fixed a bug involving writing out files with long pathnames. A small
  254.  * fixed size buffer was being used. The space for the backup file name
  255.  * is now allocated dynamically.
  256.  * 
  257.  * Revision 3.25  88/05/04  08:29:02  tony
  258.  * Fixed a minor incompatibility with vi involving the 'G' command. Also
  259.  * changed the RCS version number of version.c to match the actual version
  260.  * of the editor.
  261.  * 
  262.  * Revision 1.12  88/05/03  14:39:52  tony
  263.  * Changed the screen representation of the ascii character DELETE to be
  264.  * compatible with vi. Also merged in support for DOS.
  265.  * 
  266.  * Revision 1.11  88/05/02  21:38:21  tony
  267.  * The code that reads files now handles boundary/error conditions much
  268.  * better, and generates status/error messages that are compatible with
  269.  * the real vi. Also fixed a bug in repeated reverse searches that got
  270.  * inserted in the recent changes to search.c.
  271.  * 
  272.  * Revision 1.10  88/05/02  07:35:41  tony
  273.  * Fixed a bug in the routine plines() that was introduced during changes
  274.  * made for the last version.
  275.  * 
  276.  * Revision 1.9  88/05/01  20:10:19  tony
  277.  * Fixed some problems with auto-indent, and added support for the "number"
  278.  * parameter.
  279.  * 
  280.  * Revision 1.8  88/04/30  20:00:49  tony
  281.  * Added support for the auto-indent feature.
  282.  * 
  283.  * Revision 1.7  88/04/29  14:50:11  tony
  284.  * Fixed a class of bugs involving commands like "ct)" where the cursor
  285.  * motion part of the operator can fail. If the motion failed, the operator
  286.  * was continued, with the cursor position unchanged. Cases like this were
  287.  * modified to abort the operation if the motion fails.
  288.  * 
  289.  * Revision 1.6  88/04/28  08:19:35  tony
  290.  * Modified Henry Spencer's regular expression library to support new
  291.  * features that couldn't be done easily with the existing interface.
  292.  * This code is now a direct part of the editor source code. The editor
  293.  * now supports the "ignorecase" parameter, and multiple substitutions
  294.  * per line, as in "1,$s/foo/bar/g".
  295.  * 
  296.  * Revision 1.5  88/04/24  21:38:00  tony
  297.  * Added preliminary support for the substitute command. Full range specs.
  298.  * are supported, but only a single substitution is allowed on each line.
  299.  * 
  300.  * Revision 1.4  88/04/23  20:41:01  tony
  301.  * Worked around a problem with adding lines to the end of the buffer when
  302.  * the cursor is at the bottom of the screen (in misccmds.c). Also fixed a
  303.  * bug that caused reverse searches from the start of the file to bomb.
  304.  *
  305.  * Revision 1.3  88/03/24  08:57:00  tony
  306.  * Fixed a bug in cmdline() that had to do with backspacing out of colon
  307.  * commands or searches. Searches were okay, but colon commands backed out
  308.  * one backspace too early.
  309.  * 
  310.  * Revision 1.2  88/03/21  16:47:55  tony
  311.  * Fixed a bug in renum() causing problems with large files (>6400 lines).
  312.  * Also moved system-specific defines out of stevie.h and into a new file
  313.  * named env.h. This keeps volatile information outside the scope of RCS.
  314.  * 
  315.  * Revision 1.1  88/03/20  21:00:39  tony
  316.  * Initial revision
  317.  * 
  318.  */
  319.  
  320. char    *Version = "STEVIE - Version 3.69grr";
  321.