Skip to content

shawilly/kogarashi.nvim

Repository files navigation

    

Neovim 0.8+      Common plugin support      Kanagawa inspired palette


A Neovim colorscheme shaped around kogarashi, the cold wind that signals the arrival of winter.


vim.cmd.colorscheme("kogarashi")

Screenshot


Theme

Kogarashi refers to the cold, tree-shaking wind that marks the start of winter in Japanese seasonal language. This colorscheme tries to hold that feeling: dark air, muted distance, pale light, and a small amount of warmth carried through gold, cedar, and frost-blue accents.

Built for daily coding, terminal work, and plugin-heavy setups, it ships with:

  • tree-sitter and semantic token highlights
  • terminal and devicon integration
  • common plugin highlight support
  • override hooks for palette, scheme, and final highlight groups

If you want the Vim-first sibling theme, see shawilly/ponokai.

What Kogarashi Means

Kogarashi is not meant to be a generic “dark theme.” The palette is intentionally restrained:

  • deep charcoal backgrounds for the feeling of early winter dusk
  • parchment foregrounds instead of stark white for softer long-session contrast
  • weathered gold, cedar red, moss green, and cold blue accents to suggest late autumn turning into winter
  • enough saturation to keep code readable without losing the quiet atmosphere the name implies

Installation

Important

For richer syntax coverage, use Kogarashi with nvim-treesitter when possible.

lazy.nvim

{
  "shawilly/kogarashi.nvim",
  lazy = false,
  priority = 1000,
  opts = {},
  config = function(_, opts)
    require("kogarashi").setup(opts)
    vim.cmd.colorscheme("kogarashi")
  end,
}

LazyVim

Create lua/plugins/colorscheme.lua:

return {
  {
    "shawilly/kogarashi.nvim",
    lazy = false,
    priority = 1000,
    opts = {
      transparent_background = false,
    },
    config = function(_, opts)
      require("kogarashi").setup(opts)
      vim.cmd.colorscheme("kogarashi")
    end,
  },
}

packer.nvim

use {
  "shawilly/kogarashi.nvim",
  config = function()
    require("kogarashi").setup()
    vim.cmd.colorscheme("kogarashi")
  end,
}

vim-plug

Plug 'shawilly/kogarashi.nvim'

Plugin Support

Kogarashi includes highlight definitions for common plugins, including:

  • alpha-nvim
  • aerial.nvim
  • barbecue.nvim
  • beacon.nvim
  • breadcrumb.nvim
  • bufferline.nvim
  • dashboard-nvim
  • diffview.nvim
  • dropbar.nvim
  • flash.nvim
  • fidget.nvim
  • fzf-lua
  • gitsigns.nvim
  • harpoon
  • hop.nvim
  • indent-blankline.nvim
  • lazy.nvim
  • leap.nvim
  • mason.nvim
  • mini.nvim
  • neo-tree.nvim
  • neogit
  • noice.nvim
  • nvim-cmp
  • nvim-dap
  • nvim-dap-ui
  • nvim-navic
  • nvim-notify
  • nvim-tree.lua
  • nvim-treesitter
  • rainbow-delimiters.nvim
  • render-markdown.nvim
  • snacks.nvim
  • telescope.nvim
  • todo-comments.nvim
  • toggleterm.nvim
  • trouble.nvim
  • ufo
  • which-key.nvim
  • wilder.nvim

Configuration

Example configuration:

require("kogarashi").setup({
  transparent_background = false,
  terminal_colors = true,
  devicons = true,
  styles = {
    comment = { italic = true },
    keyword = { italic = true },
    type = { italic = true },
    storageclass = { italic = true },
    structure = { italic = true },
    parameter = { italic = true },
    annotation = { italic = true },
    tag_attribute = { italic = true },
  },
  inc_search = "background",
  background_clear = {
    "toggleterm",
    "telescope",
    "renamer",
    "notify",
  },
  lazy_plugins = false,
  enabled_plugins = nil,
  plugins = {
    bufferline = {
      underline_selected = false,
      underline_visible = false,
      underline_fill = false,
      bold = true,
    },
    indent_blankline = {
      context_highlight = "default",
      context_start_underline = false,
    },
  },
  override = function(c)
    return {}
  end,
  overridePalette = function()
    return {}
  end,
  overrideScheme = function(cs, palette, config, hp)
    return {}
  end,
})

Background-Clear Example

require("kogarashi").setup({
  background_clear = { "float_win" },
})

require("cmp").setup({
  window = {
    border = "rounded",
  },
  completion = {
    border = "rounded",
  },
})

Telescope Border Example

require("kogarashi").setup({
  background_clear = {},
})

require("telescope").setup({
  defaults = {
    borderchars = { "", " ", "", "", "", " ", " ", "" },
  },
})

Palette Override Example

require("kogarashi").setup({
  overridePalette = function()
    return {
      dark2 = "#101014",
      dark1 = "#16161e",
      background = "#1a1b26",
      text = "#c0caf5",
      red = "#f7768e",
      orange = "#ff9e64",
      yellow = "#e0af68",
      green = "#9ece6a",
      blue = "#0db9d7",
      purple = "#9d7cd8",
      dimmed1 = "#a9b1d6",
      dimmed2 = "#787c99",
      dimmed3 = "#565f89",
      dimmed4 = "#414868",
      dimmed5 = "#24283b",
    }
  end,
})

Scheme Override Example

require("kogarashi").setup({
  overrideScheme = function(cs, palette, config, hp)
    local background = hp.blend(palette.background, 0.75, "#000000")
    return {
      editor = {
        background = background,
      },
    }
  end,
})

Usage

Colorscheme

colorscheme kogarashi
require("kogarashi").setup({})
vim.cmd.colorscheme("kogarashi")

lualine

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

barbecue.nvim

require("barbecue").setup({
  theme = "kogarashi",
})

lightline

let g:lightline = { 'colorscheme': 'kogarashi' }

Links

About

A Neovim colorscheme inspired by kogarashi, the cold wind that signals the arrival of winter.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors