| 
hl-Conceal
 | 
Conceal
 | 
placeholder characters substituted for concealed text (see 'conceallevel')
 | 
| 
hl-Cursor
 | 
Cursor
 | 
the character under the cursor
 | 
| 
hl-CursorIM
 | 
CursorIM
 | 
like Cursor, but used when in IME mode CursorIM
 | 
| 
hl-CursorColumn
 | 
CursorColumn
 | 
the screen column that the cursor is in when 'cursorcolumn' is set
 | 
| 
hl-CursorLine
 | 
CursorLine
 | 
the screen line that the cursor is in when 'cursorline' is set
 | 
| 
hl-Directory
 | 
Directory
 | 
directory names (and other special names in listings)
 | 
| 
hl-DiffAdd
 | 
DiffAdd
 | 
diff mode: Added line diff.txt
 | 
| 
hl-DiffChange
 | 
DiffChange
 | 
diff mode: Changed line diff.txt
 | 
| 
hl-DiffDelete
 | 
DiffDelete
 | 
diff mode: Deleted line diff.txt
 | 
| 
hl-DiffText
 | 
DiffText
 | 
diff mode: Changed text within a changed line diff.txt
 | 
| 
hl-ErrorMsg
 | 
ErrorMsg
 | 
error messages on the command line
 | 
| 
hl-VertSplit
 | 
VertSplit
 | 
the column separating vertically split windows
 | 
| 
hl-Folded
 | 
Folded
 | 
line used for closed folds
 | 
| 
hl-FoldColumn
 | 
FoldColumn
 | 
'foldcolumn'
 | 
| 
hl-SignColumn
 | 
SignColumn
 | 
column where signs are displayed
 | 
| 
hl-IncSearch
 | 
IncSearch
 | 
'incsearch' highlighting; also used for the text replaced with ":s///c"
 | 
| 
hl-LineNr
 | 
LineNr
 | 
Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
 | 
| 
hl-MatchParen
 | 
MatchParen
 | 
The character under the cursor or just before it, if it is a paired bracket, and its match. pi_paren.txt
 | 
| 
hl-ModeMsg
 | 
ModeMsg
 | 
'showmode' message (e.g., "-- INSERT --")
 | 
| 
hl-MoreMsg
 | 
MoreMsg
 | 
more-prompt
 | 
| 
hl-NonText
 | 
NonText
 | 
'~' and '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line).
 | 
| 
hl-Normal
 | 
Normal
 | 
normal text
 | 
| 
hl-Pmenu
 | 
Pmenu
 | 
Popup menu: normal item.
 | 
| 
hl-PmenuSel
 | 
PmenuSel
 | 
Popup menu: selected item.
 | 
| 
hl-PmenuSbar
 | 
PmenuSbar
 | 
Popup menu: scrollbar.
 | 
| 
hl-PmenuThumb
 | 
PmenuThumb
 | 
Popup menu: Thumb of the scrollbar.
 | 
| 
hl-Question
 | 
Question
 | 
hit-enter prompt and yes/no questions
 | 
| 
hl-Search
 | 
Search
 | 
Last search pattern highlighting (see 'hlsearch').  Also used for highlighting the current line in the quickfix window and similar items that need to stand out.
 | 
| 
hl-SpecialKey
 | 
SpecialKey
 | 
Meta and special keys listed with ":map", also for text used to show unprintable characters in the text, 'listchars'.  Generally: text that is displayed differently from what it really is.
 | 
| 
hl-SpellBad
 | 
SpellBad
 | 
Word that is not recognized by the spellchecker. spell This will be combined with the highlighting used otherwise.
 | 
| 
hl-SpellCap
 | 
SpellCap
 | 
Word that should start with a capital. spell This will be combined with the highlighting used otherwise.
 | 
| 
hl-SpellLocal
 | 
SpellLocal
 | 
Word that is recognized by the spellchecker as one that is used in another region. spell This will be combined with the highlighting used otherwise.
 | 
| 
hl-SpellRare
 | 
SpellRare
 | 
Word that is recognized by the spellchecker as one that is hardly ever used. spell This will be combined with the highlighting used otherwise.
 | 
| 
hl-StatusLine
 | 
StatusLine
 | 
status line of current window
 | 
| 
hl-StatusLineNC
 | 
StatusLineNC
 | 
status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
 | 
| 
hl-TabLine
 | 
TabLine
 | 
tab pages line, not active tab page label
 | 
| 
hl-TabLineFill
 | 
TabLineFill
 | 
tab pages line, where there are no labels
 | 
| 
hl-TabLineSel
 | 
TabLineSel
 | 
tab pages line, active tab page label
 | 
| 
hl-Title
 | 
Title
 | 
titles for output from ":set all", ":autocmd" etc.
 | 
| 
hl-Visual
 | 
Visual
 | 
Visual mode selection
 | 
| 
hl-VisualNOS
 | 
VisualNOS
 | 
Visual mode selection when vim is "Not Owning the Selection".  Only X11 Gui's gui-x11 and xterm-clipboard supports this.
 | 
| 
hl-WarningMsg
 | 
WarningMsg
 | 
warning messages
 | 
| 
hl-WildMenu
 | 
WildMenu
 | 
current match in 'wildmenu' completion
 | 
| 
*Constant
 | 
any constant
 | 
| 
String
 | 
a string constant: "this is a string"
 | 
| 
Character
 | 
a character constant: 'c', '\n'
 | 
| 
Number
 | 
a number constant: 234, 0xff
 | 
| 
Boolean
 | 
a boolean constant: TRUE, false
 | 
| 
Float
 | 
a floating point constant: 2.3e10
 | 
| 
*Identifier
 | 
any variable name
 | 
| 
Function
 | 
function name (also: methods for classes)
 | 
| 
*Statement
 | 
any statement
 | 
| 
Conditional
 | 
if, then, else, endif, switch, etc.
 | 
| 
Repeat
 | 
for, do, while, etc.
 | 
| 
Label
 | 
case, default, etc.
 | 
| 
Operator
 | 
"sizeof", "+", "*", etc.
 | 
| 
Keyword
 | 
any other keyword
 | 
| 
Exception
 | 
try, catch, throw
 | 
| 
*PreProc
 | 
generic Preprocessor
 | 
| 
Include
 | 
preprocessor #include
 | 
| 
Define
 | 
preprocessor #define
 | 
| 
Macro
 | 
same as Define
 | 
| 
PreCondit
 | 
preprocessor #if, #else, #endif, etc.
 | 
| 
*Type
 | 
int, long, char, etc.
 | 
| 
StorageClass
 | 
static, register, volatile, etc.
 | 
| 
Structure
 | 
struct, union, enum, etc.
 | 
| 
Typedef
 | 
A typedef
 | 
| 
*Special
 | 
any special symbol
 | 
| 
SpecialChar
 | 
special character in a constant
 | 
| 
Tag
 | 
you can use CTRL-] on this
 | 
| 
Delimiter
 | 
character that needs attention
 | 
| 
SpecialComment
 | 
special things inside a comment
 | 
| 
Debug
 | 
debugging statements
 | 
| 
*Underlined
 | 
text that stands out, HTML links
 | 
| 
*Ignore
 | 
left blank, hidden  hl-Ignore
 | 
| 
*Error
 | 
any erroneous construct
 | 
| 
*Todo
 | 
extra attention; keywords TODO FIXME and XXX
 |