Home Explore Blog CI



neovim

54th chunk of `runtime/doc/options.txt`
e042015d5ad3b2e3b64d26f8bcb8a51eeb921c705da4c44a0000000100000fa0
	(include '_' and '-' and the range
					128 to 140 and '#' to 43)
	If a part starts with '^', the following character number or range
	will be excluded from the option.  The option is interpreted from left
	to right.  Put the excluded character after the range where it is
	included.  To include '^' itself use it as the last character of the
	option or the end of a range.  Example:
		"^a-z,#,^"	(exclude 'a' to 'z', include '#' and '^')
	If the character is '@', all characters where isalpha() returns TRUE
	are included.  Normally these are the characters a to z and A to Z,
	plus accented characters.  To include '@' itself use "@-@".  Examples:
		"@,^a-z"	All alphabetic characters, excluding lower
				case ASCII letters.
		"a-z,A-Z,@-@"	All letters plus the '@' character.
	A comma can be included by using it where a character number is
	expected.  Example:
		"48-57,,,_"	Digits, comma and underscore.
	A comma can be excluded by prepending a '^'.  Example:
		" -~,^,,9"	All characters from space to '~', excluding
				comma, plus <Tab>.
	See |option-backslash| about including spaces and backslashes.

						*'isident'* *'isi'*
'isident' 'isi'		string	(default for Windows:
                                           "@,48-57,_,128-167,224-235"
                                otherwise: "@,48-57,_,192-255")
			global
	The characters given by this option are included in identifiers.
	Identifiers are used in recognizing environment variables and after a
	match of the 'define' option.  It is also used for "\i" in a
	|pattern|.  See 'isfname' for a description of the format of this
	option.  For '@' only characters up to 255 are used.
	Careful: If you change this option, it might break expanding
	environment variables.  E.g., when '/' is included and Vim tries to
	expand "$HOME/.local/state/nvim/shada/main.shada".  Maybe you should
	change 'iskeyword' instead.

						*'iskeyword'* *'isk'*
'iskeyword' 'isk'	string	(default "@,48-57,_,192-255")
			local to buffer
	Keywords are used in searching and recognizing with many commands:
	"w", "*", "[i", etc.  It is also used for "\k" in a |pattern|.  See
	'isfname' for a description of the format of this option.  For '@'
	characters above 255 check the "word" character class (any character
	that is not white space or punctuation).
	For C programs you could use "a-z,A-Z,48-57,_,.,-,>".
	For a help file it is set to all non-blank printable characters except
	"*", '"' and '|' (so that CTRL-] on a command finds the help for that
	command).
	When the 'lisp' option is on the '-' character is always included.
	This option also influences syntax highlighting, unless the syntax
	uses |:syn-iskeyword|.

						*'isprint'* *'isp'*
'isprint' 'isp'		string	(default "@,161-255")
			global
	The characters given by this option are displayed directly on the
	screen.  It is also used for "\p" in a |pattern|.  The characters from
	space (ASCII 32) to '~' (ASCII 126) are always displayed directly,
	even when they are not included in 'isprint' or excluded.  See
	'isfname' for a description of the format of this option.

	Non-printable characters are displayed with two characters:
		  0 -  31	"^@" - "^_"
		 32 - 126	always single characters
		   127		"^?"
		128 - 159	"~@" - "~_"
		160 - 254	"| " - "|~"
		   255		"~?"
	Illegal bytes from 128 to 255 (invalid UTF-8) are
	displayed as <xx>, with the hexadecimal value of the byte.
	When 'display' contains "uhex" all unprintable characters are
	displayed as <xx>.
	The SpecialKey highlighting will be used for unprintable characters.
	|hl-SpecialKey|

	Multi-byte characters 256 and above are always included, only the
	characters up to 255 are specified with this option.  When a character
	is printable but it is not available in the current font, a
	replacement character will be shown.
	Unprintable and zero-width Unicode characters are displayed as <xxxx>.
	There is no option to specify these characters.

			*'joinspaces'* *'js'* *'nojoinspaces'* *'nojs'*
'joinspaces' 'js'	boolean

Title: Details of 'isfname', and Options 'isident', 'iskeyword', and 'isprint'
Summary
This section details how to specify characters and ranges in the 'isfname' option, including excluding characters with '^' and using '@' for alphabetic characters. It then describes the 'isident' option for characters in identifiers, 'iskeyword' for keywords used in searching and commands, and 'isprint' for characters displayed directly on the screen. It also outlines how non-printable characters are displayed and how multi-byte characters are handled.