Age | Commit message (Collapse) | Author |
|
|
|
Improve readability of C language constants
To improve the readability of C language constants, defined by the
`cConstant` syntax highlighting group [1], these are now colored with
`nord9` for the foreground to make them stand out. This is important in
C, since interesting things are usually happening in their proximity,
like checking/returning an error, passing particular values/flags to
functions and so on.
[1]: https://github.com/vim/vim/blob/0e6adf8a29d5c2c96c42cc7157f71bf22c2ad471/runtime/syntax/c.vim#L313-L375
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
GH-283
|
|
Support for Neovim LSP `documentHighlight` groups
The Neovim LSP `textDocument` / `documentHightlight` groups [1] are
responsible to highlight tokens in a document that are related to each
other, e.g. decalred variables, using the
`vim.buf.lsp.document_highlight()` function.
Also see the LSP specification about "Document Highlights Request" [2]
for more details.
[1]: https://github.com/neovim/neovim/blob/f92a2457c2e7ad14d9a5a907ef4213fa770b6d95/runtime/doc/lsp.txt#L423
[2]: https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
In Neovim `0.6.0` [1] the naming scheme for the highlight groups of the
diagnostic API changed [2]. The new groups have been added as default while
the previous groups are conditionally guarded when using Neovim `0.5.0`.
[1]: https://github.com/neovim/neovim/releases/tag/v0.6.0
[2]: https://github.com/neovim/neovim/pull/15585/commits/a5bbb932f9094098bd656d3f6be3c58344576709#diff-51fab2b766d0a3b606462e95de492190df173b7296147912307cdad636cd492aR77
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
GH-282
|
|
|
|
The `TSError` group is used to highlight syntax/parser errors [1] which
caused an aggressive styling where the background color of many syntax
elements was rendered with `nord11` during typing. This was caused due
to the fast processing of `tree-sitter` which also resulted in highlight
flickering.
This is a known problem and was fixed by many other themes (e.g. Dracula
[2]) by removing the group again. One of the core maintainers of
`nvim-treesitter` provided a solution by remapping groups [3] and also
mentioned that the group is styled by the `nvim-treesitter` plugin but
the active theme [4].
Syntax errors can still be highlighted through linters and parsers like
Neovim's LSP [5] can still be used instead to highlight errors with the
correct style (e.g. only change the foreground color of a single word).
[1]: https://github.com/nvim-treesitter/nvim-treesitter/blob/fb5d6e04/doc/nvim-treesitter.txt#L493-L495
[2]: https://github.com/dracula/vim/pull/232
[3]: https://github.com/nvim-treesitter/nvim-treesitter/issues/78#issuecomment-647140700
[4]: https://github.com/nvim-treesitter/nvim-treesitter/issues/1016#issuecomment-797049591
[5]: https://github.com/neovim/nvim-lspconfig
Fixes GH-269
|
|
Support for LSP code lenses
Before LSP code lenses [1] where code lenses were highlighted with the
default color which has been changed to make it less visually intrusive,
like other UI related elements, i.e. messages of linters.
[1]: https://neovim.io/doc/user/lsp.html#lsp-highlight-codelens
GH-266
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
|
|
Add support for `vim-pandoc/vim-pandoc-syntax`
To improve syntax highlighting for Pandoc [1], support for the
vim-pandoc/vim-pandoc-syntax [2] plugin has been implemented.
Most groups are linked to existing Markdown groups to ensure a
consistent style across languages and different plugins.
Configurations used for testing:
```vim
let g:pandoc#syntax#conceal#cchar_overrides = {"atx": "〉"}
let g:nord_italic = 1
```
Resources:
- `g:pandoc#syntax#conceal#cchar_overrides` docs [3]
- `s:cchars` definition [4]
- Markdown "Extended Syntax" Guide [5]
[1]: https://pandoc.org
[2]: https://github.com/vim-pandoc/vim-pandoc-syntax
[3]: https://github.com/vim-pandoc/vim-pandoc-syntax/blob/68d7249/doc/pandoc-syntax.txt#L45-L50
[4]: https://github.com/vim-pandoc/vim-pandoc-syntax/blob/5056e63/syntax/pandoc.vim#L37-L72
[5]: https://www.markdownguide.org/extended-syntax
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
Closes GH-220
|
|
|
|
Neovim version 0.5 [1] is a long-time awaited update that introduces
features like tree-sitter [2][3] support and native LSP [4][5].
Even though Neovim devides more and more from Vim through specific
features like first-class Lua support with custom APIs, the highlighting
for tree-sitter is achived through "normal" syntax highlighting groups.
Most of the groups are already linked by the nvim-treesitter plugin by
default [6] so only a few groups have been adjuated for now to fit the
Nord style.
[1]: https://github.com/neovim/neovim/releases/tag/v0.5.0
[2]: https://github.com/tree-sitter/tree-sitter
[3]: https://github.com/nvim-treesitter/nvim-treesitter
[4]: https://neovim.io/doc/user/lsp.html
[5]: https://github.com/neovim/nvim-lspconfig
[6]: https://github.com/nvim-treesitter/nvim-treesitter/blob/90f15d9/plugin/nvim-treesitter.vim
Co-authored-by: Ferran Jovell <ferran.jovell@gmail.com>
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
Closes GH-235
|
|
|
|
This is a follow up for arcticicestudio/nord-vim#218 [1] which added
highlighting groups for the bundled PHP syntax, but the groups are
actually defined by the StanAngeloff/php.vim [2] plugin.
Therefore the added highlighting calls will be moved to a plugin
section.
Additionally, the `phpClassExtends` and `phpClassImplements` groups
have been added to improve the highlighting for classes that implement
or extended interfaces/classes. The `phpUseClass` has also been added to
improve the highlighting for imports.
[1]: https://github.com/arcticicestudio/nord-vim/pull/218
[2]: https://github.com/StanAngeloff/php.vim
Related to GH-218
Closes GH-262
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
Fixed two typos in group names:
- `PMenuSel` -> `PmenuSel`
- `PMenu` -> `Pmenu`
This mismatch was never really noticed because most of the time users
rely on plugins like coc [1] or vim-clap [2] which come with custom
highlighting groups and UI libraries.
[1]: https://github.com/neoclide/coc.nvim
[2]: https://github.com/liuchengxu/vim-clap
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
To ensure compatibility with the latest versions of Neovim LSP the
highlighting groups for diagnostics have been adapted to the changes
of neovim/neovim#12655 [1].
See :help lsp-highlight-diagnostics [2] for more details.
Note that LSP will be available as of Neovim 0.5 which is (at the time
of this commit) still in development and only available as nighly build.
Also see great articles from Nord Vim contributors like "Neovim (0.5) Is
Overpowering" [3] for more information about Neovim 0.5 features,
including LSP.
[1]: https://github.com/neovim/neovim/pull/12655
[2]: https://neovim.io/doc/user/lsp.html
[3]: https://crispgm.com/page/neovim-is-overpowering.html
Co-authored-by: Sven Greb <development@svengreb.de>
Closes GH-229
Closes GH-248
|
|
The `Conceal` group was not supported which could have led to rendering
problems for (Unicode) characters that require special encoding like
the ones from the Greek alphabet [1] that are often used in LaTeX [3] or
Pandoc [4] documents. These characters were highlighted with the default
background color which makes them kind of unreadable with the theme
foreground color.
See `:help conceal` and `:help concealcursor` for more details about
concealing in Vim.
To fix the problem, the `Conceal` group has been added with its
background color set to `NONE` for GUI and terminal mode to either use
the terminal default background color or let loaded scripts apply custom
styles based on the current runtime context.
The problem has been reported in GH-149, GH-207 and GH-211 with LaTeX
and Pandoc being used by the reporters. PR GH-220 adds support for
vim-pandoc/vim-pandoc-syntax [5] specific highlighting groups and can be
merged after adding basic support for `Conceal`.
[1]: https://en.wikipedia.org/wiki/Greek_alphabet
[2]: https://www.overleaf.com/learn/latex/mathematical_expressions
[3]: https://www.latex-project.org
[4]: https://pandoc.org
[5]: https://github.com/vim-pandoc/vim-pandoc-syntax
Co-authored-by: Sven Greb <development@svengreb.de>
Closes GH-256
|
|
Implemented the `NordPalette` pubic API function that returns all Nord
colors as dictionary. This allows to use the colors in other Vim scripts
without the need to copy & paste the colors from the documentations or
the Nord Vim theme sources.
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
Closes GH-224
|
|
The even and odd highlighting blocks using `nord1` and `nord2` (`nord3`
in terminal mode) to provide a subtle and non-disturbing style.
Note that the custom theme colors [1] are only applied when the
`indent_guides_auto_colors` variable has been set to `0`:
```vim
let g:indent_guides_auto_colors = 0
```
[1]: https://github.com/nathanaelkane/vim-indent-guides#setting-custom-indent-colors
Resolves GH-186
|
|
Before classes and functions used the default foreground color which made it hard to distinguish them from variables and syntactic characters like braces. The new style now matches other ports and highlighting engines and makes it easy to identify these elements with Nord's authentic appearance.
Closes GH-218
|
|
Added the coc.nvim [1] highlighting groups for errors and warnings using their respective foreground colors and the `undercurl` font style.
[1]: https://github.com/neoclide/coc.nvim
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
|
|
Added basic support for vim-clap [1], a modern and performant generic finder and dispatcher for Vim and NeoVim.
[1]: https://github.com/liuchengxu/vim-clap
GH-178
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
Basic highlighting support for TypeScript & TSX
Added basic support to highlight TypeScript & TSX syntax more
consistently through the HerringtonDarkholme/yats.vim plugin [1].
This includes improvements to highlight...
1. ...TypeScript interface an class names using `nord7` as foreground,
where interfaces also use the bold attribute, to match with
structs/classes.
2. ...global methods like e.g. `setTimeout` with `nord8` using the
italic attribute to mark it kind of static.
3. ...regular expressions with `nord13` as foreground color instead of
the normal color for quoted strings (`nord14`) to make it easier to
differ between both.
4. ...global objects like `Error`, `JSON` and `console` with `nord7`.
5. ...primitive/builtin types like `string` with `nord9`.
6. ...TypeScript type references with `nord7`.
7. ...TypeScript specific characters like for type annotations (`:`) and
member optionality (`?`) as operator with `nord9`.
This also includes improvements for "vanilla" JavaScript elements.
[1]: https://github.com/HerringtonDarkholme/yats.vim
Resolves GH-208
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
|
|
The `LineNr` and `CursorLineNr` highlight groups now have a transparent
background in GUI mode.
Before it was set to `nord0_gui` which worked fine in most cases.
However, some plugins use these highlight groups to render their content
in a popup window which can potentially have a different background
color. This caused some issues e.g. for the fuzzy search plugin
LeaderF [1].
The compatibility with the `g:nord_cursor_line_number_background`
theme configuration has been verified to work as expected in both modes
when it is set to `0` or `1`.
This change is not related to the terminal mode or when using
`set notermguicolors` since `ctermbg` for `LineNr` and `CursorLineNr`
is set to `NONE` by default.
[1]: https://github.com/Yggdroot/LeaderF
|
|
and GUI modes. (#202)
Consistent `Error` and `MoreMsg` highligh. in term and GUI mode (#202)
Before the `Error` group in GUI mode used `nord0` as foreground color
instead of `nord4` resulting in a bad contrast.
Also after checking ( links to it)
Also since there was also no color defined for terminal mode for the
`MoreMsg` group (see `:help MoreMsg` that link to `:help more-prompt`)
Vim used the default color which was some kind of green.
To ensure it matches Nord's style it has now been changed to use `nord8`
(main accent color) for both terminal and GUI mode.
This can be tested by running `:echon "MESSAGE\n"` taht produces a lot
of lines that won't fit on the current screen space anymore.
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>
|
|
Added highlighting support for the build-in Neovim language server [1] using the coc.nvim [2] groups as reference.
[1]: https://github.com/neovim/nvim-lsp
[2]: https://github.com/neoclide/coc.nvim
|
|
|
|
Vim version 8.1.2029 [1] added the `underline` attribute for the
`CursorLineNr` group to `cterm` [2] based on vim/vim#4933 [3].
This change resulted in gutter line numbers being underlined which has
now been reverted back to Nord's style by explicitly setting the
attribute for the group to `NONE`.
[1]: https://github.com/vim/vim/releases/tag/v8.1.2029
[2]: https://github.com/vim/vim/compare/d9b0d83b13d2691e4544709abd87eac004715175...017ba07fa2cdc578245618717229444fd50c470d#diff-80fffb3e9c20e93e5b2328a9a20e19c9
[3]: https://github.com/vim/vim/pull/4933
Resolves GH-174
|
|
Added custom highlight groups of the `vim-startify` (1) plugin to adapt
to Nord's style.
References:
(1) https://github.com/mhinz/vim-startify
Resolves GH-159
|
|
adds coc error gutter support
|
|
Co-Authored-By: Arctic Ice Studio <development@arcticicestudio.com>
|
|
|
|
|
|
|
|
Implemented a nw theme configuration for the rendering of bold font
styles.
This commit adds the new `nord_bold` theme configuration to explicitly
toggle bold font rendering styles.
It is enabled by default when running for both in GUI and terminal mode.
The reason for this standard behavior is the fact that most terminals
and shells are capable to handle bold fonts.
GH-143
|
|
changes of IncSearch color so that were difference from Search color
|
|
Co-Authored-By: aborzunov <Andrey.Borzunov@gmail.com>
|
|
|
|
arcticicestudio/feature/gh-138-basic-rust-syntax-highlighting-support
Basic syntax highlighting support for Rust
|
|
Add more ALE Highlights
|
|
Basic support for Asciidoc syntax highlighting
|
|
arcticicestudio/feature/gh-104-haskell-syntax-support
Haskell Syntax Plugin Support
|
|
This commit adds basic syntax highlighting support for Rust (1):
Traits (2) and enums (3) are colorized with `nord7` and with bold font
to make them visually stand out more.
Also attributes (4) and derives (5) are colored with `nord10`.
Macros (6) are colorized with `nord8` and bold font to make them
visually different from "normal" functions.
Escape (7) sequences are colored with `nord13`.
Import statements and paths are correctly colored with keyword and type colors.
References:
(1) https://www.rust-lang.org
(2) https://doc.rust-lang.org/book/ch10-02-traits.html
(3) https://doc.rust-lang.org/1.1.0/book/enums.html
(4) https://doc.rust-lang.org/reference/attributes.html
(5) https://doc.rust-lang.org/edition-guide/rust-2018/macros/custom-derive.html
(6) https://doc.rust-lang.org/1.8.0/book/macros.html
(7) https://doc.rust-lang.org/reference/tokens.html#ascii-escapes
GH-138
|
|
Previously the `VertSplit` (1) (`:help VertSplit`) key used `nord1` as
background color by default making the line appear to be very lumpy.
This commit changes this style to use `nord0` as bavkground instead to
visually merge with the background so only the separator charaters are
a visual indiciator for the split line whih makes it look more
lightweight and unclutters the overall appeareance.
To allow user who liked the previous implementation to keep the style
this commit also adds a new `nord_bold_vertical_split_line` theme config
that can be assigned to `1` to achieve the legacy design.
The README also include information and hints how to change the
separator character by customizing Vim's `fillchars` (2)
(`:help fillchars`) variable.
References:
(1) http://vimdoc.sourceforge.net/htmldoc/syntax.html#hl-VertSplit
(2) http://vimdoc.sourceforge.net/htmldoc/options.html#'fillchars'
GH-132
|
|
This commit adds basic syntax highlighting support for Asciidoc (1) that
comes bundled with Vim 8.
References:
(1) https://asciidoctor.org
GH-131
|
|
CMake generator expressions (1) are now highlighted using `nord10` as
foreground instead of `nord13` as background and `nord0` as foreground.
References:
(1) https://cmake.org/cmake/help/latest/manual/cmake-generator-expressions.7.html
GH-137
|
|
Added support for Haskell syntax through the
neovimhaskell/haskell-vim (1) plugin.
This includes better coloring for types/classes using `nord7` instead of
highlighting them like keywords (`nord9`) and pre-processor and pragma
elements are now colorized correctly with `nord10`.
References:
(1) https://github.com/neovimhaskell/haskell-vim
GH-104
|
|
|
|
-> Please see https://github.com/arcticicestudio/nord/issues/94 for all
details about this design change decision.
Increased the comment color (`nord3`) brightness by 10% from a lightness
level of ~35% to ~45%.
This change also deprecates the comment contrast (1) configuration.
It is not necessary anymore for users to increase the brightness on
their own when the default color has been increased by default.
A deprecation warning will be shown to notify all users who have set a
custom value for the `g:nord_comment_brightness` configuration variable.
References:
(1) https://github.com/arcticicestudio/nord-vim#comment-contrast
GH-145
|
|
GH-145
|