Subject: Vim 6.0k alpha available
From: Bram Moolenaar <[email-masked]>
To: [email-masked]
Date: Sun, 29 Oct 2000 22:43:17 +0100

Yet another Vim in the 6.0 series.

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

It's now possible to edit files over a network.  This is based on the netrw
script written by Charles Campbell.  It is installed as a "standard plugin".
See ":help netrw".
This is a bit experimental, I want to find out if loading this plugin causes
trouble for anyone.

I also made "gf" work on a URL.  It no longer assumes the file is local on the
computer (mostly didn't work anyway, because the full path was required).
Adjusted test2 for this.

Allow using a URL in 'path'.  Makes ":find index.html" work.

Thus now you can do (if you have the wget program):
	:edit http://www.vim.org/index.html
Move to "download.html" and hit "gf" to edit that file (found relative to the
current file).
Or do:
	:set path+=http://www.vim.org
and then:
	:find news.html
to edit http://www.vim.org/news.html

Avoid problems with running out of stack space.
- Unix: Check for running out of stack space when executing a regexp.  Avoids
  a nasty crash.  Only works when the system supports running the signal
  function on another stack.
- Unix: Added check for running out of stack space when matching a regexp.
  Now it aborts with an error message.  Needs to be checked on many different
  systems.
- Reduced the amount of stack space used by regmatch() to allow it to handle
  complicated patterns on a longer text.

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

The "Save As" menu entry now edits the saved file.  Most people expect it to
work like this.

Renamed <Return> to <Enter>, since that's what it's called on most keyboards.
Thus it's now the hit-enter prompt instead of the hit-return prompt.

Don't load plugins when compiled without the +eval feature.  Most plugins
won't work.

Win32: Python support for compiling with Mingw. (Ron Aaron)

Use mkstemp() instead of mktemp() when it's available, avoids a warning for
linking on FreeBSD.

When reading from or writing to a temporary file, check that it isn't a
symbolic link.  Gives some protection against symlink attacks.
When creating a backup file copy or a swap file, check for it already existing
to avoid a symlink attack. (Colin Phipps)

Obtain the number of colors from the xterm itself.  Requires xterm compiled
with OPT_TCAP_QUERY and a patch for the "Co" entry.

MS-DOS and MS-Windows also read the system-wide vimrc file $VIM/vimrc.  Mostly
for NT systems with multiple users.

Fixes
-----

DJGPP: When exiting with "ZZ" the cursor was left halfway the screen.

Make uninstall_runtime didn't remove indent.vim, indoff.vim, ftplugin.vim and
ftplugof.vim.

Syntax highlighting:
- Didn't sync for the first line with a change, when ":syn minlines" was zero.
- Scrolling backwards was slow, it would resync for every line.  Now start
  resyncing a few lines back (up to 10) to reduce the number of times it's
  required.
- A contained item wasn't checked to end before a containing item with
  "keepend" would end.
- DJGPP: "vim main.c" didn't show right syntax highlighting.  CTRL-L fixed it.
  Caused by t_colors not initialized after parsing the termcap.  Could also
  happen for other systems that only use a builtin termcap.
- An empty match made a containing item continue.

When doing Insert mode completion it's possible that b_sfname is NULL.  Don't
give it to printf() for the "Scanning" message.

Multi-byte:
- Some messages were printed wrong.
- List of digraphs didn't display correctly.
- UTF-8 characters 0x80-0x9f caused problems.

":set runtimepath-=$VIMRUNTIME" didn't work, because expansion of wildcards
was done after trying to remove the string.  Now for ":set opt+=val" and ":set
opt-=val" the expansion of wildcards is done before adding or removing "val".

Motif GUI: scrollbar disappeared when doing ":sp" ":vsp".

Doing ":echo "\n\n\n" while there is a Visual selection caused the top lines
of the display not to be updated.

Fixed a few memory leaks:
- buf->b_start_fcc was not freed when the buffer was deleted.
- option values in win->w_allbuf_opt were not freed.

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.0k-rt.tar.gz		runtime files
unix/vim-6.0k-src.tar.gz	sources

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

Happy Vimming!