Skip to content
alsi-lawr edited this page Jul 16, 2026 · 6 revisions

Neotheme documentation

Neotheme is a semantic, palette-driven colorscheme for Neovim 0.12 and newer. It provides 31 built-in dark and light themes across nine families, one colorscheme entrypoint, complete editor and language highlights, terminal colors, Lualine support, opt-in plugin integrations, and session-only theme exploration.

Start here

Contributor and internals reference

Requirements

  • Neovim 0.12 or newer
  • A terminal or GUI with true-color support

Neotheme enables termguicolors when it loads.

Minimal setup

require("neotheme").setup()
vim.cmd.colorscheme("neotheme")

This selects gruber-dark-muted, the default theme. Every built-in and custom theme uses the same neotheme colorscheme command.

After Neotheme loads, run :Neotheme to browse families in an isolated code preview. Enter and Space confirm session-only selections; the configured baseline remains in your setup.

What the semantic palette controls

The selected palette supplies colors for:

  • Editor surfaces, borders, selections, menus, floats, and sidebars
  • Vim syntax groups and Tree-sitter captures
  • LSP semantic tokens, references, inlay hints, and diagnostics
  • Diff, version-control, markup, search, and navigation states
  • All 16 terminal colors plus terminal foreground and background
  • Lualine and enabled plugin integrations

This separation lets themes choose a compact set of colors while highlight modules assign those colors by purpose. User customization works at the same semantic level.

Project links

Clone this wiki locally