updated for version 7.0d02
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 7.0d. Last change: 2006 Jan 02
|
||||
*vi_diff.txt* For Vim version 7.0d. Last change: 2006 Apr 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -103,13 +103,12 @@ The option 'maxmem' ('mm') is used to set the maximum memory used for one
|
||||
buffer (in kilobytes). 'maxmemtot' is used to set the maximum memory used for
|
||||
all buffers (in kilobytes). The defaults depend on the system used. For the
|
||||
Amiga and MS-DOS, 'maxmemtot' is set depending on the amount of memory
|
||||
available. If you don't like Vim to swap to a file, set 'maxmem' and
|
||||
'maxmemtot' to a very large value. The swap file will then only be used for
|
||||
recovery. If you don't want a swap file at all, set 'updatecount' to 0, or
|
||||
use the "-n" argument when starting Vim. Note that the 'maxmem' option is
|
||||
only used when a buffer is created. Changing this option does not affect
|
||||
buffers that have already been loaded. Thus you can set it to different
|
||||
values for different files. 'maxmemtot' works always.
|
||||
available.
|
||||
These are not hard limits, but tell Vim when to move text into a swap file.
|
||||
If you don't like Vim to swap to a file, set 'maxmem' and 'maxmemtot' to a
|
||||
very large value. The swap file will then only be used for recovery. If you
|
||||
don't want a swap file at all, set 'updatecount' to 0, or use the "-n"
|
||||
argument when starting Vim.
|
||||
|
||||
==============================================================================
|
||||
4. The most interesting additions *vim-additions*
|
||||
@ -123,7 +122,8 @@ Vi compatibility. |'compatible'|
|
||||
:set nocompatible
|
||||
Or start Vim with the "-N" argument:
|
||||
vim -N
|
||||
This is done automatically if you have a .vimrc file. See |startup|.
|
||||
Vim starts with 'nocompatible' automatically if you have a .vimrc
|
||||
file. See |startup|.
|
||||
The 'cpoptions' option can be used to set Vi compatibility on/off for
|
||||
a number of specific items.
|
||||
|
||||
@ -142,17 +142,23 @@ Support for different systems.
|
||||
- Macintosh
|
||||
- Risc OS
|
||||
- IBM OS/390
|
||||
Note that on some systems features need to be disabled to reduce
|
||||
resource usage, esp. on MS-DOS. For some outdated systems you need to
|
||||
use an older Vim version.
|
||||
|
||||
Multi level undo. |undo|
|
||||
'u' goes backward in time, 'CTRL-R' goes forward again. Set option
|
||||
'undolevels' to the number of changes to be remembered (default 1000).
|
||||
Set 'undolevels' to 0 for a vi-compatible one level undo. Set it to
|
||||
-1 for no undo at all.
|
||||
|
||||
When all changes in a buffer have been undone, the buffer is not
|
||||
considered changed anymore. You can exit it with :q, without <!>.
|
||||
When undoing a few changes and then making a new change Vim will
|
||||
create a branch in the undo tree. This means you can go back to any
|
||||
state of the text, there is no risc of a change causing text to be
|
||||
lost forever. |undo-tree|
|
||||
|
||||
Graphical User Interface (GUI) |gui|
|
||||
Graphical User Interface (GUI). |gui|
|
||||
Included support for GUI: menu's, mouse, scrollbars, etc. You can
|
||||
define your own menus. Better support for CTRL/SHIFT/ALT keys in
|
||||
combination with special keys and mouse. Supported for various
|
||||
@ -165,58 +171,78 @@ Multiple windows and buffers. |windows.txt|
|
||||
can still be loaded (and changed) but not displayed in a window. This
|
||||
is called a hidden buffer. Many commands and options have been added
|
||||
for this facility.
|
||||
Vim can also use multiple tab pages, each with one or more windows. A
|
||||
line with tab labels can be used to quickly switch between these pages.
|
||||
|tab-page|
|
||||
|
||||
Syntax highlighting. |:syntax|
|
||||
Vim can highlight keywords, patterns and other things. This is
|
||||
defined by a number of ":syntax" commands, and can be made to
|
||||
defined by a number of |:syntax| commands, and can be made to
|
||||
highlight most languages and file types. A number of files are
|
||||
included for highlighting the most common languages, like C, C++,
|
||||
Java, Pascal, Makefiles, shell scripts, etc. The colors used for
|
||||
highlighting can be defined for ordinary terminals, color terminals
|
||||
and the GUI with the ":highlight" command.
|
||||
and the GUI with the |:highlight| command. A convenient way to do
|
||||
this is using a |:colorscheme| command.
|
||||
The highlighted text can be exported as HTML. |convert-to-HTML|
|
||||
Other items that can be highlighted are matches with the search string
|
||||
|'hlsearch'|, matching parens |matchparen| and the cursor line and
|
||||
column |'cursorline'| |'cursorcolumn'|.
|
||||
|
||||
Folding |folding|
|
||||
Spell checking. |spell|
|
||||
When the 'spell' option is set Vim will highlight spelling mistakes.
|
||||
About 40 languages are currently supported, selected with the
|
||||
'spellang' option. In source code only comments and strings are
|
||||
checked for spelling.
|
||||
|
||||
Folding. |folding|
|
||||
A range of lines can be shown as one "folded" line. This allows
|
||||
overviewing a file and moving blocks of text around quickly.
|
||||
Folds can be created manually, from the syntax of the file, by indent,
|
||||
etc.
|
||||
|
||||
Plugins |add-plugin|
|
||||
Diff mode. |diff|
|
||||
Vim can show two versions of a file with the differences highlighted.
|
||||
Parts of the text that are equal are folded away. Commands can be
|
||||
used to move text from one version to the other.
|
||||
|
||||
Plugins. |add-plugin|
|
||||
The functionality can be extended by dropping a plugin file in the
|
||||
right directory. That's an easy way to start using Vim scripts
|
||||
written by others. Plugins can be for all kind of files, or
|
||||
specifically for a filetype.
|
||||
|
||||
Repeat a series of commands. |q|
|
||||
"q{c}" starts recording typed characters into named register {c}
|
||||
(append to the register if register name is uppercase). A subsequent
|
||||
"q" stops recording. The register can then be executed with the
|
||||
"@{c}" command. This is very useful to repeat a complex action.
|
||||
"q{c}" starts recording typed characters into named register {c}.
|
||||
A subsequent "q" stops recording. The register can then be executed
|
||||
with the "@{c}" command. This is very useful to repeat a complex
|
||||
action.
|
||||
|
||||
Flexible insert mode. |ins-special-special|
|
||||
The arrow keys can be used in insert mode to move around in the file.
|
||||
This breaks the insert in two parts as far as undo and redo is
|
||||
concerned.
|
||||
|
||||
CTRL-O can be used to execute a single command-mode command. This is
|
||||
almost the same as hitting <Esc>, typing the command and doing "a".
|
||||
CTRL-O can be used to execute a single Normal mode command. This is
|
||||
almost the same as hitting <Esc>, typing the command and doing |a|.
|
||||
|
||||
Visual mode. |Visual-mode|
|
||||
Visual can be used to first highlight a piece of text and then give a
|
||||
command to do something with it. This is an (easy to use) alternative
|
||||
to first giving the operator and then moving to the end of the text
|
||||
to be operated upon. "v" and "V" are used to start Visual mode. "v"
|
||||
works on characters and 'V' on lines. Move the cursor to extend the
|
||||
Visual part. It is shown highlighted on the screen. By typing "o"
|
||||
the other end of the Visual text can be moved. The Visual text can
|
||||
be affected by an operator:
|
||||
Visual mode can be used to first highlight a piece of text and then
|
||||
give a command to do something with it. This is an (easy to use)
|
||||
alternative to first giving the operator and then moving to the end of
|
||||
the text to be operated upon.
|
||||
|v| and |V| are used to start Visual mode. |v| works on characters
|
||||
and |V| on lines. Move the cursor to extend the Visual area. It is
|
||||
shown highlighted on the screen. By typing "o" the other end of the
|
||||
Visual area can be moved. The Visual area can be affected by an
|
||||
operator:
|
||||
d delete
|
||||
c change
|
||||
y yank
|
||||
> or < insert or delete indent
|
||||
! filter through external program
|
||||
= filter through indent
|
||||
: start ":" command for the Visual lines.
|
||||
: start |:| command for the Visual lines.
|
||||
gq format text to 'textwidth' columns
|
||||
J join lines
|
||||
~ swap case
|
||||
@ -224,15 +250,15 @@ Visual mode. |Visual-mode|
|
||||
U make uppercase
|
||||
|
||||
Block operators. |visual-block|
|
||||
With Visual a rectangular block of text can be selected. Start Visual
|
||||
with CTRL-V. The block can be deleted ("d"), yanked ("y") or its case
|
||||
can be changed ("~", "u" and "U"). A deleted or yanked block can be
|
||||
put into the text with the "p" and "P" commands.
|
||||
With Visual mode a rectangular block of text can be selected. Start
|
||||
Visual mode with CTRL-V. The block can be deleted ("d"), yanked ("y")
|
||||
or its case can be changed ("~", "u" and "U"). A deleted or yanked
|
||||
block can be put into the text with the "p" and "P" commands.
|
||||
|
||||
Online help system. |:help|
|
||||
Help system. |:help|
|
||||
Help is displayed in a window. The usual commands can be used to
|
||||
move around, search for a string, etc. Tags can be used to jump
|
||||
around in the help files, just like hypertext links. The ":help"
|
||||
around in the help files, just like hypertext links. The |:help|
|
||||
command takes an argument to quickly jump to the info on a subject.
|
||||
<F1> is the quick access to the help system. The name of the help
|
||||
index file can be set with the 'helpfile' option.
|
||||
@ -243,7 +269,6 @@ Command-line editing and history. |cmdline-editing|
|
||||
forward/backward one character. The shifted right/left cursor keys
|
||||
can be used to move forward/backward one word. CTRL-B/CTRL-E can be
|
||||
used to go to the begin/end of the command-line.
|
||||
|
||||
|cmdline-history|
|
||||
The command-lines are remembered. The up/down cursor keys can be used
|
||||
to recall previous command-lines. The 'history' option can be set to
|
||||
@ -271,9 +296,9 @@ Command-line completion. |cmdline-completion|
|
||||
all matches. CTRL-L will insert the longest common part of the
|
||||
matches.
|
||||
|
||||
Insert-mode completion |ins-completion|
|
||||
In insert mode the CTRL-N and CTRL-P keys can be used to complete a
|
||||
word that has previously been used. |i_CTRL-N|
|
||||
Insert-mode completion. |ins-completion|
|
||||
In Insert mode the CTRL-N and CTRL-P keys can be used to complete a
|
||||
word that appears elsewhere. |i_CTRL-N|
|
||||
With CTRL-X another mode is entered, through which completion can be
|
||||
done for:
|
||||
|i_CTRL-X_CTRL-F| file names
|
||||
@ -283,51 +308,64 @@ Insert-mode completion |ins-completion|
|
||||
|i_CTRL-X_CTRL-L| whole lines
|
||||
|i_CTRL-X_CTRL-]| words from the tags file
|
||||
|i_CTRL-X_CTRL-D| definitions or macros
|
||||
|i_CTRL-X_CTRL-O| Omni completion: clever completion
|
||||
specifically for a file type
|
||||
etc.
|
||||
|
||||
Long line support |'wrap'| |'linebreak'|
|
||||
Long line support. |'wrap'| |'linebreak'|
|
||||
If the 'wrap' option is off, long lines will not wrap and only part
|
||||
of them will be shown. When the cursor is moved to a part that is not
|
||||
shown, the screen will scroll horizontally. The minimum number of
|
||||
columns to scroll can be set with the 'sidescroll' option. The "zh"
|
||||
and "zl" commands can be used to scroll sideways.
|
||||
columns to scroll can be set with the 'sidescroll' option. The |zh|
|
||||
and |zl| commands can be used to scroll sideways.
|
||||
Alternatively, long lines are broken in between words when the
|
||||
'linebreak' option is set. This allows editing a single-line
|
||||
paragraph conveniently (e.g. when the text is later read into a DTP
|
||||
program). Move the cursor up/down with the "gk" and "gj" commands.
|
||||
program). Move the cursor up/down with the |gk| and |gj| commands.
|
||||
|
||||
Text formatting. |formatting|
|
||||
The 'textwidth' option can be used to automatically limit the line
|
||||
length. This supplements the 'wrapmargin' option of Vi, which was not
|
||||
very useful. The "gq" operator can be used to format a piece of text
|
||||
(for example, "gqap" formats the current paragraph). Commands for
|
||||
text alignment: ":center", ":left" and ":right".
|
||||
very useful. The |gq| operator can be used to format a piece of text
|
||||
(for example, |gqap| formats the current paragraph). Commands for
|
||||
text alignment: |:center|, |:left| and |:right|.
|
||||
|
||||
Extended search patterns |pattern|
|
||||
Extended search patterns. |pattern|
|
||||
There are many extra items to match various text items. Examples:
|
||||
A "\n" can be used in a search pattern to match a line break.
|
||||
"x\{2,4}" matches "x" 2 to 4 times.
|
||||
"\s" matches a white space character.
|
||||
|
||||
Directory, remote and archive browsing. |netrw|
|
||||
Vim can browse the file system. Simply edit a directory. Move around
|
||||
in the list with the usual commands and press <Enter> to go to the
|
||||
directory or file under the cursor.
|
||||
This also works for remote files over ftp, http, ssh, etc.
|
||||
Zip and tar archives can also be browsed. |tar| |zip|
|
||||
|
||||
Edit-compile-edit speedup. |quickfix|
|
||||
The ":make" command can be used to run the compilation and jump to
|
||||
the first error. Alternatively Vim can be started with the "-q"
|
||||
option from the compiler. A file with compiler error messages is
|
||||
interpreted. Vim starts editing at the first error.
|
||||
The |:make| command can be used to run the compilation and jump to the
|
||||
first error. A file with compiler error messages is interpreted. Vim
|
||||
jumps to the first error.
|
||||
|
||||
Each line in the error file is scanned for the name of a file, line
|
||||
number and error message. The 'errorformat' option can be set to a
|
||||
list of scanf-like strings to handle output from many compilers.
|
||||
|
||||
The ":cn" command can be used to jump to the next error.
|
||||
":cl" lists all the error messages. Other commands are available
|
||||
(almost the same as with Manx's Z editor on the Amiga).
|
||||
The |:cn| command can be used to jump to the next error.
|
||||
|:cl| lists all the error messages. Other commands are available.
|
||||
The 'makeef' option has the name of the file with error messages.
|
||||
The 'makeprg' option contains the name of the program to be executed
|
||||
with the ":make" command.
|
||||
with the |:make| command.
|
||||
The 'shellpipe' option contains the string to be used to put the
|
||||
output of the compiler into the errorfile.
|
||||
|
||||
Improved indenting for C programs |'cindent'|
|
||||
Finding matches in files. |:vimgrep|
|
||||
Vim can search for a pattern in multiple files. This uses the
|
||||
advanced Vim regexp pattern, works on all systems and also works to
|
||||
search in compressed files.
|
||||
|
||||
Improved indenting for programs. |'cindent'|
|
||||
When the 'cindent' option is on the indent of each line is
|
||||
automatically adjusted. C syntax is mostly recognized. The indent
|
||||
for various styles can be set with 'cinoptions'. The keys to trigger
|
||||
@ -336,68 +374,85 @@ Improved indenting for C programs |'cindent'|
|
||||
Comments can be automatically formatted. The 'comments' option can be
|
||||
set to the characters that start and end a comment. This works best
|
||||
for C code, but also works for e-mail (">" at start of the line) and
|
||||
other types of text. The "=" operator can be used to re-indent
|
||||
other types of text. The |=| operator can be used to re-indent
|
||||
lines.
|
||||
|
||||
Searching for words in include files |include-search|
|
||||
The "[i" command can be used to search for a match of the word under
|
||||
For many other languages an indent plugin is present to support
|
||||
automatic indenting. |30.3|
|
||||
|
||||
Searching for words in included files. |include-search|
|
||||
The |[i| command can be used to search for a match of the word under
|
||||
the cursor in the current and included files. The 'include' option
|
||||
can be set the a pattern that describes a command to include a file
|
||||
(the default is for C programs).
|
||||
The "[I" command lists all matches, the "[ CTRL-I" command jumps to
|
||||
The |[I| command lists all matches, the |[_CTRL-I| command jumps to
|
||||
a match.
|
||||
The "[d", "[D" and "[ CTRL-D" commands do the same, but only for
|
||||
The |[d|, |[D| and |[_CTRL-D| commands do the same, but only for
|
||||
lines where the pattern given with the 'define' option matches.
|
||||
|
||||
Automatic commands |autocommand|
|
||||
Automatic commands. |autocommand|
|
||||
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.
|
||||
|
||||
Scripts and Expressions |expression|
|
||||
Commands have been added to form up a simple but powerful script
|
||||
language.
|
||||
Scripts and Expressions. |expression|
|
||||
Commands have been added to form up a powerful script language.
|
||||
|:if| Conditional execution, which can be used for example
|
||||
to set options depending on the value of $TERM.
|
||||
|:while| Repeat a number of commands.
|
||||
|:for| Loop over a list.
|
||||
|:echo| Print the result of an expression.
|
||||
|:let| Assign a value to an internal variable, option, etc.
|
||||
Variable types are Number, String, List and Dictionary.
|
||||
|:execute| Execute a command formed by an expression.
|
||||
etc.
|
||||
|:try| Catch exceptions.
|
||||
etc., etc. See |eval|.
|
||||
Debugging and profiling are supported. |debug-scripts| |profile|
|
||||
If this is not enough, an interface is provided to |Python|, |Ruby|,
|
||||
|Tcl|, |Perl| and |MzScheme|.
|
||||
|
||||
Viminfo |viminfo-file|
|
||||
Viminfo. |viminfo-file|
|
||||
The command-line history, marks and registers can be stored in a file
|
||||
that is read on startup. This can be used to repeat a search command
|
||||
or command-line command after exiting and restarting Vim. It is also
|
||||
possible to jump right back to where the last edit stopped with "'0".
|
||||
possible to jump right back to where the last edit stopped with |'0|.
|
||||
The 'viminfo' option can be set to select which items to store in the
|
||||
.viminfo file. This is off by default.
|
||||
|
||||
Mouse support |mouse-using|
|
||||
Printing. |printing|
|
||||
The |:hardcopy| command sends text to the printer. This can include
|
||||
syntax highlighting.
|
||||
|
||||
Mouse support. |mouse-using|
|
||||
The mouse is supported in the GUI version, in an xterm for Unix, for
|
||||
Linux with gpm, for MS-DOS, and Win32. It can be used to position the
|
||||
cursor, select the visual area, paste a register, etc.
|
||||
|
||||
Usage of key names |<>| |key-notation|
|
||||
Usage of key names. |<>| |key-notation|
|
||||
Special keys now all have a name like <Up>, <End>, etc.
|
||||
This name can be used in mappings, to make it easy to edit them.
|
||||
|
||||
Editing binary files |edit-binary|
|
||||
Editing binary files. |edit-binary|
|
||||
Vim can edit binary files. You can change a few characters in an
|
||||
executable file, without corrupting it. Vim doesn't remove NUL
|
||||
characters (they are represented as <NL> internally).
|
||||
|-b| command-line argument to start editing a binary file
|
||||
|'binary'| Option set by "-b". Prevents adding an <EOL> for the
|
||||
|'binary'| Option set by |-b|. Prevents adding an <EOL> for the
|
||||
last line in the file.
|
||||
|
||||
Multi-language support |multi-lang|
|
||||
Multi-language support. |multi-lang|
|
||||
Files in double-byte or multi-byte encodings can be edited. There is
|
||||
UTF-8 support to be able to edit various languages at the same time,
|
||||
without switching fonts. |UTF-8|
|
||||
Messages and menus are available in different languages.
|
||||
|
||||
Move cursor beyond lines.
|
||||
When the 'virtualedit' option is set the cursor can move all over the
|
||||
screen, also where there is no text. This is useful to edit tables
|
||||
and figures easily.
|
||||
|
||||
==============================================================================
|
||||
5. Other vim features *other-features*
|
||||
|
||||
@ -843,6 +898,8 @@ Only Vim is able to accept options in between and after the file names.
|
||||
|
||||
-o[N] Vim: Open [N] windows, or one for each file.
|
||||
|
||||
-p[N] Vim: Open [N] tab pages, or one for each file.
|
||||
|
||||
-P {parent-title} Win32 Vim: open Vim inside a parent application window
|
||||
|
||||
-q {name} Vim: Use {name} for quickfix error file.
|
||||
|
||||
Reference in New Issue
Block a user