Skip to content

Repository files navigation

rakis.nvim

A cozy theme for late desert nights or early mornings

dark rakis_dark light rakis_light

Features

  • no pastel, high contrast for the most part
  • kinda nice looking
  • support for some plugins/tools (more on the way)
Supported neovim plugins

The name in backticks is the key to use under extensions in your config.

Plus lsp for LSP semantic tokens and diagnostics, which needs no plugin.

Supported extras

Tools supported other than neovim. You can find their respective theme in extras. You can always submit a PR for any tool that is missing 💙

Installation

Lazy:

{
"sample-usr/rakis.nvim",
lazy=false,
priority=1000,
opts= {},
}

Packer:

use { "sample-usr/rakis.nvim" }

Usage

vim.cmd[[colorscheme rakis]]
colorscheme rakis

You can set the light or dark mode using the vim background options

vim.o.background="dark"

Or load a specific variant directly, regardless of background:

colorscheme rakis-dark
colorscheme rakis-light

Palette

The palette is drawn from the world of Dune: the dark variant is the deep desert night of a sietch, the light variant the same desert at noon. Accent hues are identical across both variants.

KeyRole
bg, surface, overlay, highlightBackground ramp: editor, panels/floats, subtle emphasis, selections
text, subtle, muted, faintForeground ramp: code, comments, punctuation/line numbers, whitespace decoration
bloodErrors, deletions, danger
spiceKeywords, titles — the signature color
glowglobeNumbers, warnings, search
oasisStrings, additions, success
waterTypes, properties, hints
ibadFunctions, links, info
duskConstants, booleans, builtins
bloomOperators

Configuration

Below is an example of all the available configuration options with their default values:

require("rakis").setup({
-- Enable transparent backgroundtransparent=false,
-- Enable italics commentsitalic_comments=false,
-- Replace all fillchars with ' 'hide_fillchars=false,
-- Borderless look for telescopeborderless_telescope=true,
-- Set terminal colors used in `:terminal`terminal_colors=true,
-- Improve start up time by caching highlights. Generate cache with :RakisBuildCache and clear with :RakisClearCachecache=false,
theme= {
variant="default", -- use "light" for the light variant. Also accepts "auto" to set dark or light colors based on the current value of `vim.o.background`highlights= {
-- Highlight groups to override, adding new groups is also possible-- See `:h highlight-groups` for a list of highlight groups or run `:hi` to see all groups and their current values-- Example:Comment= { fg="#696969", bg="NONE", italic=true },
},
-- Override a highlight group entirely using the color paletteoverrides=function(colors) -- NOTE: This function nullifies the `highlights` option-- Example:return {
Comment= { fg=colors.oasis, bg="NONE", italic=true },
["@property"] = { fg=colors.bloom, bold=true },
}
end,
-- Override a color entirelycolors= {
-- Example:bg="#000000",
spice="#ff9000",
},
},
-- Disable or enable colorscheme extensionsextensions= {
telescope=true,
nvim_notify=true,
mini=true,
...
},
})

Credits

Inspired by

Releases

Packages

Contributors

Languages