Subject: Vim 6.0r alpha available
From: Bram Moolenaar <[email-masked]>
To: [email-masked]
Date: Mon, 01 Jan 2001 20:52:01 +0100

The first Vim in 2001!

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

'foldtext' is now an expression instead of a strange substitute-like thing.
It's more consistent with other options and allows more complicated
processing.

":mksession" now also works fine with vertical splits.  It has been further
improved and restores the View of each window.  Also works properly with
preview and quickfix windows.  Also store the argument list(s) in the session
file.

Added the "mkview" command: Store the settings, mappings etc. of the current
window, so that they can be restored later.  It's like ":mksession" for one
window.  It also contains manually created, opened and closed folds.

Added "curdir" and "sesdir" to 'sessionoptions'.  Allows selection of what
the current directory will be restored to.  'sessionoptions' now includes
"curdir" by default.  This means that restoring a session will result in the
current directory being restored, instead of going to the directory where the
session file is located.

Added a debugging mode.  Useful to see what happens in sourced scripts and
executed user functions.
- ":debug" command to debug a single command.
- "-D" argument to debug while starting up.
- ":breakadd", ":breakdel" and ":breaklist" to set breakpoints at a line in a
  script or user function.

GUI: When a vertically split window doesn't touch the scrollbar, it will get a
scrollbar when it becomes the current window.  Windows above and below it then
also get a scrollbar.  Now it's possible to scroll every vertically split
window, not just the ones next to a scrollbar.

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

On Unix glob(".*") returned "." and "..", on Windows it didn't.  On Windows
glob("*") also returned files starting with a dot.  Made this work like Unix
on all systems.

Added inputsecret(): Ask the user to type a string without showing the typed
keys.  (Charles Campbell)

In the verbose message about returning from a function, also show the return
value.

Added 'previewwindow' option: Set in the preview window.  Used in a session
file to mark a window as the preview window.

When a swap file already exists, and the user selects "Delete" at the
ATTENTION prompt, use the same ".swp" swapfile, to avoid creating a ".swo"
file which won't always be found.

Added Debian Control file and Debian Changelog syntax files. (Wichert
Akkerman)

Added filewritable(). (Ron Aaron)

Added Italian message translations.  (Antonio Colombo)

When 'modifiable' isn't set, show a '-' in the window title.

Evaluate 'includeexpr' and 'statusline' in the sandbox, for extra safety.

Fixes
-----

When making a change in the first line of the window, all lines would be
redisplayed.  This leads to errors when "$" is in 'cpoptions'.

There was an absolute path in the Makefile for the dependency on if_perl.o.
Put patchlevel.h in <> instead of "".

GUI Motif: Creating a toolbar item for which there is no icon would cause an X
error.  The "pixmap" variable was not initialized.

":echomsg" and ":echoerr" did not check for a following "|" separated command
when not being executed in an "if 0". (Mark Wagonner)

Win32: Removed old code to open a console.  Vimrun is now used and works fine.

Compute the room needed by the intro message accurately, so that it also fits
on a 25 line console. (Craig Barkhouse)

":ptnext" was broken.  Now remember the last tag used in the preview window
separately from the tagstack.

Didn't check for "-display" being the last argument. (Wichert Akkerman)

GTK GUI: When starting "gvim" under some conditions there would be an X error.
Don't replace the error handler when creating the xterm clipboard. (Wichert
Akkerman)

Adding a space after a help tag caused the tag not to be found.  E.g., ":he
autoindent ".

Was trying to expand a URL into a full path name.  On Windows this resulted in
the current directory to be prepended to the URL.  Added vim_isAbsName() and
vim_FullName() to avoid that various machine specific functions do it
differently.

When reading a UTF-8 file an error would be detected when there was an
incomplete byte sequence at the end of the read bytes.  Now ignore that and
check after reading more characters.

UTF-8: made a few regexp things working. (Alexey Marinichev)

Multi-byte: linewise Visual selection highlighting stopped at the cursor when
it was on a double-wide character.
Yanking a Visual selection that includes a character past the end of the line
could allocate zero bytes, which caused an error message.

":n *.c" ":cd .." ":n" didn't use the original directory of the file.  Vi only
does it for the current file (looks like a bug).  Now remember the buffer used
for the entry in the argument list and use it's name (adjusted when doing
":cd"), unless it's deleted.

The scrollbar didn't work properly with closed folds.  When moving the
scrollbar in one direction text moved up and down.  When the last lines of a
file are folded, the cursor went to below it.

Epilogue
--------

WARNING: This is really an unstable version.  Many things have been added
without proper testing.  It does crash.  It may destroy your work.

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.

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.

More info for the new 6.0 features at ":help version6".

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 it here: ftp://ftp.vim.org/pub/vim/unreleased/

unix/vim-6.0r-rt.tar.gz		runtime files
unix/vim-6.0r-src.tar.gz	sources

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

Happy Vimming!