oxidescheme/nvim

github github
colorscheme
stars 18
issues 0
subscribers 0
forks 0
CREATED

UPDATED


oxide

oxide brings the oxide colorscheme to neovim with full treesitter and lsp support.

Features

  • Dark theme with Treesitter and LSP semantic highlighting
  • Customizable colors and highlight groups
  • Lazy-loaded with minimal startup impact
  • Built-in lualine theme and growing plugin integration

Installation

vim.pack (Neovim 0.12+)

vim.pack.add({
  {
    src = 'https://github.com/oxidescheme/nvim',
    name = 'oxide',
  },
})

vim.cmd.colorscheme("oxide")

lazy.nvim

{
  "oxidescheme/nvim",
  name = "oxide",
  lazy = false,
  priority = 1000,
  config = function()
    require("oxide").setup()
    vim.cmd.colorscheme("oxide")
  end,
}

packer.nvim

use {
  "oxidescheme/nvim",
  name = "oxide",
  config = function()
    require("oxide").setup()
    vim.cmd.colorscheme("oxide")
  end
}

vim-plug

Plug 'oxidescheme/nvim'
require("oxide").setup()
vim.cmd.colorscheme("oxide")

Usage

-- Basic usage
vim.cmd.colorscheme("oxide")

-- Or use the lua API
require("oxide").load()

Configuration

oxide comes with sensible defaults, but every aspect can be customized:

require("oxide").setup({
  transparent = false, -- Enable transparent background
  terminal_colors = true, -- Configure terminal colors

  styles = {
    comments = { italic = true },
    keywords = {},
    functions = {},
    variables = {},
    strings = {},
    booleans = {},
    numbers = {},
  },

  -- Override colors
  on_colors = function(colors)
    colors.red = "#ff0000" -- Make red more intense
  end,

  -- Override highlight groups
  on_highlights = function(highlights, colors)
    highlights.Comment = { fg = colors.green, italic = true }
  end,
})

Configuration Options

Option Default Description
transparent false Enable transparent background
terminal_colors true Set terminal colors
styles {} Style overrides for syntax groups
on_colors nil Function to override color palette
on_highlights nil Function to override highlight groups

Custom Styles

require("oxide").setup({
  styles = {
    -- Disable default comment italics
    comments = { italic = false },
    -- Make functions stand out more
    functions = { bold = true, italic = true },
    -- Subtle variables
    variables = { italic = true },
  }
})

Function Colors

Functions, methods, and callable macros use teal. To restore red function highlighting:

require("oxide").setup({
  styles = {
    functions = { fg = "#ed756e" },
  },
})

vim.cmd.colorscheme("oxide")

The override also applies to calls, built-in functions, and static functions and methods.

Integration with Other Plugins

oxide works seamlessly with popular plugins:

Contributing

PRs welcome. Make sure new highlight groups serve a clear purpose and colors match the palette defined in the codebase.

Credits

License

MIT License - see LICENSE for details.