annotate runtime/doc/vi_diff.txt @ 160:7c0820eed232

updated for version 7.0049
author vimboss
date Mon, 07 Feb 2005 21:49:25 +0000
parents 3fc0f57ecb91
children 8b0ee9d57d7f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
160
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
1 *vi_diff.txt* For Vim version 7.0aa. Last change: 2005 Feb 07
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 VIM REFERENCE MANUAL by Bram Moolenaar
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 Differences between Vim and Vi *vi-differences*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 Throughout the help files differences between Vim and Vi/Ex are given in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 curly braces, like "{not in Vi}". This file only lists what has not been
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 mentioned in other files and gives an overview.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 Vim is mostly POSIX 1003.2-1 compliant. The only command known to be missing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 is ":open". There are probably a lot of small differences (either because Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 is missing something or because Posix is beside the mark).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 1. Missing commands |missing-commands|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 2. Missing options |missing-options|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 3. Limits |limits|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 4. The most interesting additions |vim-additions|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 5. Other vim features |other-features|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 6. Command-line arguments |cmdline-arguments|
160
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
23 7. POSIX compliance |posix-compliance|
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 1. Missing commands *missing-commands*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 This command is in Vi, but not in Vim:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 :o[pen] {Vi: start editing in open mode} *:o* *:op* *:open*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 2. Missing options *missing-options*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 These options are in the Unix Vi, but not in Vim. If you try to set one of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 them you won't get an error message, but the value is not used and cannot be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 printed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 autoprint (ap) boolean (default on) *'autoprint'* *'ap'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 beautify (bf) boolean (default off) *'beautify'* *'bf'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 flash (fl) boolean (default ??) *'flash'* *'fl'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 graphic (gr) boolean (default off) *'graphic'* *'gr'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 hardtabs (ht) number (default 8) *'hardtabs'* *'ht'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 number of spaces that a <Tab> moves on the display
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 mesg boolean (default on) *'mesg'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 novice boolean (default off) *'novice'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 open boolean (default on) *'open'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 optimize (op) boolean (default off) *'optimize'* *'op'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 prompt boolean (default on) *'prompt'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 redraw boolean (default off) *'redraw'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 slowopen (slow) boolean (default off) *'slowopen'* *'slow'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 sourceany boolean (default off) *'sourceany'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 window (wi) number (default 23) *'window'* *'wi'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 w300 number (default 23) *'w300'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 w1200 number (default 23) *'w1200'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 w9600 number (default 23) *'w9600'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 3. Limits *limits*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 Vim has only a few limits for the files that can be edited {Vi: can not handle
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 <Nul> characters and characters above 128, has limited line length, many other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 limits}.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 *E340*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 Maximum line length On machines with 16-bit ints (Amiga and MS-DOS real
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 mode): 32767, otherwise 2147483647 characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 Longer lines are split.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 Maximum number of lines 2147483647 lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 Maximum file size 2147483647 bytes (2 Gbyte) when a long integer is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 32 bits. Much more for 64 bit longs. Also limited
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 by available disk space for the |swap-file|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 *E75*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 Length of a file path Unix and Win32: 1024 characters, otherwise 256
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 characters (or as much as the system supports).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 Length of an expanded string option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 Unix and Win32: 1024 characters, otherwise 256
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 characters
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 Maximum display width Unix and Win32: 1024 characters, otherwise 255
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 characters
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 Maximum lhs of a mapping 50 characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 Number of highlighting different types: 223
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 Information for undo and text in registers is kept in memory, thus when making
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 (big) changes the amount of (virtual) memory available limits the number of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 undo levels and the text that can be kept in registers. Other things are also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 kept in memory: Command-line history, error messages for Quickfix mode, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 Memory usage limits
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 -------------------
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 The option 'maxmem' ('mm') is used to set the maximum memory used for one
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 buffer (in kilobytes). 'maxmemtot' is used to set the maximum memory used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 all buffers (in kilobytes). The defaults depend on the system used. For the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 Amiga and MS-DOS, 'maxmemtot' is set depending on the amount of memory
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 available. If you don't like Vim to swap to a file, set 'maxmem' and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 'maxmemtot' to a very large value. The swap file will then only be used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 recovery. If you don't want a swap file at all, set 'updatecount' to 0, or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 use the "-n" argument when starting Vim. Note that the 'maxmem' option is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 only used when a buffer is created. Changing this option does not affect
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 buffers that have already been loaded. Thus you can set it to different
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 values for different files. 'maxmemtot' works always.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 4. The most interesting additions *vim-additions*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 Vi compatibility. |'compatible'|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 Although Vim is 99% Vi compatible, some things in Vi can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 considered to be a bug, or at least need improvement. But still, Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 starts in a mode which behaves like the "real" Vi as much as possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 To make Vim behave a little bit better, try resetting the 'compatible'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 option:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 :set nocompatible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 Or start Vim with the "-N" argument:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 vim -N
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 This is done automatically if you have a .vimrc file. See |startup|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 The 'cpoptions' option can be used to set Vi compatibility on/off for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 a number of specific items.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 Support for different systems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 Vim can be used on:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 - All Unix systems (it works on all systems it was tested on, although
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 the GUI and Perl interface may not work everywhere).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 - Amiga (500, 1000, 1200, 2000, 3000, 4000, ...).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 - MS-DOS in real-mode (no additional drivers required).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 - In protected mode on Windows 3.1 and MS-DOS (DPMI driver required).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 - Windows 95 and Windows NT, with support for long file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 - OS/2 (needs emx.dll)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 - Atari MiNT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 - VMS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130 - BeOS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 - Macintosh
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 - Risc OS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 - IBM OS/390
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 Multi level undo. |undo|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 'u' goes backward in time, 'CTRL-R' goes forward again. Set option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 'undolevels' to the number of changes to be remembered (default 1000).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 Set 'undolevels' to 0 for a vi-compatible one level undo. Set it to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 -1 for no undo at all.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 When all changes in a buffer have been undone, the buffer is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 considered changed anymore. You can exit it with :q, without <!>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 Graphical User Interface (GUI) |gui|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 Included support for GUI: menu's, mouse, scrollbars, etc. You can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 define your own menus. Better support for CTRL/SHIFT/ALT keys in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 combination with special keys and mouse. Supported for various
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 platforms, such as X11 (with Motif and Athena interfaces), GTK, Win32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 (Windows 95 and later), BeOS, Amiga and Macintosh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 Multiple windows and buffers. |windows.txt|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 Vim can split the screen into several windows, each editing a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 different buffer or the same buffer at a different location. Buffers
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 can still be loaded (and changed) but not displayed in a window. This
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 is called a hidden buffer. Many commands and options have been added
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 for this facility.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 Syntax highlighting. |:syntax|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 Vim can highlight keywords, patterns and other things. This is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 defined by a number of ":syntax" commands, and can be made to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 highlight most languages and file types. A number of files are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 included for highlighting the most common languages, like C, C++,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 Java, Pascal, Makefiles, shell scripts, etc. The colors used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 highlighting can be defined for ordinary terminals, color terminals
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 and the GUI with the ":highlight" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 Folding |folding|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 A range of lines can be shown as one "folded" line. This allows
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 overviewing a file and moving blocks of text around quickly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 Folds can be created manually, from the syntax of the file, by indent,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173 Plugins |add-plugin|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 The functionality can be extended by dropping a plugin file in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 right directory. That's an easy way to start using Vim scripts
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 written by others. Plugins can be for all kind of files, or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 specifically for a filetype.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 Repeat a series of commands. |q|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 "q{c}" starts recording typed characters into named register {c}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 (append to the register if register name is uppercase). A subsequent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 "q" stops recording. The register can then be executed with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 "@{c}" command. This is very useful to repeat a complex action.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 Flexible insert mode. |ins-special-special|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 The arrow keys can be used in insert mode to move around in the file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 This breaks the insert in two parts as far as undo and redo is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 concerned.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 CTRL-O can be used to execute a single command-mode command. This is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 almost the same as hitting <Esc>, typing the command and doing "a".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 Visual mode. |Visual-mode|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 Visual can be used to first highlight a piece of text and then give a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195 command to do something with it. This is an (easy to use) alternative
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 to first giving the operator and then moving to the end of the text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 to be operated upon. "v" and "V" are used to start Visual mode. "v"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198 works on characters and 'V' on lines. Move the cursor to extend the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 Visual part. It is shown highlighted on the screen. By typing "o"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 the other end of the Visual text can be moved. The Visual text can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201 be affected by an operator:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 d delete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 c change
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 y yank
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 > or < insert or delete indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 ! filter through external program
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 = filter through indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208 : start ":" command for the Visual lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 gq format text to 'textwidth' columns
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 J join lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211 ~ swap case
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 u make lowercase
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 U make uppercase
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 Block operators. |visual-block|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 With Visual a rectangular block of text can be selected. Start Visual
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 with CTRL-V. The block can be deleted ("d"), yanked ("y") or its case
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218 can be changed ("~", "u" and "U"). A deleted or yanked block can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 put into the text with the "p" and "P" commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
221 Online help system. |:help|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222 Help is displayed in a window. The usual commands can be used to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223 move around, search for a string, etc. Tags can be used to jump
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 around in the help files, just like hypertext links. The ":help"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 command takes an argument to quickly jump to the info on a subject.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
226 <F1> is the quick access to the help system. The name of the help
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 index file can be set with the 'helpfile' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 Command-line editing and history. |cmdline-editing|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
230 You can insert or delete at any place in the command-line using the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 cursor keys. The right/left cursor keys can be used to move
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
232 forward/backward one character. The shifted right/left cursor keys
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233 can be used to move forward/backward one word. CTRL-B/CTRL-E can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 used to go to the begin/end of the command-line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
235
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 |cmdline-history|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 The command-lines are remembered. The up/down cursor keys can be used
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 to recall previous command-lines. The 'history' option can be set to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 the number of lines that will be remembered. There is a separate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 history for commands and for search patterns.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242 Command-line completion. |cmdline-completion|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 While entering a command-line (on the bottom line of the screen)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
244 <Tab> can be typed to complete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
245 what example ~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
246 - command :e<Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
247 - tag :ta scr<Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
248 - option :set sc<Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
249 - option value :set hf=<Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250 - file name :e ve<Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
251 - etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
252
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253 If there are multiple matches, CTRL-N (next) and CTRL-P (previous)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
254 will walk through the matches. <Tab> works like CTRL-N, but wraps
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
255 around to the first match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
256
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
257 The 'wildchar' option can be set to the character for command-line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258 completion, <Tab> is the default. CTRL-D can be typed after an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259 (incomplete) wildcard; all matches will be listed. CTRL-A will insert
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260 all matches. CTRL-L will insert the longest common part of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
261 matches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
262
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
263 Insert-mode completion |ins-completion|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
264 In insert mode the CTRL-N and CTRL-P keys can be used to complete a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
265 word that has previously been used. |i_CTRL-N|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
266 With CTRL-X another mode is entered, through which completion can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
267 done for:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
268 |i_CTRL-X_CTRL-F| file names
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
269 |i_CTRL-X_CTRL-K| words from 'dictionary' files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
270 |i_CTRL-X_CTRL-T| words from 'thesaurus' files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
271 |i_CTRL-X_CTRL-I| words from included files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
272 |i_CTRL-X_CTRL-L| whole lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
273 |i_CTRL-X_CTRL-]| words from the tags file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
274 |i_CTRL-X_CTRL-D| definitions or macros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
275
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
276 Long line support |'wrap'| |'linebreak'|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
277 If the 'wrap' option is off, long lines will not wrap and only part
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
278 of them will be shown. When the cursor is moved to a part that is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
279 shown, the screen will scroll horizontally. The minimum number of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
280 columns to scroll can be set with the 'sidescroll' option. The "zh"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
281 and "zl" commands can be used to scroll sideways.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
282 Alternatively, long lines are broken in between words when the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
283 'linebreak' option is set. This allows editing a single-line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
284 paragraph conveniently (e.g. when the text is later read into a DTP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
285 program). Move the cursor up/down with the "gk" and "gj" commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
286
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
287 Text formatting. |formatting|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
288 The 'textwidth' option can be used to automatically limit the line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
289 length. This supplements the 'wrapmargin' option of Vi, which was not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
290 very useful. The "gq" operator can be used to format a piece of text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
291 (for example, "gqap" formats the current paragraph). Commands for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
292 text alignment: ":center", ":left" and ":right".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
293
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
294 Extended search patterns |pattern|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
295 There are many extra items to match various text items. Examples:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
296 A "\n" can be used in a search pattern to match a line break.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
297 "x\{2,4}" matches "x" 2 to 4 times.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
298 "\s" matches a white space character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
299
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
300 Edit-compile-edit speedup. |quickfix|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
301 The ":make" command can be used to run the compilation and jump to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
302 the first error. Alternatively Vim can be started with the "-q"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
303 option from the compiler. A file with compiler error messages is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
304 interpreted. Vim starts editing at the first error.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
305
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
306 Each line in the error file is scanned for the name of a file, line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
307 number and error message. The 'errorformat' option can be set to a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
308 list of scanf-like strings to handle output from many compilers.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
309
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
310 The ":cn" command can be used to jump to the next error.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
311 ":cl" lists all the error messages. Other commands are available
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
312 (almost the same as with Manx's Z editor on the Amiga).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
313 The 'makeef' option has the name of the file with error messages.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
314 The 'makeprg' option contains the name of the program to be executed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
315 with the ":make" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
316 The 'shellpipe' option contains the string to be used to put the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
317 output of the compiler into the errorfile.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
318
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
319 Improved indenting for C programs |'cindent'|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
320 When the 'cindent' option is on the indent of each line is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
321 automatically adjusted. C syntax is mostly recognized. The indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
322 for various styles can be set with 'cinoptions'. The keys to trigger
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
323 indenting can be set with 'cinkeys'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
324
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
325 Comments can be automatically formatted. The 'comments' option can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
326 set to the characters that start and end a comment. This works best
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
327 for C code, but also works for e-mail (">" at start of the line) and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
328 other types of text. The "=" operator can be used to re-indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
329 lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
330
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
331 Searching for words in include files |include-search|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
332 The "[i" command can be used to search for a match of the word under
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
333 the cursor in the current and included files. The 'include' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
334 can be set the a pattern that describes a command to include a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
335 (the default is for C programs).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
336 The "[I" command lists all matches, the "[ CTRL-I" command jumps to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
337 a match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
338 The "[d", "[D" and "[ CTRL-D" commands do the same, but only for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
339 lines where the pattern given with the 'define' option matches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
340
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
341 Automatic commands |autocommand|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
342 Commands can be automatically executed when reading a file, writing a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
343 file, jumping to another buffer, etc., depending on the file name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344 This is useful to set options and mappings for C programs,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
345 documentation, plain text, e-mail, etc. This also makes it possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
346 to edit compressed files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
347
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
348 Scripts and Expressions |expression|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
349 Commands have been added to form up a simple but powerful script
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
350 language.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
351 |:if| Conditional execution, which can be used for example
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
352 to set options depending on the value of $TERM.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
353 |:while| Repeat a number of commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
354 |:echo| Print the result of an expression.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
355 |:let| Assign a value to an internal variable, option, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
356 |:execute| Execute a command formed by an expression.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357 etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
358
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
359 Viminfo |viminfo-file|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
360 The command-line history, marks and registers can be stored in a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
361 that is read on startup. This can be used to repeat a search command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
362 or command-line command after exiting and restarting Vim. It is also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
363 possible to jump right back to where the last edit stopped with "'0".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
364 The 'viminfo' option can be set to select which items to store in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365 .viminfo file. This is off by default.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
366
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367 Mouse support |mouse-using|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
368 The mouse is supported in the GUI version, in an xterm for Unix, for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
369 Linux with gpm, for MS-DOS, and Win32. It can be used to position the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 cursor, select the visual area, paste a register, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
371
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
372 Usage of key names |<>| |key-notation|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373 Special keys now all have a name like <Up>, <End>, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 This name can be used in mappings, to make it easy to edit them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
375
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
376 Editing binary files |edit-binary|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
377 Vim can edit binary files. You can change a few characters in an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
378 executable file, without corrupting it. Vim doesn't remove NUL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
379 characters (they are represented as <NL> internally).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
380 |-b| command-line argument to start editing a binary file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
381 |'binary'| Option set by "-b". Prevents adding an <EOL> for the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
382 last line in the file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
383
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
384 Multi-language support |multi-lang|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
385 Files in double-byte or multi-byte encodings can be edited. There is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
386 UTF-8 support to be able to edit various languages at the same time,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
387 without switching fonts. |UTF-8|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
388 Messages and menus are available in different languages.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
389
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
390 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
391 5. Other vim features *other-features*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
392
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
393 A random collection of nice extra features.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
394
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
395
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
396 When Vim is started with "-s scriptfile", the characters read from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
397 "scriptfile" are treated as if you typed them. If end of file is reached
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
398 before the editor exits, further characters are read from the console.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
399
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
400 The "-w" option can be used to record all typed characters in a script file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
401 This file can then be used to redo the editing, possibly on another file or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
402 after changing some commands in the script file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
403
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 The "-o" option opens a window for each argument. "-o4" opens four windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406 Vi requires several termcap entries to be able to work full-screen. Vim only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
407 requires the "cm" entry (cursor motion).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
409
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 In command mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412 When the 'showcmd' option is set, the command characters are shown in the last
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 line of the screen. They are removed when the command is finished.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
415 If the 'ruler' option is set, the current cursor position is shown in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 last line of the screen.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
417
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 "U" still works after having moved off the last changed line and after "u".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
419
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 Characters with the 8th bit set are displayed. The characters between '~' and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421 0xa0 are displayed as "~?", "~@", "~A", etc., unless they are included in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
422 'isprint' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
424 "][" goes to the next ending of a C function ('}' in column 1).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
425 "[]" goes to the previous ending of a C function ('}' in column 1).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
426
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
427 "]f", "[f" and "gf" start editing the file whose name is under the cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
428 CTRL-W f splits the window and starts editing the file whose name is under
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
429 the cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
430
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
431 "*" searches forward for the identifier under the cursor, "#" backward.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
432 "K" runs the program defined by the 'keywordprg' option, with the identifier
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
433 under the cursor as argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
434
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
435 "%" can be preceded with a count. The cursor jumps to the line that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
436 percentage down in the file. The normal "%" function to jump to the matching
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
437 brace skips braces inside quotes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
438
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
439 With the CTRL-] command, the cursor may be in the middle of the identifier.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
440
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
441 The used tags are remembered. Commands that can be used with the tag stack
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
442 are CTRL-T, ":pop" and ":tag". ":tags" lists the tag stack.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
443
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
444 The 'tags' option can be set to a list of tag file names. Thus multiple
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
445 tag files can be used. For file names that start with "./", the "./" is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
446 replaced with the path of the current file. This makes it possible to use a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
447 tags file in the same directory as the file being edited.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
448
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
449 Previously used file names are remembered in the alternate file name list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
450 CTRL-^ accepts a count, which is an index in this list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
451 ":files" command shows the list of alternate file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
452 "#<N>" is replaced with the <N>th alternate file name in the list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
453 "#<" is replaced with the current file name without extension.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
454
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
455 Search patterns have more features. The <NL> character is seen as part of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
456 search pattern and the substitute string of ":s". Vi sees it as the end of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
457 the command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
458
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
459 Searches can put the cursor on the end of a match and may include a character
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
460 offset.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
461
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
462 Count added to "~", ":next", ":Next", "n" and "N".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
463
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
464 The command ":next!" with 'autowrite' set does not write the file. In vi the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
465 file was written, but this is considered to be a bug, because one does not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
466 expect it and the file is not written with ":rewind!".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
467
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
468 In Vi when entering a <CR> in replace mode deletes a character only when 'ai'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
469 is set (but does not show it until you hit <Esc>). Vim always deletes a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
470 character (and shows it immediately).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
471
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
472 Added :wnext command. Same as ":write" followed by ":next".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
473
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
474 The ":w!" command always writes, also when the file is write protected. In Vi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
475 you would have to do ":!chmod +w %" and ":set noro".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
476
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
477 When 'tildeop' has been set, "~" is an operator (must be followed by a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
478 movement command).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
479
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
480 With the "J" (join) command you can reset the 'joinspaces' option to have only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
481 one space after a period (Vi inserts two spaces).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
482
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
483 "cw" can be used to change white space formed by several characters (Vi is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
484 confusing: "cw" only changes one space, while "dw" deletes all white space).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
485
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
486 "o" and "O" accept a count for repeating the insert (Vi clears a part of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
487 display).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
488
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
489 Flags after Ex commands not supported (no plans to include it).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
490
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
491 On non-UNIX systems ":cd" command shows current directory instead of going to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
492 the home directory (there isn't one). ":pwd" prints the current directory on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
493 all systems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
494
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
495 After a ":cd" command the file names (in the argument list, opened files)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
496 still point to the same files. In Vi ":cd" is not allowed in a changed file;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
497 otherwise the meaning of file names change.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
498
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
499 ":source!" command reads Vi commands from a file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
500
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
501 ":mkexrc" command writes current modified options and mappings to a ".exrc"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
502 file. ":mkvimrc" writes to a ".vimrc" file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
503
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
504 No check for "tail recursion" with mappings. This allows things like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
505 ":map! foo ^]foo".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
506
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
507 When a mapping starts with number, vi loses the count typed before it (e.g.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
508 when using the mapping ":map g 4G" the command "7g" goes to line 4). This is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
509 considered a vi bug. Vim concatenates the counts (in the example it becomes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
510 "74G"), as most people would expect.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
511
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
512 The :put! command inserts the contents of a register above the current line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
513
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
514 The "p" and "P" commands of vi cannot be repeated with "." when the putted
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
515 text is less than a line. In Vim they can always be repeated.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
516
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
517 ":noremap" command can be used to enter a mapping that will not be remapped.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
518 This is useful to exchange the meaning of two keys. ":cmap", ":cunmap" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
519 ":cnoremap" can be used for mapping in command-line editing only. ":imap",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
520 ":iunmap" and ":inoremap" can be used for mapping in insert mode only.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
521 Similar commands exist for abbreviations: ":noreabbrev", ":iabbrev"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
522 ":cabbrev", ":iunabbrev", ":cunabbrev", ":inoreabbrev", ":cnoreabbrev".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
523
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
524 In Vi the command ":map foo bar" would remove a previous mapping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
525 ":map bug foo". This is considered a bug, so it is not included in Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
526 ":unmap! foo" does remove ":map! bug foo", because unmapping would be very
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
527 difficult otherwise (this is vi compatible).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
528
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
529 The ':' register contains the last command-line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
530 The '%' register contains the current file name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
531 The '.' register contains the last inserted text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
532
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
533 ":dis" command shows the contents of the yank registers.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
534
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
535 CTRL-O/CTRL-I can be used to jump to older/newer positions. These are the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
536 same positions as used with the '' command, but may be in another file. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
537 ":jumps" command lists the older positions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
538
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
539 If the 'shiftround' option is set, an indent is rounded to a multiple of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
540 'shiftwidth' with ">" and "<" commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
541
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
542 The 'scrolljump' option can be set to the minimum number of lines to scroll
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
543 when the cursor gets off the screen. Use this when scrolling is slow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
544
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
545 The 'scrolloff' option can be set to the minimum number of lines to keep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
546 above and below the cursor. This gives some context to where you are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
547 editing. When set to a large number the cursor line is always in the middle
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
548 of the window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
549
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
550 Uppercase marks can be used to jump between files. The ":marks" command lists
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
551 all currently set marks. The commands "']" and "`]" jump to the end of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
552 previous operator or end of the text inserted with the put command. "'[" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
553 "`[" do jump to the start.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
554
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
555 The 'shelltype' option can be set to reflect the type of shell used on the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
556 Amiga.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
557
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
558 The 'highlight' option can be set for the highlight mode to be used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
559 several commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
560
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
561 The CTRL-A (add) and CTRL-X (subtract) commands are new. The count to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
562 command (default 1) is added to/subtracted from the number at or after the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
563 cursor. That number may be decimal, octal (starts with a '0') or hexadecimal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
564 (starts with '0x'). Very useful in macros.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
565
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
566 With the :set command the prefix "inv" can be used to invert boolean options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
567
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
568 In both Vi and Vim you can create a line break with the ":substitute" command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
569 by using a CTRL-M. For Vi this means you cannot insert a real CTRL-M in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
570 text. With Vim you can put a real CTRL-M in the text by preceding it with a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
571 CTRL-V.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
572
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
573
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
574 In Insert mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
575
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
576 If the 'revins' option is set, insert happens backwards. This is for typing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
577 Hebrew. When inserting normal characters the cursor will not be shifted and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
578 the text moves rightwards. Backspace, CTRL-W and CTRL-U will also work in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
579 the opposite direction. CTRL-B toggles the 'revins' option. In replace mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
580 'revins' has no effect. Only when enabled at compile time.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
581
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
582 The backspace key can be used just like CTRL-D to remove auto-indents.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
583
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
584 You can backspace, CTRL-U and CTRL-W over line breaks if the 'backspace' (bs)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
585 option includes "eol". You can backspace over the start of insert if the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
586 'backspace' option includes "start".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
587
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
588 When the 'paste' option is set, a few option are reset and mapping in insert
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
589 mode and abbreviation are disabled. This allows for pasting text in windowing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
590 systems without unexpected results. When the 'paste' option is reset, the old
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
591 option values are restored.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
592
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
593 CTRL-T/CTRL-D always insert/delete an indent in the current line, no matter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
594 what column the cursor is in.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
595
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
596 CTRL-@ (insert previously inserted text) works always (Vi: only when typed as
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
597 first character).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
598
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
599 CTRL-A works like CTRL-@ but does not leave insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
601 CTRL-R {0-9a-z..} can be used to insert the contents of a register.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
602
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
603 When the 'smartindent' option is set, C programs will be better auto-indented.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
604 With 'cindent' even more.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
605
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
606 CTRL-Y and CTRL-E can be used to copy a character from above/below the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
607 current cursor position.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
608
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
609 After CTRL-V you can enter a three digit decimal number. This byte value is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
610 inserted in the text as a single character. Useful for international
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
611 characters that are not on your keyboard.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
612
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
613 When the 'expandtab' (et) option is set, a <Tab> is expanded to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
614 appropriate number of spaces.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
615
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
616 The window always reflects the contents of the buffer (Vi does not do this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
617 when changing text and in some other cases).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
618
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
619 If Vim is compiled with DIGRAPHS defined, digraphs are supported. A set of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
620 normal digraphs is included. They are shown with the ":digraph" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
621 More can be added with ":digraph {char1}{char2} {number}". A digraph is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
622 entered with "CTRL-K {char1} {char2}" or "{char1} BS {char2}" (only when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
623 'digraph' option is set).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
624
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
625 When repeating an insert, e.g. "10atest <Esc>" vi would only handle wrapmargin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
626 for the first insert. Vim does it for all.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
627
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
628 A count to the "i" or "a" command is used for all the text. Vi uses the count
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
629 only for one line. "3iabc<NL>def<Esc>" would insert "abcabcabc<NL>def" in Vi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
630 but "abc<NL>defabc<NL>defabc<NL>def" in Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
631
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
632
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
633 In Command-line mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
634
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
635 <Esc> terminates the command-line without executing it. In vi the command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
636 line would be executed, which is not what most people expect (hitting <Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
637 should always get you back to command mode). To avoid problems with some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
638 obscure macros, an <Esc> in a macro will execute the command. If you want a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
639 typed <Esc> to execute the command like vi does you can fix this with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
640 ":cmap ^V<Esc> ^V<CR>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
641
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
642 General:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
643
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
644 The 'ttimeout' option is like 'timeout', but only works for cursor and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
645 function keys, not for ordinary mapped characters. The 'timeoutlen' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
646 gives the number of milliseconds that is waited for. If the 'esckeys' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
647 is not set, cursor and function keys that start with <Esc> are not recognized
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
648 in insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
649
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
650 There is an option for each terminal string. Can be used when termcap is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
651 supported or to change individual strings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
652
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
653 The 'fileformat' option can be set to select the <EOL>: "dos" <CR><NL>, "unix"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
654 <NL> or "mac" <CR>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
655 When the 'fileformats' option is not empty, Vim tries to detect the type of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
656 <EOL> automatically. The 'fileformat' option is set accordingly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
657
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
658 On systems that have no job control (older Unix systems and non-Unix systems)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
659 the CTRL-Z, ":stop" or ":suspend" command starts a new shell.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
660
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
661 If Vim is started on the Amiga without an interactive window for output, a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
662 window is opened (and :sh still works). You can give a device to use for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
663 editing with the |-d| argument, e.g. "-d con:20/20/600/150".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
664
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
665 The 'columns' and 'lines' options are used to set or get the width and height
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
666 of the display.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
667
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
668 Option settings are read from the first and last few lines of the file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
669 Option 'modelines' determines how many lines are tried (default is 5). Note
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
670 that this is different from the Vi versions that can execute any Ex command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
671 in a modeline (a major security problem). |trojan-horse|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
672
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
673 If the 'insertmode' option is set (e.g. in .exrc), Vim starts in insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
674 And it comes back there, when pressing <Esc>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
675
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
676 Undo information is kept in memory. Available memory limits the number and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
677 size of change that can be undone. This may be a problem with MS-DOS, is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
678 hardly a problem on the Amiga and almost never with Unix and Win32.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
679
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
680 If the 'backup' or 'writebackup' option is set: Before a file is overwritten,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
681 a backup file (.bak) is made. If the "backup" option is set it is left
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
682 behind.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
683
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
684 Vim creates a file ending in ".swp" to store parts of the file that have been
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
685 changed or that do not fit in memory. This file can be used to recover from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
686 an aborted editing session with "vim -r file". Using the swap file can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
687 switched off by setting the 'updatecount' option to 0 or starting Vim with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
688 the "-n" option. Use the 'directory' option for placing the .swp file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
689 somewhere else.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
690
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
691 Vim is able to work correctly on filesystems with 8.3 file names, also when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
692 using messydos or crossdos filesystems on the Amiga, or any 8.3 mounted
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
693 filesystem under Unix. See |'shortname'|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
694
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
695 Error messages are shown at least one second (Vi overwrites error messages).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
696
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
697 If Vim gives the |hit-enter| prompt, you can hit any key. Characters other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
698 than <CR>, <NL> and <Space> are interpreted as the (start of) a command. (Vi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
699 only accepts a command starting with ':').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
700
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
701 The contents of the numbered and unnamed registers is remembered when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
702 changing files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
703
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
704 The "No lines in buffer" message is a normal message instead of an error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
705 message, since that may cause a mapping to be aborted.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
706
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
707 The AUX: device of the Amiga is supported.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
708
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
709 ==============================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
710 6. Command-line arguments *cmdline-arguments*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
711
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
712 Different versions of Vi have different command-line arguments. This can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
713 confusing. To help you, this section gives an overview of the differences.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
714
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
715 Five variants of Vi will be considered here:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
716 Elvis Elvis version 2.1b
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
717 Nvi Nvi version 1.79
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
718 Posix Posix 1003.2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
719 Vi Vi version 3.7 (for Sun 4.1.x)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
720 Vile Vile version 7.4 (incomplete)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
721 Vim Vim version 5.2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
722
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
723 Only Vim is able to accept options in between and after the file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
724
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
725 +{command} Elvis, Nvi, Posix, Vi, Vim: Same as "-c {command}".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
726
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
727 - Nvi, Posix, Vi: Run Ex in batch mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
728 Vim: Read file from stdin (use -s for batch mode).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
729
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
730 -- Vim: End of options, only file names are following.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
731
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
732 --cmd {command} Vim: execute {command} before sourcing vimrc files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
733
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
734 --echo-wid Vim: GTK+ echoes the Window ID on stdout
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
735
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
736 --help Vim: show help message and exit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
737
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
738 --literal Vim: take file names literally, don't expand wildcards.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
739
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
740 --nofork Vim: same as |-f|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
741
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
742 --noplugin[s] Vim: Skip loading plugins.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
743
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
744 --remote Vim: edit the files in another Vim server
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
745
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
746 --remote-expr {expr} Vim: evaluate {expr} in another Vim server
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
747
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
748 --remote-send {keys} Vim: send {keys} to a Vim server and exit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
749
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
750 --remote-silent {file} Vim: edit the files in another Vim server if possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
751
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
752 --remote-wait Vim: edit the files in another Vim server and wait for it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
753
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
754 --remote-wait-silent Vim: like --remote-wait, no complaints if not possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
755
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
756 --role {role} Vim: GTK+ 2: set role of main window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
757
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
758 --serverlist Vim: Output a list of Vim servers and exit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
759
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
760 --servername {name} Vim: Specify Vim server name
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
761
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
762 --socketid {id} Vim: GTK window socket to run Vim in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
763
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
764 --version Vim: show version message and exit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
765
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
766 -? Vile: print usage summary and exit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
767
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
768 -a Elvis: Load all specified file names into a window (use -o for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
769 Vim).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
770
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
771 -A Vim: Start in Arabic mode (when compiled with Arabic).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
772
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
773 -b {blksize} Elvis: Use {blksize} blocksize for the session file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
774 -b Vim: set 'binary' mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
775
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
776 -C Vim: Compatible mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
777
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
778 -c {command} Elvis, Nvi, Posix, Vim: run {command} as an Ex command after
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
779 loading the edit buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
780 Vim: allow up to 10 "-c" arguments
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
781
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
782 -d {device} Vim: Use {device} for I/O (Amiga only). {only when compiled
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
783 without the |+diff| feature}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
784 -d Vim: start with 'diff' set. |vimdiff|
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
785
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
786 -dev {device} Vim: Use {device} for I/O (Amiga only).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
787
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
788 -D Vim: debug mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
789
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
790 -e Elvis, Nvi, Vim: Start in Ex mode, as if the executable is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
791 called "ex".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
792
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
793 -E Vim: Start in improved Ex mode |gQ|, like "exim".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
794
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
795 -f Vim: Run GUI in foreground (Amiga: don't open new window).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
796 -f {session} Elvis: Use {session} as the session file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
797
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
798 -F Vim: Start in Farsi mode (when compiled with Farsi).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
799 Nvi: Fast start, don't read the entire file when editing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
800 starts.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
801
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
802 -G {gui} Elvis: Use the {gui} as user interface.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
803
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
804 -g Vim: Start GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
805 -g N Vile: start editing at line N
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
806
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
807 -h Vim: Give help message.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
808 Vile: edit the help file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
809
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
810 -H Vim: start Hebrew mode (when compiled with it).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
811
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
812 -i Elvis: Start each window in Insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
813 -i {viminfo} Vim: Use {viminfo} for viminfo file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
814
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
815 -L Vim: Same as "-r" (also in some versions of Vi).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
816
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
817 -l Nvi, Vi, Vim: Set 'lisp' and 'showmatch' options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
818
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
819 -m Vim: Modifications not allowed to be written, resets 'write'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
820 option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
821
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
822 -M Vim: Modifications not allowed, resets 'modifiable' and the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
823 'write' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
824
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
825 -N Vim: No-compatible mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
826
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
827 -n Vim: No swap file used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
828
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
829 -nb[args] Vim: open a NetBeans interface connection
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
830
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
831 -O[N] Vim: Like -o, but use vertically split windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
832
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
833 -o[N] Vim: Open [N] windows, or one for each file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
834
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
835 -P {parent-title} Win32 Vim: open Vim inside a parent application window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
836
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
837 -q {name} Vim: Use {name} for quickfix error file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
838 -q{name} Vim: Idem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
839
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
840 -R Elvis, Nvi, Posix, Vile, Vim: Set the 'readonly' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
841
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
842 -r Elvis, Nvi, Posix, Vi, Vim: Recovery mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
843
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
844 -S Nvi: Set 'secure' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
845 -S {script} Vim: source script after starting up.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
846
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
847 -s Nvi, Posix, Vim: Same as "-" (silent mode), when in Ex mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
848 Elvis: Sets the 'safer' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
849 -s {scriptin} Vim: Read from script file {scriptin}; only when not in Ex
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
850 mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
851 -s {pattern} Vile: search for {pattern}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
852
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
853 -t {tag} Elvis, Nvi, Posix, Vi, Vim: Edit the file containing {tag}.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
854 -t{tag} Vim: Idem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
855
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
856 -T {term} Vim: Set terminal name to {term}.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
857
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
858 -u {vimrc} Vim: Read initializations from {vimrc} file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
859
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
860 -U {gvimrc} Vim: Read GUI initializations from {gvimrc} file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
861
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
862 -v Nvi, Posix, Vi, Vim: Begin in Normal mode (visual mode, in Vi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
863 terms).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
864 Vile: View mode, no changes possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
865
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
866 -V Elvis, Vim: Verbose mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
867 -V{nr} Vim: Verbose mode with specified level.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
868
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
869 -w {size} Elvis, Posix, Nvi, Vi, Vim: Set value of 'window' to {size}.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
870 -w{size} Nvi, Vi: Same as "-w {size}".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
871 -w {name} Vim: Write to script file {name} (must start with non-digit).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
872
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
873 -W {name} Vim: Append to script file {name}.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
874
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
875 -x Vi, Vim: Ask for encryption key. See |encryption|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
876
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
877 -X Vim: Don't connect to the X server.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
878
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
879 -y Vim: Start in easy mode, like |evim|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
880
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
881 -Z Vim: restricted mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
882
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
883 @{cmdfile} Vile: use {cmdfile} as startup file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
884
160
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
885 ==============================================================================
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
886 7. POSIX compliance *posix-compliance*
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
887
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
888 In 2005 the POSIX test suite was run to check the compatiblity of Vim. Most
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
889 of the test was executed properly. Here are the few things where Vim differs:
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
890
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
891 The -w{number} and -w {number} command line arguments are not supported by
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
892 Vim.
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
893 *posix-screen-size*
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
894 The $COLUMNS and $LINES environment variables are ignored by Vim if the size
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
895 can be obtained from the terminal in a more reliable way. Set the $VIM_POSIX
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
896 environment variable to have $COLUMNS and $LINES overrule sizes obtained in
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
897 another way.
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
898
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
899
7c0820eed232 updated for version 7.0049
vimboss
parents: 7
diff changeset
900
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
901 vim:tw=78:ts=8:ft=help:norl: