Configuration

From UI elements to syntax highlighting up to font rendering — configure the theme to match your personal preferences

This is a living document which means it is work in progress, not completed yet and can change at any time while the project is still in development major version zero 0.y.z!

Nord Vim is designed to provide a good UX out-of-the-box, but there is a reason why principles like themes exist a all: Everyone has different preferences and that's a good thing!

To ensure Nord Vim fit your needs it comes with configurations for UI elements, the code syntax highlighting and font rendering to make the theme as flexible as possible while still providing sane defaults.

All theme configuration variables must be added to either Vim's user-level or system-wide configuration file(s) that are referred to as vimrc in this documentation. The location of of the files and more details can be found in Vim's official vimrc documentation.

UI Elements

Active Cursor Line Number Background

By default, the background of line numbers for the currently active cursor line are not styled especially.

Screenshot showing a minimal vimrc with installed and activated Nord color scheme
Default line number background style for the active cursor line.

This can be changed by to use the same background color highlighting like the background of the active cursor line by enabling the theme configuration variable nord_cursor_line_number_background:

let g:nord_cursor_line_number_background = 1
Screenshot showing the style of line numbers with enabled background highlighting for active cursor line.
Line number style with enabled background highlighting for active cursor line.

Uniform Status Lines

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.

Screenshot showing the default style of activate- and inactive status lines
Default style of activate- and inactive status lines.

To use a uniform style for activate- and inactive status lines with nord3 as background the nord_uniform_status_lines configuration variable can be set:

let g:nord_uniform_status_lines = 1
Screenshot showing the activate- and inactive status lines with uniform style
Activate- and inactive status lines with uniform style.

Bold Vertical Split Lines

To provide a lightweight and uncluttered overall appearance for split views the vertical split lines, only the separator characters are styled while the background color is equal to the theme's base background.

Screenshot showing the default style of vertical split lines
Default style of vertical split lines.

To use also highlight the background of separators, making them appear more bold, the nord_bold_vertical_split_line theme configuration variable can be set:

let g:nord_bold_vertical_split_line = 1
Screenshot showing vertical split lines with a bolder style
Vertical split lines with a bolder style.

To also change the separator character used to display the vertical line please see the documentation about Vim's fillchars variable (:help fillchars).

Syntax Highlighting

Uniform diff Background

By default, Nord Vim uses colorful backgrounds for Vim's diff mode (vimdiff, vim -d) which is a common pattern to clearly highlight the elements through colors that convey the meaning of each change.

Screenshot showing Vim's side-by-side diff view with default highlighting styles
Default highlighting styles for Vim's side-by-side diff view.

To use a uniform background highlighting where the foreground color is used to mark the changes instead, the nord_uniform_diff_background theme configuration variable can be set:

let g:nord_uniform_diff_background = 1
Screenshot showing Vim's side-by-side diff view with enabled uniform background highlighting
Vim's side-by-side diff view with enabled uniform background highlighting.

Font Rendering

Bold Style

Next to color highlighting Nord Vim makes use of bold font styles for various syntax elements to make them stand out more as well as better representing their syntactic meaning.

The theme includes bold font styles for specific syntax elements. To disable bold font styles, set the nord_bold theme configuration variable:

let g:nord_bold = 0
Screenshot showing the Markdown code syntax with bold font style rendering
Markdown code syntax with bold font style rendering.

If you encounter font rendering problems with bold styles, please ensure the used terminal is capable of rendering such special font styles or disable Nord Vim's bold font rendering like described above.

Italic Style

In terminal mode Nord Vim doesn't make use of italic font styles in order to prevent unexpected styles and color highlighting. This design decision is based on the known problems of most terminals related to special font styles like italic.

The theme includes italic font styles for specific syntax elements, but requires to set the nord_italic theme configuration variable:

let g:nord_italic = 1
Screenshot showing the Markdown code syntax with italic font style rendering
Markdown code syntax with italic font style rendering.

Please ensure the used terminal is capable of rendering italic font styles before activating this configuration!

Italic Comments

For uncluttered and clearly readable comments, Nord Vim uses normal font styles for comments, but it is a common design pattern for syntax themes to use italic font styles instead.

Screenshot showing a Go function with documentation comments and default rendering styles
Go function with documentation comments and default rendering styles.

To enable italic comment for Nord Vim the nord_italic_comments theme configuration variable can be set:

let g:nord_italic_comments = 1
Screenshot showing a Go function with documentation comments and default enabled italic font rendering styles
Go function with documentation comments and enabled italic font rendering styles.

Underline Style

In terminal mode Nord Vim doesn't make use of underline font styles in order to prevent unexpected styles and color highlighting. This design decision is based on the known problems of most terminals related to special font styles like underline.

The theme includes <underline font styles for specific syntax elements, but requires to set the nord_underline theme configuration variable:

let g:nord_underline = 1
Screenshot showing the Markdown code syntax with underline font style rendering
Markdown code syntax with underline font style rendering.

Please ensure the used terminal is capable of rendering underline font styles before activating this configuration!