From: Bram Moolenaar To: vim-dev@vim.org Subject: Vim 6.0r alpha available Date: Mon, 01 Jan 2001 20:52:01 +0100 Message-Id: <200101011952.UAA33547@moolenaar.net> 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!