skift.nvim/README.md

2.1 KiB

skift.nvim

A clean, dark Neovim colorscheme with strong syntax contrast, tasteful UI accents, and built-in support for common plugins.

Screenshot

Features

  • Thoughtful palette built from HSL tokens
  • Consistent editor, Treesitter, and LSP highlight groups
  • Integrations for popular plugins (Telescope, cmp, blink.cmp, Neo-tree, GitSigns, and more)
  • Optional transparent backgrounds
  • Config hooks to override colors and highlight groups
  • Included lualine theme

Requirements

  • Neovim >= 0.8

Installation

lazy.nvim

{
  "https://codeberg.org/pnx/skift.nvim",
  lazy = false,
  priority = 1000,
  config = function()
    require("skift").setup({
      transparent = false,
      bold = true,
      italic = true,
      italic_comments = true,
    })
    vim.cmd.colorscheme("skift")
  end,
}

packer.nvim

use({
  "https://codeberg.org/pnx/skift.nvim",
  config = function()
    require("skift").setup()
    vim.cmd.colorscheme("skift")
  end,
})

Configuration

Default config:

require("skift").setup({
  transparent = false,
  bold = true,
  italic = true,
  italic_comments = true,
  on_colors = function(colors)
    -- colors.accent = "#7aa2f7"
  end,
  on_highlights = function(highlights, colors)
    -- highlights.CursorLine = { bg = colors.bg_elevated }
  end,
})

Usage

:colorscheme skift

Lua equivalent:

vim.cmd.colorscheme("skift")

Lualine

Use the bundled lualine theme:

require("lualine").setup({
  options = {
    theme = "skift",
  },
})

Cache

skift.nvim caches resolved highlights for faster startup. If you are iterating on the theme and want to clear cache:

require("skift").clear_cache()

Plugin Integrations

Skift includes highlight definitions for:

  • GitSigns
  • Telescope
  • nvim-cmp
  • blink.cmp
  • indent-blankline (Ibl*)
  • which-key
  • Trouble
  • nvim-tree
  • Neo-tree
  • Lazy
  • Mason
  • Noice
  • nvim-notify
  • mini.nvim statusline groups
  • Snacks
  • Flash
  • Treesitter context
  • Dashboard/Alpha
  • render-markdown
  • Oil
  • fzf-lua

Contributing

Issues and pull requests are welcome.