Home Explore Blog CI



neovim

27th chunk of `runtime/doc/options.txt`
a1bcc6b3fee53db59ecef5ecacc405e77af5ea36a9ecbf920000000100000fa1
 after the '|' is interpreted as the next
			command.  Use a CTRL-V instead of a backslash to
			include the '|' in the mapping.  Applies to all
			mapping, abbreviation, menu and autocmd commands.
			See also |map_bar|.
								*cpo-B*
		B	A backslash has no special meaning in mappings,
			abbreviations, user commands and the "to" part of the
			menu commands.  Remove this flag to be able to use a
			backslash like a CTRL-V.  For example, the command
			":map X \<Esc>" results in X being mapped to:
				'B' included:	"\^["	 (^[ is a real <Esc>)
				'B' excluded:	"<Esc>"  (5 characters)
								*cpo-c*
		c	Searching continues at the end of any match at the
			cursor position, but not further than the start of the
			next line.  When not present searching continues
			one character from the cursor position.  With 'c'
			"abababababab" only gets three matches when repeating
			"/abab", without 'c' there are five matches.
								*cpo-C*
		C	Do not concatenate sourced lines that start with a
			backslash.  See |line-continuation|.
								*cpo-d*
		d	Using "./" in the 'tags' option doesn't mean to use
			the tags file relative to the current file, but the
			tags file in the current directory.
								*cpo-D*
		D	Can't use CTRL-K to enter a digraph after Normal mode
			commands with a character argument, like |r|, |f| and
			|t|.
								*cpo-e*
		e	When executing a register with ":@r", always add a
			<CR> to the last line, also when the register is not
			linewise.  If this flag is not present, the register
			is not linewise and the last line does not end in a
			<CR>, then the last line is put on the command-line
			and can be edited before hitting <CR>.
								*cpo-E*
		E	It is an error when using "y", "d", "c", "g~", "gu" or
			"gU" on an Empty region.  The operators only work when
			at least one character is to be operated on.  Example:
			This makes "y0" fail in the first column.
								*cpo-f*
		f	When included, a ":read" command with a file name
			argument will set the file name for the current buffer,
			if the current buffer doesn't have a file name yet.
								*cpo-F*
		F	When included, a ":write" command with a file name
			argument will set the file name for the current
			buffer, if the current buffer doesn't have a file name
			yet.  Also see |cpo-P|.
								*cpo-i*
		i	When included, interrupting the reading of a file will
			leave it modified.
								*cpo-I*
		I	When moving the cursor up or down just after inserting
			indent for 'autoindent', do not delete the indent.
								*cpo-J*
		J	A |sentence| has to be followed by two spaces after
			the '.', '!' or '?'.  A <Tab> is not recognized as
			white space.
								*cpo-K*
		K	Don't wait for a key code to complete when it is
			halfway through a mapping.  This breaks mapping
			<F1><F1> when only part of the second <F1> has been
			read.  It enables cancelling the mapping by typing
			<F1><Esc>.
								*cpo-l*
		l	Backslash in a [] range in a search pattern is taken
			literally, only "\]", "\^", "\-" and "\\" are special.
			See |/[]|
			   'l' included: "/[ \t]"  finds <Space>, '\' and 't'
			   'l' excluded: "/[ \t]"  finds <Space> and <Tab>
								*cpo-L*
		L	When the 'list' option is set, 'wrapmargin',
			'textwidth', 'softtabstop' and Virtual Replace mode
			(see |gR|) count a <Tab> as two characters, instead of
			the normal behavior of a <Tab>.
								*cpo-m*
		m	When included, a showmatch will always wait half a
			second.  When not included, a showmatch will wait half
			a second or until a character is typed.  |'showmatch'|
								*cpo-M*
		M	When excluded, "%" matching will take backslashes into
			account.  Thus in "( \( )" and "\( ( \)" the outer
			parenthesis match.  When included "%" ignores
			backslashes, which is Vi compatible.
								*cpo-n*
		n	When included, the column used for 'number' and
			'relativenumber' will also be used for text of wrapped
			lines.
								*cpo-o*
		o	Line offset to search command is not remembered for

Title: Vim 'cpoptions' Flags: A Detailed Explanation
Summary
This section provides a detailed explanation of the various single-character flags within the 'cpoptions' setting in Vim. Each flag represents a specific Vi-compatible behavior, and the descriptions outline how the presence or absence of each flag affects Vim's functionality, covering aspects such as file reading/writing, mapping commands, search behavior, line continuation, digraph input, register execution, empty region handling, interruption behavior, autoindentation, sentence recognition, key code completion, backslash interpretation, 'list' option behavior, showmatch timing, parenthesis matching, 'number' and 'relativenumber' column usage, and search command line offset.