a neovim colorscheme descended from fairyfloss and sister to moonqueen.nvim. built with lush.
- gitsigns.nvim
- indent-blankline.nvim
- mini.nvim diff, statusline, and tabline
- render-markdown.nvim
- trouble.nvim
with lazy:
return {
"https://codeberg.org/sailorfe/luna.nvim",
-- init = function()
-- vim.cmd.colorscheme("luna")
-- end,
opts = {
transparent = false, -- default
overrides = {
keyword = { fg = #D1F075 },
["@boolean"] = { link = 'Special' ,}
}
}
}alternately, you can skip init = function() and declare vim.cmd.colorscheme('luna') somewhere in your init.lua after plugin load.
it has just two options:
| name | type | default | description |
|---|---|---|---|
transparent |
boolean | false | sets Normal and linked hl groups to none to show terminal background. |
overrides |
table / boolean | false | override any hl groups you don't like or to add new ones. |
with vim-plug:
Plug 'https://codeberg.org/sailorfe/luna.nvim', { 'as': 'luna', 'rtp': 'extras/vim' }or you can place extras/colors/luna.vim anywhere in your runtimepath:
curl -LO https://codeberg.org/sailorfe/luna.nvim/raw/branch/main/extras/vim/colors/luna.vimthen set colorscheme with colorscheme luna either in your vimrc or temporarily with a command:
" .vimrc
set background=dark
syntax on
colorscheme luna- install lush and shipwright. you should edit
scripts/init.luato point to your installations, or rely on a package manager. for example, lazy's bootstrap places plugins in~/.local/share/nvim/lazy. - edit with
nvim lua/luna/lush.luaand preview with:Lushify. append new highlight groups to the bottom of thethemetable. - run
make buildat project root to generatelua/luna/theme.lua. - commit
lua/luna/{lush.lua,theme.lua}with a message likefeat(plug): $PLUGIN.
theme generation is helped by the Makefile at project root.
- (optional) ensure
palette.jsonis up to date:make palette. - create
templates/$APP.*using keys frompalette.json:- for hex codes prefixed with hashes (
#E87DB3), use[[key]]. examples:alacritty.toml,wezterm.toml. - for hex codes without hashes (
E87DB3), use{{key}}. examples:foot.ini,tty.conf. - for templates that take
rgbaorhsl, you can use[[key-rgb]]or[[key-hsl]]. example:zathura.
- for hex codes prefixed with hashes (
- add the output path
$APP/luna.*to theoutputsdictionary inscripts/generator.py. - run the python script:
make generate. - commit your input template,
scripts/generator.py, and output extra with a message likefeat(extra): $APP.
- fairyfloss for inspiring this journey into colorschemes to begin with, and the low-contrast, magical girl vibes
- evangelion.nvim for weeb +
build.shinspiration + the whole lua project structure and opts logic - tokyonight.nvim for repository structure
