Compare commits

...

90 commits

Author SHA1 Message Date
Sven Greb f13f5dfbb7
Adapt remaining arcticicestudio "fade-out" changes (#342)
With the retirement of the "Arctic Ice Studio" personal & Nord project
brand [1] various migrations to the `svengreb` GitHub account [2] of
other projects were also completed within the last weeks. There are also
changes in Nord projects like `nordtheme/web` that other projects
depended on and can now be adapted as well.
Therefore all Nord projects must adapt these changes which includes...

- the migration and repository name change of
  `arcticicestudio/nord-docs`[2] - all references must be updated.
- the migration of the `arcticicestudio/styleguide-git` repository to
  the `svengreb` "real-in-person" identity [3] - all references and
  used npm packages must be updated.
- the migration of the `arcticicestudio/styleguide-javascript`
  repository to the `svengreb` "real-in-person" identity [4] - all
  references and used npm packages must be updated.
- the migration of the `arcticicestudio/styleguide-markdown` repository
  to the `svengreb` "real-in-person" identity [5] - all references and
  used npm packages must be updated.

[1]: https://github.com/orgs/nordtheme/discussions/183#retire-arctic-ice-studio-as-nord-brand
[2]: https://github.com/nordtheme/web/issues/241
[3]: https://github.com/svengreb/styleguide-git/issues/12
[4]: https://github.com/svengreb/styleguide-javascript/issues/88
[5]: https://github.com/svengreb/styleguide-markdown/issues/63

GH-341
2023-05-03 22:43:25 +02:00
Sven Greb f725ac643a More nordtheme organization migration adapations
To align with the latest Nord project standards more changes have been
made for as part of the `nordtheme` organization migration.

GH-335
2023-04-10 17:40:40 +02:00
Sven Greb 684c345b8a
nordtheme organization migration (#336)
As part of the "Northern Post - The state and roadmap of Nord" [1]
announcement, this repository will be migrated to the `nordtheme` GitHub
organization [2].
This issue is a task of the nordtheme/nord#185 [3] epic (tasklist [4]).

[1]: https://github.com/orgs/nordtheme/discussions/183
[2]: https://github.com/nordtheme
[3]: https://github.com/nordtheme/nord/issues/185
[4]: https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/about-task-lists

GH-335
2023-03-07 22:58:07 +01:00
Sven Greb 0748955e9e
Fix image URLs after nord-docs GitHub flow and main branch migration (#327)
The URLs to image assets were broken due the recent GitHub flow
migration [1] in the `nord-docs` repository as well as the switch from
the `master` to `main` branch [2].

[1]: https://github.com/arcticicestudio/nord-docs/issues/229
[2]: https://github.com/arcticicestudio/nord-docs/issues/236

GH-326
2022-10-08 12:31:56 +02:00
Jason Long bc0f057162
Add Gitsigns and Sneak support (#316)
The highlighting for the marker of the `justinmk/vim-sneak` now matches
the style of the Vim search highlighting.
Also the inline text of the Neovim specific `lewis6991/gitsigns.nvim`
plugin now matches the the foregroun color of comments.


Co-authored-by: Sven Greb <development@svengreb.de>

GH-316
2022-05-31 18:14:25 +02:00
Sven Greb d32b4dd6aa
From master to main (#314)
Adapted to the default branch renaming from `master` to `main` [1] like
documented in detail in the main task issue
arcticicestudio/styleguide-git#11 [2].

[1]: https://github.com/github/renaming
[2]: https://github.com/arcticicestudio/styleguide-git/issues/11

Subtask of arcticicestudio/styleguide-git#11
GH-313
2022-05-14 15:06:42 +02:00
Sven Greb 6cbbf7a1bb
GitHub Flow migration (#312)
Adapted to "GitHub Flow" [1] like documented in detail in the main task
issue arcticicestudio/styleguide-git#9 [2].

[1]: https://guides.github.com/introduction/flow
[2]: https://guides.github.com/arcticicestudio/styleguide-git/issues/9

Co-authored-by: Sven Greb <development@svengreb.de>
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>

Subtask of arcticicestudio/styleguide-git#9
GH-311
2022-05-14 14:40:11 +02:00
Sven Greb 2272dcf8ef Merge branch 'release/0.19.0' 2022-05-14 11:42:31 +02:00
Sven Greb c9e7f43e7f Release version 0.19.0 2022-05-14 11:42:13 +02:00
Julien Voisin f3327dbde7 Only call execute function once per syntax group (#303)
Before the custom `s:hi` function called Vim's `execute` function [1]
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.


Co-authored-by: Julien Voisin <jvoisin@google.com>
Co-authored-by: Sven Greb <development@svengreb.de>
Co-authored-by: Arctic Ice Sudio <development@arcticicestudio.com>

[1]: https://vimhelp.org/builtin.txt.html#builtin.txt#execute%28%29

GH-303
2022-05-14 11:42:13 +02:00
Julien Voisin dd7666d8b0 Use ternary for "italic" theme configuration (#305)
Instead of using a if/else block and empty variable declaration Vim's
builtin `get` function [1] is now used to simplify the code.


Co-authored-by: Sven Greb <development@svengreb.de>
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>

[1]: https://vimhelp.org/builtin.txt.html#builtin.txt#get%28%29

GH-305
2022-05-14 11:42:13 +02:00
Sven Greb dc6cc32341 Revert conditional plugin loading (#307)
The changes introduced in PR GH-294 [1] did not take into account that
the order how plugins are loaded are not always constant and can also
change based on how users order plugins in their configurations.
When a supported plugin is loaded after Nord the global `loaded_*`
variable might not be available yet, causing the styles to be skipped
due to the conditional block guard. Also each plugin manager handles the
plugin loading order differently which is also a problem when checking
for global variable existence.

The loading time of the Nord plugin is still totally fine so improving
the stability for only a minimal performance boost is no negative trade
at all (tested via `vim --startuptime timing.out`):

  4.956ms: sourcing ~/.local/share/vim/plugged/nord-vim/colors/nord.vim

[1]: https://github.com/arcticicestudio/nord-vim/pull/294
[2]: https://github.com/arcticicestudio/nord-vim/issues/306

Fixes GH-306
2022-05-14 11:42:13 +02:00
Julien Voisin bf09e50f5c Refactor theme configuration conditions (#295)
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 [1] instead of if/else blocks.
- ...inlining the script-scoped `logWarning` function since it was only
  used once.
- ...grouping some blocks where it made sense.

[1]: https://vimhelp.org/builtin.txt.html#builtin.txt#get%28%29

GH-295


Co-authored-by: Sven Greb <development@svengreb.de>
2022-05-14 11:42:13 +02:00
Justin Nel 085a184d5d Fix syntax error in exists function (#297)
Fix syntax error in `exists` function

In GH-296 a syntax errors has crept in where the `exists` function was
missing the second `s` in two cases.

Fixes GH-299
GH-297


Co-authored-by: Julien Voisin <jvoisin@users.noreply.github.com>
Co-authored-by: Sven Greb <development@svengreb.de>
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
2022-05-14 11:42:13 +02:00
Julien Voisin b0a09b73f1 Guard more plugin specific features in conditional blocks (#296)
This commit is a continuation of GH-294, see message and PR discussion
of commit `a4bf0a63e8e1e62e884eee9ec04d577105f58aa7` for details.

[1]: a4bf0a63e8

Related to GH-294
GH-296


Co-authored-by: Julien Voisin <jvoisin@google.com>
Co-authored-by: Sven Greb <development@svengreb.de>
2022-05-14 11:42:13 +02:00
Julien Voisin da94312d82 Don't load plugin-related things when the relevant plugin isn't installed (#294)
Guard plugin and Neovim specific features in conditional blocks

Function calls are expensive in Vim script so to reduce the overhead of
processing the theme most plugin and Neovim specific features are now
wrapped in conditional blocks, e.g. Neovim highlighting groups are only
loaded when the global `nvim` variable is set while other plugins are
checked for their own `loaded_*` variable (common plugin pattern).

Some plugins provide no easy/straightforward way to be detected, so not
all blocks are behind conditions, but it's still a significant
improvement, and can always be improved in the future.


Co-authored-by: Julien Voisin <jvoisin@google.com>
Co-authored-by: Sven Greb <development@svengreb.de>

GH-294
2022-05-14 11:42:13 +02:00
Charles Moscofian 3c2e4113d9 Add support for LSPSignatureHelpActiveParameter (#286)
The `vim.lsp.buf.signature_help` function is used to highlight the
active parameter in the signature help [1].
Before this commit 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.

[1]: 70db972e5f/runtime/doc/lsp.txt (L456-L459)


Co-authored-by: Sven Greb <development@svengreb.de>
Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>

GH-286
2022-05-14 11:42:13 +02:00
Julien Voisin 5970582dc4 Improve readability of C language constants (#283)
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]: 0e6adf8a29/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
2022-05-14 11:42:13 +02:00
Charles Moscofian 2df7a984d6 Add support for LSP textDocument/documentHighlight (#284)
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]: f92a2457c2/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>
2022-05-14 11:42:13 +02:00
Jan Steinke 3a362b6da3 Add support for neovim 0.6.0 diagnostic API highlight groups (#282)
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]: a5bbb932f9 (diff-51fab2b766d0a3b606462e95de492190df173b7296147912307cdad636cd492aR77)


Co-authored-by: Arctic Ice Studio <development@arcticicestudio.com>
Co-authored-by: Sven Greb <development@svengreb.de>

GH-282
2022-05-14 11:42:13 +02:00
Arctic Ice Studio c2aaac39e5 Merge branch 'release/0.18.0' 2021-09-12 23:09:02 +02:00
Arctic Ice Studio 865dd93ad4 Release version 0.18.0 2021-09-12 23:08:57 +02:00
George Tom 6f183104bd Remove TSError syntax highlighting group (#270)
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
2021-09-12 23:08:57 +02:00
Jan Steinke bb1d027ff7 add support for Lsp codelens (#266)
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>
2021-09-12 23:08:57 +02:00
Timothée Poisot 9c8ecad553 Add support for pandoc (#220)
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
2021-09-12 23:08:57 +02:00
Arctic Ice Studio 7e8d8abec9 Merge branch 'release/0.17.0' 2021-07-10 14:39:46 +02:00
Arctic Ice Studio bad9f6a5f2 Release version 0.17.0 2021-07-10 14:39:39 +02:00
Ferran Jovell 5d1f14776a Add support for nvim-treesitter/nvim-treesitter (#253)
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
2021-07-10 14:39:39 +02:00
Arctic Ice Studio 537c66ca7c Merge branch 'release/0.16.0' 2021-06-09 21:54:55 +02:00
Arctic Ice Studio a2d1bcc668 Release version 0.16.0 2021-06-09 21:47:22 +02:00
Arctic Ice Studio 07452c7128
Support for php.vim plugin (#263)
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>
2021-06-09 21:28:26 +02:00
Martin Kunz e5a54c7f09
Fix typo in group names (#252)
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>
2021-05-30 23:27:14 +02:00
Gabriel Sanches a3af928ad5
Update highlights for Neovim LSP diagnostics (#229)
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
2021-05-29 15:08:25 +02:00
Arctic Ice Studio f3f28b939f
Conceal highlighting group support (#261)
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
2021-05-29 00:24:26 +02:00
Jan Damm 5867535cea
Add public API function to get Nord colors (#224)
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
2021-05-02 11:35:08 +02:00
Arctic Ice Studio ea7ff9c343
Add support for the "nathanaelkane/vim-indent-guides" plugin (#226)
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
2020-10-08 21:48:31 +02:00
Yeri Pratama b3c46c8793
Support highlighting for PHP classes and functions/methods (#218)
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
2020-08-13 11:21:12 +02:00
Dani 8a9754ce6c
Add coc error/warning highlight (#213)
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>
2020-07-16 21:23:44 +02:00
Arctic Ice Studio 57dffa7469 Merge branch 'release/0.15.0' 2020-07-06 08:06:30 +02:00
Arctic Ice Studio 16709e6576 Release version 0.15.0 2020-07-06 08:06:09 +02:00
Johan 5d58f9b598 Add support for vim-clap (#178)
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>
2020-07-06 08:06:09 +02:00
iamdi 776a02a89e Add basic TypeScript and improve TSX support (#208)
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>
2020-07-06 08:06:09 +02:00
Alexander Jeurissen bf09c474fe Add nvim-lsp support (#198)
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
2020-07-06 08:06:06 +02:00
john.hennessey e3267e0c15 adds coc error gutter support 2020-07-06 08:02:27 +02:00
Arctic Ice Studio 6ff18463f2 Merge branch 'release/0.15.0' into develop 2020-07-06 07:54:08 +02:00
Arctic Ice Studio a46877360a Release version 0.15.0 2020-07-06 07:40:16 +02:00
Johan 7a52f66cfc
Add support for vim-clap (#178)
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>
2020-07-05 15:53:01 +02:00
iamdi 1bd44ade46
Add basic TypeScript and improve TSX support (#208)
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>
2020-06-20 12:10:58 +02:00
Arctic Ice Studio 2124a5a760 Merge branch 'release/0.14.0' 2020-06-16 07:58:49 +02:00
Arctic Ice Studio 9a2cebb1cb Release version 0.14.0 2020-06-16 07:58:36 +02:00
xulongwu4 e420e7f38d Use transparent background for gutter line number in GUI mode (#204)
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
2020-06-16 07:58:36 +02:00
xulongwu4 ccad4325ec Consistent Error and MoreMsg highlight group consistent between console 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>
2020-06-16 07:58:36 +02:00
Alexander Jeurissen fab33d1ecf Add nvim-lsp support (#198)
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
2020-06-16 07:58:27 +02:00
john.hennessey afa1c932b2 adds coc error gutter support 2020-06-16 07:56:03 +02:00
Arctic Ice Studio e26b5d8bc0 Merge branch 'release/0.14.0' into develop 2020-06-16 07:55:39 +02:00
Arctic Ice Studio a5c4a83224 Release version 0.14.0 2020-06-16 07:55:20 +02:00
xulongwu4 6323f662d6
Use transparent background for gutter line number in GUI mode (#204)
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
2020-05-07 09:21:20 +02:00
xulongwu4 974a91906d
Consistent Error and MoreMsg highlight group consistent between console 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>
2020-04-28 16:27:09 +02:00
Alexander Jeurissen 0ccf70b6b0
Add nvim-lsp support (#198)
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
2020-03-10 06:12:41 +01:00
Arctic Ice Studio f06189a4c0 Merge branch 'release/0.13.0' 2019-12-17 20:15:06 +01:00
Arctic Ice Studio 2212c21a51 Prepare release version 0.13.0 2019-12-17 20:15:01 +01:00
Arctic Ice Studio 0cca2803e6 Remove underline from gutter line numbers (#185)
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]: d9b0d83b13...017ba07fa2 (diff-80fffb3e9c20e93e5b2328a9a20e19c9)
[3]: https://github.com/vim/vim/pull/4933

Resolves GH-174
2019-12-17 20:15:01 +01:00
Arctic Ice Studio aaa73440dc Plugin support for vim-startify (#176)
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
2019-12-17 20:15:01 +01:00
Jose M. Murinello db742c0f4b Uniform status lines config for bundled airline and lightline themes (#169)
The included theme bundles have not supported the "uniform status line" feature (GH-58), which allows to change the background color of the status bar (StatusLine) group to `nord3`.

Related to GH-58
Resolves GH-168
2019-12-17 20:15:01 +01:00
Radu Vasilescu e4f31c88a4 Fix typo
line 13
2019-12-17 20:15:01 +01:00
John Hennessey a6f05fd2d6 Update colors/nord.vim
Co-Authored-By: Arctic Ice Studio <development@arcticicestudio.com>
2019-12-17 20:15:01 +01:00
john.hennessey 09636f0c32 remove duplicated entries 2019-12-17 20:15:01 +01:00
john.hennessey e4972763ba adds coc error gutter support 2019-12-17 20:15:01 +01:00
Arctic Ice Studio aa1470403a Merge branch 'release/0.13.0' into develop 2019-12-17 20:14:45 +01:00
Arctic Ice Studio 7fd74817c3 Prepare release version 0.13.0 2019-12-17 20:13:44 +01:00
Arctic Ice Studio 0d352c4b3d
Remove underline from gutter line numbers (#185)
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]: d9b0d83b13...017ba07fa2 (diff-80fffb3e9c20e93e5b2328a9a20e19c9)
[3]: https://github.com/vim/vim/pull/4933

Resolves GH-174
2019-12-17 13:06:51 +01:00
Arctic Ice Studio 38ab4a9c97
Plugin support for vim-startify (#176)
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
2019-10-10 08:39:12 +02:00
Jose M. Murinello 73b3d340a7 Uniform status lines config for bundled airline and lightline themes (#169)
The included theme bundles have not supported the "uniform status line" feature (GH-58), which allows to change the background color of the status bar (StatusLine) group to `nord3`.

Related to GH-58
Resolves GH-168
2019-07-16 20:17:51 +02:00
Arctic Ice Studio 81d80e4a97
Fix typo (missing whitespace) (#165)
Fix typo (missing whitespace)
2019-06-11 08:12:04 +02:00
Radu Vasilescu aaa496f835
Fix typo
line 13
2019-06-10 14:39:27 -04:00
Arctic Ice Studio a779726963
adds coc error gutter support (#164)
adds coc error gutter support
2019-06-09 17:18:45 +02:00
John Hennessey f68295473f
Update colors/nord.vim
Co-Authored-By: Arctic Ice Studio <development@arcticicestudio.com>
2019-06-07 15:05:55 -04:00
john.hennessey 273e7ea84d remove duplicated entries 2019-06-04 18:38:01 -04:00
john.hennessey 228f63e3f8 adds coc error gutter support 2019-06-04 18:34:39 -04:00
Arctic Ice Studio 9f7ce84872 Merge branch 'release/v0.12.0' 2019-05-25 10:29:37 +02:00
Arctic Ice Studio 311d964d3a Merge branch 'release/v0.12.0' into develop 2019-05-25 10:29:32 +02:00
Arctic Ice Studio 7f28e7cec1 Prepare release version 0.12.0 2019-05-25 10:29:20 +02:00
Arctic Ice Studio 18a4e35015
Theme configuration for bold font style rendering (#161)
Theme configuration for bold font style rendering
2019-05-25 09:45:08 +02:00
Arctic Ice Studio b193e08891 Theme configuration for bold font style rendering
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
2019-05-24 11:45:22 +02:00
Arctic Ice Studio 7be26147c8
Nord Docs Transition (#160)
Nord Docs Transition
2019-05-21 21:32:38 +02:00
Arctic Ice Studio 72cb5d702a Nord Docs Transition
All documentations and assets have been moved to the official Nord
website and documentations (1,2).

References:
  (1) nordtheme.com/ports/vim
  (2) arcticicestudio/nord-docs

GH-158
2019-05-21 21:26:11 +02:00
Arctic Ice Studio de24841add
changes of IncSearch color so that were difference from Search color (#140)
changes of IncSearch color so that were difference from Search color
2019-04-23 21:49:44 +02:00
Arctic Ice Studio 329ae173fa
Update colors/nord.vim
Co-Authored-By: aborzunov <Andrey.Borzunov@gmail.com>
2019-04-22 20:57:07 +03:00
Arctic Ice Studio d8105311e0 Merge branch 'release/0.11.0' into develop 2019-04-18 10:04:01 +02:00
Andrey Borzunov 0d87b2e276 changes of IncSearch color so that were difference from Search color, fixes #139 2018-11-06 15:35:09 +03:00
58 changed files with 9317 additions and 22754 deletions

27
.editorconfig Normal file
View file

@ -0,0 +1,27 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Configurations for EditorConfig.
# See https://editorconfig.org/#file-format-details for more details.
# +--------------------+
# + Base Configuration +
# +--------------------+
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
max_line_length = 160
trim_trailing_whitespace = true
# +-----------+
# + Languages +
# +-----------+
# +--- Markdown ---+
[*.{md}]
max_line_length = off
trim_trailing_whitespace = false

14
.eslintignore Normal file
View file

@ -0,0 +1,14 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Path match pattern to ignore (i.e. not lint) certain files and folders.
# References:
# 1. https://eslint.org/docs/latest/use/configure/ignore
node_modules/
# Explicitly include specific "dotfiles".
# ESLint automatically applies ignore pattern for "dotfiles" by default to prevent accidentally lint over paths like
# `.git` or any other critical paths.
!**/.eslintrc.js
!.remarkrc.mjs

32
.eslintrc.js Normal file
View file

@ -0,0 +1,32 @@
/*
* Copyright (c) 2016-present Sven Greb <development@svengreb.de>
* This source code is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license found in the license file.
*/
/**
* Configurations for ESLint.
* @see https://eslint.org/docs/latest/use/configure
* @see https://eslint.org/docs/latest/use/configure/#using-configuration-files
* @see https://eslint.org/docs/latest/use/configure/#specifying-environments
* @see https://eslint.org/docs/latest/rules
*/
module.exports = {
root: true,
extends: [
"@svengreb/eslint-config-base",
/*
* Enable support for projects using Prettier.
* Note that this must always be placed after the `@svengreb/eslint-config-base` preset to take precedence, otherwise it won't prevent errors
* due to useless and possibly conflicting rules!
*/
"@svengreb/eslint-config-base/prettier",
],
overrides: [
{
files: ["*.js"],
rules: {
"capitalized-comments": "off",
},
},
],
};

12
.gitattributes vendored Normal file
View file

@ -0,0 +1,12 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Configuration to define attributes per path.
#
# References:
# 1. https://git-scm.com/docs/gitattributes
# 2. https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes#Keyword-Expansion
# Automatically perform line feed (LF) normalization for files detected as text and
# leave all files detected as binary untouched.
* text=auto eol=lf

14
.github/codeowners vendored Normal file
View file

@ -0,0 +1,14 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Configuration for the GitHub feature to automatically request reviews from the code owners
# when a pull request changes any owned files.
#
# References:
# 1. https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#codeowners-file-location
# 2. https://github.com/blog/2392-introducing-code-owners
# +----------------------+
# + Core Team Code Owner +
# +----------------------+
* @svengreb

10
.gitignore vendored Normal file
View file

@ -0,0 +1,10 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Path match pattern to intentionally ignore untracked files and directories.
# See https://git-scm.com/docs/gitignore for more details.
# +---------+
# + Node.js +
# +---------+
node_modules/

13
.husky/pre-commit Executable file
View file

@ -0,0 +1,13 @@
#!/bin/sh
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license found in the license file.
# Git "pre-commit" hook for husky.
# References:
# 1. https://github.com/typicode/husky
# 2. https://git-scm.com/docs/githooks#_pre_commit
. "$(dirname "$0")/_/husky.sh"
npm exec lint-staged

8
.mailmap Normal file
View file

@ -0,0 +1,8 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Configuration for the Git mail mapping feature to coalesce together commits by the same person in the shortlog,
# where their name and/or email address was spelled differently or has been changed.
# See https://git-scm.com/docs/git-shortlog#_mapping_authors for more details.
Sven Greb <development@svengreb.de>
Sven Greb <development@svengreb.de> <development@arcticicestudio.com>

25
.npmrc Normal file
View file

@ -0,0 +1,25 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Configurations for npm.
# See https://docs.npmjs.com/cli/v7/configuring-npm/npmrc for more details.
# Disable the vulnerability auditing and checks which includes often way too many false-positives, insignificant
# problems that are only for local development, and many other warnings that are overhelming.
# Use dedicated vulnerability tools instead to filter and identify issue that really impact the project.
# References:
# 1. https://docs.npmjs.com/cli/v9/commands/npm-audit
audit=false
# Only use a lockfile for single-consumer projects, like applications, but not for multi-consumer projects like
# libraries.
# It helps to pin dependency versions, improves the security through integrity checksums, prevents possible errors
# caused by updated transitive dependencies and allows to get deterministic build results, but it can hide problems in
# multi-consumer projects when any later versions of a used dependency, or its transitive dependencies, is not
# compatible with the own project anymore.
package-lock=true
# Do not resolve to the latest minor and patch updates.
# Automatically pin dependencies to exact versions instead of resolving to latest minor and patch updates.
# This prevents possible errors caused by updated transitive dependencies.
save-exact=true

8
.prettierignore Normal file
View file

@ -0,0 +1,8 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Path match pattern to ignore (i.e. not reformat) certain files and folders.
# See https://prettier.io/docs/en/ignore for more details.
.husky/_/
node_modules/

8
.remarkignore Normal file
View file

@ -0,0 +1,8 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
# Path match pattern to ignore when searching for files.
# See https://github.com/unifiedjs/unified-engine/blob/HEAD/doc/ignore.md for more details.
node_modules/
license

13
.remarkrc.mjs Normal file
View file

@ -0,0 +1,13 @@
/*
* Copyright (c) 2016-present Sven Greb <development@svengreb.de>
* This source code is licensed under the MIT license found in the license file.
*/
/**
* Configurations for remark-lint.
* @see https://github.com/remarkjs/remark-lint
* @see https://remark.js.org
*/
export default {
plugins: ["@svengreb/remark-preset-lint"],
};

View file

@ -1,669 +0,0 @@
<p align="center"><img src="https://cdn.rawgit.com/arcticicestudio/nord-vim/develop/assets/nord-vim-banner.svg"/></p>
<p align="center"><img src="https://assets-cdn.github.com/favicon.ico" width=24 height=24/> <a href="https://github.com/arcticicestudio/nord-vim/releases/latest"><img src="https://img.shields.io/github/release/arcticicestudio/nord-vim.svg?style=flat-square"/></a> <a href="https://github.com/arcticicestudio/nord/releases/tag/v0.2.0"><img src="https://img.shields.io/badge/Nord-v0.2.0-88C0D0.svg?style=flat-square"/></a></p>
---
# 0.11.0
![Release Date: 2019-04-18](https://img.shields.io/badge/Release_Date-2019--04--18-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.11.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/16) [![Milestone](https://img.shields.io/badge/Milestone-0.11.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/13)
## Features
### Syntax
**Basic support for Asciidoc syntax highlighting** — #131#152 (⊶ 6e6025b9) by [@tidux][gh-user-tidux]
↠ Added basic syntax highlighting support for [Asciidoc][] that comes bundled with Vim 8.
<p align="center"><img src="https://user-images.githubusercontent.com/7836623/56083880-1165ce00-5e2b-11e9-9389-f21435942464.png" /></p>
**Basic syntax highlighting support for Rust** — #138#154 (⊶ b0ffc6b5) by [@TerminalWitchcraft][gh-user-terminalwitchcraft]
↠ Added basic syntax highlighting support for [Rust][].
[Traits][rustdoc-traits] and [enums][rustdoc-enums] are colorized with `nord7` and with bold font to make them visually stand out more.
Also [attributes][rustdoc-attributes] and [derives][rustdoc-derives] are colored with `nord10`.
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56096828-3a4e9780-5eed-11e9-9d74-02b498a78ab1.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56096827-3a4e9780-5eed-11e9-8275-c97b2569f959.png" /></p>
[Macros][rustdoc-macros] are colorized with `nord8` and bold font to make them visually different from "normal" functions.
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56096834-463a5980-5eed-11e9-8d98-bbc814506779.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56096839-4df9fe00-5eed-11e9-8d8c-9a488105b0e9.png" /></p>
[Escape][rustdoc-escapes] sequences are colored with `nord13`.
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56096843-58b49300-5eed-11e9-9bb2-5541b3d68689.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56096842-58b49300-5eed-11e9-9ab6-52b709119c81.png" /></p>
Import statements and paths are correctly colored with keyword and type colors.
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56096847-623dfb00-5eed-11e9-91c3-cfe7621a2e5b.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56096846-623dfb00-5eed-11e9-9cce-30f14bdc7e57.png" /></p>
#### Plugin Support
**Haskell Syntax Plugin Support** — #104#150 (⊶ b0ffc6b5) by [@vabatta][gh-user-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
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56079623-6ee02780-5df7-11e9-8cfc-f3f62b1a79d4.png"/></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56079622-6e479100-5df7-11e9-9b80-650875c7fd55.png"/></p>
#### Pre-Processor
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56079625-6ee02780-5df7-11e9-9429-0ef098f31fb2.png"/></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56079624-6ee02780-5df7-11e9-8b85-33e624121d1e.png"/></p>
#### Types/Classes
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56079627-6ee02780-5df7-11e9-94c7-68952bfc1600.png"/></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56079626-6ee02780-5df7-11e9-904f-6fd27129c0f7.png"/></p>
### UI
**Theme config for bolder vertical split line** — #132#153 (⊶ 9059d7d8) by [@huyvohcmc][gh-user-huyvohcmc]
↠ Previously the [`VertSplit`][vdoc-vsplit] (`: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.
<p align="center"><strong>With base editor background (default)</strong><img src="https://user-images.githubusercontent.com/7836623/56088648-8e259600-5e85-11e9-8a6f-2c03d26eff4b.png" /></p>
<p align="center"><strong>With enabled bold <code>nord1</code> background</strong><img src="https://user-images.githubusercontent.com/7836623/56088647-8e259600-5e85-11e9-8be5-d86232ca8278.png" /></p>
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.
```viml
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`][vdoc-fchar] (`:help fillchars`) variable.
#### Plugin Support
**`:terminal` status line in airline** — #134 (⊶ be815f09) by [@meck][gh-user-meck]
↠ Added support for Vim's new `:terminal` mode in [airline][gh-src-airline].
<p align="center"><strong>Before: No <code>:terminal</code> support (before)</strong><img src="https://user-images.githubusercontent.com/7836623/56088997-ce881280-5e8b-11e9-9758-7c13c559b05c.png" /></p>
<p align="center"><strong>After: Support for airline's new <code>_term</code> theme keys</strong><img src="https://user-images.githubusercontent.com/7836623/56088996-ce881280-5e8b-11e9-839b-bc282f1fea0b.png" /></p>
## Improvements
### Syntax
**Better generator expressions in CMake** — #137#151 (⊶ d2774cbb) by [@markand][gh-user-markand]
↠ [CMake generator expressions][cmake-doc-genexpr] are now highlighted using `nord10` as foreground instead of `nord13` as background and `nord0` as foreground.
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56079970-99cc7a80-5dfb-11e9-9528-83bbe92c51d3.png"/></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56079969-99cc7a80-5dfb-11e9-8afa-68c7878521c4.png"/></p>
### UI
#### Plugin Support
**airline warnings and errors** — #130 (⊶ e85dbe75) by [@axelitus][gh-user-axelitus]
↠ Added support for error and warning elements of [airline][gh-src-airline].
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/56093512-f7c79380-5ec9-11e9-8107-a2d59b306ee0.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/56093511-f7c79380-5ec9-11e9-8be8-731fa0e52fc2.png" /></p>
**ALE error and warning support** — #135 (⊶ 9d82b7a1) by [@meck][gh-user-meck]
↠ Added support highlighting and underlines for [ALE][plugin-ale] errors and warnings to also align the style with gutter signs.
# 0.10.0
![Release Date: 2019-03-21](https://img.shields.io/badge/Release_Date-2019--03--21-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.10.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/15) [![Milestone](https://img.shields.io/badge/Milestone-0.10.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/12)
## Features
**Vim 8 terminal highlighting** — #125#126 (⊶ 83f8c260) by [@cg433n][gh-user-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][gh-nord#94] for all details about this design change decision**!
**NOTE**: This change also **deprecates the [comment contrast][readme-config-comment-brightness] 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.
## Improvements
**Improved compatibility of airline with tmuxline.vim plugin** — #117#128 (⊶ 3150628f)
↠ The [Nord airline.vim][gh-src-airline] UI plugin theme now includes better support for the [tmuxline.vim][gh-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][gh-11] was used as implementation reference since it fixed the same incompatibility for the [lightline.vim][gh-lightline.vim] plugin.
![](https://user-images.githubusercontent.com/7836623/41835439-e3f2388c-7857-11e8-91e0-a0440b7ecf35.png)
# 0.9.0
![Release Date: 2018-06-24](https://img.shields.io/badge/Release_Date-2018--06--24-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.9.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/13) [![Milestone](https://img.shields.io/badge/Milestone-0.9.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/11)
## Features
### Syntax
#### Plugin Support
Added support for the [YAML][] plugin [stephpy/vim-yaml][plugin-stephpy/vim-yaml] which improves the highlighting for keys to match the JSON syntax style. (PR #120, @mdzhang, b1478b07)
<p align="center"><p><strong>Before</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816223-b5b7df7c-777f-11e8-85ba-ac945b68e751.png" /></p>
<p align="center"><p><strong>After</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816222-b5a091c8-777f-11e8-9db9-38b96e8a3eb1.png" /></p>
Added basic syntax highlighting support for [vimwiki][plugin-vimwiki/vimwiki]. (PR #98 in PR #114, @smesko85, 9e7addbc)
<p align="center"><img src="https://user-images.githubusercontent.com/7836623/41807872-85a56eee-76d5-11e8-9dd3-8319f7dae829.png" /></p>
### UI
Added a new [configuration to allow users to enable background for the line number of the current line][readme-config-line-number-background]. It can be enabled by setting the `g:nord_cursor_line_number_background` variable to `1`. (PR #100, @andrepolischuk, 035e36de)
```vim
let g:nord_cursor_line_number_background = 1
```
<p align="center"><strong>No background (default)</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-cursor-line-number-background-default.png" /></p>
<p align="center"><strong>Enabled background</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-cursor-line-number-background.png" /></p>
Added a new [configuration to allow users to globally toggle underlines][readme-config-underline-support] for cases where the terminal emulator might not be capable to handle underlines in terminal mode. It can be enabled by setting the `g:nord_underline` variable to `1`. (#106 in PR #127 (supersedes #109), @dylnmc @markand , 01cfd1be)
<p align="center"><strong>Underlined Text</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-underline.png"/></p>
Added support for the status line of the `:terminal` window mode for Vim or Neovim. (PR #108 (supersedes #103), @dylnmc, 922504fb)
<p align="center"><strong>Before</strong><img src="https://user-images.githubusercontent.com/7836623/41812738-86c84262-7728-11e8-8bf4-476eb99e892e.png" /></p>
<p align="center"><strong>After</strong><img src="https://user-images.githubusercontent.com/7836623/41812737-86b2def4-7728-11e8-9d8a-9976038dda92.png" /></p>
#### Plugin Support
Added highlighting support for the navigation marks in the sign column of the [kshenoy/vim-signature][plugin-kshenoy/vim-signature] plugin. (PR #122, @kooparse, 1df39453)
<p align="center"><img src="https://user-images.githubusercontent.com/7836623/41816354-1133d24a-7783-11e8-8242-0e7d4c3b555c.png" /></p>
## Improvements
### Syntax
Added highlighting for the JavaScript keyword `this`. (PR #119, @kristijanhusak, 4fe2d43e)
<p align="center"><p><strong>Before</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816139-3c6f145c-777d-11e8-8f5b-58f122dc5050.png" /></p>
<p align="center"><p><strong>After</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816138-3c578198-777d-11e8-83f0-62f7aad0ce13.png" /></p>
### UI
The cursor is now correctly shown and visible when leaving a terminal window from within Vim or Neovim by adding the `TermCursorNC` group. (PR #101, @meck, 2fac9fa0)
The „inline marker“ in unified _diffs_ is now colorized differently than the background of the changed line to make the changes better and faster recognizable. This applies for both the [uniform _diff_ background mode][readme-config-uniform-diff-background] and normal _diff_ mode. (PR #121, @ironhouzi, 65c559ee)
<p align="center"><p><strong>Before/After comparison of default <em>diff</em> mode</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816510-4d548a90-7787-11e8-9fbd-9ae572763c22.png" /><br><img src="https://user-images.githubusercontent.com/7836623/39664393-e75f52b8-5082-11e8-8bb0-ba19c11dd391.png" /></p>
<p align="center"><p><strong>Before/After comparison of uniform <em>diff</em> mode</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816511-4d6aeb82-7787-11e8-90b4-f7c67ad9d952.png" /><br><img src="https://user-images.githubusercontent.com/7836623/39699476-acb7e1ca-51f9-11e8-9eca-8efc44b184f7.png" /></p>
## Bug Fixes
### UI
The current line number's color is now highlighted correctly in terminal mode. Previously it was only highlighted when running in GUI mode or when `termguicolors` has been set. (#116 in 50ec737b (PR #100), @huyvohcmc @dylnmc)
<p align="center"><p><strong>Before</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816653-d62d808a-778a-11e8-8bce-d1f76a1e6fae.png" /></p>
<p align="center"><p><strong>After</strong></p><img src="https://user-images.githubusercontent.com/7836623/41816652-d61787bc-778a-11e8-9371-c0bfd852f491.png" /></p>
# 0.8.0
![Release Date: 2018-01-05](https://img.shields.io/badge/Release_Date-2018--01--05-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.8.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/11) [![Milestone](https://img.shields.io/badge/Milestone-0.8.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/10)
## Features
### Plugin Support
#### UI
Added support for [vim-signify][plugin-mhinz/vim-signify]. (PR #81, @dabio, edcdd0e4)
<p align="center"><img src="https://user-images.githubusercontent.com/7836623/34623682-a7b7e960-f252-11e7-9194-c82aff310a75.png"/></p>
## Improvements
### UI
The color of links in `:help` was the same as normal text making it impossible to to distinguish between both. This has been improved by using `nord8` including the help bars when enabled with `:set conceallevel=2`. (#85 in PR #93, @delphinus, e9974fe6)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/34460697-25f5be7e-ee16-11e7-9c57-32bb2ec15314.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/34460700-35bddeea-ee16-11e7-976b-e00cfe80c462.png"/></p>
### Documentation
The lightline screenshots in the documentation have been made using the [lightline's advanced configurations][itchyny/lightline-adv-config]. This confused users when the lighline does not equal the one seen on the screenshot due to the default lightline configuration. This has now been clarified including a additional screenshot showing the appearance of the lightline when using the default configuration. (#74 in PR #94, @lokesh-krishna, 3c14c961)
<p align="center"><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-lightline-default.png"/></p>
## Bug Fixes
The background color for matching parens is now assigned to the right color `nord3` instead of `nord0` in GUI mode. (#95 in PR #96, @dylnmc, 8bc1be01)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/34619232-cd9ea512-f241-11e7-8045-e4ac695d56bb.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/34619246-dc2bee0a-f241-11e7-9ce6-c3d51ed6ec75.png"/></p>
# 0.7.0
![Release Date: 2017-12-30](https://img.shields.io/badge/Release_Date-2017--12--30-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.7.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/10) [![Milestone](https://img.shields.io/badge/Milestone-0.7.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/9)
## Features
Added a new [configuration to allow users to increase the comment brightness][readme-config-comment-brightness] by 1 - 20 percent. It can be enabled by setting the `g:nord_comment_brightness variable` to a number between `1` and `20`. (#48 in PR #56, @drzel, e18ab4e8)
**This option should only be enabled if the terminal supports 24bit true color (16 million colors) and requires the `termguicolors` option to be set is in `~/.vimrc` or via `:set termguicolors`!**
<p align="center"><strong>Default and 15% increased</strong><br><img src="https://user-images.githubusercontent.com/7836623/30772939-a65c92b6-a066-11e7-92f2-2f7089fe7700.png"/><br><img src="https://user-images.githubusercontent.com/7836623/30772941-b85577d0-a066-11e7-9c64-b9dab6736034.png"/></p>
<p align="center"><strong>Default and 12% increased</strong><br><img src="https://user-images.githubusercontent.com/7836623/30772949-ea459978-a066-11e7-8092-9e6522f9b7bf.png"/><br><img src="https://user-images.githubusercontent.com/7836623/30772950-eb8c2c84-a066-11e7-92d2-a64ac5f20521.png"/></p>
To adhere to the Nord design guidelines this option uses `nord3` by default.
This is a reference table if users like to use the same increased contrast values as provided by the [Nord Atom Syntax accessibility custom comment contrast theme setting][nord-atom-syntax-pr-47] which are calculated using the LESSCSS [`lighten`][lesscss-doc-fn-lighten] function.
| Increased by | Calculated value |
| --- | --- |
| 1% | `#4e586d` |
| 2% | `#505b70` |
| 3% | `#525d73` |
| 4% | `#556076` |
| 5% | `#576279` |
| 6% | `#59647c` |
| 7% | `#5b677f` |
| 8% | `#5d6982` |
| 9% | `#5f6c85` |
| 10% | `#616e88` |
| 11% | `#63718b` |
| 12% | `#66738e` |
| 13% | `#687591` |
| 14% | `#6a7894` |
| 15% | `#6d7a96` |
| 16% | `#6f7d98` |
| 17% | `#72809a` |
| 18% | `#75829c` |
| 19% | `#78859e` |
| 20% | `#7b88a1` |
More information about true color and the support in various terminals can be found in [this gist][gist-colors-in-terminals].
Added a new [configuration for a uniform *diff* background color][readme-config-uniform-diff-background]. (#60 in PR #61 #62 #65, @dylnmc @aidanharris @berkin, 958322d0)
![](https://user-images.githubusercontent.com/7836623/30969227-0dbcb982-a462-11e7-86a8-a69e91ff7bc0.png)
Setting `g:nord_uniform_diff_background` to `1` enables the uniform diff background using `nord1`:
![](https://user-images.githubusercontent.com/7836623/30969233-12a37d64-a462-11e7-8253-3c083eba5174.png)
Added a new [configuration to use uniform activate- and inactive status line backgrounds][readme-config-uniform-statusline-background]. (#37 in PR #58, @dylnmc @DenniJensen, 93056802)
<p align="center"><strong>Default status lines</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-status-lines-default.png"/></p>
<p align="center"><strong>Uniform status lines</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-status-lines.png"/></p>
Added a new [configuration to explicitly enable italic text formatting][readme-config-italic]. (#88 in PR #89, @lokesh-krishna @dylnmc, dbfc55ff)
**Please note that this option should only be enabled if the used terminal supports italics!**
<p align="center"><strong>With enabled option for italic comments</strong><br><img src="https://user-images.githubusercontent.com/7836623/34433722-6c7f0a4e-ec81-11e7-8af9-ebc227b6535e.png"/></p>
<p align="center"><strong>Markdown syntax styling</strong><br><img src="https://user-images.githubusercontent.com/7836623/34455900-697cbb6c-ed89-11e7-8c2b-29ec7dbcd703.png"/></p>
Added support for NeoVim UI terminal colors. (#63, @meck, af01167b)
### Plugin Support
#### Syntax
Added support for the [plasticboy/vim-markdown][plugin-plasticboy/vim-markdown] syntax plugin to match the style of the built-in markdown syntax styles. (#45 in PR #57, @VVVFO, 09921268)
![](https://user-images.githubusercontent.com/7836623/30773618-63ffde56-a074-11e7-9452-121283afcb44.png)
![](https://user-images.githubusercontent.com/7836623/30773619-657ec968-a074-11e7-80ba-c1cf3a3c19b0.png)
#### UI
Added support for the `PlugClean` command of the [junegunn/vim-plug][plugin-junegunn/vim-plug] plugin which used the `Ignore` group by default for deleted directory listings resulting in unreadable text when `cursorline` has been set. (#43 in PR #59, @dylnmc, e532b5d6)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/30959403-53d9cd0a-a440-11e7-8c38-3045e280131a.gif"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/30959419-618876ea-a440-11e7-8895-6e9acfd8b830.gif"/></p>
Added basic support for [tpope/vim-fugitive][plugin-tpope/vim-fugitive]. (#76 in PR #77, @anhari, fa09c3b1)
Filenames are now highlighted when using the `:Gstatus` command.
![](https://user-images.githubusercontent.com/6628875/33404056-def50276-d530-11e7-8e76-5733f58f7139.gif)
## Improvements
### Syntax
Added highlight support for legacy *diff* groups `diffAdded` and `diffRemoved` of the `git.vim` and `diff.vim` syntx definitions. (#66 in PR #67, @brandoniffert, 99e59e67)
These groups are not in the [official vim documentation][vim-doc-diffAdd] but are still used by the syntax for example when run with `git commit --verbose`.
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/32219558-d906cf5c-be2e-11e7-98e7-d22583bac4f0.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/32219588-f00e0c4c-be2e-11e7-91e7-87bb28c48721.png"/></p>
Added highlighting support for Markdown *italic* and **bold** delimiter. (#90 in PR #92, 97c8aa24)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/34452697-fd3d6502-ed45-11e7-9ba1-8e19e032c009.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/34452755-ee8046a0-ed46-11e7-8f3d-b9567995a9b4.png"/></p>
Added missing Markdown *italic* and **bold** groups. (#84 in PR #91, @lokesh-krishna @dylnmc, 63b46125)
Improved the highlighting for matching parens. (#75 and #71 in PR #78, @vincentzhezhang @cryptomaniac512 @dylnmc, 8eb7b2a6)
The background color intensity under the cursor was too bright and the cursor no more visible causing the user to be distracted to focus on the matching bracket instead of the bracket at the cursor position.
To optimally improve the highlighting `nord3` will now be used as background color for the matching element which doesn't conflict with the `cursorline` color and also stands out in order to see the matching element.
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/34409455-3370fada-ebca-11e7-9ed8-d83c3a9c5055.png"/></p>
<p align="center"><strong>After with <code>cursorline</code> option</strong><br><img src="https://user-images.githubusercontent.com/7836623/34409567-d8c64bfc-ebca-11e7-919a-1a40cf146084.png"/></p>
<p align="center"><strong>After without <code>cursorline</code> option</strong><br><img src="https://user-images.githubusercontent.com/7836623/34409570-dec9c1aa-ebca-11e7-8e68-32b79ec0d7c9.png"/></p>
<p align="center"><img src="https://user-images.githubusercontent.com/7836623/34409581-eddcefc8-ebca-11e7-9ab7-29b80704d836.gif"/></p>
## Bug Fixes
*TODO* keywords are now highlighted correctly for Neovim and gVim (#52 in PR #53, @dylnmc, 063620f0)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/30737840-4c8014e0-9f88-11e7-9a26-7dea066e3316.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/30737858-5a7be150-9f88-11e7-9053-2aa75787a76d.png"/></p>
Fixed invisible inactive lightline bars (PR #73, @dylnmc, 788876b8)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7635158/32986925-d6a79234-ccaa-11e7-9561-43daffa1722c.png"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7635158/32986927-e41880f4-ccaa-11e7-9444-316958ec74c1.png"/></p>
Fixed the `WildMenu` background color for current selection (tab completion) not being visible. (#64 in PR #80, @markand, 53fce0db)
<p align="center"><strong>Before</strong><br><img src="https://user-images.githubusercontent.com/7836623/33609457-76d72fce-d9c8-11e7-9048-d2c6c7ed7800.gif"/></p>
<p align="center"><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/33609464-806ee55e-d9c8-11e7-8020-58030141fac3.gif"/></p>
## Tasks
Added the included [lightline theme to the official lightline repository][itchyny/lightline.vim-gh-257]. (#68 in [itchyny/lightline#257][itchyny/lightline.vim-gh-257], @lokesh-krishna, itchyny/lightline@e69081c1370a57647e05df21b60a4ef092c3ce91)
### Documentation
Migrated to the MIT license to adapt to the migration of the main [Nord][nord-gh] project. Detailed information can be found in the [main task ticket][gh-55-arcticicestudio/nord]. (#69 in PR #70, fa55dc35)
# 0.6.0
![Release Date: 2017-08-03](https://img.shields.io/badge/Release_Date-2017--08--03-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.6.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/9) [![Milestone](https://img.shields.io/badge/Milestone-0.6.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/8)
## Features
### Plugin Support
#### UI
Added basic support for [CtrlP][plugin-ctrlp]. (PR #33, @syedelec)
* Matched characters are using the keyword color instead of the normal text color to make matched characters visible
* Already opened buffers now take the normal text color instead of the comment color
Added basic support [ALE][plugin-ale]. (PR #44, @meck)
* Warning signs are colorized using a `nord13` foreground
* Error signs are colorized using a `nord11` foreground instead of a red background with a white foreground
## Improvements
### UI
The fold marker foreground has been adjusted to match the comment color instead of `nord1` which has been too dark causing them to be unreadable in bright environments. The background color has also been changed to `nord1` to differ from normal comments and the font style is now bold for better legibility. (#38 in PR #40, @dylnmc)
![](https://user-images.githubusercontent.com/7836623/28256249-ad23fa02-6ac0-11e7-873d-584303677662.png)
The highlight text of a active substitute search result is now underlined in order to make it more recognizable. (#35 in PR #41, @KevinSjoberg)
![](https://user-images.githubusercontent.com/7836623/28245896-ebd3abae-6a10-11e7-9e83-85b69cb62455.gif)
#### Neovim
Addded support for the Neovim specific `:CheckHealth` status highlight groups. (#31 in PR #42, @syedelec, Thanks to @dylnmc)
<p align="center"><strong>Before</strong<br><img src="https://user-images.githubusercontent.com/7836623/28258007-150c94d6-6acf-11e7-92ee-c830e26067e4.png"/><br><strong>After</strong><br><img src="https://user-images.githubusercontent.com/7836623/28258017-21c124a8-6acf-11e7-9e93-dfacf0ad8b15.png"/></p>
## Bug Fixes
### UI
Fixed unreadable text color on pending search result highlights. (#32 in PR #39, @syedelec)
<p align="center">Before<br><img src="https://user-images.githubusercontent.com/7836623/28238074-20069028-694c-11e7-985f-f46f8c343ac5.png"/><br>After<br><img src="https://user-images.githubusercontent.com/7836623/28238077-297ccec4-694c-11e7-91cf-dcaae7aefb6d.png"/></p>
# 0.5.0
![Release Date: 2017-04-17](https://img.shields.io/badge/Release_Date-2017--04--17-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.5.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/8) [![Milestone](https://img.shields.io/badge/Milestone-0.5.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/7)
## Improvements
### Language Support
Implemented optimized styles for Ruby (@hahuang65, #29, 085c1337)
- Symbols (`rubySymbol`) now have a bold font style
- Block parameter list symbols (`rubyBlockParameterList`) are now colorized as keywords
- Local (variable) methods (`rubyLocalVariableOrMethod`) are now colorized as methods
<p align="center"><img src="https://cloud.githubusercontent.com/assets/7836623/25083146/af02dd0a-2355-11e7-8adc-f53b0803a484.png"/></p>
## Bug Fixes
### Documentation
Fixed a typo in the project description. (@arcticicestudio, #28, b2134029)
# 0.4.0
![Release Date: 2017-02-23](https://img.shields.io/badge/Release_Date-2017--02--23-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.4.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/7) [![Milestone](https://img.shields.io/badge/Milestone-0.4.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/6)
## Features
### Configurations
Added a configuration to enable [italic comments](https://github.com/arcticicestudio/nord-vim#italic-comments).
To adhere to the Nord style guide this option is disabled by default. It can be enabled by setting the `g:nord_italic_comments` variable to `1`.
```vim
let g:nord_italic_comments = 1
```
(@kepbod, #13 (PR #16), dc6149f4)
## Improvements
### Plugin Support
The method/function signature live preview of the [`jedi-vim`](https://github.com/davidhalter/jedi-vim) plugin is now colorized correctly. (@mkalinski, #14, a5c3459a)
<p align="center"><strong>Before</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/22618347/4857d88e-eada-11e6-9696-83a8886f5771.png"/><br><strong>After</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/22618354/63ddffde-eada-11e6-8a60-52a39642728e.png"/></p>
### Language Support
Implemented optimized styles for the Python syntax group `pythonEscape`. (@mkalinski, #22, 360a76ea)
![ghi-22-scrot-pythonescape](https://cloud.githubusercontent.com/assets/7836623/22618370/ad74e7fc-eada-11e6-89f2-23b351e8aa2b.png)
Implemented optimized styles for the SQL syntax groups `sqlSpecial` which is now linked to the `sqlKeyword` group to colorize constants like `true`/`false` and `null` as keywords. (@mkalinski, #23, dcfb441e)
### Documentation
Added the new terminal emulator port project [Nord Hyper](https://github.com/arcticicestudio/nord-hyper)
[![Nord Hyper](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-hyper-banner.svg)](https://github.com/arcticicestudio/nord-hyper)
# 0.3.0
![Release Date: 2017-01-24](https://img.shields.io/badge/Release_Date-2017--01--24-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.3.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/6) [![Milestone](https://img.shields.io/badge/Milestone-0.3.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/5)
## Improvements
### Plugin Support
The [Nord lightline.vim][nord-lightline] UI plugin theme now includes better support for the [tmuxline.vim](https://github.com/edkolev/tmuxline.vim) plugin. Before this implementation text shown in the main segment of the tmuxline, generated via the `:Tmuxline lightline` command, 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. (@scottwillmoore, #11, 4ea37f7e)
<p align="center"><strong>Before</strong><br><img src="https://cloud.githubusercontent.com/assets/9512557/21741900/4f792f5e-d537-11e6-9e69-09ff11b60c4e.png"/><br><strong>After</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21954034/15b87d1e-da47-11e6-9e70-a74aea14c378.png"/><br><strong>With unicode separators</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21954058/7a7c5266-da47-11e6-8f1f-0203d5270c51.png"/><br><strong>Without specified configurations (tmuxline.vim autodetect)</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21954072/931669e2-da47-11e6-8db3-cbdf9d6681f1.png"/></p>
## Bug Fixes
### Documentation
Fixed a typo in the [README installation guide](https://github.com/arcticicestudio/nord-vim#via-pluginruntimepath-manager) for Vundle. (@kepbod, #10, 29145bbb)
Fixed the banner of the [Nord iTerm2](https://github.com/arcticicestudio/nord-iterm2) port project showing the [Nord GNOME Terminal](https://github.com/arcticicestudio/nord-gnome-terminal) banner instead. (@shvetsovdm, #8 / [nord/#9](https://github.com/arcticicestudio/nord/issues/9), 7a447b40)
# 0.2.0
![Release Date: 2017-01-02](https://img.shields.io/badge/Release_Date-2017--01--02-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.2.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/5) [![Milestone](https://img.shields.io/badge/Milestone-0.2.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/4)
## Improvements
Characters under block cursors are now colored darker (`nord0`) while the block cursor is visible to achieve a optimal contrast and to avoid unreadability due to the same cursor- and foreground color (`nord4`). (@arcticicestudio / @scottwillmoore, #9, 30e1f7e3)
<p align="center"><strong>Before</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21586772/f08a56d2-d0d4-11e6-84e0-37e3021317ad.png"/><br><strong>After</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21586785/23ef246c-d0d5-11e6-8573-2e0d8391186c.gif"/></p>
The background color of visual mode selections is now colored in `nord1` instead of `nord3` to avoid a color collision with comments which has led to unreadable text.(@scottwillmoore, #7, bdb209f5)
<p align="center"><strong>Before</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21588201/c8aa75ba-d0e4-11e6-9426-96bfab1c545f.gif"/><br><strong>After</strong><br><img src="https://cloud.githubusercontent.com/assets/7836623/21588207/d67f29b0-d0e4-11e6-8eba-117f38a9c073.gif"/></p>
# 0.1.2
*2017-01-01*
![Release Date: 2017-01-01](https://img.shields.io/badge/Release_Date-2017--01--01-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.1.2-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/4) [![Milestone](https://img.shields.io/badge/Milestone-0.1.2-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/3)
## Bug Fixes
Fixed a bug where the `g:colors_name` variable has been unset caused by the `syntax reset` call due to the execution
order. (@shuei72, #5, f8ffce24)
# 0.1.1
![Release Date: 2016-12-26](https://img.shields.io/badge/Release_Date-2016--12--26-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.1.1-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/3) [![Milestone](https://img.shields.io/badge/Milestone-0.1.1-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/2)
## Bug Fixes
Fixed wrong color variables (`*_term` to `*_gui`) for the `guisp` attribute of all `Spell*` highlighting groups which caused error logs while loading `vim`/`gvim`/MacVim. (@kamwitsta, #4, 4d642b9b)
# 0.1.0
![Release Date: 2016-12-25](https://img.shields.io/badge/Release_Date-2016--12--25-88C0D0.svg?style=flat-square) [![Project Board](https://img.shields.io/badge/Project_Board-0.1.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/projects/2) [![Milestone](https://img.shields.io/badge/Milestone-0.1.0-88C0D0.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/milestone/1)
## Features
Detailed information about features, supported plugins/languages and install instructions can be found in the [README](https://github.com/arcticicestudio/nord-vim/blob/develop/README.md#installation) and in the [project wiki](https://github.com/arcticicestudio/nord-vim/wiki).
Implemented the main color theme file [`nord.vim`](https://github.com/arcticicestudio/nord-vim/blob/develop/colors/nord.vim). (@arcticicestudio, #1, e2832b9)
<p align="center"><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-javascript.png"/></p>
Implemented the [lightline](https://github.com/itchyny/lightline.vim) color scheme file [`nord.vim`](https://github.com/arcticicestudio/nord-vim/blob/develop/autoload/lightline/colorscheme/nord.vim). (@arcticicestudio, #2, f9891ffe)
<p align="center"><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-lightline.png"/></p>
Implemented the [airline](https://github.com/vim-airline/vim-airline) color theme file [`nord.vim`](https://github.com/arcticicestudio/nord-vim/blob/develop/autoload/airline/themes/nord.vim). (@arcticicestudio, #3, e54464a7)
<p align="center"><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-airline.png"/></p>
# Project Initialization
![Release Date: 2016-12-25](https://img.shields.io/badge/Release_Date-2016--12--25-88C0D0.svg?style=flat-square)
<!--
+------------------+
+ Symbol Reference +
+------------------+
↠ (U+21A0): Start of a log section description
— (U+2014): Separator between a log section title and the metadata
⇄ (U+21C4): Separator between a issue ID and pull request ID in a log metadata
⊶ (U+22B6): Icon prefix for the short commit SHA checksum in a log metadata
-->
<!-- lint disable final-definition -->
<!-- Base Links -->
[asciidoc]: https://asciidoctor.org
[gh-11]: https://github.com/arcticicestudio/nord-vim/issues/11
[gh-55-arcticicestudio/nord]: https://github.com/arcticicestudio/nord/issues/55
[gh-lightline.vim]: https://github.com/itchyny/lightline.vim
[gh-nord#94]: https://github.com/arcticicestudio/nord/issues/94
[gh-src-airline]: https://github.com/arcticicestudio/nord-vim/blob/develop/autoload/airline/themes/nord.vim
[gh-tmuxline.vim]: https://github.com/edkolev/tmuxline.vim
[gh-user-cg433n]: https://github.com/cg433n
[gist-colors-in-terminals]: https://gist.github.com/XVilka/8346728
[itchyny/lightline-adv-config]: https://github.com/itchyny/lightline.vim#advanced-configuration
[itchyny/lightline.vim-gh-257]: https://github.com/itchyny/lightline.vim/pull/257
[lesscss-doc-fn-lighten]: http://lesscss.org/functions/#color-operations-lighten
[nord-atom-syntax-pr-47]: https://github.com/arcticicestudio/nord-atom-syntax/pull/47
[nord-gh]: https://github.com/arcticicestudio/nord
[nord-lightline]: https://github.com/arcticicestudio/nord-vim/blob/develop/autoload/lightline/colorscheme/nord.vim
[plugin-ale]: https://github.com/w0rp/ale
[plugin-ctrlp]: https://github.com/ctrlpvim/ctrlp.vim
[plugin-junegunn/vim-plug]: https://github.com/junegunn/vim-plug
[plugin-kshenoy/vim-signature]: https://github.com/kshenoy/vim-signature
[plugin-mhinz/vim-signify]: https://github.com/mhinz/vim-signify
[plugin-plasticboy/vim-markdown]: https://github.com/plasticboy/vim-markdown
[plugin-stephpy/vim-yaml]: https://github.com/stephpy/vim-yaml
[plugin-tpope/vim-fugitive]: https://github.com/tpope/vim-fugitive
[plugin-vimwiki/vimwiki]: https://github.com/vimwiki/vimwiki
[readme-config-comment-brightness]: https://github.com/arcticicestudio/nord-vim#comment-contrast
[readme-config-italic]: https://github.com/arcticicestudio/nord-vim#italic-support
[readme-config-line-number-background]: https://github.com/arcticicestudio/nord-vim#line-number-background
[readme-config-underline-support]: https://github.com/arcticicestudio/nord-vim#underline-support
[readme-config-uniform-diff-background]: https://github.com/arcticicestudio/nord-vim#uniform-diff-background
[readme-config-uniform-statusline-background]: https://github.com/arcticicestudio/nord-vim#uniform-status-lines
[readme-config]: https://github.com/arcticicestudio/nord-vim#configuration
[rust]: https://www.rust-lang.org
[vdoc-fchar]: http://vimdoc.sourceforge.net/htmldoc/options.html#'fillchars'
[vdoc-vsplit]: http://vimdoc.sourceforge.net/htmldoc/syntax.html#hl-VertSplit
[vim-doc-diffadd]: http://vimdoc.sourceforge.net/htmldoc/syntax.html#hl-DiffAdd
[yaml]: http://yaml.org
<!--v 0.11.0 -->
[cmake-doc-genexpr]: https://cmake.org/cmake/help/latest/manual/cmake-generator-expressions.7.html
[gh-user-axelitus]: https://github.com/axelitus
[gh-user-huyvohcmc]: https://github.com/huyvohcmc
[gh-user-markand]: https://github.com/markand
[gh-user-meck]: https://github.com/meck
[gh-user-terminalwitchcraft]: https://github.com/terminalwitchcraft
[gh-user-tidux]: https://github.com/tidux
[gh-user-vabatta]: https://github.com/vabatta
[neovimhaskell/haskell-vim]: https://github.com/neovimhaskell/haskell-vim
[rustdoc-attributes]: https://doc.rust-lang.org/reference/attributes.html
[rustdoc-derives]: https://doc.rust-lang.org/edition-guide/rust-2018/macros/custom-derive.html
[rustdoc-enums]: https://doc.rust-lang.org/1.1.0/book/enums.html
[rustdoc-escapes]: https://doc.rust-lang.org/reference/tokens.html#ascii-escapes
[rustdoc-macros]: https://doc.rust-lang.org/1.8.0/book/macros.html
[rustdoc-traits]: https://doc.rust-lang.org/book/ch10-02-traits.html

350
README.md
View file

@ -1,350 +0,0 @@
<p align="center"><img src="https://cdn.rawgit.com/arcticicestudio/nord-vim/develop/assets/nord-vim-banner.svg"/></p>
<p align="center"><img src="https://assets-cdn.github.com/favicon.ico" width=24 height=24/> <a href="https://github.com/arcticicestudio/nord-vim/releases/latest"><img src="https://img.shields.io/github/release/arcticicestudio/nord-vim.svg?style=flat-square"/></a> <a href="https://github.com/arcticicestudio/nord/releases/tag/v0.2.0"><img src="https://img.shields.io/badge/Nord-v0.2.0-88C0D0.svg?style=flat-square"/></a></p>
<p align="center">An arctic, north-bluish clean and elegant <a href="http://www.vim.org">Vim</a> color theme.</p>
<p align="center">Designed for a fluent and clear workflow.<br>
Based on the <a href="https://github.com/arcticicestudio/nord">Nord</a> color palette.</p>
---
Nord Vim is a 16 colorspace theme build to run in GUI- and terminal mode with support for many third-party plugins and styles for [lightline.vim][gh-itchyny/lightline.vim] and [vim-airline][gh-vim-airline/vim-airline].
<p align="center"><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-javascript.png"/><br><blockquote>Font: <a href="https://adobe-fonts.github.io/source-code-pro">Source Code Pro</a> 20px</blockquote></p>
- [Getting started](#getting-started)
- [Installation](#installation)
- [Via plugin/runtimepath manager](#via-pluginruntimepath-manager)
- [Manual](#manual)
- [Activation](#activation)
- [Configuration](#configuration)
- [Italic Support](#italic-support)
- [Underline Support](#underline-support)
- [Italic Comments](#italic-comments)
- [Uniform Status Lines](#uniform-status-lines)
- [Comment Contrast](#comment-contrast)
- [Uniform diff Background](#uniform-diff-background)
- [Line number background](#line-number-background)
- [Bold Vertical Split Line](#bold-vertical-split-line)
- [Plugin Support](#plugin-support)
- [UI Plugins](#ui-plugins)
- [Language Plugins](#language-plugins)
- [JavaScript](#javascript)
- [Languages](#languages)
- [Development](#development)
- [Contribution](#contribution)
## Getting started
### Installation
**NOTE**: Nord Vim in terminal mode **MUST** be used with the associated terminal emulator theme in order to work properly!
Make sure to install one of the currently supported terminal themes listed below **BEFORE** installing Nord Vim.
[![Nord GNOME Terminal](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-gnome-terminal-banner.svg)](https://github.com/arcticicestudio/nord-gnome-terminal)
[![Nord Guake](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-guake-banner.svg)](https://github.com/arcticicestudio/nord-guake)
[![Nord Hyper](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-hyper-banner.svg)](https://github.com/arcticicestudio/nord-hyper)
[![Nord iTerm2](https://cdn.rawgit.com/arcticicestudio/nord/0971858f496823fd916f3368961f16ef2c7aad1e/src/assets/nord-iterm2-banner.svg)](https://github.com/arcticicestudio/nord-iterm2)
[![Nord Konsole](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-konsole-banner.svg)](https://github.com/arcticicestudio/nord-konsole)
[![Nord Mintty](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-mintty-banner.svg)](https://github.com/arcticicestudio/nord-mintty)
[![Nord PuTTY](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-putty-banner.svg)](https://github.com/arcticicestudio/nord-putty)
[![Nord Terminal.app](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-terminal-app-banner.svg)](https://github.com/arcticicestudio/nord-terminal-app)
[![Nord Terminator](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-terminator-banner.svg)](https://github.com/arcticicestudio/nord-terminator)
[![Nord Tilix](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-tilix-banner.svg)](https://github.com/arcticicestudio/nord-tilix)
[![Nord Termite](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-termite-banner.svg)](https://github.com/arcticicestudio/nord-termite)
[![Nord XFCE Terminal](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-xfce-terminal-banner.svg)](https://github.com/arcticicestudio/nord-xfce-terminal)
[![Nord Xresources](https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/nord-xresources-banner.svg)](https://github.com/arcticicestudio/nord-xresources)
#### Via plugin/runtimepath manager
Add Nord Vim to your `.vimrc` for your favorite manager.
* [`vim-plug`][gh-junegunn/vim-plug] (recommended):
```vim
Plug 'arcticicestudio/nord-vim'
```
and run `:PlugInstall`.
* [`pathogen`](https://github.com/tpope/vim-pathogen):
```sh
cd ~/.vim/bundle
git clone git://github.com/arcticicestudio/nord-vim.git
```
* [`Vundle`](https://github.com/VundleVim/Vundle.vim):
```vim
Plugin 'arcticicestudio/nord-vim'
```
and run `:PluginInstall`.
To install the latest development version [`vim-plug`][gh-junegunn/vim-plug] support to specifiy the `develop` branch:
```vim
Plug 'arcticicestudio/nord-vim', { 'branch': 'develop' }
```
A explicit version can be installed via Git tags:
```vim
Plug 'arcticicestudio/nord-vim', { 'tag': 'v0.11.0' }
```
#### Manual
[Download](https://github.com/arcticicestudio/nord-vim/releases/latest) the latest version or clone the repository and copy the [`nord.vim`](https://github.com/arcticicestudio/nord-vim/blob/develop/colors/nord.vim) theme file to your `~/.vim/colors` directory.
### Activation
Use Nord Vim as your default color theme by adding it to your `.vimrc`
```vim
colorscheme nord
```
or change it on-the-fly by running `:colorscheme nord`.
[`vim-plug`][gh-junegunn/vim-plug] also provides options to enable it on-demand for specific languages:
```vim
" Activate Nord Vim when editing Java files
Plug 'arcticicestudio/nord-vim', { 'for': 'java' }
```
or on specific events:
```vim
" Activate Nord Vim when toggling the NERDTree
Plug 'arcticicestudio/nord-vim', { 'on': 'NERDTreeToggle' }
```
## Configuration
All options should be set **before** the [activation](#activation) command!
### Italic Support
**This option should only be enabled if your terminal emulator supports italics!**
Can be enabled to support italic text.
Most terminals don't handle italics right so Nord disables italics for terminals by default while in GUI mode this option is enabled by default.
Set `g:nord_italic` to `1` to enforce displaying italics.
```vim
let g:nord_italic = 1
```
<p align="center"><strong>Italic formatting in Markdown</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-italic-markdown.png"/></p>
### Underline Support
**This option should only be enabled if your terminal emulator supports underlines!**
Can be enabled to support underlined text.
Most terminals are not capable to handle underlines right so Nord disables these for terminals by default while it should work out-of-the-box™ in GUI mode.
Set `g:nord_underline` to `1` to enforce displaying underlines.
```vim
let g:nord_underline = 1
```
<p align="center"><strong>Underlined Text</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-underline.png"/></p>
### Italic Comments
**This option only takes effect if the option for [italic text support](#italic-support) has been enabled!**
Enable to italicize all comments.
To adhere to the Nord style guide this option is disabled by default.
It can be enabled by setting the `g:nord_italic_comments` variable to `1`.
```vim
let g:nord_italic_comments = 1
```
![][scrot-config-italic-comments]
### Uniform Status Lines
Enables uniform activate- and inactive status lines using `nord3` as background.
By default, Nord Vim uses a slightly brighter background for the current split buffer. This is designed to draw attention to the currently active buffer without being distracting.
If the user desires the backgrounds to be a uniform color, `g:nord_uniform_status_lines` can be set to `1`:
```vim
let g:nord_uniform_status_lines = 1
```
<p align="center"><strong>Default status lines</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-status-lines-default.png"/><br><strong>Uniform status lines</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-status-lines.png"/></p>
### Comment Contrast
**This option should only be enabled if your terminal supports 24bit true color (16 million colors) and requires the `termguicolors` option to be set is in `~/.vimrc` or via `:set termguicolors`!**
The comment brightness can be increased by 1 - 20 percent. It can be enabled by setting the `g:nord_comment_brightness`
variable to a number between `1` and `20`.
```vim
let g:nord_comment_brightness = 12
```
<p align="center"><strong>Default and 15% increased</strong><br><img src="https://user-images.githubusercontent.com/7836623/30772939-a65c92b6-a066-11e7-92f2-2f7089fe7700.png"/><br><img src="https://user-images.githubusercontent.com/7836623/30772941-b85577d0-a066-11e7-9c64-b9dab6736034.png"/></p>
<p align="center"><strong>Default and 12% increased</strong><br><img src="https://user-images.githubusercontent.com/7836623/30772949-ea459978-a066-11e7-8092-9e6522f9b7bf.png"/><br><img src="https://user-images.githubusercontent.com/7836623/30772950-eb8c2c84-a066-11e7-92d2-a64ac5f20521.png"/></p>
To adhere to the Nord style guide this option uses `nord3` by default.
This is a reference table if users like to use the same increased contrast values as provided by the [Nord Atom Syntax accessibility custom comment contrast theme setting][nord-atom-syntax-pr-47] which are calculated using the LESSCSS [`lighten`][lesscss-doc-fn-lighten] function.
| Increased by | Calculated value |
| --- | --- |
| 1% | `#4e586d` |
| 2% | `#505b70` |
| 3% | `#525d73` |
| 4% | `#556076` |
| 5% | `#576279` |
| 6% | `#59647c` |
| 7% | `#5b677f` |
| 8% | `#5d6982` |
| 9% | `#5f6c85` |
| 10% | `#616e88` |
| 11% | `#63718b` |
| 12% | `#66738e` |
| 13% | `#687591` |
| 14% | `#6a7894` |
| 15% | `#6d7a96` |
| 16% | `#6f7d98` |
| 17% | `#72809a` |
| 18% | `#75829c` |
| 19% | `#78859e` |
| 20% | `#7b88a1` |
More information about true color and the support in various terminals can be found in [this gist][gist-true-color].
<p align="center"><strong>Default and 15% increased</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-comment-contrast-java-default.png"/><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-comment-contrast-java-15-percent.png"/></p>
<p align="center"><strong>Default and 12% increased</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-comment-contrast-js-default.png"/><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-comment-contrast-js-12-percent.png"/></p>
### Uniform `diff` Background
By default, Nord Vim provides colorful backgrounds when used in *diff* mode `vimdiff`/`vim -d`.
This can be changed to `nord1` as uniform *diff* background color by setting the `g:nord_uniform_diff_background` variable to `1`.
```vim
let g:nord_uniform_diff_background = 1
```
<p align="center"><strong>Colorful backgrounds (default)</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-diff-default.png"/><br><strong>Uniform diff background</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-uniform-diff.png"/>
</p>
### Line number background
Enables background for the line number of the current line.
```vim
let g:nord_cursor_line_number_background = 1
```
<p align="center"><strong>No background (default)</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-cursor-line-number-background-default.png"/><br><strong>Enabled background</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-cursor-line-number-background.png"/>
</p>
### Bold Vertical Split Line
Enables a bolder vertical split line by using `nord1` as background.
```viml
let g:nord_bold_vertical_split_line = 1
```
To change the separator character used to display the vertical line please see the documentation about Vim's [`fillchars`][vdoc-fillchars] variable: `:help fillchars`
<p align="center"><strong>With base editor background (default)</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-bold-vertical-split-line-default.png"/></p>
<p align="center"><strong>With enabled bold <code>nord1</code> background</strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-bold-vertical-split-line.png"/></p>
## Plugin Support
Nord Vim provides support for many third-party language- and UI plugins.
### UI Plugins
<p align="center"><strong>With custom separators and components using lightline's <a href="https://github.com/itchyny/lightline.vim#advanced-configuration">advanced configurations</a></strong><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-lightline.png"/><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-lightline-vsplit.png"/></p>
<p align="center"><strong><a href="https://github.com/itchyny/lightline.vim">lightline</a> with default format and components</strong><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-lightline-default.png"/></p>
<p align="center"><a href="https://github.com/vim-airline/vim-airline">airline</a><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-airline.png"/><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-airline-vsplit.png"/></p>
<p align="center"><a href="https://github.com/airblade/vim-gitgutter">GitGutter</a><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-gitgutter.png"/></p>
<p align="center"><a href="https://github.com/scrooloose/nerdtree">NERDTree</a><br><img src="https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-plugin-support-ui-nerdtree.png"/></p>
### Language Plugins
#### JavaScript
[`vim-javascript`](https://github.com/pangloss/vim-javascript)
Detailed descriptions for supported plugins can be found in the [project wiki](https://github.com/arcticicestudio/nord-vim/wiki).
## Languages
Nord Vim contains optimized styles to achieve a consistent and uniform coloring across languages.
Detailed descriptions for supported languages can be found in the [project wiki](https://github.com/arcticicestudio/nord-vim/wiki) and in the [Plugin Support](#plugin-support) section.
![][scrot-lang-c]
![][scrot-lang-css]
![][scrot-lang-html]
![][scrot-lang-java]
![][scrot-lang-javascript]
![][scrot-lang-json]
![][scrot-lang-markdown]
![][scrot-lang-php]
![][scrot-lang-python]
![][scrot-lang-ruby]
## Development
[![](https://img.shields.io/badge/Changelog-0.11.0-81A1C1.svg?style=flat-square)](https://github.com/arcticicestudio/nord-vim/blob/v0.11.0/CHANGELOG.md#0110) [![](https://img.shields.io/badge/Workflow-gitflow--branching--model-81A1C1.svg?style=flat-square)](http://nvie.com/posts/a-successful-git-branching-model) [![](https://img.shields.io/badge/Versioning-ArcVer_0.8.0-81A1C1.svg?style=flat-square)](https://github.com/arcticicestudio/arcver)
### Contribution
Please report issues/bugs, feature requests and suggestions for improvements to the [issue tracker](https://github.com/arcticicestudio/nord-vim/issues).
<p align="center"><img src="https://cdn.rawgit.com/arcticicestudio/nord/develop/src/assets/banner-footer-mountains.svg" /></p>
<p align="center">Copyright &copy; 2016-present Arctic Ice Studio</p>
<p align="center"><a href="https://github.com/arcticicestudio/nord-vim/blob/develop/LICENSE.md"><img src="https://img.shields.io/badge/License-MIT-5E81AC.svg?style=flat-square"/></a> <a href="https://creativecommons.org/licenses/by-sa/4.0"><img src="https://img.shields.io/badge/License-CC_BY--SA_4.0-5E81AC.svg?style=flat-square"/></a></p>
[gh-itchyny/lightline.vim]: https://github.com/itchyny/lightline.vim
[gh-junegunn/vim-plug]: https://github.com/junegunn/vim-plug
[gh-vim-airline/vim-airline]: https://github.com/vim-airline/vim-airline
[gist-true-color]: https://gist.github.com/XVilka/8346728
[lesscss-doc-fn-lighten]: http://lesscss.org/functions/#color-operations-lighten
[nord-atom-syntax-pr-47]: https://github.com/arcticicestudio/nord-atom-syntax/pull/47
[scrot-config-italic-comments]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-config-italic-comments.png
[scrot-lang-c]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-c.png
[scrot-lang-css]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-css.png
[scrot-lang-html]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-html.png
[scrot-lang-java]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-java.png
[scrot-lang-javascript]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-javascript.png
[scrot-lang-json]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-json.png
[scrot-lang-markdown]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-markdown.png
[scrot-lang-php]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-php.png
[scrot-lang-python]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-python.png
[scrot-lang-ruby]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-lang-ruby.png
[scrot-readme-default-profile]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-readme-default-profile.png
[scrot-readme-lazy-profile-change]: https://raw.githubusercontent.com/arcticicestudio/nord-vim/develop/assets/scrot-readme-lazy-profile-change.png
[vdoc-fillchars]: http://vimdoc.sourceforge.net/htmldoc/options.html#'fillchars'

File diff suppressed because one or more lines are too long

View file

@ -1,26 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="888" height="200" viewBox="0 0 888 200">
<font horiz-adv-x="1000">
<font-face font-family="HelveticaNeueLTStd-Roman" underline-position="-100" underline-thickness="50"/>
<glyph horiz-adv-x="278"/>
</font>
<font horiz-adv-x="1000">
<font-face font-family="HelveticaNeueLTStd-UltLt" underline-position="-100" underline-thickness="50"/>
<glyph unicode="N" horiz-adv-x="648" d="M54 0h20v689h2L564 0h30v714h-20V25h-2L84 714H54z"/>
<glyph unicode="d" horiz-adv-x="537" d="M455 256C455 123 379 8 247 8 114 8 48 124 48 256c0 119 58 250 199 250 125 0 208-91 208-250m0 114h-2c-24 93-97 156-206 156-142 0-219-126-219-270 0-155 83-268 219-268 105 0 180 66 206 156h2V0h20v714h-20z"/>
<glyph unicode="o" horiz-adv-x="519" d="M28 257c0-141 81-269 231-269 151 0 232 128 232 269 0 140-81 269-231 269-151 0-232-129-232-269m20 0c0 128 73 249 212 249 137 0 211-121 211-249C471 127 397 8 260 8 121 8 48 127 48 257z"/>
<glyph unicode="r" horiz-adv-x="259" d="M75 291c0 112 63 222 204 215v20c-123 4-183-63-202-139h-2v127H55V0h20z"/>
</font>
<font horiz-adv-x="1000">
<font-face font-family="HelveticaNeueLTStd-Lt" underline-position="-100" underline-thickness="50"/>
<glyph unicode="V" horiz-adv-x="593" d="M258 0h79l265 714h-72L300 75h-2L66 714H-7z"/>
<glyph unicode="i" horiz-adv-x="185" d="M61 0h63v516H61m0 97h63v101H61z"/>
<glyph unicode="m" horiz-adv-x="833" d="M60 0h63v288c1 108 45 190 154 190 80 0 109-58 108-128V0h63v292c0 96 31 186 140 186 90 0 122-46 122-131V0h63v350c0 122-58 181-171 181-68 0-133-33-164-101-19 68-80 101-148 101-82 0-136-40-169-102h-3v87H60z"/>
</font>
<g fill="#2E3440">
<path d="M472.587 126.962l-43.392-55.545V56.006l48.091 62.171h25.844V30.632h-43.465l-9.395-9.399h62.256v105.729z"/>
<path d="M427.467 21.233l43.393 55.541v15.411l-48.091-62.168h-25.843v87.545h43.463l9.4 9.4h-62.262V21.233z"/>
</g>
<path fill="none" d="M362.414 144.962h175.227v32.705H362.414z"/>
<path fill="#88C0D0" d="M364.843 144.963h1.35l21.959 31.004h.09v-31.004h.9v32.129h-1.35l-21.959-31.004h-.09v31.004h-.9v-32.129zm38.43 8.459c6.75 0 10.395 5.805 10.395 12.105 0 6.344-3.645 12.104-10.44 12.104-6.75 0-10.395-5.76-10.395-12.104 0-6.3 3.645-12.105 10.44-12.105zm0 23.308c6.165 0 9.495-5.354 9.495-11.203 0-5.76-3.33-11.205-9.495-11.205-6.255 0-9.54 5.445-9.54 11.205 0 5.85 3.285 11.203 9.54 11.203zm15.03.362h-.9v-23.129h.9v5.715h.09c.855-3.42 3.555-6.436 9.09-6.256v.9c-6.345-.314-9.18 4.635-9.18 9.674v13.096zm28.754-32.129h.9v32.129h-.9v-6.48h-.09c-1.17 4.051-4.545 7.02-9.27 7.02-6.12 0-9.855-5.084-9.855-12.059 0-6.48 3.465-12.15 9.855-12.15 4.905 0 8.189 2.836 9.27 7.02h.09v-15.48zm-9.36 9.359c-6.345 0-8.955 5.895-8.955 11.25 0 5.939 2.97 11.158 8.955 11.158 5.939 0 9.359-5.174 9.359-11.158.001-7.154-3.734-11.25-9.359-11.25z"/>
<path fill="#2E3440" d="M462.941 144.963h3.285l10.439 28.754h.09l10.35-28.754h3.24l-11.924 32.129h-3.556l-11.924-32.129zm30.016 0h2.834v4.545h-2.834v-4.545zm0 8.91h2.834v23.219h-2.834v-23.219zm8.279 0h2.609v3.914h.135c1.485-2.789 3.915-4.59 7.605-4.59 3.06 0 5.805 1.484 6.659 4.545 1.396-3.061 4.32-4.545 7.38-4.545 5.085 0 7.694 2.654 7.694 8.145v15.75h-2.835v-15.615c0-3.824-1.439-5.895-5.489-5.895-4.905 0-6.3 4.051-6.3 8.369v13.141h-2.835v-15.75c.045-3.15-1.26-5.76-4.859-5.76-4.905 0-6.885 3.689-6.93 8.549v12.961h-2.835v-23.219z"/>
</svg>

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 KiB

View file

@ -1,11 +1,7 @@
" Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com>
" Copyright (C) 2016-present Sven Greb <development@svengreb.de>
" Copyright (c) 2016-present Sven Greb <development@svengreb.de>
" This source code is licensed under the MIT license found in the license file.
" Project: Nord Vim
" Repository: https://github.com/arcticicestudio/nord-vim
" License: MIT
let s:nord_vim_version="0.11.0"
let s:nord_vim_version="0.19.0"
let g:airline#themes#nord#palette = {}
let s:nord0_gui = "#2E3440"
@ -80,7 +76,11 @@ let g:airline#themes#nord#palette.visual.airline_error = s:VError
let s:IAMain = [s:nord5_gui, s:nord3_gui, s:nord5_term, s:nord3_term]
let s:IARight = [s:nord5_gui, s:nord3_gui, s:nord5_term, s:nord3_term]
let s:IAMiddle = [s:nord5_gui, s:nord1_gui, s:nord5_term, s:nord1_term]
if g:nord_uniform_status_lines == 0
let s:IAMiddle = [s:nord5_gui, s:nord1_gui, s:nord5_term, s:nord1_term]
else
let s:IAMiddle = [s:nord5_gui, s:nord3_gui, s:nord5_term, s:nord3_term]
endif
let s:IAWarn = [s:nord1_gui, s:nord13_gui, s:nord3_term, s:nord13_term]
let s:IAError = [s:nord0_gui, s:nord11_gui, s:nord1_term, s:nord11_term]
let g:airline#themes#nord#palette.inactive = airline#themes#generate_color_map(s:IAMain, s:IARight, s:IAMiddle)

View file

@ -1,11 +1,7 @@
" Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com>
" Copyright (C) 2016-present Sven Greb <development@svengreb.de>
" Copyright (c) 2016-present Sven Greb <development@svengreb.de>
" This source code is licensed under the MIT license found in the license file.
" Project: Nord Vim
" Repository: https://github.com/arcticicestudio/nord-vim
" License: MIT
let s:nord_vim_version="0.11.0"
let s:nord_vim_version="0.19.0"
let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
let s:nord0 = ["#2E3440", "NONE"]
@ -32,7 +28,7 @@ let s:p.normal.warning = [ [ s:nord1, s:nord13 ] ]
let s:p.normal.error = [ [ s:nord1, s:nord11 ] ]
let s:p.inactive.left = [ [ s:nord1, s:nord8 ], [ s:nord5, s:nord1 ] ]
let s:p.inactive.middle = [ [ s:nord5, s:nord1 ] ]
let s:p.inactive.middle = g:nord_uniform_status_lines == 0 ? [ [ s:nord5, s:nord1 ] ] : [ [ s:nord5, s:nord3 ] ]
let s:p.inactive.right = [ [ s:nord5, s:nord1 ], [ s:nord5, s:nord1 ] ]
let s:p.insert.left = [ [ s:nord1, s:nord6 ], [ s:nord5, s:nord1 ] ]

1254
changelog.md Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,9 +1,5 @@
" Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com>
" Copyright (C) 2016-present Sven Greb <development@svengreb.de>
" Project: Nord Vim
" Repository: https://github.com/arcticicestudio/nord-vim
" License: MIT
" Copyright (c) 2016-present Sven Greb <development@svengreb.de>
" This source code is licensed under the MIT license found in the license file.
if version > 580
hi clear
@ -13,7 +9,7 @@ if version > 580
endif
let g:colors_name = "nord"
let s:nord_vim_version="0.11.0"
let s:nord_vim_version="0.19.0"
set background=dark
let s:nord0_gui = "#2E3440"
@ -72,78 +68,54 @@ let s:nord3_gui_brightened = [
\ "#7b88a1",
\ ]
if !exists("g:nord_italic")
if has("gui_running") || $TERM_ITALICS == "true"
let g:nord_italic=1
else
let g:nord_italic=0
endif
endif
let g:nord_bold = get(g:, "nord_bold", 1)
let s:bold = (g:nord_bold == 0) ? "" : "bold,"
let s:italic = "italic,"
if g:nord_italic == 0
let s:italic = ""
endif
let g:nord_underline = get(g:, "nord_underline", 1)
let s:underline = (g:nord_underline == 0) ? "NONE," : "underline,"
let s:underline = "underline,"
if ! get(g:, "nord_underline", 1)
let s:underline = "NONE,"
endif
let g:nord_italic = get(g:, "nord_italic", (has("gui_running") || $TERM_ITALICS == "true"))
let s:italic = (g:nord_italic == 0) ? "" : "italic,"
let s:italicize_comments = ""
if exists("g:nord_italic_comments")
if g:nord_italic_comments == 1
let s:italicize_comments = s:italic
endif
endif
let g:nord_italic_comments = get(g:, "nord_italic_comments", 0)
let s:italicize_comments = (g:nord_italic_comments == 0) ? "" : get(s:, "italic")
if !exists('g:nord_uniform_status_lines')
let g:nord_uniform_status_lines = 0
endif
function! s:logWarning(msg)
echohl WarningMsg
echomsg 'nord: warning: ' . a:msg
echohl None
endfunction
let g:nord_uniform_status_lines = get(g:, "nord_uniform_status_lines", 0)
let g:nord_bold_vertical_split_line = get(g:, "nord_bold_vertical_split_line", 0)
if exists("g:nord_comment_brightness")
call s:logWarning('Variable g:nord_comment_brightness has been deprecated and will be removed in version 1.0.0!' .
echohl WarningMsg
echomsg 'nord: warning: Variable g:nord_comment_brightness has been deprecated and will be removed in version 1.0.0!' .
\' The comment color brightness has been increased by 10% by default.' .
\' Please see https://github.com/arcticicestudio/nord-vim/issues/145 for more details.')
\' Please see https://github.com/nordtheme/vim/issues/145 for more details.'
echohl None
let g:nord_comment_brightness = 10
endif
if !exists("g:nord_uniform_diff_background")
let g:nord_uniform_diff_background = 0
endif
if !exists("g:nord_cursor_line_number_background")
let g:nord_cursor_line_number_background = 0
endif
if !exists("g:nord_bold_vertical_split_line")
let g:nord_bold_vertical_split_line = 0
endif
let g:nord_cursor_line_number_background = get(g:, "nord_cursor_line_number_background", 0)
let g:nord_uniform_diff_background = get(g:, "nord_uniform_diff_background", 0)
function! s:hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
let cmd = ""
if a:guifg != ""
exec "hi " . a:group . " guifg=" . a:guifg
let cmd = cmd . " guifg=" . a:guifg
endif
if a:guibg != ""
exec "hi " . a:group . " guibg=" . a:guibg
let cmd = cmd . " guibg=" . a:guibg
endif
if a:ctermfg != ""
exec "hi " . a:group . " ctermfg=" . a:ctermfg
let cmd = cmd . " ctermfg=" . a:ctermfg
endif
if a:ctermbg != ""
exec "hi " . a:group . " ctermbg=" . a:ctermbg
let cmd = cmd . " ctermbg=" . a:ctermbg
endif
if a:attr != ""
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . substitute(a:attr, "undercurl", s:underline, "")
let cmd = cmd . " gui=" . a:attr . " cterm=" . substitute(a:attr, "undercurl", s:underline, "")
endif
if a:guisp != ""
exec "hi " . a:group . " guisp=" . a:guisp
let cmd = cmd . " guisp=" . a:guisp
endif
if cmd != ""
exec "hi " . a:group . cmd
endif
endfunction
@ -151,7 +123,7 @@ endfunction
"+ UI Components +
"+---------------+
"+--- Attributes ---+
call s:hi("Bold", "", "", "", "", "bold", "")
call s:hi("Bold", "", "", "", "", s:bold, "")
call s:hi("Italic", "", "", "", "", s:italic, "")
call s:hi("Underline", "", "", "", "", s:underline, "")
@ -159,15 +131,15 @@ call s:hi("Underline", "", "", "", "", s:underline, "")
call s:hi("ColorColumn", "", s:nord1_gui, "NONE", s:nord1_term, "", "")
call s:hi("Cursor", s:nord0_gui, s:nord4_gui, "", "NONE", "", "")
call s:hi("CursorLine", "", s:nord1_gui, "NONE", s:nord1_term, "NONE", "")
call s:hi("Error", s:nord0_gui, s:nord11_gui, "", s:nord11_term, "", "")
call s:hi("Error", s:nord4_gui, s:nord11_gui, "", s:nord11_term, "", "")
call s:hi("iCursor", s:nord0_gui, s:nord4_gui, "", "NONE", "", "")
call s:hi("LineNr", s:nord3_gui, s:nord0_gui, s:nord3_term, "NONE", "", "")
call s:hi("LineNr", s:nord3_gui, "NONE", s:nord3_term, "NONE", "", "")
call s:hi("MatchParen", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, "", "")
call s:hi("NonText", s:nord2_gui, "", s:nord3_term, "", "", "")
call s:hi("Normal", s:nord4_gui, s:nord0_gui, "NONE", "NONE", "", "")
call s:hi("PMenu", s:nord4_gui, s:nord2_gui, "NONE", s:nord1_term, "NONE", "")
call s:hi("Pmenu", s:nord4_gui, s:nord2_gui, "NONE", s:nord1_term, "NONE", "")
call s:hi("PmenuSbar", s:nord4_gui, s:nord2_gui, "NONE", s:nord1_term, "", "")
call s:hi("PMenuSel", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, "", "")
call s:hi("PmenuSel", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, "", "")
call s:hi("PmenuThumb", s:nord8_gui, s:nord3_gui, "NONE", s:nord3_term, "", "")
call s:hi("SpecialKey", s:nord3_gui, "", s:nord3_term, "", "", "")
call s:hi("SpellBad", s:nord11_gui, s:nord0_gui, s:nord11_term, "NONE", "undercurl", s:nord11_gui)
@ -176,19 +148,14 @@ call s:hi("SpellLocal", s:nord5_gui, s:nord0_gui, s:nord5_term, "NONE", "undercu
call s:hi("SpellRare", s:nord6_gui, s:nord0_gui, s:nord6_term, "NONE", "undercurl", s:nord6_gui)
call s:hi("Visual", "", s:nord2_gui, "", s:nord1_term, "", "")
call s:hi("VisualNOS", "", s:nord2_gui, "", s:nord1_term, "", "")
"+- Neovim Support -+
call s:hi("healthError", s:nord11_gui, s:nord1_gui, s:nord11_term, s:nord1_term, "", "")
call s:hi("healthSuccess", s:nord14_gui, s:nord1_gui, s:nord14_term, s:nord1_term, "", "")
call s:hi("healthWarning", s:nord13_gui, s:nord1_gui, s:nord13_term, s:nord1_term, "", "")
call s:hi("TermCursorNC", "", s:nord1_gui, "", s:nord1_term, "", "")
"+- Vim 8 Terminal Colors -+
if has('terminal')
let g:terminal_ansi_colors = [s:nord1_gui, s:nord11_gui, s:nord14_gui, s:nord13_gui, s:nord9_gui, s:nord15_gui, s:nord8_gui, s:nord5_gui, s:nord3_gui, s:nord11_gui, s:nord14_gui, s:nord13_gui, s:nord9_gui, s:nord15_gui, s:nord7_gui, s:nord6_gui]
endif
"+- Neovim Terminal Colors -+
if has('nvim')
"+- Neovim Terminal Colors -+
let g:terminal_color_0 = s:nord1_gui
let g:terminal_color_1 = s:nord11_gui
let g:terminal_color_2 = s:nord14_gui
@ -205,16 +172,40 @@ if has('nvim')
let g:terminal_color_13 = s:nord15_gui
let g:terminal_color_14 = s:nord7_gui
let g:terminal_color_15 = s:nord6_gui
"+- Neovim Support -+
call s:hi("healthError", s:nord11_gui, s:nord1_gui, s:nord11_term, s:nord1_term, "", "")
call s:hi("healthSuccess", s:nord14_gui, s:nord1_gui, s:nord14_term, s:nord1_term, "", "")
call s:hi("healthWarning", s:nord13_gui, s:nord1_gui, s:nord13_term, s:nord1_term, "", "")
call s:hi("TermCursorNC", "", s:nord1_gui, "", s:nord1_term, "", "")
"+- Neovim Diagnostics API -+
call s:hi("DiagnosticWarn", s:nord13_gui, "", s:nord13_term, "", "", "")
call s:hi("DiagnosticError" , s:nord11_gui, "", s:nord11_term, "", "", "")
call s:hi("DiagnosticInfo" , s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("DiagnosticHint" , s:nord10_gui, "", s:nord10_term, "", "", "")
call s:hi("DiagnosticUnderlineWarn" , s:nord13_gui, "", s:nord13_term, "", "undercurl", "")
call s:hi("DiagnosticUnderlineError" , s:nord11_gui, "", s:nord11_term, "", "undercurl", "")
call s:hi("DiagnosticUnderlineInfo" , s:nord8_gui, "", s:nord8_term, "", "undercurl", "")
call s:hi("DiagnosticUnderlineHint" , s:nord10_gui, "", s:nord10_term, "", "undercurl", "")
"+- Neovim DocumentHighlight -+
call s:hi("LspReferenceText", "", s:nord3_gui, "", s:nord3_term, "", "")
call s:hi("LspReferenceRead", "", s:nord3_gui, "", s:nord3_term, "", "")
call s:hi("LspReferenceWrite", "", s:nord3_gui, "", s:nord3_term, "", "")
"+- Neovim LspSignatureHelp -+
call s:hi("LspSignatureActiveParameter", s:nord8_gui, "", s:nord8_term, "", s:underline, "")
endif
"+--- Gutter ---+
call s:hi("CursorColumn", "", s:nord1_gui, "NONE", s:nord1_term, "", "")
if g:nord_cursor_line_number_background == 0
call s:hi("CursorLineNr", s:nord4_gui, s:nord0_gui, "NONE", "", "", "")
call s:hi("CursorLineNr", s:nord4_gui, "", "NONE", "", "NONE", "")
else
call s:hi("CursorLineNr", s:nord4_gui, s:nord1_gui, "NONE", s:nord1_term, "", "")
call s:hi("CursorLineNr", s:nord4_gui, s:nord1_gui, "NONE", s:nord1_term, "NONE", "")
endif
call s:hi("Folded", s:nord3_gui, s:nord1_gui, s:nord3_term, s:nord1_term, "bold", "")
call s:hi("Folded", s:nord3_gui, s:nord1_gui, s:nord3_term, s:nord1_term, s:bold, "")
call s:hi("FoldColumn", s:nord3_gui, s:nord0_gui, s:nord3_term, "NONE", "", "")
call s:hi("SignColumn", s:nord1_gui, s:nord0_gui, s:nord1_term, "NONE", "", "")
@ -225,7 +216,7 @@ call s:hi("Directory", s:nord8_gui, "", s:nord8_term, "NONE", "", "")
call s:hi("EndOfBuffer", s:nord1_gui, "", s:nord1_term, "NONE", "", "")
call s:hi("ErrorMsg", s:nord4_gui, s:nord11_gui, "NONE", s:nord11_term, "", "")
call s:hi("ModeMsg", s:nord4_gui, "", "", "", "", "")
call s:hi("MoreMsg", s:nord4_gui, "", "", "", "", "")
call s:hi("MoreMsg", s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("Question", s:nord4_gui, "", "NONE", "", "", "")
if g:nord_uniform_status_lines == 0
call s:hi("StatusLine", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, "NONE", "")
@ -242,7 +233,7 @@ call s:hi("WarningMsg", s:nord0_gui, s:nord13_gui, s:nord1_term, s:nord13_term,
call s:hi("WildMenu", s:nord8_gui, s:nord1_gui, s:nord8_term, s:nord1_term, "", "")
"+--- Search ---+
call s:hi("IncSearch", s:nord1_gui, s:nord8_gui, s:nord1_term, s:nord8_term, s:underline, "")
call s:hi("IncSearch", s:nord6_gui, s:nord10_gui, s:nord6_term, s:nord10_term, s:underline, "")
call s:hi("Search", s:nord1_gui, s:nord8_gui, s:nord1_term, s:nord8_term, "NONE", "")
"+--- Tabs ---+
@ -265,8 +256,10 @@ endif
call s:hi("Boolean", s:nord9_gui, "", s:nord9_term, "", "", "")
call s:hi("Character", s:nord14_gui, "", s:nord14_term, "", "", "")
call s:hi("Comment", s:nord3_gui_bright, "", s:nord3_term, "", s:italicize_comments, "")
call s:hi("Conceal", "", "NONE", "", "NONE", "", "")
call s:hi("Conditional", s:nord9_gui, "", s:nord9_term, "", "", "")
call s:hi("Constant", s:nord4_gui, "", "NONE", "", "", "")
call s:hi("Decorator", s:nord12_gui, "", s:nord12_term, "", "", "")
call s:hi("Define", s:nord9_gui, "", s:nord9_term, "", "", "")
call s:hi("Delimiter", s:nord6_gui, "", s:nord6_term, "", "", "")
call s:hi("Exception", s:nord9_gui, "", s:nord9_term, "", "", "")
@ -291,8 +284,10 @@ call s:hi("Tag", s:nord4_gui, "", "", "", "", "")
call s:hi("Todo", s:nord13_gui, "NONE", s:nord13_term, "NONE", "", "")
call s:hi("Type", s:nord9_gui, "", s:nord9_term, "", "NONE", "")
call s:hi("Typedef", s:nord9_gui, "", s:nord9_term, "", "", "")
hi! link Annotation Decorator
hi! link Macro Define
hi! link PreCondit PreProc
hi! link Variable Identifier
"+-----------+
"+ Languages +
@ -319,7 +314,7 @@ hi! link asciidocQuotedUnconstrainedEmphasized asciidocQuotedEmphasized
hi! link asciidocURL markdownLinkText
call s:hi("awkCharClass", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("awkPatterns", s:nord9_gui, "", s:nord9_term, "", "bold", "")
call s:hi("awkPatterns", s:nord9_gui, "", s:nord9_term, "", s:bold, "")
hi! link awkArrayElement Identifier
hi! link awkBoolLogic Keyword
hi! link awkBrktRegExp SpecialChar
@ -338,6 +333,7 @@ hi! link awkVariables Identifier
call s:hi("cIncluded", s:nord7_gui, "", s:nord7_term, "", "", "")
hi! link cOperator Operator
hi! link cPreCondit PreCondit
hi! link cConstant Type
call s:hi("cmakeGeneratorExpression", s:nord10_gui, "", s:nord10_term, "", "", "")
@ -386,11 +382,19 @@ hi! link diffAdded DiffAdd
hi! link diffChanged DiffChange
hi! link diffRemoved DiffDelete
call s:hi("elixirModuleDeclaration", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("elixirAlias", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("elixirAtom", s:nord6_gui, "", s:nord6_term, "", s:bold, "")
call s:hi("gitconfigVariable", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("goBuiltins", s:nord7_gui, "", s:nord7_term, "", "", "")
hi! link goConstants Keyword
" fatih/vim-go
call s:hi("gomodVersion", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("gomodGoVersion", s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("helpBar", s:nord3_gui, "", s:nord3_term, "", "", "")
call s:hi("helpHyperTextJump", s:nord8_gui, "", s:nord8_term, "", s:underline, "")
@ -472,7 +476,7 @@ hi! link pythonBuiltin Type
hi! link pythonEscape SpecialChar
call s:hi("rubyConstant", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("rubySymbol", s:nord6_gui, "", s:nord6_term, "", "bold", "")
call s:hi("rubySymbol", s:nord6_gui, "", s:nord6_term, "", s:bold, "")
hi! link rubyAttribute Identifier
hi! link rubyBlockParameterList Operator
hi! link rubyInterpolationDelimiter Keyword
@ -482,10 +486,10 @@ hi! link rubyPseudoVariable Keyword
hi! link rubyRegexp SpecialChar
call s:hi("rustAttribute", s:nord10_gui, "", s:nord10_term, "", "", "")
call s:hi("rustEnum", s:nord7_gui, "", s:nord7_term, "", "bold", "")
call s:hi("rustMacro", s:nord8_gui, "", s:nord8_term, "", "bold", "")
call s:hi("rustEnum", s:nord7_gui, "", s:nord7_term, "", s:bold, "")
call s:hi("rustMacro", s:nord8_gui, "", s:nord8_term, "", s:bold, "")
call s:hi("rustModPath", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("rustPanic", s:nord9_gui, "", s:nord9_term, "", "bold", "")
call s:hi("rustPanic", s:nord9_gui, "", s:nord9_term, "", s:bold, "")
call s:hi("rustTrait", s:nord7_gui, "", s:nord7_term, "", s:italic, "")
hi! link rustCommentLineDoc Comment
hi! link rustDerive rustAttribute
@ -525,7 +529,7 @@ hi! link vimFunction Function
hi! link vimUserFunc Function
call s:hi("xmlAttrib", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("xmlCdataStart", s:nord3_gui_bright, "", s:nord3_term, "", "bold", "")
call s:hi("xmlCdataStart", s:nord3_gui_bright, "", s:nord3_term, "", s:bold, "")
call s:hi("xmlNamespace", s:nord7_gui, "", s:nord7_term, "", "", "")
hi! link xmlAttribPunct Delimiter
hi! link xmlCdata Comment
@ -550,6 +554,35 @@ call s:hi("ALEErrorSign" , s:nord11_gui, "", s:nord11_term, "", "", "")
call s:hi("ALEWarning" , s:nord13_gui, "", s:nord13_term, "", "undercurl", "")
call s:hi("ALEError" , s:nord11_gui, "", s:nord11_term, "", "undercurl", "")
" Coc
" > neoclide/coc.vim
call s:hi("CocWarningHighlight" , s:nord13_gui, "", s:nord13_term, "", "undercurl", "")
call s:hi("CocErrorHighlight" , s:nord11_gui, "", s:nord11_term, "", "undercurl", "")
call s:hi("CocWarningSign", s:nord13_gui, "", s:nord13_term, "", "", "")
call s:hi("CocErrorSign" , s:nord11_gui, "", s:nord11_term, "", "", "")
call s:hi("CocInfoSign" , s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("CocHintSign" , s:nord10_gui, "", s:nord10_term, "", "", "")
if has('nvim')
" Neovim LSP
" > neovim/nvim-lspconfig
call s:hi("LspCodeLens", s:nord3_gui_bright, "", s:nord3_term, "", "", "")
if has("nvim-0.5")
call s:hi("LspDiagnosticsDefaultWarning", s:nord13_gui, "", s:nord13_term, "", "", "")
call s:hi("LspDiagnosticsDefaultError" , s:nord11_gui, "", s:nord11_term, "", "", "")
call s:hi("LspDiagnosticsDefaultInformation" , s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("LspDiagnosticsDefaultHint" , s:nord10_gui, "", s:nord10_term, "", "", "")
call s:hi("LspDiagnosticsUnderlineWarning" , s:nord13_gui, "", s:nord13_term, "", "undercurl", "")
call s:hi("LspDiagnosticsUnderlineError" , s:nord11_gui, "", s:nord11_term, "", "undercurl", "")
call s:hi("LspDiagnosticsUnderlineInformation" , s:nord8_gui, "", s:nord8_term, "", "undercurl", "")
call s:hi("LspDiagnosticsUnderlineHint" , s:nord10_gui, "", s:nord10_term, "", "undercurl", "")
endif
" Gitsigns
" > lewis6991/gitsigns.nvim
hi! link GitSignsCurrentLineBlame Comment
endif
" GitGutter
" > airblade/vim-gitgutter
call s:hi("GitGutterAdd", s:nord14_gui, "", s:nord14_term, "", "", "")
@ -564,6 +597,10 @@ call s:hi("SignifySignChange", s:nord13_gui, "", s:nord13_term, "", "", "")
call s:hi("SignifySignChangeDelete", s:nord11_gui, "", s:nord11_term, "", "", "")
call s:hi("SignifySignDelete", s:nord11_gui, "", s:nord11_term, "", "", "")
" Sneak
" > justinmk/vim-sneak
hi! link Sneak Search
" fugitive.vim
" > tpope/vim-fugitive
call s:hi("gitcommitDiscardedFile", s:nord11_gui, "", s:nord11_term, "", "", "")
@ -572,7 +609,7 @@ call s:hi("gitcommitSelectedFile", s:nord14_gui, "", s:nord14_term, "", "", "")
" davidhalter/jedi-vim
call s:hi("jediFunction", s:nord4_gui, s:nord3_gui, "", s:nord3_term, "", "")
call s:hi("jediFat", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, s:underline."bold", "")
call s:hi("jediFat", s:nord8_gui, s:nord3_gui, s:nord8_term, s:nord3_term, s:underline.s:bold, "")
" NERDTree
" > scrooloose/nerdtree
@ -585,6 +622,39 @@ hi! link NERDTreeHelp Comment
hi! link CtrlPMatch Keyword
hi! link CtrlPBufferHid Normal
" vim-clap
" > liuchengxu/vim-clap
call s:hi("ClapDir", s:nord4_gui, "", "", "", "", "")
call s:hi("ClapDisplay", s:nord4_gui, s:nord1_gui, "", s:nord1_term, "", "")
call s:hi("ClapFile", s:nord4_gui, "", "", "NONE", "", "")
call s:hi("ClapMatches", s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("ClapNoMatchesFound", s:nord13_gui, "", s:nord13_term, "", "", "")
call s:hi("ClapSelected", s:nord7_gui, "", s:nord7_term, "", s:bold, "")
call s:hi("ClapSelectedSign", s:nord9_gui, "", s:nord9_term, "", "", "")
let s:clap_matches = [
\ [s:nord8_gui, s:nord8_term] ,
\ [s:nord9_gui, s:nord9_term] ,
\ [s:nord10_gui, s:nord10_term] ,
\ ]
for s:nord_clap_match_i in range(1,12)
let clap_match_color = s:clap_matches[s:nord_clap_match_i % len(s:clap_matches) - 1]
call s:hi("ClapMatches" . s:nord_clap_match_i, clap_match_color[0], "", clap_match_color[1], "", "", "")
call s:hi("ClapFuzzyMatches" . s:nord_clap_match_i, clap_match_color[0], "", clap_match_color[1], "", "", "")
endfor
unlet s:nord_clap_match_i
hi! link ClapCurrentSelection PmenuSel
hi! link ClapCurrentSelectionSign ClapSelectedSign
hi! link ClapInput Pmenu
hi! link ClapPreview Pmenu
hi! link ClapProviderAbout ClapDisplay
hi! link ClapProviderColon Type
hi! link ClapProviderId Type
" vim-indent-guides
" > nathanaelkane/vim-indent-guides
call s:hi("IndentGuidesEven", "", s:nord1_gui, "", s:nord1_term, "", "")
call s:hi("IndentGuidesOdd", "", s:nord2_gui, "", s:nord3_term, "", "")
" vim-plug
" > junegunn/vim-plug
call s:hi("plugDeleted", s:nord11_gui, "", "", s:nord11_term, "", "")
@ -593,6 +663,17 @@ call s:hi("plugDeleted", s:nord11_gui, "", "", s:nord11_term, "", "")
" > kshenoy/vim-signature
call s:hi("SignatureMarkText", s:nord8_gui, "", s:nord8_term, "", "", "")
" vim-startify
" > mhinz/vim-startify
call s:hi("StartifyFile", s:nord6_gui, "", s:nord6_term, "", "", "")
call s:hi("StartifyFooter", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("StartifyHeader", s:nord8_gui, "", s:nord8_term, "", "", "")
call s:hi("StartifyNumber", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("StartifyPath", s:nord8_gui, "", s:nord8_term, "", "", "")
hi! link StartifyBracket Delimiter
hi! link StartifySlash Normal
hi! link StartifySpecial Comment
"+--- Languages ---+
" Haskell
" > neovimhaskell/haskell-vim
@ -611,6 +692,90 @@ hi! link jsNoise Delimiter
hi! link jsPrototype Keyword
hi! link jsRegexpString SpecialChar
" Pandoc
" > vim-pandoc/vim-pandoc-syntax
call s:hi("pandocDefinitionBlockTerm", s:nord7_gui, "", s:nord7_term, "", s:italic, "")
call s:hi("pandocTableDelims", s:nord3_gui, "", s:nord3_term, "", "", "")
hi! link pandocAtxHeader markdownH1
hi! link pandocBlockQuote markdownBlockquote
hi! link pandocCiteAnchor Operator
hi! link pandocCiteKey pandocReferenceLabel
hi! link pandocDefinitionBlockMark Operator
hi! link pandocEmphasis markdownItalic
hi! link pandocFootnoteID pandocReferenceLabel
hi! link pandocFootnoteIDHead markdownLinkDelimiter
hi! link pandocFootnoteIDTail pandocFootnoteIDHead
hi! link pandocGridTableDelims pandocTableDelims
hi! link pandocGridTableHeader pandocTableDelims
hi! link pandocOperator Operator
hi! link pandocPipeTableDelims pandocTableDelims
hi! link pandocReferenceDefinition pandocReferenceLabel
hi! link pandocReferenceLabel markdownLinkText
hi! link pandocReferenceURL markdownUrl
hi! link pandocSimpleTableHeader pandocAtxHeader
hi! link pandocStrong markdownBold
hi! link pandocTableHeaderWord pandocAtxHeader
hi! link pandocUListItemBullet Operator
if has('nvim')
" tree-sitter
" > nvim-treesitter/nvim-treesitter
hi! link TSAnnotation Annotation
hi! link TSConstBuiltin Constant
hi! link TSConstructor Function
hi! link TSEmphasis Italic
hi! link TSFuncBuiltin Function
hi! link TSFuncMacro Function
hi! link TSStringRegex SpecialChar
hi! link TSStrong Bold
hi! link TSStructure Structure
hi! link TSTagDelimiter TSTag
hi! link TSUnderline Underline
hi! link TSVariable Variable
hi! link TSVariableBuiltin Keyword
endif
" TypeScript
" > HerringtonDarkholme/yats.vim
call s:hi("typescriptBOMWindowMethod", s:nord8_gui, "", s:nord8_term, "", s:italic, "")
call s:hi("typescriptClassName", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("typescriptDecorator", s:nord12_gui, "", s:nord12_term, "", "", "")
call s:hi("typescriptInterfaceName", s:nord7_gui, "", s:nord7_term, "", s:bold, "")
call s:hi("typescriptRegexpString", s:nord13_gui, "", s:nord13_term, "", "", "")
" TypeScript JSX
call s:hi("tsxAttrib", s:nord7_gui, "", s:nord7_term, "", "", "")
hi! link typescriptOperator Operator
hi! link typescriptBinaryOp Operator
hi! link typescriptAssign Operator
hi! link typescriptMember Identifier
hi! link typescriptDOMStorageMethod Identifier
hi! link typescriptArrowFuncArg Identifier
hi! link typescriptGlobal typescriptClassName
hi! link typescriptBOMWindowProp Function
hi! link typescriptArrowFuncDef Function
hi! link typescriptAliasDeclaration Function
hi! link typescriptPredefinedType Type
hi! link typescriptTypeReference typescriptClassName
hi! link typescriptTypeAnnotation Structure
hi! link typescriptDocNamedParamType SpecialComment
hi! link typescriptDocNotation Keyword
hi! link typescriptDocTags Keyword
hi! link typescriptImport Keyword
hi! link typescriptExport Keyword
hi! link typescriptTry Keyword
hi! link typescriptVariable Keyword
hi! link typescriptBraces Normal
hi! link typescriptObjectLabel Normal
hi! link typescriptCall Normal
hi! link typescriptClassHeritage typescriptClassName
hi! link typescriptFuncTypeArrow Structure
hi! link typescriptMemberOptionality Structure
hi! link typescriptNodeGlobal typescriptGlobal
hi! link typescriptTypeBrackets Structure
hi! link tsxEqual Operator
hi! link tsxIntrinsicTagName htmlTag
hi! link tsxTagName tsxIntrinsicTagName
" Markdown
" > plasticboy/vim-markdown
call s:hi("mkdCode", s:nord7_gui, "", s:nord7_term, "", "", "")
@ -635,20 +800,28 @@ hi! link mkdLinkDefTarget mkdURL
hi! link mkdLinkTitle mkdInlineURL
hi! link mkdDelimiter Keyword
" PHP
" > StanAngeloff/php.vim
call s:hi("phpClass", s:nord7_gui, "", s:nord7_term, "", "", "")
call s:hi("phpClassImplements", s:nord7_gui, "", s:nord7_term, "", s:bold, "")
hi! link phpClassExtends phpClass
hi! link phpFunction Function
hi! link phpMethod Function
hi! link phpUseClass phpClass
" Vimwiki
" > vimwiki/vimwiki
if !exists("g:vimwiki_hl_headers") || g:vimwiki_hl_headers == 0
for s:i in range(1,6)
call s:hi("VimwikiHeader".s:i, s:nord8_gui, "", s:nord8_term, "", "bold", "")
call s:hi("VimwikiHeader".s:i, s:nord8_gui, "", s:nord8_term, "", s:bold, "")
endfor
else
let s:vimwiki_hcolor_guifg = [s:nord7_gui, s:nord8_gui, s:nord9_gui, s:nord10_gui, s:nord14_gui, s:nord15_gui]
let s:vimwiki_hcolor_ctermfg = [s:nord7_term, s:nord8_term, s:nord9_term, s:nord10_term, s:nord14_term, s:nord15_term]
for s:i in range(1,6)
call s:hi("VimwikiHeader".s:i, s:vimwiki_hcolor_guifg[s:i-1] , "", s:vimwiki_hcolor_ctermfg[s:i-1], "", "bold", "")
call s:hi("VimwikiHeader".s:i, s:vimwiki_hcolor_guifg[s:i-1] , "", s:vimwiki_hcolor_ctermfg[s:i-1], "", s:bold, "")
endfor
endif
call s:hi("VimwikiLink", s:nord8_gui, "", s:nord8_term, "", s:underline, "")
hi! link VimwikiHeaderChar markdownHeadingDelimiter
hi! link VimwikiHR Keyword
@ -657,3 +830,17 @@ hi! link VimwikiList markdownListMarker
" YAML
" > stephpy/vim-yaml
call s:hi("yamlKey", s:nord7_gui, "", s:nord7_term, "", "", "")
"+------------+
"+ Public API +
"+------------+
"+--- Functions ---+
function! NordPalette() abort
let ret = {}
for color in range(16)
execute 'let ret["nord'.color.'"] = s:nord'.color.'_gui'
endfor
let ret["nord3_bright"] = s:nord3_gui_bright
return ret
endfunction

View file

@ -1,7 +1,6 @@
MIT License (MIT)
Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com> (https://www.arcticicestudio.com)
Copyright (C) 2016-present Sven Greb <development@svengreb.de> (https://www.svengreb.de)
Copyright (c) 2016-present Sven Greb <development@svengreb.de> (https://www.svengreb.de)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

15
lint-staged.config.js Normal file
View file

@ -0,0 +1,15 @@
/*
* Copyright (c) 2016-present Sven Greb <development@svengreb.de>
* This source code is licensed under the MIT license found in the license file.
*/
/**
* Configurations for lint-staged.
* @see https://github.com/okonet/lint-staged#configuration
*/
module.exports = {
"*.json": "prettier --check --ignore-unknown --no-editorconfig",
"*.{js,mjs}": ["eslint", "prettier --check --ignore-unknown --no-editorconfig"],
"*.md": ["remark --no-stdout", "prettier --check --ignore-unknown --no-editorconfig"],
".husky/pre-*": "prettier --check --ignore-unknown --no-editorconfig",
};

7354
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

51
package.json Normal file
View file

@ -0,0 +1,51 @@
{
"name": "@nordtheme/vim",
"version": "0.19.0",
"description": "An arctic, north-bluish clean and elegant Vim theme",
"author": {
"name": "Sven Greb",
"email": "development@svengreb.de",
"url": "https://www.svengreb.de"
},
"homepage": "https://www.nordtheme.com/ports/vim",
"repository": {
"type": "git",
"url": "git+https://github.com/nordtheme/vim.git"
},
"bugs": {
"url": "https://github.com/nordtheme/vim/issues"
},
"license": "MIT",
"private": true,
"engines": {
"node": ">=15.13",
"npm": ">=7.7"
},
"scripts": {
"format": "run-s format:*",
"format:js": "eslint --fix .",
"format:pretty": "prettier --ignore-unknown --no-editorconfig --write \"**\"",
"lint": "run-s lint:js lint:md lint:pretty",
"lint:ci": "run-s --continue-on-error lint:js lint:md lint:ci:pretty",
"lint:ci:pretty": "prettier --check --ignore-unknown --loglevel silent --no-editorconfig --no-error-on-unmatched-pattern \"**\"",
"lint:js": "eslint .",
"lint:md": "remark --no-stdout . .github/",
"lint:pretty": "prettier --check --ignore-unknown --no-editorconfig \"**\"",
"prepare:husky": "husky install",
"prepare": "run-s prepare:*"
},
"devDependencies": {
"@svengreb/eslint-config-base": ">=0.12.0 <=1.0.0",
"@svengreb/remark-preset-lint": ">=0.5.0 <1.0.0",
"eslint": "8.39.0",
"eslint-config-prettier": "8.8.0",
"eslint-plugin-import": "2.27.5",
"eslint-plugin-prettier": "4.2.1",
"husky": "8.0.3",
"lint-staged": "13.2.2",
"npm-run-all": "4.1.5",
"prettier": "2.8.8",
"prettier-plugin-sh": "0.12.8",
"remark-cli": "11.0.0"
}
}

24
prettier.config.js Normal file
View file

@ -0,0 +1,24 @@
/*
* Copyright (c) 2016-present Sven Greb <development@svengreb.de>
* This source code is licensed under the MIT license found in the license file.
*/
/**
* Configurations for Prettier.
* @see https://prettier.io/docs/en/configuration.html
* @see https://prettier.io/docs/en/options.html
* @see https://prettier.io/docs/en/options.html#parser
* @see https://prettier.io/docs/en/plugins.html
* @see https://github.com/un-ts/prettier/tree/master/packages/sh
*/
module.exports = {
printWidth: 160,
overrides: [
{
files: [".husky/*"],
options: {
parser: "sh",
},
},
],
};

152
readme.md Normal file
View file

@ -0,0 +1,152 @@
<p align="center">
<a href="https://www.nordtheme.com/ports/vim" target="_blank">
<picture>
<source srcset="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/repository-hero.svg?sanitize=true" width="100%" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" />
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/repository-hero.svg?sanitize=true" width="100%" />
</picture>
</a>
</p>
<p align="center">
<a href="https://github.com/nordtheme/vim/releases/latest" target="_blank">
<img src="https://img.shields.io/github/release/nordtheme/vim.svg?style=flat-square&label=Release&logo=github&logoColor=eceff4&colorA=4c566a&colorB=88c0d0"/>
</a>
<a href="https://www.nordtheme.com/docs/ports/vim" target="_blank">
<img src="https://img.shields.io/github/release/nordtheme/vim.svg?style=flat-square&label=Docs&colorA=4c566a&colorB=88c0d0&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI%2BCiAgICA8cGF0aCBmaWxsPSIjZDhkZWU5IiBkPSJNMTMuNzQ2IDIuODEzYS42Ny42NyAwIDAgMC0uNTU5LS4xMzNMOCAzLjg0OGwtNS4xODgtMS4xOGEuNjY5LjY2OSAwIDAgMC0uNTcuMTMzLjY3Ny42NzcgMCAwIDAtLjI0Mi41MzF2OC4xMzNjLS4wMDguMzIuMjEuNTk4LjUyLjY2OGw1LjMzMiAxLjE5OWguMjk2bDUuMzMyLTEuMmEuNjY4LjY2OCAwIDAgMCAuNTItLjY2N1YzLjMzMmEuNjU5LjY1OSAwIDAgMC0uMjU0LS41MnpNMy4zMzIgNC4xNjhsNCAuODk4djYuNzY2bC00LS44OTh6bTkuMzM2IDYuNzY2bC00IC44OThWNS4wNjZsNC0uODk4em0wIDAiLz4KPC9zdmc%2BCg%3D%3D"/>
</a>
<a href="https://github.com/nordtheme/vim/blob/main/changelog.md#050" target="_blank">
<img src="https://img.shields.io/github/release/nordtheme/vim.svg?style=flat-square&label=Changelog&logo=github&logoColor=eceff4&colorA=4c566a&colorB=88c0d0"/>
</a>
</p>
<p align="center">
<a href="https://github.com/svengreb/styleguide-javascript/releases/latest" target="_blank">
<img src="https://img.shields.io/github/release/svengreb/styleguide-javascript.svg?style=flat-square&label=JavaScript%20Style%20Guide&logoColor=eceff4&colorA=4c566a&colorB=88c0d0&logo=javascript"/>
</a>
<a href="https://github.com/svengreb/styleguide-markdown/releases/latest" target="_blank">
<img src="https://img.shields.io/github/release/svengreb/styleguide-markdown.svg?style=flat-square&label=Markdown%20Style%20Guide&colorA=4c566a&colorB=88c0d0&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzOSIgaGVpZ2h0PSIzOSIgdmlld0JveD0iMCAwIDM5IDM5Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNEOERFRTkiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBkPSJNMS41IDEuNWgzNnYzNmgtMzZ6Ii8%2BPHBhdGggZmlsbD0iI0Q4REVFOSIgZD0iTTIwLjY4MyAyNS42NTVsNS44NzItMTMuNDhoLjU2Nmw1Ljg3MyAxMy40OGgtMS45OTZsLTQuMTU5LTEwLjA1Ni00LjE2MSAxMC4wNTZoLTEuOTk1em0tMi42OTYgMGwtMTMuNDgtNS44NzJ2LS41NjZsMTMuNDgtNS44NzJ2MS45OTVMNy45MzEgMTkuNWwxMC4wNTYgNC4xNnoiLz48L3N2Zz4%3D"/>
</a>
<a href="https://github.com/svengreb/styleguide-git/releases/latest" target="_blank">
<img src="https://img.shields.io/github/release/svengreb/styleguide-git.svg?style=flat-square&label=Git%20Style%20Guide&logoColor=eceff4&colorA=4c566a&colorB=88c0d0&logo=git"/>
</a>
</p>
<p align="center">An arctic, north-bluish clean and elegant <a href="https://www.vim.org">Vim</a> color theme.</p>
<p align="center">Designed for a fluent and clear workflow based on the <a href="https://www.nordtheme.com">Nord</a> color palette.</p>
<p align="center">
<a href="https://www.nordtheme.com/ports/vim" target="_blank">
<picture>
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/overview-go.png"/>
</picture>
</a>
</p>
Build for Vim's terminal- and GUI mode with _true colors_ with support for many third-party syntax and UI plugins including bundled themes for [lightline.vim][1] and [vim-airline][4].
## Getting Started
Visit the [official website][23] to learn all about the [syntax highlighting][27] features, details and elements of [UI and editor elements][25], the [various theme configurations][24] and the [support for many plugins][26].
Learn about the [installation and activation][20], how to [configure][18] and [customize][19] the theme from the [official documentations][22].
### Quick Start
Thanks to existing plugin/_runtimepath_ managers for Vim, Nord Vim can be installed for all platforms and the various variants/forks of Vim in a uniform way within a few lines of codes. The recommended manager is [vim-plug][2], but any other manager like [pathogen][3] or [Vundle][3] can also be used.
To automatically download and activate Nord Vim, follow the install instructions for [vim-plug][2] and
1. add `Plug 'nordtheme/vim'` to your [`vimrc`][28] within _vim-plug_'s plugin loading function
2. run the `:PlugInstall` command in Vim
3. activate the theme by adding `colorscheme nord` to the [vimrc][28] or change it on-the-fly by running `:colorscheme nord`
<p align="center">
<picture>
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/installation-vim-plug.png"/>
</picture>
</p>
See the Nord Vim's documentation for [more installation options][20] and how to [set it up manually][21].
## Features
<p align="center">
<strong>A unified UI and editor syntax element design provides a clutter-free and fluidly merging appearance.</strong><br />
<picture>
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/overview-go-nerdtree.png"/>
</picture>
</p>
<p align="center">
<strong>Small details with unobtrusive styles for popular and common code editor features like search result marker and brace matching — designed to get out of your way with a visually attractive appearance.</strong><br />
<picture>
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/editor-search-highlighting.png"/>
</picture>
</p>
<p align="center">
<strong>Support for a wide range of programming languages — from bundled plugins up to many popular syntax and UI third-party plugins.</strong><br />
<picture>
<img src="https://raw.githubusercontent.com/nordtheme/web/main/assets/images/ports/vim/syntax-javascript-react-hook.png"/>
</picture>
</p>
## Contributing
Nord is an open source project and we love to receive contributions from the [community][6]!
There are many ways to contribute, from [writing- and improving documentation and tutorials][9], [reporting bugs][8], [submitting enhancement suggestions][10] that can be added to Nord by [submitting pull requests][14].
Please take a moment to read Nord's full [contributing guide][17] to learn about the development process, the project's used [styleguides][15], [branch organization][7] and [versioning][16] model.
The guide also includes information about [minimal, complete, and verifiable examples][13] and other ways to contribute to the project like [improving existing issues][12] and [giving feedback on issues and pull requests][11].
<p align="center">
<picture>
<source srcset="https://raw.githubusercontent.com/nordtheme/assets/main/static/images/elements/separators/iceberg/footer/dark/spaced.svg?sanitize=true" width="100%" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" />
<source srcset="https://raw.githubusercontent.com/nordtheme/assets/main/static/images/elements/separators/iceberg/footer/light/spaced.svg?sanitize=true" width="100%" media="(prefers-color-scheme: dark)" />
<img src="https://raw.githubusercontent.com/nordtheme/assets/main/static/images/elements/separators/iceberg/footer/dark/spaced.svg?sanitize=true" width="100%" />
</picture>
</p>
<p align="center">
Copyright &copy; 2016-present <a href="https://www.svengreb.de" target="_blank">Sven Greb</a>
</p>
<p align="center">
<a href="https://github.com/nordtheme/vim/blob/main/license" target="_blank">
<img src="https://img.shields.io/static/v1.svg?style=flat-square&label=License&message=MIT&logoColor=eceff4&colorA=4c566a&colorB=88c0d0"/>
</a>
<a href="https://www.svengreb.de">
<img src="https://img.shields.io/static/v1.svg?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAABMklEQVQ4jcWQvUoDQRRGz52s5IfVIiDWPkGKFFaCIVaGdIagjcFAwICFb7DvIK6QQlNpY2UQLMQVBbEQ0SewFkGbKCQmOzaTJay7/lR+zTAf9xwuF/47Mv45rdezqWEq72v/RWZnHgqOMwDwHMfSj085JSqb6Pu38we7r18E3nqzhmYbsE11rxKsAvhDfQiSM30XYbOw57YDwfnaRl6U3ABWaMNn806H+oGPzBX3d+4UgChZiYBHYBgGsBLoKoAyhR0x9G20Zmpc4P1ZoMQDcwMNclFrdhBKv6M5WWi7ZQGtjEUn35IV4OwnVjSX/WGmKqCDDUa5rmyle3bvGFiMg3WGUsF1u0EXHoqTRMGRgkAy2eugKZrqijRLYThWANBpNDL2h3UE0J0YLJdbrfe42f/NJ0wqY7/KcXKPAAAAAElFTkSuQmCC&label=lovely%20crafted%20in&message=Germany&colorA=4c566a&colorB=88c0d0"/>
</a>
</p>
[1]: https://github.com/itchyny/lightline.vim
[2]: https://github.com/junegunn/vim-plug
[3]: https://github.com/tpope/vim-pathogen
[4]: https://github.com/vim-airline/vim-airline
[6]: https://www.nordtheme.com/community
[7]: https://github.com/nordtheme/.github/blob/main/contributing.md#branch-organization
[8]: https://github.com/nordtheme/.github/blob/main/contributing.md#bug-reports
[9]: https://github.com/nordtheme/.github/blob/main/contributing.md#documentations
[10]: https://github.com/nordtheme/.github/blob/main/contributing.md#enhancement-suggestions
[11]: https://github.com/nordtheme/.github/blob/main/contributing.md#feedback
[12]: https://github.com/nordtheme/.github/blob/main/contributing.md#improve-issues
[13]: https://github.com/nordtheme/.github/blob/main/contributing.md#mcve
[14]: https://github.com/nordtheme/.github/blob/main/contributing.md#pull-requests
[15]: https://github.com/nordtheme/.github/blob/main/contributing.md#style-guides
[16]: https://github.com/nordtheme/.github/blob/main/contributing.md#versioning
[17]: https://github.com/nordtheme/.github/blob/main/contributing.md
[18]: https://www.nordtheme.com/docs/ports/vim/configuration
[19]: https://www.nordtheme.com/docs/ports/vim/customization
[20]: https://www.nordtheme.com/docs/ports/vim/installation
[21]: https://www.nordtheme.com/docs/ports/vim/installation#manual
[22]: https://www.nordtheme.com/docs/ports/vim
[23]: https://www.nordtheme.com/ports/vim
[24]: https://www.nordtheme.com/ports/vim#configurations
[25]: https://www.nordtheme.com/ports/vim#editor-details
[26]: https://www.nordtheme.com/ports/vim#plugin-support
[27]: https://www.nordtheme.com/ports/vim#syntax
[28]: https://vimhelp.org/starting.txt.html#vimrc