Nord Vim Versions Save

An arctic, north-bluish clean and elegant Vim theme.

v0.19.0

2 years ago

Release Date: 2022-05-14 Project Board Milestone

Show all commits

Features

Syntax

Support for LSP textDocument/documentHighlight — #284 (⊶ 3e4e273d) by @cmoscofian

↠ The Neovim LSP textDocument / documentHightlight groups are responsible to highlight tokens in a document that are related to each other, e.g. declared variables, using the vim.buf.lsp.document_highlight() function. Also see the LSP specification about "Document Highlights Request" for more details.

UI

Support for LSP LSPSignatureActiveParameter — #286 (⊶ a8256787) by @cmoscofian

↠ The vim.lsp.buf.signature_help function is used to highlight the active parameter in the signature help. Before the active parameter was not styled differently to any other parameter which made it hard to distinguish it. This has been improved by adding support for the LspSignatureActiveParameter syntax highlighting group where the active parameter now uses nord8 are foreground color and additionally a font underline with the same color.

Before

After

Improvements

Refactored theme configuration conditions — #295, #305 (⊶ 291e05d9, e3eb2084) by @jvoisin and @svengreb

↠ The conditions and default values of the theme configurations were quite verbose so this commit improves them by…

  • …using inline ternary operators instead of if/else blocks to reduce the code overhead and make it way more readable.
  • …using Vim builtin get function instead of if/else blocks.
  • …inlining the script-scoped logWarning function since it was only used once.
  • …grouping some blocks where it made sense.
Only call execute function once per syntax group — #303 (⊶ 77fe4b3f) by @jvoisin and @svengreb

↠ Before the custom s:hi function called Vim's execute function for each defined attribute which is quite expensive in terms of performance. To improve this the attributes are now concatenate as string and passed to exec at the end of the function instead.

Syntax

Readability of C language constants — #283 (⊶ b32592eb) by @jvoisin

↠ To improve the readability of C language constants, defined by the cConstant syntax highlighting group, 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.

Before

After

Tasks

Support for Neovim 0.6.0 diagnostic API highlight groups — #282 (⊶ 8035ba07) by @jan-xyz

↠ In Neovim 0.6.0 the naming scheme for the highlight groups of the diagnostic API changed. The new groups have been added as default while the previous groups are conditionally guarded when using Neovim 0.5.0.

The full changelog is available in the repository

v0.18.0

2 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

0.18.0

Release Date: 2021-09-12 Project Board Milestone

Show all commits

Features

Syntax

Support for vim-pandoc/vim-pandoc-syntax — #220 (⊶ 8d8b9bf8) by @tpoisot and @BirgerNi

↠ To improve syntax highlighting for Pandoc, support for the vim-pandoc/vim-pandoc-syntax plugin has been implemented. Most groups are linked to existing Markdown groups to ensure a consistent style across languages and different plugins.

UI

Support for LSP code lenses — #266 (⊶ 02ddfadb) by @jan-xyz

↠ Before LSP code lenses were highlighted with the default color which has been changed to make it less visually intrusive, like other UI related elements, e.g. messages of linters.

Before

After

Improvements

Syntax

Prevent aggressive error highlighting — #269 ⇄ #270 (⊶ e3e8a75c) by @jan-xyz

↠ The TSError group is used to highlight syntax/parser errors which caused an aggressive styling where the background color of many syntax elements was rendered with nord11 during typing. This is a known problem and was fixed by many other themes by removing the group again. One of the core maintainers of nvim-treesitter provided a solution by remapping groups and also mentioned that the group is styled by the nvim-treesitter plugin but the active theme.

Syntax errors can still be highlighted through linters and parsers like Neovim's LSP can still be used instead to highlight errors with the correct style, e.g. only change the foreground color of a single word.

The full changelog is available in the repository

Copyright © 2016-present Arctic Ice Studio and Sven Greb

v0.17.0

2 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

0.17.0

Release Date: 2021-07-10 Project Board Milestone

Show all commits

Features

Syntax

Support for nvim-treesitter/nvim-treesitter — #235 ⇄ #253 (⊶ b3e712a9) by @s-u-d-o-e-r and @mrswats

↠ Neovim version 0.5 is a long-time awaited update that introduces features like support for tree-sitter via nvim-treesitter and LSP via nvim-lspconfig. Even though Neovim divides more and more from Vim through specific features like first-class Lua support with custom APIs, the highlighting for tree-sitter is achieved through “normal“ syntax highlighting groups. Most of the groups are already linked by the nvim-treesitter plugin by default so only a few groups have been adjusted for now to fit the Nord style.

⚠️ Note that this is the first iteration and it is very likely that there will be inconsistencies compared to the current highlighting when using “normal“ Vim plugins per language. Please report any problem you find so that the support for tree-sitter can be improved continuously!

The full changelog is available in the repository

Copyright © 2016-present Arctic Ice Studio and Sven Greb

v0.16.0

2 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

Release Date: 2021-06-09 Project Board Milestone

Show all commits

Features

API

Public API function NordPalette to get Nord colors — #224 (⊶ 5867535c) by @jandamm

↠ Implemented a new 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.

Syntax

Support for the php.vim plugin — #218, #262 ⇄ #263 (⊶ b3c46c87, 07452c71) by @pirey

↠ In arcticicestudio/nord-vim#218 new highlighting groups for the bundled PHP syntax were added to improve the highlighting of classes, function and methods and the overall syntax token detection, but they are actually defined by the php.vim plugin. Therefore the added highlighting calls have been 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.

To improve the highlighting with the bundled PHP syntax, the following options can be set:

let php_asp_tags = 1
let php_baselib = 1
let php_htmlInStrings = 1
let php_parent_error_close = 1
let php_parent_error_open = 1

Before

After

Conceal highlighting group support — #149, #207, #211, #256 ⇄ #261 (⊶ f3f28b93)

↠ The Conceal group is was not supported which could resulted in rendering problems for (Unicode) characters that require special encoding like the ones from the Greek alphabet and mathematical expressions that are often used in LaTeX or Pandoc documents. These characters were highlighted with the default background color which made 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 #149, #207 and #211 with LaTeX and Pandoc being used by the reporters. PR #220 adds support for vim-pandoc/vim-pandoc-syntax specific highlighting groups and can be merged after adding basic support for Conceal.

To get the correct rendering for such elements the following configurations must be set:

let g:pandoc#syntax#conceal#use = 1
set conceallevel=2

Before

After

Updated highlights for Neovim LSP diagnostics — #229, #248 (⊶ a3af928a) by @gbrlsnchs and @thallium

↠ 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. See :help lsp-highlight-diagnostics 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 nightly build. Also see great articles from Nord Vim contributors like “Neovim (0.5) Is Overpowering“ for more information about Neovim 0.5 features, including LSP.

Thanks to @clason, @crispgm and @ojroques for the review support!

UI

Support for the vim-indent-guides plugin — #186 ⇄ #226 (⊶ ea7ff9c3) by @mitinarseny

↠ Added support for the vim-indent-guides plugin. The even and odd highlighting blocks using nord1 and nord2 (nord3in terminal mode) to provide a subtle and non-disturbing style. Note that the custom theme colors are only applied when the indent_guides_auto_colors variable has been set to 0:

let g:indent_guides_auto_colors = 0

Before

After

Improvements

UI

coc.vim error and warning highlighting — #213 (⊶ 8a9754ce) by @butterywombat

↠ Added the coc.nvim highlighting groups for errors and warnings using their respective foreground colors and the undercurl font style.

Bug Fixes

UI

Typo in group Pmenu group names — #252 (⊶ e5a54c7f) by @kunzaatko

↠ Fixed two typos in Pmenu group names:

  • PMenuSel -> PmenuSel
  • PMenu -> Pmenu

This mismatch was never really noticed because most of the time users rely on plugins like coc.vim or vim-clap which come with custom highlighting groups and UI libraries.

The full changelog is available in the repository

Copyright © 2016-present Arctic Ice Studio and Sven Greb

v0.15.0

3 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

Release Date: 2020-07-06 Project Board Milestone

Features

Syntax

Extended support for TypeScript and TSX — #208 (⊶ 1bd44ade) by @iamdidev ↠ Added extended support for TypeScript and TSX through the yats.vim plugin. This provides, among many other good changes, better highlighting for syntax elements like decorators, more granular separation of different language elements within a single code line as well as highlighting for…

…interfaces with bold font style, typing characters and types.

…global methods like setTimeout with italic font style.

…regular expressions with nord13 instead of the normal color for quoted strings.

…global elements like Error, JSON and console.

…brackets of types as structural elements.

…TSX/JSX and HTML with a consistent appearance.

…TSX/JSX and HTML with a consistent appearance.

UI

Support for vim-clap — #178 (⊶ 7a52f66c) by @meck and @ikalnytskyi ↠ Added basic support for vim-clap, a modern and performant generic finder and dispatcher for Vim and NeoVim.


The full changelog is available here

v0.14.0

3 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

Release Date: 2020-06-16 Project Board Milestone

Features

UI

Basic support for nvim-lsp (Language Server Protocol) — #198 (⊶ 0ccf70b6) by @alexanderjeurissen ↠ Added basic support for nvim-lsp, a collection of common configurations for the NVim language server protocol client.

Improvements

UI

Consistent error highlighting between GUI and terminal mode — #202 (⊶ 974a9190) by @xulongwu4 ↠ The highlighting of errors in GUI and true color terminal mode now also uses nord4 as foreground color of instead of nord0.

Before

After

Improved highlighting for “More“ separator — #202 (⊶ 974a9190) by @xulongwu4 ↠ The highlighting of the More separator is now highlighted with the nord8 accent color.

Before

After

Transparent line number and cursor line background by default — #204 (⊶ 6323f662) by @xulongwu4 ↠ Before the background color of the LineNr and CursorLineNr highlighting groups were set to nord0 which was fine in most cases, but conflicted with plugins like Yggdroot/LeaderF that renders line numbers in a popup windows with a different background color.

Before

After


The full changelog is available here

v0.13.0

4 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

Release Date: 2019-12-17 Project Board Milestone

Features

UI

Support uniform status line background configuration for vim-airline and lightline.vim themes — #168 ⇄ #169 (⊶ 73b3d340) by @jmurinello ↠ Added support for the uniform status line theme configuration, introduced in version 0.7.0 through arcticicestudio/nord-vim#58, for the bundled vim-airline and lightline.vim themes.

lightline.vim

Before

After

vim-airline

Before

After

Basic support for coc.vim (Conquer of Completion) — #164 (⊶ a7797269) by @hennessey ↠ Added basic support for coc.nvim, a Intellisense engine for Vim 8 & NeoVim with full language server protocol support.

Basic support for vim-startify — #159 ⇄ #176 (⊶ 38ab4a9c) ↠ Added basic support for vim-startify with custom highlight groups.

Improvements

UI

No underlined style for gutter line numbers — #174 ⇄ #185 (⊶ 0d352c4b) by @nixtrace and @alexandremjacquesVim version 8.1.2029 added the underline attribute for the CursorLineNr group to cterm based on vim/vim#4933. 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.

Before

After

Bug Fixes

Documentation

Fix missing whitespace — #165 (⊶ 81d80e4a) by @vasilescur ↠ Fixed a missing whitespace in the README project description.


The full changelog is available here

v0.12.0

4 years ago

Changelog for Nord Vim — An arctic, north-bluish clean and elegant Vim color theme.

Release Date: 2019-05-25 Project Board Milestone

Features

Nord Docs Transition — #158, #144 ⇄ #160 (⊶ 7be26147) ↠ Transferred all documentations, assets and from „Nord Vim“ to Nord Docs Please see the [corresponding issue in the Nord Docs repository][nord-docs#143] to get an overview of what has changed for Nord Vim and what has been done to migrate to Nord Docs.

Landing Page

Preview: Nord Vim Port Project Landing Page

Landing Page Docs

Preview: Nord Vim Docs Project Landing Page

Installation & Activation Docs

Preview: Nord Vim Docs Installation & Activation Docs Page

Configuration Docs

Preview: Nord Vim Docs Configuration Docs Page

Customization Docs

Preview: Nord Vim Docs Configuration Docs Page

Theme configuration for bold font style rendering — #143 ⇄ #161 (⊶ 18a4e350) requested by @tobydeh ↠ Added a new nord_bold theme configuration to allow to explicitly toggle bold font rendering styles. It is enabled by default when running for both in GUI and terminal mode since most terminals and shells are capable to handle bold fonts.

Improvements

Active match for increment search — #139 ⇄ #140 (⊶ de24841a) by @aborzunov ↠ The currently active match during increment searches (IncSearch) is now highlighted differently (nord10 as background and nord6 as foreground) than inactive matches for a better visual distinction.


The full changelog is available here

v0.11.0

5 years ago

0.11.0

Release Date: 2019-04-18 Project Board Milestone

Features

Syntax

Basic support for Asciidoc syntax highlighting — #131 ⇄ #152 (⊶ 6e6025b9) by @tidux ↠ Added basic syntax highlighting support for Asciidoc that comes bundled with Vim 8.

Basic syntax highlighting support for Rust — #138 ⇄ #154 (⊶ b0ffc6b5) by @TerminalWitchcraft ↠ Added basic syntax highlighting support for Rust.

Traits and enums are colorized with nord7 and with bold font to make them visually stand out more. Also attributes and derives are colored with nord10.

Before

After

Macros are colorized with nord8 and bold font to make them visually different from "normal" functions.

Before

After

Escape sequences are colored with nord13.

Before

After

Import statements and paths are correctly colored with keyword and type colors.

Before

After

Plugin Support

Haskell Syntax Plugin Support — #104 ⇄ #150 (⊶ b0ffc6b5) by @vabatta ↠ Added support for Haskell syntax through the neovimhaskell/haskell-vim 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.

Pragma

Before

After

Pre-Processor

Before

After

Types/Classes

Before

After

UI

Theme config for bolder vertical split line — #132 ⇄ #153 (⊶ 9059d7d8) by @huyvohcmc ↠ Previously the VertSplit (:help VertSplit) key used nord1 as background color by default making the line appear to be very lumpy. This has now been changed to use nord0 as background instead to visually merge with the background so only the separator characters are a visual indicator for the split line which makes it look more lightweight and declutters the overall appearance.

With base editor background (default)

With enabled bold nord1 background

To allow user who liked the previous implementation to keep the style a new nord_bold_vertical_split_line theme config was also added that can be assigned to 1 to achieve the legacy design.

let g:nord_bold_vertical_split_line = 1

The README includes information and hints how to change the separator character by customizing Vim's fillchars (:help fillchars) variable.

Plugin Support

:terminal status line in airline — #134 (⊶ be815f09) by @meck ↠ Added support for Vim's new :terminal mode in airline.

Before: No :terminal support (before)

After: Support for airline's new _term theme keys

Improvements

Syntax

Better generator expressions in CMake — #137 ⇄ #151 (⊶ d2774cbb) by @markandCMake generator expressions are now highlighted using nord10 as foreground instead of nord13 as background and nord0 as foreground.

Before

After

UI

Plugin Support

airline warnings and errors — #130 (⊶ e85dbe75) by @axelitus ↠ Added support for error and warning elements of airline.

Before

After

ALE error and warning support — #135 (⊶ 9d82b7a1) by @meck ↠ Added support highlighting and underlines for ALE errors and warnings to also align the style with gutter signs.


The full changelog is available here

v0.10.0

5 years ago

Release Date: 2019-03-21 Project Board Milestone

Features

Vim 8 terminal highlighting — #125 ⇄ #126 (⊶ 83f8c260) by @cg433n ↠ Added support for the Vim's built-in terminal (:terminal) that comes with version 8.0.0 and higher.

Improvements

Comment Color Brightness — #145 ⇄ #146 (⊶ 9e0249ca) ↠ Implemented the increase of the comment color (nord3) brightness by 10% from a lightness level of ~35% to ~45%.

Please see arcticicestudio/nord#94 for all details about this design change decision!

NOTE: This change also deprecates the comment contrast configuration that will be removed in Nord Vim version 1.0.0! The default comment color has been adjusted so the configuration is not required anymore for users to increase the brightness on their own. To notify users about this change a deprecation warning will be shown when the g:nord_comment_brightness configuration variable has been set and initialized through the user's configuration.

Before

gh-146-before gh-145-before-2

After

gh-146-preview gh-145-preview-2

Improvements

Improved compatibility of airline with tmuxline.vim plugin — #117 ⇄ #128 (⊶ 3150628f) ↠ The Nord airline.vim UI plugin theme now includes better support for the tmuxline.vim plugin. Previously text shown in the main segment of the tmuxline, generated via the :Tmuxline airline command, caused a bad colour: NONE error or has been colorized using nord0 which resulted in unreadable text due to a nord3 background.

This has been fixed by using nord5 as foreground color. …#11 was used as implementation reference since it fixed the same incompatibility for the lightline.vim plugin.


The full changelog is available here