Nord.nvim is meant to be a modern colorscheme written in lua for NeoVim that supports a lot of the new features added to NeoVim like built-in LSP and TreeSitter
Supported plugins:
Ability to change background on sidebar-like windows like Nvim-Tree, Packer, terminal etc.
Install via your favourite package manager:
" If you are using Vim-Plug
Plug 'shaunsingh/nord.nvim'
-- If you are using Packer
use 'shaunsingh/nord.nvim'
Enable the colorscheme:
"Vim-Script:
colorscheme nord
--Lua:
vim.cmd[[colorscheme nord]]
To enable the nord
theme for Lualine
, simply specify it in your lualine settings:
require('lualine').setup {
options = {
-- ... your lualine config
theme = 'nord'
-- ... your lualine config
}
}
Option | Default | Description |
---|---|---|
nord_contrast | false |
Make sidebars and popup menus like nvim-tree and telescope have a different background |
nord_borders | false |
Enable the border between verticaly split windows visable |
nord_disable_background | false |
Disable the setting of background color so that NeoVim can use your terminal background |
nord_cursorline_transparent | false |
Set the cursorline transparent/visible |
nord_enable_sidebar_background | false |
Re-enables the background of the sidebar if you disabled the background of everything |
nord_italic | true |
enables/disables italics |
nord_uniform_diff_background | false |
enables/disables colorful backgrounds when used in diff mode |
nord_bold | true |
enables/disables bold |
-- Example config in lua
vim.g.nord_contrast = true
vim.g.nord_borders = false
vim.g.nord_disable_background = false
vim.g.nord_italic = false
vim.g.nord_uniform_diff_background = true
vim.g.nord_bold = false
-- Load the colorscheme
require('nord').set()
" Example config in Vim-Script
let g:nord_contrast = v:true
let g:nord_borders = v:false
let g:nord_disable_background = v:false
let g:nord_italic = v:false
let g:nord_uniform_diff_background = v:true
let g:nord_bold = v:false
" Load the colorscheme
colorscheme nord
To support headlines, you should add these code to your settings:
require("headlines").setup({
markdown = {
headline_highlights = {
"Headline1",
"Headline2",
"Headline3",
"Headline4",
"Headline5",
"Headline6",
},
codeblock_highlight = "CodeBlock",
dash_highlight = "Dash",
quote_highlight = "Quote",
},
})
It should look like this
To support BufferLine, you can add these code to your settings:
local highlights = require("nord").bufferline.highlights({
italic = true,
bold = true,
})
require("bufferline").setup({
options = {
separator_style = "thin",
},
highlights = highlights,
})
It should look like this
or you want to use slant separator
local highlights = require("nord").bufferline.highlights({
italic = true,
bold = true,
fill = "#181c24"
})
require("bufferline").setup({
options = {
separator_style = "slant",
},
highlights = highlights,
})
The default setting of bufferline highlights is
{
fill = colors.nord0_gui,
indicator = colors.nord9_gui,
bg = colors.nord0_gui,
buffer_bg = colors.nord0_gui,
buffer_bg_selected = colors.nord1_gui,
buffer_bg_visible = "#2A2F3A",
bold = true,
italic = true,
}