2021-09-17 11:55:56 +00:00
|
|
|
|
*zenbones.txt* A contrast-focused vim/neovim colorscheme
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
Table of Contents *zenbones-table-of-contents*
|
|
|
|
|
|
|
2021-09-18 08:12:24 +00:00
|
|
|
|
1. Zenbones |zenbones-zenbones|
|
2021-08-27 08:09:41 +00:00
|
|
|
|
- Usage |zenbones-usage|
|
2021-08-30 01:35:08 +00:00
|
|
|
|
- Configuration |zenbones-configuration|
|
2021-08-31 02:48:36 +00:00
|
|
|
|
- Advanced Usage |zenbones-advanced-usage|
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
2021-09-18 08:12:24 +00:00
|
|
|
|
==============================================================================
|
|
|
|
|
|
1. Zenbones *zenbones-zenbones*
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
2021-09-18 08:12:24 +00:00
|
|
|
|
**Zenflesh, Zenbones** is a vim/neovim colorscheme designed to highlight code
|
|
|
|
|
|
using contrasts and font variations. Colors are tasked only for other roles
|
|
|
|
|
|
such as diagnostics, diffs, search matches.
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
2021-08-27 08:35:18 +00:00
|
|
|
|
USAGE *zenbones-usage*
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
|
|
|
|
|
Just apply the colorscheme as usual:
|
|
|
|
|
|
|
|
|
|
|
|
>
|
2021-09-17 11:55:56 +00:00
|
|
|
|
colorscheme zenbones " light
|
|
|
|
|
|
colorscheme zenflesh " dark
|
2021-08-27 02:01:48 +00:00
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
|
|
|
2021-09-05 01:23:38 +00:00
|
|
|
|
If you want to make use of the lua version:
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
|
|
|
|
|
>
|
2021-09-12 06:41:36 +00:00
|
|
|
|
" Requires `neovim` and `rktjmp/lush.nvim` installed
|
2021-08-27 02:01:48 +00:00
|
|
|
|
colorscheme zenbones-lush
|
2021-09-17 11:55:56 +00:00
|
|
|
|
colorscheme zenflesh-lush
|
2021-09-21 11:30:30 +00:00
|
|
|
|
|
2021-10-04 11:22:36 +00:00
|
|
|
|
" https://neovim.io flavor
|
2021-09-21 11:30:30 +00:00
|
|
|
|
colorscheme neovim
|
2021-10-04 11:22:36 +00:00
|
|
|
|
" Rosé Pine flavor - https://rosepinetheme.com
|
|
|
|
|
|
colorscheme rosebones
|
2021-08-27 02:01:48 +00:00
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It works pretty much the same as the first one but pretty handy when extending
|
|
|
|
|
|
or customizing the colors to your likings.
|
|
|
|
|
|
|
2021-08-30 01:35:08 +00:00
|
|
|
|
CONFIGURATION *zenbones-configuration*
|
|
|
|
|
|
|
2021-09-17 11:55:56 +00:00
|
|
|
|
Configuration is only available for `zenbones-lush` and `zenflesh-lush`.
|
2021-08-31 02:48:36 +00:00
|
|
|
|
|
2021-08-30 01:35:08 +00:00
|
|
|
|
*zenbones-g:zenbones_lightness*
|
|
|
|
|
|
|
2021-09-01 05:21:19 +00:00
|
|
|
|
g:zenbones_lightness Change background colors lightness.
|
2021-09-18 08:08:27 +00:00
|
|
|
|
Options: `'bright'`, `'dim'`.
|
2021-08-30 01:35:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
2021-09-17 11:55:56 +00:00
|
|
|
|
*zenbones-g:zenflesh_darkness*
|
2021-08-30 01:35:08 +00:00
|
|
|
|
|
2021-09-17 11:55:56 +00:00
|
|
|
|
g:zenflesh_darkness Change background colors darkness.
|
2021-09-18 08:08:27 +00:00
|
|
|
|
Options: `'stark'`, `'warm'`.
|
2021-09-17 11:55:56 +00:00
|
|
|
|
|
2021-08-30 01:35:08 +00:00
|
|
|
|
|
2021-08-31 02:48:36 +00:00
|
|
|
|
*zenbones-g:zenbones_solid_vert_split*
|
|
|
|
|
|
|
2021-09-17 11:55:56 +00:00
|
|
|
|
*zenbones-g:zenflesh_solid_vert_split*
|
|
|
|
|
|
|
2021-09-18 08:17:07 +00:00
|
|
|
|
g:zenflesh_solid_vert_split Default: `v:false`. Make vertical split
|
|
|
|
|
|
more distinguishable background
|
|
|
|
|
|
highlight.
|
2021-09-18 08:12:24 +00:00
|
|
|
|
|
2021-08-31 02:48:36 +00:00
|
|
|
|
|
|
|
|
|
|
*zenbones-g:zenbones_dim_noncurrent_window*
|
|
|
|
|
|
|
2021-09-18 08:17:07 +00:00
|
|
|
|
g:zenbones_dim_noncurrent_window Default: `v:false`. Make non-current
|
|
|
|
|
|
window background dimmer than _Normal_.
|
2021-09-05 01:23:38 +00:00
|
|
|
|
|
|
|
|
|
|
|
2021-09-17 11:55:56 +00:00
|
|
|
|
*zenbones-g:zenflesh_lighten_noncurrent_window*
|
|
|
|
|
|
|
2021-09-18 08:17:07 +00:00
|
|
|
|
g:zenflesh_lighten_noncurrent_window Default: `v:false`. Make non-current
|
|
|
|
|
|
window background warmer than _Normal_.
|
2021-09-17 11:55:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*zenbones-g:zenbones_italic_comments*
|
|
|
|
|
|
|
|
|
|
|
|
*zenbones-g:zenflesh_italic_comments*
|
|
|
|
|
|
|
2021-09-30 23:42:01 +00:00
|
|
|
|
g:zenflesh_italic_comments Default: `v:true`. Make comments
|
2021-09-18 08:17:07 +00:00
|
|
|
|
italicize.
|
2021-09-17 11:55:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
2021-09-30 23:42:01 +00:00
|
|
|
|
*zenbones-lightline*
|
|
|
|
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
let g:lightline = {
|
|
|
|
|
|
\ 'colorscheme': 'zenbones', " or 'zenflesh'
|
|
|
|
|
|
\ }
|
|
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*zenbones-lualine*
|
|
|
|
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
options = { theme = 'zenbones' } -- or 'zenflesh'
|
|
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
|
|
|
2021-09-05 00:19:48 +00:00
|
|
|
|
ADVANCED USAGE *zenbones-advanced-usage*
|
|
|
|
|
|
|
2021-09-12 06:41:36 +00:00
|
|
|
|
Zenbones is pretty extensible thanks to Lush. You can easily retrieve the
|
|
|
|
|
|
colors in lua:
|
2021-09-05 00:19:48 +00:00
|
|
|
|
|
|
|
|
|
|
>
|
2021-09-17 11:55:56 +00:00
|
|
|
|
local theme = require "zenbones" -- or zenflesh
|
2021-09-12 14:19:33 +08:00
|
|
|
|
local palette = require "zenbones.palette"
|
2021-09-05 00:19:48 +00:00
|
|
|
|
|
|
|
|
|
|
print(theme.StatusLine.bg.hex)
|
2021-09-17 11:55:56 +00:00
|
|
|
|
print(palette.blossom.darken(20).hex)
|
2021-09-05 00:19:48 +00:00
|
|
|
|
<
|
|
|
|
|
|
|
2021-08-31 02:48:36 +00:00
|
|
|
|
|
2021-09-05 01:23:38 +00:00
|
|
|
|
See also Lush’s documentation
|
2021-09-12 06:41:36 +00:00
|
|
|
|
<https://github.com/rktjmp/lush.nvim#advanced-usage> for more options.
|
2021-08-31 02:48:36 +00:00
|
|
|
|
|
2021-09-22 10:22:33 +00:00
|
|
|
|
CREATE YOUR OWN COLORSCHEME ~
|
|
|
|
|
|
|
|
|
|
|
|
You can ultimately create your own colorscheme that is based on Zenbones by
|
|
|
|
|
|
modifying the base palette and extending the specs. Best way to demonstrate
|
|
|
|
|
|
this is through an example. Let’s make a zenbones-flavored Gruvbox
|
|
|
|
|
|
colorscheme called `gruvbones`.
|
|
|
|
|
|
|
|
|
|
|
|
Let’s define our |colorscheme| in `nvim/colors/gruvbones.lua`. And it
|
|
|
|
|
|
contains the following:
|
|
|
|
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
vim.g.colors_name = "gruvbones"
|
|
|
|
|
|
|
|
|
|
|
|
-- let's base bg=dark, bg=light on zenflesh, zenbones specs respectively
|
|
|
|
|
|
local base_name = vim.opt.background:get() == "dark" and "zenflesh" or "zenbones"
|
|
|
|
|
|
|
|
|
|
|
|
-- reset base palette and specs
|
|
|
|
|
|
package.loaded[base_name .. ".palette"] = nil
|
|
|
|
|
|
package.loaded[base_name] = nil
|
|
|
|
|
|
|
|
|
|
|
|
local lush = require "lush"
|
|
|
|
|
|
local hsl = lush.hsl
|
|
|
|
|
|
|
|
|
|
|
|
-- modify base palette (before requiring specs)
|
|
|
|
|
|
-- and we can also define our own
|
|
|
|
|
|
-- note: non-exhaustive copy of gruvbox palette. Ref: https://github.com/gruvbox-community/gruvbox#palette
|
|
|
|
|
|
local base = require(base_name .. ".palette")
|
|
|
|
|
|
local gruv
|
|
|
|
|
|
if base_name == "zenbones" then
|
|
|
|
|
|
base.bg = hsl "#fbf1c7"
|
|
|
|
|
|
base.fg = hsl "#3c3836"
|
|
|
|
|
|
gruv = {
|
|
|
|
|
|
gray = hsl "#7c6f64",
|
|
|
|
|
|
fg0 = hsl "#282828",
|
|
|
|
|
|
fg1 = hsl "#3c3836",
|
|
|
|
|
|
fg2 = hsl "#504945",
|
|
|
|
|
|
fg3 = hsl "#665c54",
|
|
|
|
|
|
fg4 = hsl "#7c6f64",
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
base.bg = hsl "#282828"
|
|
|
|
|
|
base.fg = hsl "#ebdbb2"
|
|
|
|
|
|
gruv = {
|
|
|
|
|
|
gray = hsl "#a89984",
|
|
|
|
|
|
fg0 = hsl "#fbf1c7",
|
|
|
|
|
|
fg1 = hsl "#ebdbb2",
|
|
|
|
|
|
fg2 = hsl "#d5c4a1",
|
|
|
|
|
|
fg3 = hsl "#d5c4a1",
|
|
|
|
|
|
fg4 = hsl "#a89984",
|
|
|
|
|
|
}
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
base.rose = hsl "#cc241d"
|
|
|
|
|
|
base.leaf = hsl "#98971a"
|
|
|
|
|
|
base.wood = hsl "#d79921"
|
|
|
|
|
|
base.water = hsl "#458588"
|
|
|
|
|
|
base.blossom = hsl "#b16286"
|
|
|
|
|
|
base.sky = hsl "#689d6a"
|
|
|
|
|
|
|
|
|
|
|
|
-- extend specs using Lush
|
|
|
|
|
|
local theme = require(base_name)
|
|
|
|
|
|
local specs = lush.extends({ theme }).with(function()
|
|
|
|
|
|
return {
|
|
|
|
|
|
Constant { fg = gruv.fg4, gui = "italic" },
|
|
|
|
|
|
Identifier { fg = gruv.fg2, gui = "italic" },
|
|
|
|
|
|
Special { fg = gruv.fg3, gui = "bold" },
|
|
|
|
|
|
Delimiter { fg = gruv.gray },
|
|
|
|
|
|
Comment { fg = gruv.gray, gui = "italic" },
|
|
|
|
|
|
LineNr { fg = Comment.fg },
|
|
|
|
|
|
}
|
|
|
|
|
|
end)
|
|
|
|
|
|
|
|
|
|
|
|
-- apply terminal colors
|
2021-10-09 16:27:46 +08:00
|
|
|
|
require(base_name .. ".term").setup()
|
2021-09-22 10:22:33 +00:00
|
|
|
|
|
|
|
|
|
|
-- include our theme file and pass it to lush to apply
|
|
|
|
|
|
lush(specs)
|
|
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
And there you have it. Just call `colorscheme gruvbones` to use your new
|
|
|
|
|
|
colorscheme. It respects `&background` and other configurations too.
|
|
|
|
|
|
|
2021-10-04 12:03:45 +00:00
|
|
|
|
Also checkout the neovim <../colors/neovim.lua> and rosebones
|
|
|
|
|
|
<../colors/rosebones.lua> colorscheme for a similar and complete example.
|
2021-09-22 10:22:33 +00:00
|
|
|
|
|
2021-08-27 21:02:03 +00:00
|
|
|
|
Generated by panvimdoc <https://github.com/kdheepak/panvimdoc>
|
2021-08-27 02:01:48 +00:00
|
|
|
|
|
|
|
|
|
|
vim:tw=78:ts=8:noet:ft=help:norl:
|