whitespace-style

whitespace-style is a variable defined in `whitespace.el'.
Its value is

(face tabs spaces trailing lines space-before-tab newline indentation empty space-after-tab space-mark tab-mark newline-mark)


Documentation:
Specify which kind of blank is visualized.

It's a list containing some or all of the following values:

face enable all visualization via faces (see below).

trailing trailing blanks are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

tabs TABs are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

spaces SPACEs and HARD SPACEs are visualized via
faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

lines lines which have columns beyond
`whitespace-line-column' are highlighted via
faces.
Whole line is highlighted.
It has precedence over `lines-tail' (see
below).
It has effect only if `face' (see above)
is present in `whitespace-style'.

lines-tail lines which have columns beyond
`whitespace-line-column' are highlighted via
faces.
But only the part of line which goes
beyond `whitespace-line-column' column.
It has effect only if `lines' (see above)
is not present in `whitespace-style'
and if `face' (see above) is present in
`whitespace-style'.

newline NEWLINEs are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

empty empty lines at beginning and/or end of buffer
are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

indentation::tab 8 or more SPACEs at beginning of line are
visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

indentation::space TABs at beginning of line are visualized via
faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

indentation 8 or more SPACEs at beginning of line are
visualized, if `indent-tabs-mode' (which see)
is non-nil; otherwise, TABs at beginning of
line are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

big-indent Big indentations are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-after-tab::tab 8 or more SPACEs after a TAB are
visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-after-tab::space TABs are visualized when 8 or more
SPACEs occur after a TAB, via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-after-tab 8 or more SPACEs after a TAB are
visualized, if `indent-tabs-mode'
(which see) is non-nil; otherwise,
the TABs are visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-before-tab::tab SPACEs before TAB are visualized via
faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-before-tab::space TABs are visualized when SPACEs occur
before TAB, via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-before-tab SPACEs before TAB are visualized, if
`indent-tabs-mode' (which see) is
non-nil; otherwise, the TABs are
visualized via faces.
It has effect only if `face' (see above)
is present in `whitespace-style'.

space-mark SPACEs and HARD SPACEs are visualized via
display table.

tab-mark TABs are visualized via display table.

newline-mark NEWLINEs are visualized via display table.

Any other value is ignored.

If nil, don't visualize TABs, (HARD) SPACEs and NEWLINEs via faces and
via display table.

There is an evaluation order for some values, if they are
included in `whitespace-style' list. For example, if
indentation, indentation::tab and/or indentation::space are
included in `whitespace-style' list. The evaluation order for
these values is:

* For indentation:
1. indentation
2. indentation::tab
3. indentation::space

* For SPACEs after TABs:
1. space-after-tab
2. space-after-tab::tab
3. space-after-tab::space

* For SPACEs before TABs:
1. space-before-tab
2. space-before-tab::tab
3. space-before-tab::space

So, for example, if indentation and indentation::space are
included in `whitespace-style' list, the indentation value is
evaluated instead of indentation::space value.

One reason for not visualize spaces via faces (if `face' is not
included in `whitespace-style') is to use exclusively for
cleaning up a buffer. See `whitespace-cleanup' and
`whitespace-cleanup-region' for documentation.

See also `whitespace-display-mappings' for documentation.

You can customize this variable.