Subject: Vim version 6.0ao ALPHA available
From: Bram Moolenaar <[email-masked]>
To: [email-masked]
Date: Sun, 22 Jul 2001 21:38:42 +0200

The MS-Windows install and uninstall programs have been
further improved again.  To allow you to try out the
self-installing executable, I have uploaded it here:

	ftp://ftp.vim.org/pub/vim/unreleased/pc/gvim60ao.exe

We are getting very close to a beta test now.  Please check if there are any
problems that need to be fixed before the beta test can go out.

Major changes
-------------

MS-Windows install and uninstall:
- Use "start" in the gvim.bat file, to avoid that the console stays open.
- When a .bat file exists, use the same path as the default for the other .bat
  files.
- Generate the .bat files in such a way that they work better on Windows NT.
- Include the version number in the uninstall registry entry, so that several
  can co-exist.  Allows installing a new Vim and deleting an old one later.
- Also add the uninstall registry entry when installing the .bat files, start
  menu or desktop icons and not the popup menu entry.
- NSIS: Also register VisVim, if it's installed.
- NSIS: Moved uninstall program to vim60an directory, where the other .exe
  files are.
- NSIS: Use $VIMRUNTIME or $VIM as default for the install directory.  Avoids
  unpacking in the wrong directory, install.exe wouldn't work then.
- NSIS: Detect the directory where an existing Vim was installed.  Use this as
  the default for the new version.  Only when $VIM and $VIMRUNTIME are not
  set.
- NSIS: Filter uganda.txt to remove tags that look strange in plain text.
- Added libintl.dll, so that NLS works out of the box (hopefully).
- Uninstall: unregister the OLE version.
- Uninstall: Check for already installed Vims and offer a choice to uninstall
  them.
- Uninstall: Added checks to avoid unexpectedly deleting items for the wrong
  version.
- The 16 and 32 bit DOS versions now also compile uninstal.exe, to be able to
  remove the generated batch files.

Win32: Added dynamic loading of IME support.
Use a few tricks to generate a ja.mo file in SJIS encoding for MS-Windows.
Translates the ja.po file to ja.sjis.po and does some postprocessing.
(Yasuhiro Matsumoto)

Allow using ":" commands after an operator.  Could be used to implement a new
movement command.

Other changes
-------------

Renamed 'printersettings' to 'printeroptions'.  Other options also have a name
ending in "options".

For ":hardcopy", don't put a line number for a wrapped line.

New syntax files:
- Pal resource compiler (Brian Schau)
- Indent profile (Nikolai Weibull)

Allow adding white space in 'commentstring' and ignore it when making the text
for the folded line.

Added "--with-global-runtime" configure argument.  Allows specifying the
global directory used in the 'runtimepath' default.

Some diff programs assume a binary file and don't produce a diff.  The "-a"
flag avoids that, but isn't accepted by all diff programs.  Added a check to
find out if "-a" works or not.

Added command-line completion for ":compiler".

Updated the option window with new options.  Made it a bit easier to read.

Added has("win95"), to be able to distinguish between MS-Windows 95/98/ME and
NT/2000/XP in a Vim script.

Added Slovak message translations. (Martin Lacko)

Added 'C', 'U', 'w' and 'm' flags to 'cinoptions'. (Sevvatius Brandt)

Added Make_dvc.mak to be able to debug exe generated with Make_mvc.mak in
MS-Devstudio. (Walter Briscoe)

Made the 'include' option global-local, just like 'define'.  These two options
are similar, they should work the same way.  Making them global-local is
backwards compatible.

Fixes
-----

Could use the Xm/Xm.h and Xm/XpmP.h include files when compiling for Athena.

When 'keymodel' contains "startsel", Ctrl-Left/Right/End/Home started
selection.

When ":vglobal" didn't find a line where the pattern doesn't match, the error
message would be the wrong way around.

link.sh was making auto/pathdef.o instead of objects/pathdef.o.

When the "/usr/local/share/icons/..." directories exist but are not writable,
"make install" would fail.

":hi clear" didn't clear all the highlighting.  When using a colorscheme some
colors would not be reset to the defaults.

Command-line completion for color schemes didn't work correctly.  ExpandOne()
was using cmd_files.

GTK: Avoid a crash when the GUI isn't active and using 'imactivatekey'. (Nam
Sung-Hyun)

Win32 console: The cursor keys and Home and End didn't work with the Control
key.

Win32: The icons in the self installing exe had CR/LF translation done on
them.

Make_mvc.mak: check for nmake version didn't work. (Walter Briscoe)

When using CTRL-R on the command line, a Tab in the text would trigger
completion.  That was not backwards compatible with Vim 5.x.  Now reset
KeyTyped.

The 'printeroptions' option lacked the P_COMMA flag, causing ":set +=" not
to insert a comma.

When setting the cterm background color with ":hi Normal ctermbg=", would
always set the 'background' option.  When a colorscheme is active, this would
always reload the color scheme and reload all colors.  Now it only happens
when the background value has to change.

Unix Makefile: Not all shells have a "which" command.  Use which.sh instead.

When using "k" while 'scrolljump' is non-zero, would jump one line less than
required.

"gs" used the count as milliseconds instead of seconds.

Cscope: An error message was written into allocated memory which was too
small.  Could cause a crash when freeing the memory.

When ignoring a multi-line error message with "%-A", the continuation lines
would be used anyway. (Servatius Brandt)

X11 GUI: When changing the tooltip font, would also update the colors. (David
Harrison)

Using a 'langmap' could break mapping of special keys.

"grx" on a double-wide character inserted "x", instead of replacing the
character with "x ".  "gR" on <xx> ('display' set the "uhex") didn't replace
at all.  When doing "gRxx" on a control character the first "x" would be
inserted, breaking the alignment.

When reloading a file when the timestamp changed (e.g., when 'autoread' is
set), a manually selected syntax was lost.  Now only read the file, without
first clearing all items for the buffer.

":vert ball" didn't work correctly when there already was a horizontal split.

Added "0)" to 'cinkeys', so that when typing a ) it is put in the same place
as where "==" would put it.

Motif: when creating a new menu and immediately deleting it Vim could crash.
Happened with the buffer menu.  Now first delete the submenu and then the
parent menu. (David Harrison)

When using a statusline-like format for ":hardcopy", the line number wouldn't
make sense. (Michael Schaap)

Crash in diff mode when topfill became too big (more filler lines above the
topline than the height of the window).

Win32: When maximized, adding/removing toolbar didn't resize the text area.

Epilogue
--------

WARNING: This is really an unstable version.  Many things have been added
without proper testing.  It does crash.  It may destroy your work.  New
features may change incompatibly in the next version.

This version is for developers, thus it comes as source code only.
If you run into something that doesn't work, please try to figure out why,
try to solve it and send me a patch.  If you can't do that, at least send me
precise information to save me time.

More info about the new 6.0 features with ":help version6".

If you don't like the syntax of a command, the name of an option or how the
new features work, let's discuss this in the vim-dev maillist.

You can find Vim 6.0 here: ftp://ftp.vim.org/pub/vim/unreleased/

unix/vim-6.0ao.tar.bz2		sources + runtime files, bzip2 compressed
unix/vim-6.0ao-rt1.tar.gz	runtime files part 1
unix/vim-6.0ao-rt2.tar.gz	runtime files part 2
unix/vim-6.0ao-src1.tar.gz	sources part 1
unix/vim-6.0ao-src2.tar.gz	sources part 2

extra/vim-6.0ao-extra.tar.gz	extra files
extra/vim-6.0ao-lang.tar.gz	multi-language files

pc/gvim60ao.exe			MS-Windows self-installing executable

Happy Vimming!