Screenshot Tests
March 24, 2026 · View on GitHub
Visual regression tests for every parser and display mode. Each test is
CI-generated from a config in
scripts/screenshots/configs.lua that
enables one option against a fixture file, showing exactly which strings
it highlights and which it does not.
Report an issue: click the [N] link next to any test to open a
pre-filled issue.
Table of Contents
Default
css = true preset — enables names, hex, rgb, hsl, oklch, css_var all at once.
|
[1] default css = true (names + hex + rgb + hsl + oklch + css_var) ![]() Config
|
Presets
The css and css_fn presets enable groups of parsers with a single flag.
Each test shows what the preset enables and what it does not.
|
[2] preset_css css = true preset (names + hex + rgb + hsl + oklch + css_var) ![]() Config
|
[3] preset_css_fn css_fn = true preset (rgb + hsl + oklch only) ![]() Config
|
Hex Colors
Each test enables one hex.* option. The hex_all test enables all hex formats together.
|
[4] hex_rgb #RGB (3-digit) ![]() Config
|
[5] hex_rgba #RGBA (4-digit) ![]() Config
|
[6] hex_rrggbb #RRGGBB (6-digit) ![]() Config
|
|
[7] hex_rrggbbaa #RRGGBBAA (8-digit) ![]() Config
|
[8] hex_hash_aarrggbb #AARRGGBB (QML 8-digit) ![]() Config
|
[9] hex_0x_aarrggbb 0xAARRGGBB (prefix hex) ![]() Config
|
|
[10] hex_no_hash RRGGBB without # prefix ![]() Config
|
[11] hex_default hex.default (all common formats) ![]() Config
|
[12] hex_all All hex formats combined ![]() Config
|
CSS Functions
Each test enables one CSS function parser. The css_all test enables all CSS functions together.
|
[13] css_rgb rgb() / rgba() functions ![]() Config
|
[14] css_hsl hsl() / hsla() functions ![]() Config
|
[15] css_oklch oklch() function ![]() Config
|
|
[16] css_hwb hwb() function (CSS Color Level 4) ![]() Config
|
[17] css_lab lab() function (CIE Lab) ![]() Config
|
[18] css_lch lch() function (CIE LCH) ![]() Config
|
|
[19] css_color_fn color() function (srgb, display-p3, a98-rgb, etc.) ![]() Config
|
[20] css_hsluv hsluv() / hsluvu() functions ![]() Config
|
[21] css_all All CSS color functions combined ![]() Config
|
Named Colors
Each test enables one name case variant or tailwind. The names_all test enables all name styles together.
|
[22] names_lowercase lowercase named colors only ![]() Config
|
[23] names_camelcase CamelCase named colors only ![]() Config
|
[24] names_uppercase UPPERCASE named colors only ![]() Config
|
|
[25] names_tailwind Tailwind CSS color names ![]() Config
|
[26] names_tailwind_lsp_config Tailwind with lsp table config (parser names only) ![]() Config
|
[27] names_strip_digits strip_digits rejects names ending in digits ![]() Config
|
|
[28] names_custom User-defined custom color names ![]() Config
|
[29] names_extra_word_chars extra_word_chars = "-" (hyphens in names) ![]() Config
|
[30] names_all All name styles combined ![]() Config
|
Special Parsers
Each test enables one special parser (xterm, xcolor, css_var_rgb, sass, hooks) with its own fixture.
|
[31] special_xterm Xterm 256-color (#xN) ![]() Config
|
[32] special_xcolor XColor blending (name!percent) ![]() Config
|
[33] special_css_var_rgb CSS variable RGB (--var: r,g,b;) ![]() Config
|
|
[34] special_css_var CSS custom properties var(--name) resolution ![]() Config
|
[35] special_sass Sass $variable color resolution ![]() Config
|
[36] special_sass_pattern variable_pattern restricts to alpha-only names ![]() Config
|
|
[37] special_hooks_line_filter should_highlight_line skips comment lines ![]() Config
|
[38] special_hooks_color_filter should_highlight_color skips black and white ![]() Config
|
[39] special_hooks_transform transform_color converts all colors to grayscale ![]() Config
|
Display Modes
All display tests use the same fixture with css = true, showing how different
display.mode settings render the same colors.
|
[40] display_background mode = background (default) ![]() Config
|
[41] display_foreground mode = foreground (colored text) ![]() Config
|
[42] display_underline mode = underline (colored underline via sp) ![]() Config
|
|
[43] display_virtualtext_eol virtualtext at end of line ![]() Config
|
[44] display_virtualtext_inline virtualtext inline after color ![]() Config
|
[45] display_virtualtext_before virtualtext before color ![]() Config
|
|
[46] display_virtualtext_hl_bg virtualtext eol with hl_mode = background ![]() Config
|
[47] display_vt_before_hl_bg virtualtext before with hl_mode = background ![]() Config
|
[48] display_vt_after_hl_bg virtualtext after with hl_mode = background ![]() Config
|
|
[49] display_vt_char_circle virtualtext with char = ● ![]() Config
|
[50] display_vt_char_block virtualtext with char = █ ![]() Config
|
[51] display_bg_contrast background mode with custom contrast colors ![]() Config
|
|
[52] display_priority custom priority (default=50, lsp=300) ![]() Config
|
[53] display_bg_vt combined: background + virtualtext ![]() Config
|
[54] display_fg_underline combined: foreground + underline ![]() Config
|
|
[55] display_bg_underline combined: background + underline ![]() Config
|
[56] display_bg_underline_vt combined: background + underline + virtualtext (eol) ![]() Config
|























































