Files
neovim/runtime/doc
Evgeni Chasnovski 64a14026d7 feat(highlight): update default color scheme
Problem: Default color scheme is suboptimal.

Solution: Start using new color scheme. Introduce new `vim` color scheme
for opt-in backward compatibility.

------
Main design ideas
- Be "Neovim branded".
- Be minimal for 256 colors with a bit more shades for true colors.
- Be accessible through high enough contrast ratios.
- Be suitable for dark and light backgrounds via exchange of dark and
  light palettes.

------
Palettes

- Have dark and light variants. Implemented through exporeted
  `NvimDark*` and `NvimLight*` hex colors.

- Palettes have 4 shades of grey for UI elements and 6 colors (red,
  yellow, green, cyan, blue, magenta).

- Actual values are computed procedurally in Oklch color space based on
  a handful of hyperparameters.

- Each color has a 256 colors variant with perceptually closest color.

------
Highlight groups

Use:

- Grey shades for general UI according to their design.

- Bold text for keywords (`Statement` highlight group). This is an
  important choice to increase accessibility for people with color
  deficiencies, as it doesn't rely on actual color.

- Green for strings, `DiffAdd` (as background), `DiagnosticOk`, and some
  minor text UI elements.

- Cyan as main syntax color, i.e. for function usage (`Function`
  highlight group), `DiffText`, `DiagnosticInfo`, and some minor text UI
  elements.

- Red to generally mean high user attention, i.e. errors; in particular
  for `ErrorMsg`, `DiffDelete`, `DiagnosticError`.

- Yellow very sparingly only with true colors to mean mild user
  attention, i.e. warnings. That is, `DiagnosticWarn` and `WarningMsg`.

- Blue very sparingly only with true colors as `DiagnosticHint` and some
  additional important syntax group (like `Identifier`).

- Magenta very carefully (if at all).

------
Notes

- To make tests work without relatively larege updates, each one is
  prepended with an equivalent of the call `:colorscheme vim`.

  Plus some tests which spawn new Neovim instances also now use 'vim'
  color scheme.

  In some cases tests are updated to fit new default color scheme.
2023-12-02 18:53:19 +02:00
..
2023-07-25 05:07:13 -07:00
2023-10-29 16:02:32 +08:00
2023-11-25 06:35:31 -08:00
2023-04-17 15:46:24 +08:00
2023-04-04 19:07:33 +02:00
2023-10-03 06:21:37 +08:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-10-29 16:02:32 +08:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-11-03 07:22:02 +08:00
2023-06-26 11:29:12 +02:00
2023-10-14 19:28:41 +08:00
2023-05-13 21:33:22 +02:00
2023-10-10 19:20:32 +02:00
2023-09-20 04:15:23 -07:00
2022-10-14 08:01:13 -07:00
2023-09-29 07:05:21 +08:00
2022-12-11 18:41:26 -08:00
2023-10-21 18:04:08 +08:00
2023-11-14 23:29:09 +01:00
2023-06-25 17:14:28 +02:00
2023-11-06 19:03:08 +08:00
2023-11-03 07:22:02 +08:00
2023-10-10 19:20:32 +02:00
2023-01-01 15:05:13 +01:00
2023-06-19 08:40:33 -07:00
2023-09-28 05:22:09 +08:00
2023-11-27 17:43:13 +08:00
2023-06-11 12:40:22 +01:00
2023-04-04 19:07:33 +02:00
2022-09-26 17:43:23 +08:00
2023-08-10 17:28:02 +08:00
2023-08-13 13:25:10 +01:00
2023-05-15 09:38:32 +02:00
2023-04-23 15:22:55 +02:00
2023-08-10 17:28:04 +08:00
2023-01-03 10:07:43 +00:00
2023-06-25 17:14:28 +02:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-07-25 05:07:13 -07:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-07-25 05:07:13 -07:00
2023-06-19 08:40:33 -07:00
2023-01-03 10:07:43 +00:00
2023-06-25 17:14:28 +02:00