Accessibility - ajvondrak/vondark GitHub Wiki

The vondark color scheme is not explicitly designed for accessibility.

However, it may be worth noting that the foreground/background contrast ratios for the basic syntax groups tend to be at least 4.5:1 (WCAG 2.0 level AA). There are some exceptions, like for Statement (4.33, AA only for large text) and Error (2.4, a complete failure). Several are above the AAA 7:1 ratio.

Group Foreground Background Swatch Ratio WCAG Level
Normal #cccccc #1a1a1a #cccccc on #1a1a1a 10.84 AAA
Comment #999999 #1a1a1a #999999 on #1a1a1a 6.11 AAA 18pt
Constant #ffc400 #1a1a1a #ffc400 on #1a1a1a 10.9 AAA
String #ffc400 #333333 #ffc400 on #333333 7.91 AAA
Number #ff8a50 #1a1a1a #ff8a50 on #1a1a1a 7.46 AAA
Identifier #6ec6ff #1a1a1a #6ec6ff on #1a1a1a 9.27 AAA
Statement #2978ff #1a1a1a #2978ff on #1a1a1a 4.33 AA 18pt
PreProc #9a67ea #1a1a1a #9a67ea on #1a1a1a 4.56 AAA 18pt
Type #80e27e #1a1a1a #80e27e on #1a1a1a 10.86 AAA
Special #dc67ea #1a1a1a #dc67ea on #1a1a1a 5.94 AAA 18pt
Underlined #8eacbb #1a1a1a #8eacbb on #1a1a1a 7.27 AAA
Error #cccccc #ff1744 #cccccc on #ff1744 2.4 FAIL
DiffAdd #80e27e #333333 #80e27e on #333333 7.88 AAA
DiffDelete #ff1744 #333333 #ff1744 on #333333 3.28 AA 18pt
DiffChange #ffc400 #333333 #ffc400 on #333333 7.91 AAA
DiffText #ff8a50 #333333 #ff8a50 on #333333 5.42 AAA 18pt
Visual #1a1a1a #8eacbb #1a1a1a on #8eacbb 7.27 AAA
IncSearch #1a1a1a #ff8a50 #1a1a1a on #ff8a50 7.46 AAA
Search #1a1a1a #ffc400 #1a1a1a on #ffc400 10.9 AAA

Other combinations occur in the wild, such as MatchParen changing the background of some delimiter that may or may not be highlighted in a particular color. The relative contrast between separate syntax elements is also important (e.g., is PreProc sufficiently distinguishable from Type?). I have not checked these scenarios, so there may be several bad combinations. Even for the basic syntax above, colorblindness checks fail across the board.

The UI elements generally involve greys on top of greys, so the contrast will be much lower outside the bounds of basic syntax. This is done on purpose (e.g., I want CursorLine and LineNr to be less visible), but may obviously be unsuitable for certain visual needs.