mode. Without this flag the characters are
erased from the screen right away. With this flag the
screen newly typed text overwrites backspaced
characters.
*cpo-W*
W Don't overwrite a readonly file. When omitted, ":w!"
overwrites a readonly file, if possible.
*cpo-x*
x <Esc> on the command-line executes the command-line.
The default in Vim is to abandon the command-line,
because <Esc> normally aborts a command. |c_<Esc>|
*cpo-X*
X When using a count with "R" the replaced text is
deleted only once. Also when repeating "R" with "."
and a count.
*cpo-y*
y A yank command can be redone with ".". Think twice if
you really want to use this, it may break some
plugins, since most people expect "." to only repeat a
change.
*cpo-Z*
Z When using "w!" while the 'readonly' option is set,
don't reset 'readonly'.
*cpo-!*
! When redoing a filter command, use the last used
external command, whatever it was. Otherwise the last
used -filter- command is used.
*cpo-$*
$ When making a change to one line, don't redisplay the
line, but put a '$' at the end of the changed text.
The changed text will be overwritten when you type the
new text. The line is redisplayed if you type any
command that moves the cursor from the insertion
point.
*cpo-%*
% Vi-compatible matching is done for the "%" command.
Does not recognize "#if", "#endif", etc.
Does not recognize "/*" and "*/".
Parens inside single and double quotes are also
counted, causing a string that contains a paren to
disturb the matching. For example, in a line like
"if (strcmp("foo(", s))" the first paren does not
match the last one. When this flag is not included,
parens inside single and double quotes are treated
specially. When matching a paren outside of quotes,
everything inside quotes is ignored. When matching a
paren inside quotes, it will find the matching one (if
there is one). This works very well for C programs.
This flag is also used for other features, such as
C-indenting.
*cpo-+*
+ When included, a ":write file" command will reset the
'modified' flag of the buffer, even though the buffer
itself may still be different from its file.
*cpo->*
> When appending to a register, put a line break before
the appended text.
*cpo-;*
; When using |,| or |;| to repeat the last |t| search
and the cursor is right in front of the searched
character, the cursor won't move. When not included,
the cursor would skip over it and jump to the
following occurrence.
*cpo-_*
_ When using |cw| on a word, do not include the
whitespace following the word in the motion.
*'cursorbind'* *'crb'* *'nocursorbind'* *'nocrb'*
'cursorbind' 'crb' boolean (default off)
local to window
When this option is set, as the cursor in the current
window moves other cursorbound windows (windows that also have
this option set) move their cursors to the corresponding line and
column. This option is useful for viewing the
differences between two versions of a file (see 'diff'); in diff mode,
inserted and deleted lines (though not characters within a line) are
taken into account.
*'cursorcolumn'* *'cuc'* *'nocursorcolumn'* *'nocuc'*
'cursorcolumn' 'cuc' boolean (default off)
local to window
Highlight the screen column of the cursor with CursorColumn
|hl-CursorColumn|. Useful to align text. Will make screen redrawing
slower.
If you only want the highlighting in the current window you can use
these autocommands: >vim
au WinLeave * set nocursorline nocursorcolumn
au WinEnter * set cursorline cursorcolumn
<
*'cursorline'* *'cul'* *'nocursorline'* *'nocul'*
'cursorline' 'cul' boolean (default off)
local to window
Highlight the text line of the cursor with CursorLine |hl-CursorLine|.
Useful to easily spot the cursor. Will make screen redrawing slower.
When