Subject: Vim version 6.0ak ALPHA available
From: Bram Moolenaar <[email-masked]>
To: [email-masked]
Date: Sun, 17 Jun 2001 21:46:11 +0200

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

Added X-Windows communication between two Vims.  Makes it possible to send
commands from one Vim to another.  Use "--remote" to have files be edited in
an already running Vim.  Use "--serversend" or ":serversend" to send commands
from one Vim to another.  (Flemming Madsen)

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

Sniff interface: (Anton Leherbauer)
- fixed windows code, esp. the event handling stuff
- adaptations for sniff 4.x ($SNIFF_DIR4)
- support for adding sniff requests at runtime

Updated the Borland C version 5 Makefile: (Dan Sharp)
- Fixed the Perl build
- Added python and tcl builds
- Added dynamic perl and dynamic python builds
- Added uninstal.exe build

Win32: Position the printer dialog relative to the Vim window. (Vipin Aravind)

Use XPM bitmaps for the icon when possible. (Martin Dalecki)

CTRL-R now also works in Insert mode while doing completion with CTRL-X or
CTRL-N. (Neil Bird)

Added v:foldlevel variable: foldlevel when evaluating 'foldtext'.

Support the notation <A-x> as an alias for <M-x>.  This is logical, since the
Alt key is used.

Athena: Adjust the arrow pixmap used in a pullright menu to the size of the
font. (David Harrison)

MS-Windows install: Possibly remove old "Edit with Vim" entries. (Jon Merz)

":find" accepts a count, which means that the count'th match in 'path' is
used.

Added "%v" item in 'errorformat': Virtual column number. (Dan Sharp)

Made ":compiler" list all available compiler scripts.
Use "current_compiler" variable to remember the name of the compiler script.
Made 'errorformat' global/local, since 'makeprg' is too.

When checking the timestamp, first check if the file size changed, to avoid a
file compare then.  Makes it quicker for large (log) files that are appended
to.

Included version 5.8 changes in version5.txt help file.

Multibyte: Do proper ignorecase matches in more places.

Fixes
-----

VMS: tempname problem for VAX. (Zoltan Arpadffy)

Menu code didn't compile when GUI was enabled but the toolbar wasn't.

When HAVE_X11_XPM_H isn't defined, the GUI dialog couldn't be compiled.

Win32: inputdialog() still used VIM_QUESTION in one place. (Thore B. Karlsen)

digraph.c didn't compile without the multi-byte feature. (Mikhail Kuperblum)

Using CTRL-Y in the command line without a modeless selection didn't have any
effect.  Now use it like a normal character, for backwards compatibility.

When using ":intro" with not much room ('cmdheight' set to a large number) and
a status line ('ls set to 2) could crash and message was overwritten by
hit-enter prompt.

When an operator is pending, clicking in another window made it apply to that
window, even though the line numbers could be beyond the end of the buffer.

Swapping case on a UTF-8 character didn't work.

The Motif version couldn't be compiled when there is no xpm support. (Martin
Dalecki)

Win32: Make_ming.mak didn't cleanup the generated dyn-ming.h file. (Fernandez)

'virtualedit': (Chase Tingley)
- With 'virtualedit' set to all, 'fdc' set to 2, 'sidescroll' to 1, 'nowrap':
  using ' ' to go past the end of the line, the "0" to go to the start: text
  disappeared under the foldcolumn.
- With 'fdc' > 0 and 'wrap' could wrap 'fdc' columns onto the next line.
- When doing Visual selection and including space after the end-of-line it was
  not included in the operation.

When a function call doesn't have a terminating ")" Vim could crash.

When evaluating 'patchexpr' the value of "%" was wrong.  The expression
couldn't use the current file name.

Opening the command-line window caused many errors when a keymap was selected.

Perl interface: could crash on exit with perl 5.6.1. (Anduin Withers)

searchpair() didn't put the cursor on the right line when using the skip
pattern argument.  A "\v" in a pattern caused trouble.
When using "\v" in a search pattern between a "\(" and a "^", the "^" would no
longer be seen as a start-of-line.
The pattern "\vdo%[ne]" didn't work, it searched for a magic ], but ] can
never be magic.

Using %P in 'errorformat' wasn't handled correctly. (Tomas Zellerin)

Using a syntax cluster that includes itself made Vim crash.

":diffthis" didn't update the screen right away.

Test 44 sent strange characters to the terminal, causing an xterm to
misinterpret a Tab after "make test".  Set 'termencoding' to avoid this.

GUI: With 'ls' set to 2, dragging the status line all the way up, then making
the Vim window smaller: Could not the drag status line anymore.

UTF-8: searching with 'ignorecase' set didn't find matches where case had to
be ignored.

When mapping a function key in Insert mode to <Nop>, the cursor could move one
position forward when the bytes are not received at once.

Multibyte: Virtual replace didn't work correctly with multibyte characters and
a TAB. (Muraoka Taro)

Using ":s/\n//gc" and typing "n" found the same match again.

"vim -c startinsert! file" placed cursor on last char of a line, instead of
after it.  A ":set" command in the buffer menu set w_set_curswant.  Now don't
do this when w_curswant is MAXCOL.

XIM never worked properly for the "r" command.
XIM: was not enabled by default.  Now use default value "2" for 'imsearch' and
'iminsert' when an input method is supported.  Remember the IM state for when
Vim regains keyboard focus.  Previously it was always switched on, ignoring
'imsearch' and 'iminsert'.

Win32: When the gvim window was maximized and selecting another font, the
window would no longer fill the screen.

The "--cmd" argument could cause an error message, was checking the wrong
place for a NUL.

Win32: Editing a file by its short name didn't expand into the long name.

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.

Lots of things are not working yet.  Check ":help todo" for known items.

I NEED YOUR HELP: There is still a lot of work to be done.  If I have to do it
all by myself it will take a very long time until Vim.6.0 is ready.  Please
give a hand by implementing one of the items in the todo list.

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

unix/vim-6.0ak-rt.tar.gz	runtime files
unix/vim-6.0ak-rt.tar.bz2	same, compressed with bzip2
unix/vim-6.0ak-src.tar.gz	sources
unix/vim-6.0ak-src.tar.bz2	same, compressed with bzip2

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

Happy Vimming!