Skip to content

slavafyi/kintsugi.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kintsugi for Neovim

A Neovim colorscheme port of the beautiful VS Code Kintsugi theme by Ahmed Hatem.

This project keeps the slim, direct-highlight architecture of papercolor-theme-slim: no Lua module, no runtime color builder, and no abstraction inside the colorscheme files. The theme is written in Vimscript because colors/*.vim is Neovim's native colorscheme format and direct :highlight definitions are simple, fast, and easy to override.

Variants

kintsugi-dark is the primary/default variant.

  • kintsugi-dark
  • kintsugi-dark-flared
  • kintsugi-light
  • kintsugi-light-flared

Preview SVGs are generated from gallery/inputs/sample.rs with make gen-variants.

kintsugi-dark kintsugi-dark-flared
kintsugi-dark Rust preview kintsugi-dark-flared Rust preview
kintsugi-light kintsugi-light-flared
kintsugi-light Rust preview kintsugi-light-flared Rust preview

Installation

This theme is a native Neovim colorscheme: it only provides colors/*.vim files and does not have a Lua setup() function.

vim.pack

vim.pack.add({
  "https://github.com/slavafyi/kintsugi.nvim",
})

vim.cmd.colorscheme("kintsugi-dark")

lazy.nvim

{
  "slavafyi/kintsugi.nvim",
  lazy = false,
  priority = 1000,
  config = function()
    vim.cmd.colorscheme("kintsugi-dark")
  end,
}

Use any variant from the list above in place of kintsugi-dark.

Configuration

vim.o.termguicolors = true
vim.cmd.colorscheme("kintsugi-dark")

-- Recommended on Neovim 0.11+.
vim.o.winborder = "rounded"

Customization

Use normal Neovim highlight overrides. Define override autocommands before loading the colorscheme when possible.

Transparent background

vim.api.nvim_create_autocmd("ColorScheme", {
  pattern = "kintsugi-*",
  callback = function()
    vim.api.nvim_set_hl(0, "Normal", { bg = "NONE" })
  end,
})

Override a color

vim.api.nvim_create_autocmd("ColorScheme", {
  pattern = "kintsugi-light",
  callback = function()
    vim.api.nvim_set_hl(0, "Normal", { bg = "#f8f4ea" })
  end,
})

Third-party plugin support

vim.api.nvim_create_autocmd("ColorScheme", {
  pattern = "kintsugi-*",
  callback = function()
    vim.api.nvim_set_hl(0, "ExamplePluginHighlightGroup", { link = "CursorLine" })
  end,
})

Credits

License

MIT License - see LICENSE for details.