import { op } from "https://deno.land/x/ddc_vim@v3.9.1/deps.ts";
const { isfname } = op;
The characters specified by this option are included in file names and
path names. Filenames are used for commands like "gf", "[i" and in
the tags file. It is also used for "\f" in a pattern
.
Multi-byte characters 256 and above are always included, only the
characters up to 255 are specified with this option.
For UTF-8 the characters 0xa0 to 0xff are included as well.
Think twice before adding white space to this option. Although a
space may appear inside a file name, the effect will be that Vim
doesn't know where a file name starts or ends when doing completion.
It most likely works better without a space in 'isfname'.
Note that on systems using a backslash as path separator, Vim tries to do its best to make it work as you would expect. That is a bit tricky, since Vi originally used the backslash to escape special characters. Vim will not remove a backslash in front of a normal file name character on these systems, but it will on Unix and alikes. The '&' and '^' are not included by default, because these are special for cmd.exe.
The format of this option is a list of parts, separated with commas.
Each part can be a single character number or a range. A range is two
character numbers with '-' in between. A character number can be a
decimal number between 0 and 255 or the ASCII character itself (does
not work for digits). Example:
",-,128-140,#-43" (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.
(default for Win32:
"@,48-57,/,\,.,-,_,+,,,#,$,%,{,},[,],:,@-@,!,~,="
for AMIGA: "@,48-57,/,.,-,_,+,,,$,:"
for VMS: "@,48-57,/,.,-,_,+,,,#,$,%,<,>,[,],:,;,~"
for OS/390: "@,240-249,/,.,-,_,+,,,#,$,%,~,="
otherwise: "@,48-57,/,.,-,_,+,,,#,$,%,~,="
)