neovim/runtime
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
..
autoload vim-patch:8750e3cf81f1 (#26163) 2023-11-23 17:02:53 +08:00
colors feat(highlight): update default color scheme 2023-12-02 18:53:19 +02:00
compiler vim-patch:fc93594d562d 2023-09-13 17:23:45 +02:00
doc feat(highlight): update default color scheme 2023-12-02 18:53:19 +02:00
ftplugin vim-patch:9.0.2128: runtime(swig): add syntax and filetype plugins 2023-11-26 00:41:59 +01:00
indent vim-patch:813a538bb3ce 2023-11-25 17:33:05 +01:00
keymap vim-patch:caee7956a21a 2023-11-05 21:56:56 +01:00
lua vim-patch:9.0.2139: html.angular ft is problematic (#26357) 2023-12-02 09:42:16 +08:00
macros vim-patch:e8d6f03f6a61 2023-08-23 20:36:16 +01:00
pack/dist/opt vim-patch:2dd613f57bf1 (#26009) 2023-11-13 05:44:30 +08:00
plugin fix(man): set the nested flag for the BufReadCmd autocommand (#26285) 2023-11-28 17:02:44 -06:00
queries feat(lsp): use treesitter for stylize markdown 2023-09-19 14:47:37 +01:00
spell feat(runtime): import cleanadd.vim from Vim (#17699) 2022-03-13 04:52:45 +00:00
syntax vim-patch:a9058440b7b9 2023-11-29 21:00:07 +01:00
tools vim-patch:e80086446cc2 (#19848) 2022-08-20 10:04:55 +02:00
tutor fix(tutor): Tutor steps don't work on Windows #25251 2023-09-26 06:31:35 -07:00
CMakeLists.txt refactor(build): move the last generator from scripts/ to src/nvim/generators 2023-04-21 16:46:35 +02:00
delmenu.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
filetype.lua fix(filetype): make sure buffer is valid before call nvim_buf_call (#24922) 2023-08-30 10:14:58 -05:00
ftoff.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
ftplugin.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
ftplugof.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
indent.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
indoff.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
macmap.vim
makemenu.vim vim-patch:9.0.2104: wast filetype should be replaced by wat filetype 2023-11-14 21:51:28 +01:00
menu.vim vim-patch:e059fae10044 2023-08-24 11:33:06 +09:00
mswin.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
neovim.ico feat(windows): show icon in terminal titlebar, taskbar #20607 2022-10-13 05:48:12 -07:00
nvim.appdata.xml NVIM v0.9.0 2023-04-07 13:26:29 +02:00
nvim.desktop build(nvim.desktop): central Kurdish translation #17065 2022-05-13 11:58:22 -07:00
nvim.png Dist: make icon a proper square (#9716) 2019-03-11 21:00:12 +01:00
optwin.vim vim-patch:0b8b145bf8bf 2023-08-31 10:58:54 +02:00
synmenu.vim vim-patch:9.0.2104: wast filetype should be replaced by wat filetype 2023-11-14 21:51:28 +01:00