Home Explore Blog CI



neovim

23th chunk of `runtime/doc/options.txt`
5c562acc84eeaa21b0e2d033291be861ba4e4c48288347500000000100000fa1
 ('wrapscan' is ignored)
	w	scan buffers from other windows
	b	scan other loaded buffers that are in the buffer list
	u	scan the unloaded buffers that are in the buffer list
	U	scan the buffers that are not in the buffer list
	k	scan the files given with the 'dictionary' option
	kspell  use the currently active spell checking |spell|
	k{dict}	scan the file {dict}.  Several "k" flags can be given,
		patterns are valid too.  For example: >vim
			set cpt=k/usr/dict/*,k~/spanish
<	s	scan the files given with the 'thesaurus' option
	s{tsr}	scan the file {tsr}.  Several "s" flags can be given, patterns
		are valid too.
	i	scan current and included files
	d	scan current and included files for defined name or macro
		|i_CTRL-X_CTRL-D|
	]	tag completion
	t	same as "]"
	f	scan the buffer names (as opposed to buffer contents)
	F{func}	call the function {func}.  Multiple "F" flags may be specified.
		Refer to |complete-functions| for details on how the function
		is invoked and what it should return.  The value can be the
		name of a function or a |Funcref|.  For |Funcref| values,
		spaces must be escaped with a backslash ('\'), and commas with
		double backslashes ('\\') (see |option-backslash|).
		If the Dict returned by the {func} includes {"refresh": "always"},
		the function will be invoked again whenever the leading text
		changes.
		Completion matches are always inserted at the keyword
		boundary, regardless of the column returned by {func} when
		a:findstart is 1.  This ensures compatibility with other
		completion sources.
		To make further modifications to the inserted text, {func}
		can make use of |CompleteDonePre|.
		If generating matches is potentially slow, |complete_check()|
		should be used to avoid blocking and preserve editor
		responsiveness.
	F	equivalent to using "F{func}", where the function is taken from
		the 'completefunc' option.
	o	equivalent to using "F{func}", where the function is taken from
		the 'omnifunc' option.

	Unloaded buffers are not loaded, thus their autocmds |:autocmd| are
	not executed, this may lead to unexpected completions from some files
	(gzipped files for example).  Unloaded buffers are not scanned for
	whole-line completion.

	As you can see, CTRL-N and CTRL-P can be used to do any 'iskeyword'-
	based expansion (e.g., dictionary |i_CTRL-X_CTRL-K|, included patterns
	|i_CTRL-X_CTRL-I|, tags |i_CTRL-X_CTRL-]| and normal expansions).

	An optional match limit can be specified for a completion source by
	appending a caret ("^") followed by a {count} to the source flag.
	For example: ".^9,w,u,t^5" limits matches from the current buffer
	to 9 and from tags to 5.  Other sources remain unlimited.
	Note: The match limit takes effect only during forward completion
	(CTRL-N) and is ignored during backward completion (CTRL-P).

						*'completefunc'* *'cfu'*
'completefunc' 'cfu'	string	(default "")
			local to buffer
	This option specifies a function to be used for Insert mode completion
	with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
	See |complete-functions| for an explanation of how the function is
	invoked and what it should return.  The value can be the name of a
	function, a |lambda| or a |Funcref|. See |option-value-function| for
	more information.
	This option cannot be set from a |modeline| or in the |sandbox|, for
	security reasons.

					*'completefuzzycollect'* *'cfc'*
'completefuzzycollect' 'cfc'	string	(default "")
			global
	A comma-separated list of strings to enable fuzzy collection for
	specific |ins-completion| modes, affecting how matches are gathered
	during completion.  For specified modes, fuzzy matching is used to
	find completion candidates instead of the standard prefix-based
	matching.  This option can contain the following values:

	keyword		keywords in the current file	|i_CTRL-X_CTRL-N|
			keywords with flags ".", "w",	|i_CTRL-N| |i_CTRL-P|
			"b", "u", "U" and "k{dict}" in 'complete'
			keywords in 'dictionary'	|i_CTRL-X_CTRL-K|

	files		file names			|i_CTRL-X_CTRL-F|

	whole_line

Title: Vim Options: 'complete' (continued), 'completefunc', and 'completefuzzycollect'
Summary
This section continues the explanation of the 'complete' option, detailing various flags for scanning different sources during completion, including buffers, dictionaries, thesauruses, and custom functions. It also introduces 'completefunc', which specifies a function for Insert mode completion with CTRL-X CTRL-U, and 'completefuzzycollect', which enables fuzzy matching for specific completion modes.