README for Vim Vim is an almost compatible version of the UNIX editor vi. Many new features have been added: multi level undo, command line history, filename completion, block operations, etc. Those who don't know vi can probably skip this message, unless you are prepared to learn something new and useful. Vim is especially useful for editing C programs. Vim should run on any Unix flavor, MS-DOS, Windows 3.1, Windows 95, Windows NT, OS/2, Atari MiNT, VMS and Amiga. A Port for Mac is still being worked on. The most interesting changes (there are a whole lot more): New on-line help system. Help is now displayed in a window. Tags can be used to jump around in the documentation (like hypertext links). Mouse support. The mouse is supported in an xterm and for MS-DOS. It can be used to position the cursor, select the visual area, paste a register, etc. Graphical User Interface (GUI). Included support for GUI: menu's, mouse, scrollbars, etc. Currently only with Motif and Athena interface. Command line editing improved. Separate history for search commands. Improved command line completion (for tags, help, buffer names, etc). Improved indenting for C programs. Added 'cindent' option for configurable C indent mode. Automatic indenting while inserting text. The "=" operator can be used to indent specific lines. Formatting of comments (also for other languages and e-mail). Searching for words in include files. Added commands to search for a word in the current file and in included files. List the first match, list all matches or jump to a match. Quickly find out where a define, function of variable is declared. Word completion in Insert mode. Added commands to complete the word before the cursor in Insert mode. Matches can be found in the current file, included files and/or a dictionary. Works a lot better than the word completion macros. Automatic commands. Commands can be automatically executed when reading a file, writing a file, jumping to another buffer, etc., depending on the file name. This is useful to set options and mappings for C programs, documentation, plain text, e-mail, etc. This also makes it possible to edit compressed files. Text objects. After an operator and in visual mode, text object commands can be used to quickly select a word, line or paragraph. Delete the current sentence with "ds". Format the current paragraph with "Qp". Options. A whole bunch of new options. Command line completion can be used to get the old value. Added '&' after option: reset to default value. Added '!' after boolean option: invert value. Support for editing one-line paragraphs. When a line is longer than the window width, it can be broken at a space or other convenient position. Commands have been added to move the cursor a screen line up/down. Usage of key names. Special keys now all have a name like , , etc. This name is used for mappings, in listings, and many other things. Added a number of new special keys. Viminfo. The command line history, marks and registers can be stored in a file that is automatically read on startup and written on exit. Tag support improved. Static tags and Emacs tag files are now supported. Tag completion works better. Improved (error) messages. A lot of error messages include the reason for the error. The 'showcommand' includes partially typed mappings. Swap file. Included checking of the actual file name in a swap file, avoids giving bogus "swap file exists" messages. Give more information about the swap file with the "swap file exists" message and when recovering. Included catching of deadly signals for Unix. Swap files for unmodified buffers are deleted, other swap files are preserved before exiting. Improved recovery when there are multiple swap files. Compilation improvements. Autoconf is used to adjust to different Unix flavors, editing the Makefile is rarely required. 32 bits PC version. There is now a new version of Vim for Windows NT and Windows 95. It supports long file names, uses all available memory and many more enhancements. There is also a protected mode version, compiled with DJGPP, that runs under Windows 3.1 and MSDOS. It supports long file names where available. Miscellaneous new features. Implemented incremental search. A whole bunch of commands that start with "g": Goto declaration, show ascii value of character under the cursor, go back to end of word, reselect last Visual area, etc.. Added the ":retab" command. Can be used to change the size of a , replace spaces with a or a with spaces. Implemented "Vim -r" to list any swap files that can be found. The "Q" operator no longer affects empty lines. Added '-' register for deletes of less than one line. Quickfix: Support for several error formats at the same time. Added separate mapping for normal mode and visual mode. Allow for digraphs to be entered in reverse. Added commands to search for #if/#endif and start/end of comment. Added ":abclear" and ":mapclear": remove all abbreviations/mappings. Added check for last modification time of original file before overwriting it. Vi compatibility improvements. A few more things have been made vi-compatible. The 'cpoptions' option has a few flags to switch specific vi-compatibility items on/off. -- VIM Distribution Sites -- Vim can be found at: ftp://ftp.oce.nl/pub/vim/ (Holland) Mirrors: See ftp://ftp.oce.nl/pub/vim/MIRRORS system file type Unpack with Unix file.tar.gz gunzip file.tar.gz; tar xf file.tar Amiga file.lha lha -x file.lha PC file.zip pkunzip -d file.zip Reporting bugs: Send them to . Please be brief, all the time that is spend on answering mail is subtracted from the time that is spend on improving Vim! Always give a reproducable example and try to find out which settings or other things influence the appearance of the bug. Try different machines if possible. Send me patches if you can! There are three mailing lists for Vim. The lists are NOT for sending bug reports or discussions about emacs-is-better. For discussions about using existing versions of Vim: Useful mappings, questions, answers, where to get a specific version, etc. For discussions about changing Vim: New features, porting, beta-test versions, etc. Announcements about new versions of Vim; also beta-test versions and ports to different systems. See . NOTE: - You can only send messages to these lists if you have subscribed! - You need to send the messages from the same location as where you subscribed from (to avoid spam mails). - Maximum message size is 40000 characters. If you want to join, send a message to Make sure that your "From:" address is correct. Then the list serve will give you a little help. If you have trouble with a mailing list, send a message to Felix Leitner, who made these mailing lists work: . Don't ask him to subscribe or remove you from the list, use the automated system for that. Happy Vimming! -- TALL KNIGHT: We are now no longer the Knights Who Say Ni! ONE KNIGHT: Ni! OTHERS: Sh! ONE KNIGHT: (wispers) Sorry. "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD --/-/-------------- Bram Moolenaar ---- mool@oce.nl -------------------\-\-- \ \ VIM home page: / / .