ex-vi/Changes

141 lines
7.0 KiB
Plaintext

Release 12/2/04
* Support for multibyte character locales was added.
* The code has been converted to ANSI C, and support for pre-POSIX systems has
been dropped.
* When the end of the current line consists of blank characters and the 'w'
visual command is given at this point, vi now advances to the start of the
next line instead of ringing the bell. This is compatible with SVR4 vi and
seems to be what POSIX specifies.
* If the replacement part of a substitute command consists of a single '%',
as in ':s/foo/%/', the replacement part of the previous substitution is
used. This is compatible with SVR4 vi and is specified by POSIX.
* Fixed a number of possible heap overflows, e.g. because of too long tag
strings.
Release 6/5/04
* Some changes were made to the Makefile to support RPM builds. In particular,
the meaning of the DESTDIR and PREFIX variables was changed.
* An insufficient size of a variable caused the window size set to 8 on
FreeBSD if the terminal baud rate was 38400.
Release 1/3/04
* Changes to the included libterm only: Made multiple tc= capabilities in
a termcap entry work; recognize tc= also if it is not the last capability
in an entry (Bugreport by Andrew Minter).
Release 9/3/03
* The code did not check st_blksize from stat(2) at other points besides
the one fixed in the last release.
* The keyboard input character with code 255 ("y in ISO-8859-1) was
misinterpreted as end-of-file indicator.
Release 8/27/03
* Compile fixes for AIX and HP-UX (Mike Jetzer).
* Delete temporary file when preserving was successful after receiving
SIGHUP or SIGTERM (Fix taken from 4.3BSD Reno).
* Set MAILRC to /dev/null in expreserve to avoid reading the user's
mail initialization file.
* Optionally use Caldera's 'UNIX(R) Regular Expression Library' to
get POSIX.2 compatible REs.
* Don't refuse to quit with 'No write since last change' if a line of a
newly read input file is too long but no changes were made by the user.
* The POSIX_2 preprocessor define has been removed. The behavior previously
enabled by this variable is now the default (except as noted below).
* Backslash inside RE bracket expresssions (as in [\]]) is now recognized
as an escape character by default. This is not POSIX.2 compliant, but is
compatible with historic vi behavior, is demanded by the some traditional
standards such as the System V Interface definition, and is compatible
with vim. To get POSIX.2 compliant behavior here, define NO_BE_BACKSLASH.
* The input buffer did overflow with large values of st_blksize from stat(2).
Release 4/3/02
* Option "showmode" has no effect on hardcopy or glass terminals (P).
* Fixed undo for :r! command.
* Interrupt character is not misinterpreted as DEL on insertion (P).
* Fixed interaction of <count>~ vi command with abbreviations and macros (P).
* Avoid horizontal scrolling of showmode string on wraparound to last line (P).
* No showmode string is printed when executing a macro.
* Recovery listing fixed not to mix characters from long filenames in
/var/preserve with /var/tmp listing (P).
* Catch SIGXFSZ (file size limit exceeded).
Release 3/3/02
* Separated terse/noterse messages for RE errors (P).
* The expreserve and exrecover commands work again (P).
* Passing beyond EOL in <count>~ vi command is not an error (P).
* Fixed segmentation violation on mdjc'd and related bugs (Sven Mascheck).
* Marks remain on lines changed in an undo operation.
* Close mapmalloc file descriptor for /dev/zero on exec() (P).
* Added -L and -V command line options as in SVr4 ex.
* POSIX.2: Processing EXINIT does not depend on stdin being a terminal.
* POSIX.2: No newline is appended to an empty file in visual mode.
* Fixed segmentation violation on :f^V^M^M and similar commands.
* Mapmalloc extended to allocate and release multiple memory pools.
* Exrecover lists /var/tmp in addition to /var/preserve.
* Have multiple attempts to create named buffer temporary file.
* Size limit for temporary file names removed.
Release 2/17/02
* POSIX.2: Backslash has no special meaning inside RE bracket expressions.
* RE cleanup; make it compile without POSIX_2 defined (P).
* Fixed $(CC) to "$(CC)" for libterm compilation (Felix von Leitner) (P).
* Support for LC_MESSAGES using catgets() added.
* Renamed POSIX define to POSIX_1.
* Renamed UNIX98 define to POSIX_2.
* POSIX.2: Fixed a conflict between -t tag and wrapscan option.
* POSIX.2: Take the initial value for the vi scroll command from scroll var.
* <count>~ vi command fixed to work with repeat and control chars in text (P).
* Fixed recursion on :ab abbreviations (Bugreport by Matthias Kopfermann).
* Fixed undo for :<addr>r command in visual mode.
* Made modelines compatible to SVr4 ex: The option name is "modelines" or
"ml" now; a space or tab preceeding "ex:" or "vi:" is not required.
* Use O_EXCL and O_NOFOLLOW when creating temporary files, if possible.
Release 1/26/02
* Use mmap() for memory allocation if possible.
* POSIX.2: Added RE interval expressions \{m,n\} (taken from V7 expr).
* POSIX.2: Added backreferences \1 ... \9.
* Print one-character mode strings if both "showmode" and "terse" are set.
* Added the "flash" variable.
* POSIX.2: "~" visual command accepts a count.
* License notices added.
Release 5/21/01
* If compiled using BIT8, all characters except ASCII NUL can now be handled.
* Support larger files if LARGEF is defined.
Release 09/23/00
* POSIX locale support for 8bit character sets is enabled by -DBIT8.
* Regex code is 8bit clean.
* Smaller fixes for SVR4 systems.
* POSIX termios support including job control.
* POSIX sigaction support.
* Check for ELF executables and compressed files.
* Extended the pattern for temporary files from 5 to 10 digits.
* ANSI C stdarg function calling added, Linux/ia64 needs them.
* Reintegrated the UCVISUAL routines from 4.4BSD ex.
* Only use the "ic" termcap sequence if "im" is empty.
* POSIX.2: Command line options added and revised.
* POSIX.2: Added a "showmode" option for novices.
* POSIX.2: Ex respects the environment variables COLUMNS and LINES.
* POSIX.2: Added an "exrc" option like on POSIX.2 ex; arbitrary .exrc
files are ignored unless it is set in EXINIT or ~/.exrc.
* POSIX.2: If .exrc files are world or group writeable, they are ignored
unless "sourceany" is set.
* Ex now provides malloc routines. They are necessary since C library
calls like setlocale could otherwise break the sbrk calls in ex. As
an additional benefit, linking against ncurses is now possible.
Release 31/05/00
* String extraction using mkstr and xstr is not longer be done.
* An ANSI C preprocessor may be used.
* Changes of symbol names due to collisions on newer systems.
* Fixed a null pointer reference in ex_tty.c.
* Included the 2.11BSD termcap in a subdirectory. Ex could use any
termcap library, however, that does not use malloc().
* Support of eight bit characters excluding the range 0200 to 0237 is
enabled with -DISO8859_1. It does not include the regular expression code,
but otherwise works well in practice with the ISO-8859-1 character set.
Fixes for problems that were introduced in this port are marked (P).