import { op } from "https://deno.land/x/ddc_vim@v4.0.2/deps.ts";
const { listchars } = op;
Strings to use in 'list' mode and for the :list
command. It is a
comma-separated list of string settings.
eol:c Character to show at the end of each line. When omitted, there is no extra character at the end of the line.
tab:xy[z] Two or three characters to be used to show a tab. The third character is optional.
tab:xy The 'x' is always used, then 'y' as many times as will fit. Thus "tab:>-" displays:
>-
>--
etc.
tab:xyz The 'z' is always used, then 'x' is prepended, and
then 'y' is used as many times as will fit. Thus
"tab:<->" displays:
>
<>
<->
<-->
etc.
When "tab:" is omitted, a tab is shown as ^I.
*lcs-space*
space:c Character to show for a space. When omitted, spaces
are left blank.
*lcs-multispace*
multispace:c...
One or more characters to use cyclically to show for
multiple consecutive spaces. Overrides the "space"
setting, except for single spaces. When omitted, the
"space" setting is used. For example,
`:set listchars=multispace:---+` shows ten consecutive
spaces as:
---+---+-- ~
*lcs-lead*
lead:c Character to show for leading spaces. When omitted,
leading spaces are blank. Overrides the "space" and
"multispace" settings for leading spaces. You can
combine it with "tab:", for example: >
:set listchars+=tab:>-,lead:.
leadmultispace:c...
Like the lcs-multispace
value, but for leading
spaces only. Also overrides lcs-lead
for leading
multiple spaces.
:set listchars=leadmultispace:---+
shows ten
consecutive leading spaces as:
---+---+--XXX
Where "XXX" denotes the first non-blank characters in
the line.
trail:c Character to show for trailing spaces. When omitted, trailing spaces are blank. Overrides the "space" and "multispace" settings for trailing spaces.
extends:c Character to show in the last column, when 'wrap' is off and the line continues beyond the right of the screen.
precedes:c Character to show in the first visible column of the physical line, when there is text preceding the character visible in the first column.
conceal:c Character to show in place of concealed text, when 'conceallevel' is set to 1.
nbsp:c Character to show for a non-breakable space character (0xA0 (160 decimal) and U+202F). Left blank when omitted.
The characters ':' and ',' should not be used. UTF-8 characters can be used when 'encoding' is "utf-8", otherwise only printable characters are allowed. All characters must be single width.
Each character can be specified as hex:
set listchars=eol:\\x24
set listchars=eol:\\u21b5
set listchars=eol:\\U000021b5
Note that a double backslash is used. The number of hex characters must be exactly 2 for \x, 4 for \u and 8 for \U.
Examples:
:set lcs=tab:>-,trail:-
:set lcs=tab:>-,eol:<,nbsp:%
:set lcs=extends:>,precedes:<
The "NonText" highlighting will be used for "eol", "extends" and
"precedes". "SpecialKey" will be used for "tab", "nbsp", "space",
"multispace", "lead" and "trail".
hl-NonText
hl-SpecialKey
(default "eol:$")