diff --git a/README.md b/README.md
index 0939707..210c2c4 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Zenbones
-Zenbones is a collection of vim/neovim colorschemes designed to highlight code
+Zenbones is a collection of Vim/Neovim colorschemes designed to highlight code
using contrasts and font variations. Colors are tasked only for other roles such
as diagnostics, diffs, search matches.
@@ -29,8 +29,8 @@ Example installation using packer:
use {
"mcchrish/zenbones.nvim",
-- Optionally install Lush. Allows for more configuration or extending the colorscheme
- requires = "rktjmp/lush.nvim"
-- If you don't want to install lush, make sure to set g:zenbones_compat = 1
+ requires = "rktjmp/lush.nvim"
}
```
@@ -40,8 +40,9 @@ Just apply the colorscheme as usual:
```vim
set termguicolors
+set background=light " or dark
-colorscheme zenbones " light
+colorscheme zenbones
colorscheme zenwritten " Zero hue and saturation version
colorscheme neobones " https://neovim.io flavor
@@ -50,6 +51,7 @@ colorscheme rosebones " Rosé Pine flavor - https://rosepinetheme.com
colorscheme forestbones " Everforest flavor - https://github.com/sainnhe/everforest
colorscheme nordbones " Nord flavor - https://www.nordtheme.com/docs/colors-and-palettes
colorscheme tokyobones " Tokyo Night flavor - https://github.com/enkia/tokyo-night-vscode-theme#color-palette
+colorscheme duckbones " Spaceduck flavor - https://pineapplegiant.github.io/spaceduck
```
## [Configuration and other documentations](doc/zenbones.md)
@@ -58,7 +60,7 @@ See [documentations](doc/zenbones.md) or `:help zenbones.txt`.
## Showcase
-| light | dark |
+| light | dark |
| :------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------: |
|  |  |
|  |  |
diff --git a/autoload/lightline/colorscheme/zenbones.vim b/autoload/lightline/colorscheme/zenbones.vim
index 893c826..1af817e 100644
--- a/autoload/lightline/colorscheme/zenbones.vim
+++ b/autoload/lightline/colorscheme/zenbones.vim
@@ -1,23 +1,5 @@
-" This file is auto-generated from lua/zenbones/template/lightline.lua
-let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
-
-let s:p.normal.left = [ [ "#564E4A", "#B2A39B", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
-let s:p.normal.middle = [ [ "#2C363C", "#D1C7C3" ] ]
-let s:p.normal.right = [ [ "#564E4A", "#C4B6AF" ], [ "#564E4A", "#C4B6AF" ] ]
-let s:p.normal.warning = [ [ "#944927", "#F2DEDA" ] ]
-let s:p.normal.error = [ [ "#A8334C", "#F2DEE0" ] ]
-
-let s:p.inactive.left = [ [ "#596A76", "#DAD3CF" ], [ "#596A76", "#DAD3CF" ] ]
-let s:p.inactive.middle = [ [ "#596A76", "#DAD3CF" ] ]
-let s:p.inactive.right = [ [ "#596A76", "#DAD3CF" ] ]
-
-let s:p.insert.left = [ [ "#564E4A", "#A9BED1", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
-let s:p.replace.left = [ [ "#564E4A", "#EBD8DA", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
-let s:p.visual.left = [ [ "#564E4A", "#CBD9E3", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
-
-let s:p.tabline.left = [ [ "#2C363C", "#C4B6AF", "italic" ] ]
-let s:p.tabline.middle = [ [ "#596A76", "#DAD3CF" ] ]
-let s:p.tabline.right = [ [ "#2C363C", "#C4B6AF" ] ]
-let s:p.tabline.tabsel = [ [ "#2C363C", "#F0EDEC", "bold" ] ]
-
-let g:lightline#colorscheme#zenbones#palette = lightline#colorscheme#fill(s:p)
+if lightline#colorscheme#background() ==# 'light'
+ let g:lightline#colorscheme#zenbones#palette = g:lightline#colorscheme#zenbones_light#palette
+else
+ let g:lightline#colorscheme#zenbones#palette = g:lightline#colorscheme#zenbones_dark#palette
+endif
diff --git a/autoload/lightline/colorscheme/zenbones_dark.vim b/autoload/lightline/colorscheme/zenbones_dark.vim
new file mode 100644
index 0000000..f89c73f
--- /dev/null
+++ b/autoload/lightline/colorscheme/zenbones_dark.vim
@@ -0,0 +1,23 @@
+" This file is auto-generated from lua/zenbones/template/lightline.lua
+let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
+
+let s:p.normal.left = [ [ "#AFA099", "#736863", "bold" ], [ "#AFA099", "#4F4844" ] ]
+let s:p.normal.middle = [ [ "#B4BDC3", "#3E3835" ] ]
+let s:p.normal.right = [ [ "#AFA099", "#4F4844" ], [ "#AFA099", "#4F4844" ] ]
+let s:p.normal.warning = [ [ "#B77E64", "#211D1B" ] ]
+let s:p.normal.error = [ [ "#DE6E7C", "#251B1C" ] ]
+
+let s:p.inactive.left = [ [ "#CAD0D4", "#322D2B" ], [ "#CAD0D4", "#322D2B" ] ]
+let s:p.inactive.middle = [ [ "#CAD0D4", "#322D2B" ] ]
+let s:p.inactive.right = [ [ "#CAD0D4", "#322D2B" ] ]
+
+let s:p.insert.left = [ [ "#AFA099", "#324757", "bold" ], [ "#AFA099", "#4F4844" ] ]
+let s:p.replace.left = [ [ "#AFA099", "#3E2225", "bold" ], [ "#AFA099", "#4F4844" ] ]
+let s:p.visual.left = [ [ "#AFA099", "#3D4042", "bold" ], [ "#AFA099", "#4F4844" ] ]
+
+let s:p.tabline.left = [ [ "#B4BDC3", "#4F4844", "italic" ] ]
+let s:p.tabline.middle = [ [ "#CAD0D4", "#322D2B" ] ]
+let s:p.tabline.right = [ [ "#B4BDC3", "#4F4844" ] ]
+let s:p.tabline.tabsel = [ [ "#B4BDC3", "#1C1917", "bold" ] ]
+
+let g:lightline#colorscheme#zenbones#palette = lightline#colorscheme#fill(s:p)
diff --git a/autoload/lightline/colorscheme/zenbones_light.vim b/autoload/lightline/colorscheme/zenbones_light.vim
new file mode 100644
index 0000000..893c826
--- /dev/null
+++ b/autoload/lightline/colorscheme/zenbones_light.vim
@@ -0,0 +1,23 @@
+" This file is auto-generated from lua/zenbones/template/lightline.lua
+let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
+
+let s:p.normal.left = [ [ "#564E4A", "#B2A39B", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
+let s:p.normal.middle = [ [ "#2C363C", "#D1C7C3" ] ]
+let s:p.normal.right = [ [ "#564E4A", "#C4B6AF" ], [ "#564E4A", "#C4B6AF" ] ]
+let s:p.normal.warning = [ [ "#944927", "#F2DEDA" ] ]
+let s:p.normal.error = [ [ "#A8334C", "#F2DEE0" ] ]
+
+let s:p.inactive.left = [ [ "#596A76", "#DAD3CF" ], [ "#596A76", "#DAD3CF" ] ]
+let s:p.inactive.middle = [ [ "#596A76", "#DAD3CF" ] ]
+let s:p.inactive.right = [ [ "#596A76", "#DAD3CF" ] ]
+
+let s:p.insert.left = [ [ "#564E4A", "#A9BED1", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
+let s:p.replace.left = [ [ "#564E4A", "#EBD8DA", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
+let s:p.visual.left = [ [ "#564E4A", "#CBD9E3", "bold" ], [ "#564E4A", "#C4B6AF" ] ]
+
+let s:p.tabline.left = [ [ "#2C363C", "#C4B6AF", "italic" ] ]
+let s:p.tabline.middle = [ [ "#596A76", "#DAD3CF" ] ]
+let s:p.tabline.right = [ [ "#2C363C", "#C4B6AF" ] ]
+let s:p.tabline.tabsel = [ [ "#2C363C", "#F0EDEC", "bold" ] ]
+
+let g:lightline#colorscheme#zenbones#palette = lightline#colorscheme#fill(s:p)
diff --git a/colors/duckbones.lua b/colors/duckbones.lua
new file mode 100644
index 0000000..04b938b
--- /dev/null
+++ b/colors/duckbones.lua
@@ -0,0 +1,12 @@
+if vim.g.colors_name then
+ vim.api.nvim_command "highlight clear"
+end
+
+vim.g.colors_name = "duckbones"
+vim.opt.background = "dark"
+
+package.loaded["duckbones"] = nil
+require "lush"(require "duckbones", { force_clean = false })
+
+local p = require("duckbones.palette").dark
+require("zenbones.term").apply_colors(p)
diff --git a/doc/showcase.md b/doc/showcase.md
index 81f389c..1772bdf 100644
--- a/doc/showcase.md
+++ b/doc/showcase.md
@@ -32,3 +32,7 @@
+
+## Duckbones
+
+
diff --git a/doc/zenbones.md b/doc/zenbones.md
index ad6ff46..70bb714 100644
--- a/doc/zenbones.md
+++ b/doc/zenbones.md
@@ -1,6 +1,6 @@
-# Zenbones
+# Documentation
-Zenbones is a collection of vim/neovim colorschemes designed to highlight code
+Zenbones is a collection of Vim/Neovim colorschemes designed to highlight code
using contrasts and font variations. Colors are tasked only for other roles such
as diagnostics, diffs, search matches.
@@ -10,8 +10,9 @@ Just apply the colorscheme as usual:
```vim
set termguicolors
+set background=light " or dark
-colorscheme zenbones " light
+colorscheme zenbones
colorscheme zenwritten " Zero hue and saturation version
colorscheme neobones " https://neovim.io flavor
@@ -20,6 +21,7 @@ colorscheme rosebones " Rosé Pine flavor - https://rosepinetheme.com
colorscheme forestbones " Everforest flavor - https://github.com/sainnhe/everforest
colorscheme nordbones " Nord flavor - https://www.nordtheme.com/docs/colors-and-palettes
colorscheme tokyobones " Tokyo Night flavor - https://github.com/enkia/tokyo-night-vscode-theme#color-palette
+colorscheme duckbones " Spaceduck flavor - https://pineapplegiant.github.io/spaceduck
```
It works pretty much the same as the first one but pretty handy when extending
@@ -27,7 +29,7 @@ or customizing the colors to your likings.
## Configuration
-Configuration is only available for neovim. There are two ways to set
+Configuration is only available for Neovim. There are two ways to set
configuration. First:
```vim
@@ -57,26 +59,29 @@ vim.g.forestbones = { solid_line_nr = true, darken_comments = 45 }
**Notes**: Flavors accept their own configuration by replacing the prefix with
the flavor name e.g. `g:rosebones_italic_comments`.
-| Option | Background | Default | Description |
-| ------------------------- | ---------- | ------- | ------------------------------------------------------------------------------------------- |
-| lightness | light | `nil` | Change background colors lightness. Options: `'bright'`, `'dim'`. |
-| darkness | dark | `nil` | Change background colors darkness. Options: `'stark'`, `'warm'`. |
-| solid_vert_split | both | `false` | Solid \|hl-VertSplit\| background. |
-| solid_line_nr | both | `false` | Solid \|hl-LineNr\| background. |
-| solid_float_border | both | `false` | Make \|hl-FloatBorder\| have a more distinguishable background highlight. |
-| darken_noncurrent_window | light | `false` | Make non-current window background darker than _Normal_. |
-| lighten_noncurrent_window | dark | `false` | Make non-current window background lighter than _Normal_. |
-| italic_comments | both | `true` | Make comments italicize. |
-| darken_comments | light | `38` | Percentage to darken comments relative to Normal bg. See also \|lush-color-darken\|. |
-| lighten_comments | dark | `38` | Percentage to lighten comments relative to Normal bg. See also \|lush-color-lighten\|. |
-| darken_non_text | light | `25` | Percentage to darken \|hl-NonText\| relative to Normal bg. See also \|lush-color-darken\|. |
-| lighten_non_text | dark | `30` | Percentage to lighten \|hl-NonText\| relative to Normal bg. See also \|lush-color-darken\|. |
-| darken_line_nr | light | `33` | Percentage to darken \|hl-LineNr\| relative to Normal bg. See also \|lush-color-darken\|. |
-| lighten_line_nr | dark | `35` | Percentage to lighten \|hl-LineNr\| relative to Normal bg. See also \|lush-color-darken\|. |
+| Option | Background | Default | Description |
+| ------------------------- | ---------- | ------- | ------------------------------------------------------------------------- |
+| lightness | light | `nil` | Change background colors lightness. Options: `'bright'`, `'dim'`. |
+| darkness | dark | `nil` | Change background colors darkness. Options: `'stark'`, `'warm'`. |
+| solid_vert_split | both | `false` | Solid \|hl-VertSplit\| background. |
+| solid_line_nr | both | `false` | Solid \|hl-LineNr\| background. |
+| solid_float_border | both | `false` | Make \|hl-FloatBorder\| have a more distinguishable background highlight. |
+| darken_noncurrent_window | light | `false` | Make non-current window background darker than _Normal_. |
+| lighten_noncurrent_window | dark | `false` | Make non-current window background lighter than _Normal_. |
+| italic_comments | both | `true` | Make comments italicize. |
+| darken_comments | light | `38` | Percentage to darken comments relative to Normal bg. |
+| lighten_comments | dark | `38` | Percentage to lighten comments relative to Normal bg. |
+| darken_non_text | light | `25` | Percentage to darken \|hl-NonText\| relative to Normal bg. |
+| lighten_non_text | dark | `30` | Percentage to lighten \|hl-NonText\| relative to Normal bg. |
+| darken_line_nr | light | `33` | Percentage to darken \|hl-LineNr\| relative to Normal bg. |
+| lighten_line_nr | dark | `35` | Percentage to lighten \|hl-LineNr\| relative to Normal bg. |
+| darken_cursor_line | light | `3` | Percentage to darken \|hl-CursorLine\| relative to Normal bg. |
+| lighten_cursor_line | dark | `4` | Percentage to lighten \|hl-CursorLine\| relative to Normal bg. |
+| transparent_background | both | `false` | Make background transparent. |
#### g:zenbones_compat
-Set to `1` to enable compatibility mode. Enable in vim.
+Set to `1` to enable compatibility mode. Enable in Vim.
### lightline
@@ -105,6 +110,8 @@ print(theme.StatusLine.bg.hex)
print(palette.blossom.darken(20).hex)
```
+### Extend/override highlights
+
Here's an example of how to extend/override some highlights.
`lua/customize_zenbones.lua`:
diff --git a/doc/zenbones.txt b/doc/zenbones.txt
index 6f0a3cc..ceffbb8 100644
--- a/doc/zenbones.txt
+++ b/doc/zenbones.txt
@@ -3,15 +3,15 @@
==============================================================================
Table of Contents *zenbones-table-of-contents*
-1. Zenbones |zenbones-zenbones|
+1. Documentation |zenbones-documentation|
- Usage |zenbones-usage|
- Configuration |zenbones-configuration|
- Advanced Usage |zenbones-advanced-usage|
==============================================================================
-1. Zenbones *zenbones-zenbones*
+1. Documentation *zenbones-documentation*
-Zenbones is a collection of vim/neovim colorschemes designed to highlight code
+Zenbones is a collection of Vim/Neovim colorschemes designed to highlight code
using contrasts and font variations. Colors are tasked only for other roles
such as diagnostics, diffs, search matches.
@@ -21,9 +21,9 @@ Just apply the colorscheme as usual:
>
set termguicolors
+ set background=light " or dark
- colorscheme zenbones " light
- colorscheme zenflesh " dark
+ colorscheme zenbones
colorscheme zenwritten " Zero hue and saturation version
colorscheme neobones " https://neovim.io flavor
@@ -32,6 +32,7 @@ Just apply the colorscheme as usual:
colorscheme forestbones " Everforest flavor - https://github.com/sainnhe/everforest
colorscheme nordbones " Nord flavor - https://www.nordtheme.com/docs/colors-and-palettes
colorscheme tokyobones " Tokyo Night flavor - https://github.com/enkia/tokyo-night-vscode-theme#color-palette
+ colorscheme duckbones " Spaceduck flavor - https://pineapplegiant.github.io/spaceduck
<
@@ -40,7 +41,7 @@ or customizing the colors to your likings.
CONFIGURATION *zenbones-configuration*
-Configuration is only available for neovim. There are two ways to set
+Configuration is only available for Neovim. There are two ways to set
configuration. First:
>
@@ -74,49 +75,54 @@ Second way is to set configuration is to assign a dictionary to the prefix:
**Notes**: Flavors accept their own configuration by replacing the prefix with
the flavor name e.g. `g:rosebones_italic_comments`.
-│ Option │Backg│Defau│ Description │
-│ │round│ lt │ │
-│ │ │ │ │
-│lightness │light│nil │Change background colors lightness. Options: 'bri│
-│ │ │ │ght', 'dim'. │
-│darkness │dark │nil │Change background colors darkness. Options: 'star│
-│ │ │ │k', 'warm'. │
-│solid_vert_spl│both │false│Solid |hl-VertSplit| background. │
-│it │ │ │ │
-│solid_line_nr │both │false│Solid |hl-LineNr| background. │
-│ │ │ │ │
-│solid_float_bo│both │false│Make |hl-FloatBorder| have a more distinguishable│
-│rder │ │ │ background highlight. │
-│darken_noncurr│light│false│Make non-current window background darker than _N│
-│ent_window │ │ │ormal_. │
-│lighten_noncur│dark │false│Make non-current window background lighter than _│
-│rent_window │ │ │Normal_. │
-│italic_comment│both │true │Make comments italicize. │
-│s │ │ │ │
-│darken_comment│light│38 │Percentage to darken comments relative to Normal │
-│s │ │ │bg. See also |lush-color-darken|. │
-│lighten_commen│dark │38 │Percentage to lighten comments relative to Normal│
-│ts │ │ │ bg. See also |lush-color-lighten|. │
-│darken_non_tex│light│25 │Percentage to darken |hl-NonText| relative to Nor│
-│t │ │ │mal bg. See also |lush-color-darken|. │
-│lighten_non_te│dark │30 │Percentage to lighten |hl-NonText| relative to No│
-│xt │ │ │rmal bg. See also |lush-color-darken|. │
-│darken_line_nr│light│33 │Percentage to darken |hl-LineNr| relative to Norm│
-│ │ │ │al bg. See also |lush-color-darken|. │
-│lighten_line_n│dark │35 │Percentage to lighten |hl-LineNr| relative to Nor│
-│r │ │ │mal bg. See also |lush-color-darken|. │
+│ Option │Backgr│Defau│ Description │
+│ │ ound │ lt │ │
+│lightness │light │nil │Change background colors lightness. Options: │
+│ │ │ │'bright', 'dim'. │
+│darkness │dark │nil │Change background colors darkness. Options: '│
+│ │ │ │stark', 'warm'. │
+│solid_vert_spli│both │false│Solid |hl-VertSplit| background. │
+│t │ │ │ │
+│solid_line_nr │both │false│Solid |hl-LineNr| background. │
+│ │ │ │ │
+│solid_float_bor│both │false│Make |hl-FloatBorder| have a more distinguish│
+│der │ │ │able background highlight. │
+│darken_noncurre│light │false│Make non-current window background darker tha│
+│nt_window │ │ │n _Normal_. │
+│lighten_noncurr│dark │false│Make non-current window background lighter th│
+│ent_window │ │ │an _Normal_. │
+│italic_comments│both │true │Make comments italicize. │
+│ │ │ │ │
+│darken_comments│light │38 │Percentage to darken comments relative to Nor│
+│ │ │ │mal bg. │
+│lighten_comment│dark │38 │Percentage to lighten comments relative to No│
+│s │ │ │rmal bg. │
+│darken_non_text│light │25 │Percentage to darken |hl-NonText| relative to│
+│ │ │ │ Normal bg. │
+│lighten_non_tex│dark │30 │Percentage to lighten |hl-NonText| relative t│
+│t │ │ │o Normal bg. │
+│darken_line_nr │light │33 │Percentage to darken |hl-LineNr| relative to │
+│ │ │ │Normal bg. │
+│lighten_line_nr│dark │35 │Percentage to lighten |hl-LineNr| relative to│
+│ │ │ │ Normal bg. │
+│darken_cursor_l│light │3 │Percentage to darken |hl-CursorLine| relative│
+│ine │ │ │ to Normal bg. │
+│lighten_cursor_│dark │4 │Percentage to lighten |hl-CursorLine| relativ│
+│line │ │ │e to Normal bg. │
+│transparent_bac│both │false│Make background transparent. │
+│kground │ │ │ │
*zenbones-g:zenbones_compat*
g:zenbones_compat Set to `1` to enable compatibility mode.
- Enable in vim.
+ Enable in Vim.
LIGHTLINE ~
>
- let g:lightline = #{ colorscheme: 'zenbones' } " or zenflesh
+ let g:lightline = #{ colorscheme: 'zenbones' }
<
@@ -124,7 +130,7 @@ LUALINE ~
>
require("lualine").setup {
- options = { theme = "zenbones" }, -- or zenflesh
+ options = { theme = "zenbones" },
}
<
@@ -135,7 +141,7 @@ Zenbones is pretty extensible thanks to Lush. You can easily retrieve the
colors in lua:
>
- local theme = require "zenbones" -- or zenflesh
+ local theme = require "zenbones"
local palette = require "zenbones.palette"
print(theme.StatusLine.bg.hex)
@@ -143,6 +149,8 @@ colors in lua:
<
+EXTEND/OVERRIDE HIGHLIGHTS ~
+
Here’s an example of how to extend/override some highlights.
`lua/customize_zenbones.lua`:
diff --git a/extras/alacritty/zenbones_dark.yml b/extras/alacritty/zenbones_dark.yml
new file mode 100644
index 0000000..da966e4
--- /dev/null
+++ b/extras/alacritty/zenbones_dark.yml
@@ -0,0 +1,27 @@
+# This file is auto-generated from lua/zenbones/template/alacritty.lua
+# zenbones_dark alacritty colors
+colors:
+ # Default colors
+ primary:
+ background: '#1C1917'
+ foreground: '#B4BDC3'
+ # Normal colors
+ normal:
+ black: '#0F191F'
+ red: '#DE6E7C'
+ green: '#90FF6B'
+ yellow: '#B77E64'
+ blue: '#8190D4'
+ magenta: '#B279A7'
+ cyan: '#66A5AD'
+ white: '#C6D5CF'
+ # Bright colors
+ bright:
+ black: '#263945'
+ red: '#E8838F'
+ green: '#A0FF85'
+ yellow: '#D68C67'
+ blue: '#92A0E2'
+ magenta: '#CF86C1'
+ cyan: '#65B8C1'
+ white: '#98A39E'
diff --git a/extras/alacritty/zenbones_light.yml b/extras/alacritty/zenbones_light.yml
new file mode 100644
index 0000000..3c4112a
--- /dev/null
+++ b/extras/alacritty/zenbones_light.yml
@@ -0,0 +1,27 @@
+# This file is auto-generated from lua/zenbones/template/alacritty.lua
+# zenbones_light alacritty colors
+colors:
+ # Default colors
+ primary:
+ background: '#F0EDEC'
+ foreground: '#2C363C'
+ # Normal colors
+ normal:
+ black: '#E5EDE6'
+ red: '#A8334C'
+ green: '#567A30'
+ yellow: '#944927'
+ blue: '#286486'
+ magenta: '#88507D'
+ cyan: '#3B8992'
+ white: '#202E18'
+ # Bright colors
+ bright:
+ black: '#B3C6B6'
+ red: '#94253E'
+ green: '#3F5A22'
+ yellow: '#803D1C'
+ blue: '#1D5573'
+ magenta: '#7B3B70'
+ cyan: '#2B747C'
+ white: '#415934'
diff --git a/extras/iterm/zenbones_dark.itermcolors b/extras/iterm/zenbones_dark.itermcolors
new file mode 100644
index 0000000..194311a
--- /dev/null
+++ b/extras/iterm/zenbones_dark.itermcolors
@@ -0,0 +1,357 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1215686274509804
+ Color Space
+ sRGB
+ Green Component
+ 0.0980392156862745
+ Red Component
+ 0.0588235294117647
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4862745098039216
+ Color Space
+ sRGB
+ Green Component
+ 0.4313725490196079
+ Red Component
+ 0.8705882352941177
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5215686274509804
+ Color Space
+ sRGB
+ Green Component
+ 1.0000000000000000
+ Red Component
+ 0.6274509803921569
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4039215686274510
+ Color Space
+ sRGB
+ Green Component
+ 0.5490196078431373
+ Red Component
+ 0.8392156862745098
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8862745098039215
+ Color Space
+ sRGB
+ Green Component
+ 0.6274509803921569
+ Red Component
+ 0.5725490196078431
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7568627450980392
+ Color Space
+ sRGB
+ Green Component
+ 0.5254901960784314
+ Red Component
+ 0.8117647058823529
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7568627450980392
+ Color Space
+ sRGB
+ Green Component
+ 0.7215686274509804
+ Red Component
+ 0.3960784313725490
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6196078431372549
+ Color Space
+ sRGB
+ Green Component
+ 0.6392156862745098
+ Red Component
+ 0.5960784313725490
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4196078431372549
+ Color Space
+ sRGB
+ Green Component
+ 1.0000000000000000
+ Red Component
+ 0.5647058823529412
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3921568627450980
+ Color Space
+ sRGB
+ Green Component
+ 0.4941176470588236
+ Red Component
+ 0.7176470588235294
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8313725490196079
+ Color Space
+ sRGB
+ Green Component
+ 0.5647058823529412
+ Red Component
+ 0.5058823529411764
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6549019607843137
+ Color Space
+ sRGB
+ Green Component
+ 0.4745098039215686
+ Red Component
+ 0.6980392156862745
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6784313725490196
+ Color Space
+ sRGB
+ Green Component
+ 0.6470588235294118
+ Red Component
+ 0.4000000000000000
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8117647058823529
+ Color Space
+ sRGB
+ Green Component
+ 0.8352941176470589
+ Red Component
+ 0.7764705882352941
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2705882352941176
+ Color Space
+ sRGB
+ Green Component
+ 0.2235294117647059
+ Red Component
+ 0.1490196078431373
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5607843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.5137254901960784
+ Red Component
+ 0.9098039215686274
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0901960784313725
+ Color Space
+ sRGB
+ Green Component
+ 0.0980392156862745
+ Red Component
+ 0.1098039215686274
+
+ Badge Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3882352941176471
+ Color Space
+ sRGB
+ Green Component
+ 0.4039215686274510
+ Red Component
+ 0.4313725490196079
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2705882352941176
+ Color Space
+ sRGB
+ Green Component
+ 0.2235294117647059
+ Red Component
+ 0.1490196078431373
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8117647058823529
+ Color Space
+ sRGB
+ Green Component
+ 0.7921568627450980
+ Red Component
+ 0.7686274509803922
+
+ Cursor Guide Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1215686274509804
+ Color Space
+ sRGB
+ Green Component
+ 0.1294117647058824
+ Red Component
+ 0.1450980392156863
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0901960784313725
+ Color Space
+ sRGB
+ Green Component
+ 0.0980392156862745
+ Red Component
+ 0.1098039215686274
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7647058823529411
+ Color Space
+ sRGB
+ Green Component
+ 0.7411764705882353
+ Red Component
+ 0.7058823529411765
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8862745098039215
+ Color Space
+ sRGB
+ Green Component
+ 0.6274509803921569
+ Red Component
+ 0.5725490196078431
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7647058823529411
+ Color Space
+ sRGB
+ Green Component
+ 0.7411764705882353
+ Red Component
+ 0.7058823529411765
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2588235294117647
+ Color Space
+ sRGB
+ Green Component
+ 0.2509803921568627
+ Red Component
+ 0.2392156862745098
+
+ Tab Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0901960784313725
+ Color Space
+ sRGB
+ Green Component
+ 0.0980392156862745
+ Red Component
+ 0.1098039215686274
+
+
+
\ No newline at end of file
diff --git a/extras/iterm/zenbones_light.itermcolors b/extras/iterm/zenbones_light.itermcolors
new file mode 100644
index 0000000..c027e3e
--- /dev/null
+++ b/extras/iterm/zenbones_light.itermcolors
@@ -0,0 +1,357 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9019607843137255
+ Color Space
+ sRGB
+ Green Component
+ 0.9294117647058824
+ Red Component
+ 0.8980392156862745
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2980392156862745
+ Color Space
+ sRGB
+ Green Component
+ 0.2000000000000000
+ Red Component
+ 0.6588235294117647
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1333333333333333
+ Color Space
+ sRGB
+ Green Component
+ 0.3529411764705883
+ Red Component
+ 0.2470588235294118
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1098039215686274
+ Color Space
+ sRGB
+ Green Component
+ 0.2392156862745098
+ Red Component
+ 0.5019607843137255
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4509803921568628
+ Color Space
+ sRGB
+ Green Component
+ 0.3333333333333333
+ Red Component
+ 0.1137254901960784
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4392156862745098
+ Color Space
+ sRGB
+ Green Component
+ 0.2313725490196079
+ Red Component
+ 0.4823529411764706
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4862745098039216
+ Color Space
+ sRGB
+ Green Component
+ 0.4549019607843137
+ Red Component
+ 0.1686274509803922
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2039215686274510
+ Color Space
+ sRGB
+ Green Component
+ 0.3490196078431372
+ Red Component
+ 0.2549019607843137
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1882352941176471
+ Color Space
+ sRGB
+ Green Component
+ 0.4784313725490196
+ Red Component
+ 0.3372549019607843
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1529411764705882
+ Color Space
+ sRGB
+ Green Component
+ 0.2862745098039216
+ Red Component
+ 0.5803921568627451
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5254901960784314
+ Color Space
+ sRGB
+ Green Component
+ 0.3921568627450980
+ Red Component
+ 0.1568627450980392
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4901960784313725
+ Color Space
+ sRGB
+ Green Component
+ 0.3137254901960784
+ Red Component
+ 0.5333333333333333
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5725490196078431
+ Color Space
+ sRGB
+ Green Component
+ 0.5372549019607843
+ Red Component
+ 0.2313725490196079
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0941176470588235
+ Color Space
+ sRGB
+ Green Component
+ 0.1803921568627451
+ Red Component
+ 0.1254901960784314
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7137254901960784
+ Color Space
+ sRGB
+ Green Component
+ 0.7764705882352941
+ Red Component
+ 0.7019607843137254
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2431372549019608
+ Color Space
+ sRGB
+ Green Component
+ 0.1450980392156863
+ Red Component
+ 0.5803921568627451
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9254901960784314
+ Color Space
+ sRGB
+ Green Component
+ 0.9294117647058824
+ Red Component
+ 0.9411764705882353
+
+ Badge Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5215686274509804
+ Color Space
+ sRGB
+ Green Component
+ 0.5372549019607843
+ Red Component
+ 0.5803921568627451
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7137254901960784
+ Color Space
+ sRGB
+ Green Component
+ 0.7764705882352941
+ Red Component
+ 0.7019607843137254
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2352941176470588
+ Color Space
+ sRGB
+ Green Component
+ 0.2117647058823529
+ Red Component
+ 0.1725490196078431
+
+ Cursor Guide Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8862745098039215
+ Color Space
+ sRGB
+ Green Component
+ 0.8941176470588236
+ Red Component
+ 0.9137254901960784
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9254901960784314
+ Color Space
+ sRGB
+ Green Component
+ 0.9294117647058824
+ Red Component
+ 0.9411764705882353
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2352941176470588
+ Color Space
+ sRGB
+ Green Component
+ 0.2117647058823529
+ Red Component
+ 0.1725490196078431
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4509803921568628
+ Color Space
+ sRGB
+ Green Component
+ 0.3333333333333333
+ Red Component
+ 0.1137254901960784
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2352941176470588
+ Color Space
+ sRGB
+ Green Component
+ 0.2117647058823529
+ Red Component
+ 0.1725490196078431
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8901960784313725
+ Color Space
+ sRGB
+ Green Component
+ 0.8509803921568627
+ Red Component
+ 0.7960784313725490
+
+ Tab Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9254901960784314
+ Color Space
+ sRGB
+ Green Component
+ 0.9294117647058824
+ Red Component
+ 0.9411764705882353
+
+
+
\ No newline at end of file
diff --git a/extras/kitty/zenbones_dark.conf b/extras/kitty/zenbones_dark.conf
new file mode 100644
index 0000000..89e7064
--- /dev/null
+++ b/extras/kitty/zenbones_dark.conf
@@ -0,0 +1,40 @@
+# This file is auto-generated from lua/zenbones/template/kitty.lua
+# vim:ft=kitty
+## name: zenbones_dark
+## license: MIT
+## author: Michael Chris Lopez
+## upstream: https://github.com/mcchrish/zenbones.nvim/raw/main/extras/kitty/zenbones_dark.conf
+
+background #1C1917
+foreground #B4BDC3
+selection_background #3D4042
+selection_foreground #B4BDC3
+url_color #92A0E2
+cursor #B4BDC3
+
+# Tabs
+active_tab_background #65435E
+active_tab_foreground #B4BDC3
+inactive_tab_background #3E3835
+inactive_tab_foreground #B4BDC3
+#tab_bar_background ${tab_bar_background}
+
+# normal
+color0 #0F191F
+color1 #DE6E7C
+color2 #90FF6B
+color3 #B77E64
+color4 #8190D4
+color5 #B279A7
+color6 #66A5AD
+color7 #C6D5CF
+
+# bright
+color8 #263945
+color9 #E8838F
+color10 #A0FF85
+color11 #D68C67
+color12 #92A0E2
+color13 #CF86C1
+color14 #65B8C1
+color15 #98A39E
diff --git a/extras/kitty/zenbones_light.conf b/extras/kitty/zenbones_light.conf
new file mode 100644
index 0000000..905c35a
--- /dev/null
+++ b/extras/kitty/zenbones_light.conf
@@ -0,0 +1,40 @@
+# This file is auto-generated from lua/zenbones/template/kitty.lua
+# vim:ft=kitty
+## name: zenbones_light
+## license: MIT
+## author: Michael Chris Lopez
+## upstream: https://github.com/mcchrish/zenbones.nvim/raw/main/extras/kitty/zenbones_light.conf
+
+background #F0EDEC
+foreground #2C363C
+selection_background #CBD9E3
+selection_foreground #2C363C
+url_color #1D5573
+cursor #2C363C
+
+# Tabs
+active_tab_background #DEB9D6
+active_tab_foreground #2C363C
+inactive_tab_background #D1C7C3
+inactive_tab_foreground #2C363C
+#tab_bar_background ${tab_bar_background}
+
+# normal
+color0 #E5EDE6
+color1 #A8334C
+color2 #567A30
+color3 #944927
+color4 #286486
+color5 #88507D
+color6 #3B8992
+color7 #202E18
+
+# bright
+color8 #B3C6B6
+color9 #94253E
+color10 #3F5A22
+color11 #803D1C
+color12 #1D5573
+color13 #7B3B70
+color14 #2B747C
+color15 #415934
diff --git a/extras/tmux/zenbones_dark.tmux b/extras/tmux/zenbones_dark.tmux
new file mode 100644
index 0000000..6b54c1e
--- /dev/null
+++ b/extras/tmux/zenbones_dark.tmux
@@ -0,0 +1,18 @@
+# This file is auto-generated from lua/zenbones/template/tmux.lua
+set -g status-left ' #[fg=#B279A7,bold]#{s/root//:client_key_table} '
+set -g status-right '#[fg=#B279A7,bold] [#S]#[fg=#B279A7,bold] [%d/%m] #[fg=#B279A7,bold][%I:%M%p] '
+set -g status-style fg='#B279A7',bg='#C6D5CF'
+
+set -g window-status-current-style fg='#B279A7',bg='#C6D5CF',bold
+
+set -g pane-border-style fg='#B279A7'
+set -g pane-active-border-style fg='#B279A7'
+
+set -g message-style fg='#0F191F',bg='#3D4042'
+
+set -g display-panes-active-colour '#B279A7'
+set -g display-panes-colour '#B279A7'
+
+set -g clock-mode-colour '#B279A7'
+
+set -g mode-style fg='#0F191F',bg='#3D4042'
diff --git a/extras/tmux/zenbones_light.tmux b/extras/tmux/zenbones_light.tmux
new file mode 100644
index 0000000..d73c3bb
--- /dev/null
+++ b/extras/tmux/zenbones_light.tmux
@@ -0,0 +1,18 @@
+# This file is auto-generated from lua/zenbones/template/tmux.lua
+set -g status-left ' #[fg=#88507D,bold]#{s/root//:client_key_table} '
+set -g status-right '#[fg=#88507D,bold] [#S]#[fg=#88507D,bold] [%d/%m] #[fg=#88507D,bold][%I:%M%p] '
+set -g status-style fg='#88507D',bg='#202E18'
+
+set -g window-status-current-style fg='#88507D',bg='#202E18',bold
+
+set -g pane-border-style fg='#88507D'
+set -g pane-active-border-style fg='#88507D'
+
+set -g message-style fg='#E5EDE6',bg='#CBD9E3'
+
+set -g display-panes-active-colour '#88507D'
+set -g display-panes-colour '#88507D'
+
+set -g clock-mode-colour '#88507D'
+
+set -g mode-style fg='#E5EDE6',bg='#CBD9E3'
diff --git a/extras/wezterm/Zenbones_dark.toml b/extras/wezterm/Zenbones_dark.toml
new file mode 100644
index 0000000..aeee76b
--- /dev/null
+++ b/extras/wezterm/Zenbones_dark.toml
@@ -0,0 +1,13 @@
+# This file is auto-generated from lua/zenbones/template/wezterm.lua
+# Zenbones_dark
+[colors]
+foreground = "#B4BDC3"
+background = "#1C1917"
+cursor_bg = "#C4CACF"
+cursor_border = "#1C1917"
+cursor_fg = "#1C1917"
+selection_bg = "#3D4042"
+selection_fg = "#B4BDC3"
+
+ansi = ["#0F191F", "#DE6E7C", "#90FF6B", "#B77E64", "#8190D4", "#B279A7", "#66A5AD", "#C6D5CF"]
+brights = ["#263945", "#E8838F", "#A0FF85", "#D68C67", "#92A0E2", "#CF86C1", "#65B8C1", "#98A39E"]
diff --git a/extras/wezterm/Zenbones_light.toml b/extras/wezterm/Zenbones_light.toml
new file mode 100644
index 0000000..8afb414
--- /dev/null
+++ b/extras/wezterm/Zenbones_light.toml
@@ -0,0 +1,13 @@
+# This file is auto-generated from lua/zenbones/template/wezterm.lua
+# Zenbones_light
+[colors]
+foreground = "#2C363C"
+background = "#F0EDEC"
+cursor_bg = "#2C363C"
+cursor_border = "#F0EDEC"
+cursor_fg = "#F0EDEC"
+selection_bg = "#CBD9E3"
+selection_fg = "#2C363C"
+
+ansi = ["#E5EDE6", "#A8334C", "#567A30", "#944927", "#286486", "#88507D", "#3B8992", "#202E18"]
+brights = ["#B3C6B6", "#94253E", "#3F5A22", "#803D1C", "#1D5573", "#7B3B70", "#2B747C", "#415934"]
diff --git a/lua/duckbones/init.lua b/lua/duckbones/init.lua
new file mode 100644
index 0000000..22a688b
--- /dev/null
+++ b/lua/duckbones/init.lua
@@ -0,0 +1,17 @@
+local lush = require "lush"
+local generator = require "zenbones.specs"
+local p = require("duckbones.palette").dark
+
+local specs = generator.generate(p, "dark", generator.get_global_config("duckbones", "dark"))
+
+return lush.extends({ specs }).with(function()
+ ---@diagnostic disable: undefined-global
+ -- selene: allow(undefined_variable)
+ return {
+ Statement { specs.Statement, fg = p.blossom },
+ Special { fg = p.leaf },
+ PreProc { fg = p.sky },
+ }
+ -- selene: deny(undefined_variable)
+ ---@diagnostic enable: undefined-global
+end)
diff --git a/lua/duckbones/palette.lua b/lua/duckbones/palette.lua
new file mode 100644
index 0000000..d61c2d1
--- /dev/null
+++ b/lua/duckbones/palette.lua
@@ -0,0 +1,19 @@
+local util = require "zenbones.util"
+local lush = require "lush"
+local hsluv = lush.hsluv
+
+local M = {}
+
+M.dark = util.palette_extend {
+ bg = hsluv "#0f111b",
+ fg = hsluv "#ecf0c1",
+ rose = hsluv "#e33400",
+ leaf = hsluv "#5ccc96",
+ wood = hsluv "#e39400",
+ water = hsluv "#00a3cc",
+ blossom = hsluv "#7a5ccc",
+ blossom1 = hsluv "#b3a1e6",
+ sky = hsluv "#00a3cc",
+}
+
+return M
diff --git a/lua/lualine/themes/zenbones.lua b/lua/lualine/themes/zenbones.lua
index 01a459f..7f82ebe 100644
--- a/lua/lualine/themes/zenbones.lua
+++ b/lua/lualine/themes/zenbones.lua
@@ -1,34 +1 @@
--- This file is auto-generated from lua/zenbones/template/lualine.lua
-local common_fg = "#564E4A"
-local inactive_bg = "#DAD3CF"
-local inactive_fg = "#596A76"
-
-return {
- normal = {
- a = { bg = "#B2A39B", fg = common_fg, gui = "bold" },
- b = { bg = "#C4B6AF", fg = common_fg },
- c = { bg = "#D1C7C3", fg = "#2C363C" },
- },
-
- insert = {
- a = { bg = "#A9BED1", fg = common_fg, gui = "bold" },
- },
-
- command = {
- a = { bg = "#DEB9D6", fg = common_fg, gui = "bold" },
- },
-
- visual = {
- a = { bg = "#CBD9E3", fg = common_fg, gui = "bold" },
- },
-
- replace = {
- a = { bg = "#EBD8DA", fg = common_fg, gui = "bold" },
- },
-
- inactive = {
- a = { bg = inactive_bg, fg = inactive_fg, gui = "bold" },
- b = { bg = inactive_bg, fg = inactive_fg },
- c = { bg = inactive_bg, fg = inactive_fg },
- },
-}
+return require("lualine.themes.zenbones_" .. vim.opt.background:get())
diff --git a/lua/lualine/themes/zenbones_dark.lua b/lua/lualine/themes/zenbones_dark.lua
new file mode 100644
index 0000000..7ee10cd
--- /dev/null
+++ b/lua/lualine/themes/zenbones_dark.lua
@@ -0,0 +1,34 @@
+-- This file is auto-generated from lua/zenbones/template/lualine.lua
+local common_fg = "#AFA099"
+local inactive_bg = "#322D2B"
+local inactive_fg = "#CAD0D4"
+
+return {
+ normal = {
+ a = { bg = "#736863", fg = common_fg, gui = "bold" },
+ b = { bg = "#4F4844", fg = common_fg },
+ c = { bg = "#3E3835", fg = "#B4BDC3" },
+ },
+
+ insert = {
+ a = { bg = "#324757", fg = common_fg, gui = "bold" },
+ },
+
+ command = {
+ a = { bg = "#65435E", fg = common_fg, gui = "bold" },
+ },
+
+ visual = {
+ a = { bg = "#3D4042", fg = common_fg, gui = "bold" },
+ },
+
+ replace = {
+ a = { bg = "#3E2225", fg = common_fg, gui = "bold" },
+ },
+
+ inactive = {
+ a = { bg = inactive_bg, fg = inactive_fg, gui = "bold" },
+ b = { bg = inactive_bg, fg = inactive_fg },
+ c = { bg = inactive_bg, fg = inactive_fg },
+ },
+}
diff --git a/lua/lualine/themes/zenbones_light.lua b/lua/lualine/themes/zenbones_light.lua
new file mode 100644
index 0000000..01a459f
--- /dev/null
+++ b/lua/lualine/themes/zenbones_light.lua
@@ -0,0 +1,34 @@
+-- This file is auto-generated from lua/zenbones/template/lualine.lua
+local common_fg = "#564E4A"
+local inactive_bg = "#DAD3CF"
+local inactive_fg = "#596A76"
+
+return {
+ normal = {
+ a = { bg = "#B2A39B", fg = common_fg, gui = "bold" },
+ b = { bg = "#C4B6AF", fg = common_fg },
+ c = { bg = "#D1C7C3", fg = "#2C363C" },
+ },
+
+ insert = {
+ a = { bg = "#A9BED1", fg = common_fg, gui = "bold" },
+ },
+
+ command = {
+ a = { bg = "#DEB9D6", fg = common_fg, gui = "bold" },
+ },
+
+ visual = {
+ a = { bg = "#CBD9E3", fg = common_fg, gui = "bold" },
+ },
+
+ replace = {
+ a = { bg = "#EBD8DA", fg = common_fg, gui = "bold" },
+ },
+
+ inactive = {
+ a = { bg = inactive_bg, fg = inactive_fg, gui = "bold" },
+ b = { bg = inactive_bg, fg = inactive_fg },
+ c = { bg = inactive_bg, fg = inactive_fg },
+ },
+}
diff --git a/lua/zenbones/specs/dark.lua b/lua/zenbones/specs/dark.lua
index fc34c50..62fd3a6 100644
--- a/lua/zenbones/specs/dark.lua
+++ b/lua/zenbones/specs/dark.lua
@@ -37,7 +37,7 @@ local function generate(p, opt)
-- styling for that group (meaning they mostly get styled as Normal)
-- or leave them commented to apply vims default colouring or linking.
- Normal { bg = p1.bg, fg = p.fg }, -- normal text
+ Normal { bg = not opt.transparent_background and p1.bg or "NONE", fg = p.fg }, -- normal text
Underlined { gui = "underline" }, -- (preferred) text that stands out, HTML links
Bold { gui = "bold" },
@@ -47,7 +47,7 @@ local function generate(p, opt)
ErrorMsg { Error }, -- error messages on the command line
WarningMsg { fg = p.wood }, -- warning messages
- Comment { fg = Normal.bg.li(opt.lighten_comments or 38).de(24), gui = opt.italic_comments ~= false and "italic" or "NONE" }, -- any comment
+ Comment { fg = p1.bg.li(opt.lighten_comments or 38).de(24), gui = opt.italic_comments ~= false and "italic" or "NONE" }, -- any comment
Conceal { fg = p1.fg5, gui = "bold,italic" }, -- placeholder characters substituted for concealed text (see 'conceallevel')
Cursor { bg = p.fg.li(20), fg = p1.bg }, -- character under the cursor
@@ -56,35 +56,35 @@ local function generate(p, opt)
TermCursor { Cursor }, -- cursor in a focused terminal
TermCursorNC { lCursor }, -- cursor in an unfocused terminal
- CursorLine { bg = Normal.bg.li(4) }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set.
+ CursorLine { bg = p1.bg.li(opt.lighten_cursor_line or 4) }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set.
CursorColumn { CursorLine }, -- Screen-column at the cursor, when 'cursorcolumn' is set.
- ColorColumn { bg = p.wood.saturation(46).lightness(Normal.bg.l + 18) }, -- used for the columns set with 'colorcolumn'
+ ColorColumn { bg = p.wood.saturation(46).lightness(p1.bg.l + 18) }, -- used for the columns set with 'colorcolumn'
DiffAdd { bg = p.leaf.saturation(50).lightness(p1.bg.l + 8) }, -- diff mode: Added line |diff.txt|
DiffChange { bg = p.water.saturation(50).lightness(p1.bg.l + 8) }, -- diff mode: Changed line |diff.txt|
DiffDelete { bg = p.rose.saturation(30).lightness(p1.bg.l + 8) }, -- diff mode: Deleted line |diff.txt|
DiffText { bg = p.water.saturation(50).lightness(p1.bg.l + 20), fg = p.fg }, -- diff mode: Changed text within a changed line |diff.txt|
- LineNr { fg = Normal.bg.li(opt.lighten_line_nr or 35), bg = opt.solid_line_nr and Normal.bg.li(6) or "NONE" }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
+ LineNr { fg = p1.bg.li(opt.lighten_line_nr or 35), bg = opt.solid_line_nr and p1.bg.li(6) or "NONE" }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
SignColumn { LineNr }, -- column where |signs| are displayed
FoldColumn { LineNr, gui = "bold" }, -- 'foldcolumn'
- Folded { bg = Normal.bg.li(16), fg = Normal.bg.li(64) }, -- line used for closed folds
+ Folded { bg = p1.bg.li(16), fg = p1.bg.li(64) }, -- line used for closed folds
CursorLineNr { LineNr, fg = p.fg, gui = "bold" }, -- Like LineNr when 'cursorline' or 'relativenumber' is set for the cursor line.
-- ModeMsg { }, -- 'showmode' message (e.g., "-- INSERT -- ")
-- MsgArea { }, -- Area for messages and cmdline
-- MsgSeparator { }, -- Separator for scrolled messages, `msgsep` flag of 'display'
MoreMsg { fg = p.leaf, gui = "bold" }, -- |more-prompt|
- NormalFloat { bg = Normal.bg.li(8) }, -- Normal text in floating windows.
- FloatBorder { fg = Normal.bg.li(46), bg = opt.solid_float_border and NormalFloat.bg or "NONE" }, -- Normal text in floating windows.
+ NormalFloat { bg = p1.bg.li(8) }, -- Normal text in floating windows.
+ FloatBorder { fg = p1.bg.li(46), bg = opt.solid_float_border and NormalFloat.bg or "NONE" }, -- Normal text in floating windows.
- Pmenu { bg = Normal.bg.li(12) }, -- Popup menu: normal item.
- PmenuSel { bg = Normal.bg.li(24) }, -- Popup menu: selected item.
- PmenuSbar { bg = Normal.bg.li(40) }, -- Popup menu: scrollbar.
- PmenuThumb { bg = Normal.bg.li(50) }, -- Popup menu: Thumb of the scrollbar.
+ Pmenu { bg = p1.bg.li(12) }, -- Popup menu: normal item.
+ PmenuSel { bg = p1.bg.li(24) }, -- Popup menu: selected item.
+ PmenuSbar { bg = p1.bg.li(40) }, -- Popup menu: scrollbar.
+ PmenuThumb { bg = p1.bg.li(50) }, -- Popup menu: Thumb of the scrollbar.
- Search { bg = p.blossom.lightness(Normal.bg.l + 24), fg = p.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
- IncSearch { bg = p.blossom.lightness(Normal.bg.l + 56), fg = p1.bg, gui = "bold" }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
+ Search { bg = p.blossom.lightness(p1.bg.l + 24), fg = p.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
+ IncSearch { bg = p.blossom.lightness(p1.bg.l + 56), fg = p1.bg, gui = "bold" }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
-- Substitute { }, -- |:substitute| replacement text highlighting
MatchParen { Search }, -- The character under the cursor or just before it, if it is a paired bracket, and its match. |pi_paren.txt|
-- QuickFixLine { }, -- Current |quickfix| item in the quickfix window. Combined with |hl-CursorLine| when the cursor is there.
@@ -94,17 +94,17 @@ local function generate(p, opt)
SpellLocal { SpellCap }, -- Word that is recognized by the spellchecker as one that is used in another region. |spell| Combined with the highlighting used otherwise.
SpellRare { SpellBad, guisp = p.wood }, -- Word that is recognized by the spellchecker as one that is hardly ever used. |spell| Combined with the highlighting used otherwise.
- StatusLine { bg = Normal.bg.li(16), fg = p.fg }, -- status line of current window
- StatusLineNC { bg = Normal.bg.li(11), fg = p.fg.li(28) }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
+ StatusLine { bg = p1.bg.li(16), fg = p.fg }, -- status line of current window
+ StatusLineNC { bg = p1.bg.li(11), fg = p.fg.li(28) }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
TabLine { StatusLine }, -- tab pages line, not active tab page label
TabLineFill { StatusLineNC }, -- tab pages line, where there are no labels
TabLineSel { gui = "bold" }, -- tab pages line, active tab page label
VertSplit { fg = LineNr.fg, bg = opt.solid_vert_split and StatusLineNC.bg or "NONE" }, -- the column separating vertically split windows
- Visual { bg = p.fg.de(18).lightness(Normal.bg.l + 18) }, -- Visual mode selection
+ Visual { bg = p.fg.de(18).lightness(p1.bg.l + 18) }, -- Visual mode selection
-- VisualNOS { }, -- Visual mode selection when vim is "Not Owning the Selection".
- NonText { fg = Normal.bg.li(opt.lighten_non_text or 30) }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|.
+ NonText { fg = p1.bg.li(opt.lighten_non_text or 30) }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|.
SpecialKey { NonText, gui = "italic" }, -- Unprintable characters: text displayed differently from what it really is. But not 'listchars' whitespace. |hl-Whitespace|
Whitespace { NonText }, -- "nbsp", "space", "tab" and "trail" in 'listchars'
EndOfBuffer { NonText }, -- filler lines (~) after the end of the buffer. By default, this is highlighted like |hl-NonText|.
@@ -145,7 +145,7 @@ local function generate(p, opt)
-- Macro { }, -- same as Define
-- PreCondit { }, -- preprocessor #if, #else, #endif, etc.
- Type { fg = Normal.bg.li(58) }, -- (preferred) int, long, char, etc.
+ Type { fg = p1.bg.li(58) }, -- (preferred) int, long, char, etc.
-- StorageClass { }, -- static, register, volatile, etc.
-- Structure { }, -- struct, union, enum, etc.
-- Typedef { }, -- A typedef
@@ -153,7 +153,7 @@ local function generate(p, opt)
Special { fg = p1.fg3, gui = "bold" }, -- (preferred) any special symbol
-- SpecialChar { }, -- special character in a constant
-- Tag { }, -- you can use CTRL-] on this
- Delimiter { fg = Normal.bg.li(47) }, -- character that needs attention
+ Delimiter { fg = p1.bg.li(47) }, -- character that needs attention
SpecialComment { Comment, gui = "bold" }, -- special things inside a comment
-- Debug { }, -- debugging statements
@@ -181,8 +181,8 @@ local function generate(p, opt)
DiagnosticSignInfo { SignColumn, fg = DiagnosticInfo.fg },
DiagnosticSignHint { SignColumn, fg = DiagnosticHint.fg },
- DiagnosticVirtualTextError { DiagnosticError, bg = p.rose.saturation(12).lightness(Normal.bg.l + 2) },
- DiagnosticVirtualTextWarn { DiagnosticWarn, bg = p.wood.saturation(12).lightness(Normal.bg.l + 2) },
+ DiagnosticVirtualTextError { DiagnosticError, bg = p.rose.saturation(12).lightness(p1.bg.l + 2) },
+ DiagnosticVirtualTextWarn { DiagnosticWarn, bg = p.wood.saturation(12).lightness(p1.bg.l + 2) },
DiagnosticUnderlineError { DiagnosticError, gui = "undercurl" },
DiagnosticUnderlineWarn { DiagnosticWarn, gui = "undercurl" },
@@ -286,7 +286,7 @@ local function generate(p, opt)
GitGutterChange { GitSignsChange },
GitGutterDelete { GitSignsDelete },
- IndentBlanklineChar { fg = Normal.bg.li(14).de(22) },
+ IndentBlanklineChar { fg = p1.bg.li(14).de(22) },
TelescopeSelection { CursorLine },
TelescopeSelectionCaret { TelescopeSelection, fg = p.rose },
@@ -352,7 +352,7 @@ local function generate(p, opt)
TroubleText { Function },
TroubleSource { Constant },
- NvimTreeNormal { Normal, bg = Normal.bg.li(3) },
+ NvimTreeNormal { Normal, bg = not opt.transparent_background and p1.bg.li(3) or "NONE" },
NvimTreeVertSplit { fg = "bg" },
NvimTreeCursorLine { bg = StatusLineNC.bg },
NvimTreeCursorColumn { NvimTreeCursorLine },
@@ -370,7 +370,7 @@ local function generate(p, opt)
CmpItemKind { fg = p1.fg4 },
CmpItemMenu { fg = p1.fg5 },
- NnnNormal { Normal, bg = Normal.bg.li(3) },
+ NnnNormal { NvimTreeNormal },
NnnNormalNC { NnnNormal },
NnnVertSplit { fg = "bg" },
}
@@ -390,7 +390,7 @@ local function generate(p, opt)
-- selene: allow(undefined_variable)
lush(function()
return {
- NormalNC { base.Normal, bg = base.Normal.bg.li(2) }, -- normal text in non-current windows
+ NormalNC { base.Normal, bg = not opt.transparent_background and base.Normal.bg.li(2) or "NONE" }, -- normal text in non-current windows
}
end)
-- selene: deny(undefined_variable)
diff --git a/lua/zenbones/specs/init.lua b/lua/zenbones/specs/init.lua
index be5b8c5..b3c8475 100644
--- a/lua/zenbones/specs/init.lua
+++ b/lua/zenbones/specs/init.lua
@@ -2,7 +2,7 @@ local M = {}
local function concat_config(prefix, suffixes)
local config = {}
- for _i, suffix in ipairs(suffixes) do
+ for _, suffix in ipairs(suffixes) do
config[suffix] = vim.g[prefix .. "_" .. suffix]
end
return config
@@ -18,6 +18,7 @@ function M.get_global_config(prefix, base_bg)
"solid_float_border",
"solid_line_nr",
"italic_comments",
+ "transparent_background",
})
if base_bg == "light" then
@@ -36,6 +37,7 @@ function M.get_global_config(prefix, base_bg)
"darken_comments",
"darken_line_nr",
"darken_non_text",
+ "darken_cursor_line",
}),
common
)
@@ -48,6 +50,7 @@ function M.get_global_config(prefix, base_bg)
"lighten_comments",
"lighten_line_nr",
"lighten_non_text",
+ "lighten_cursor_line",
}),
common
)
diff --git a/lua/zenbones/specs/light.lua b/lua/zenbones/specs/light.lua
index 3d29ffb..07e0a55 100644
--- a/lua/zenbones/specs/light.lua
+++ b/lua/zenbones/specs/light.lua
@@ -37,7 +37,7 @@ local function generate(p, opt)
-- styling for that group (meaning they mostly get styled as Normal)
-- or leave them commented to apply vims default colouring or linking.
- Normal { bg = p1.bg, fg = p.fg }, -- normal text
+ Normal { bg = not opt.transparent_background and p1.bg or "NONE", fg = p.fg }, -- normal text
Underlined { gui = "underline" }, -- (preferred) text that stands out, HTML links
Bold { gui = "bold" },
@@ -47,7 +47,7 @@ local function generate(p, opt)
ErrorMsg { Error }, -- error messages on the command line
WarningMsg { fg = p.wood }, -- warning messages
- Comment { fg = Normal.bg.da(opt.darken_comments or 38).de(28), gui = opt.italic_comments ~= false and "italic" or "NONE" }, -- any comment
+ Comment { fg = p1.bg.da(opt.darken_comments or 38).de(28), gui = opt.italic_comments ~= false and "italic" or "NONE" }, -- any comment
Conceal { fg = p1.fg3, gui = "bold,italic" }, -- placeholder characters substituted for concealed text (see 'conceallevel')
Cursor { bg = p.fg, fg = p1.bg }, -- character under the cursor
@@ -56,35 +56,35 @@ local function generate(p, opt)
TermCursor { Cursor }, -- cursor in a focused terminal
TermCursorNC { lCursor }, -- cursor in an unfocused terminal
- CursorLine { bg = Normal.bg.da(3) }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set.
+ CursorLine { bg = p1.bg.da(opt.darken_cursor_line or 3) }, -- Screen-line at the cursor, when 'cursorline' is set. Low-priority if foreground (ctermfg OR guifg) is not set.
CursorColumn { CursorLine }, -- Screen-column at the cursor, when 'cursorcolumn' is set.
- ColorColumn { bg = p.wood.saturation(46).lightness(Normal.bg.l - 12) }, -- used for the columns set with 'colorcolumn'
+ ColorColumn { bg = p.wood.saturation(46).lightness(p1.bg.l - 12) }, -- used for the columns set with 'colorcolumn'
DiffAdd { bg = p.leaf.saturation(30).lightness(p1.bg.l - 6) }, -- diff mode: Added line |diff.txt|
DiffChange { bg = p.water.saturation(30).lightness(p1.bg.l - 6) }, -- diff mode: Changed line |diff.txt|
DiffDelete { bg = p.rose.saturation(40).lightness(p1.bg.l - 6) }, -- diff mode: Deleted line |diff.txt|
DiffText { bg = p.water.saturation(30).lightness(p1.bg.l - 18), fg = p.fg }, -- diff mode: Changed text within a changed line |diff.txt|
- LineNr { fg = Normal.bg.da(opt.darken_line_nr or 33), bg = opt.solid_line_nr and Normal.bg.da(4) or "NONE" }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
+ LineNr { fg = p1.bg.da(opt.darken_line_nr or 33), bg = opt.solid_line_nr and p1.bg.da(4) or "NONE" }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
SignColumn { LineNr }, -- column where |signs| are displayed
FoldColumn { LineNr, gui = "bold" }, -- 'foldcolumn'
- Folded { bg = Normal.bg.da(16), fg = Normal.bg.da(64) }, -- line used for closed folds
+ Folded { bg = p1.bg.da(16), fg = p1.bg.da(64) }, -- line used for closed folds
CursorLineNr { LineNr, fg = p.fg, gui = "bold" }, -- Like LineNr when 'cursorline' or 'relativenumber' is set for the cursor line.
-- ModeMsg { }, -- 'showmode' message (e.g., "-- INSERT -- ")
-- MsgArea { }, -- Area for messages and cmdline
-- MsgSeparator { }, -- Separator for scrolled messages, `msgsep` flag of 'display'
MoreMsg { fg = p.leaf, gui = "bold" }, -- |more-prompt|
- NormalFloat { bg = Normal.bg.da(6) }, -- Normal text in floating windows.
- FloatBorder { fg = Normal.bg.da(50), bg = opt.solid_float_border and NormalFloat.bg or "NONE" }, -- Normal text in floating windows.
+ NormalFloat { bg = p1.bg.da(6) }, -- Normal text in floating windows.
+ FloatBorder { fg = p1.bg.da(50), bg = opt.solid_float_border and NormalFloat.bg or "NONE" }, -- Normal text in floating windows.
- Pmenu { bg = Normal.bg.da(10) }, -- Popup menu: normal item.
- PmenuSel { bg = Normal.bg.da(20) }, -- Popup menu: selected item.
- PmenuSbar { bg = Normal.bg.da(28) }, -- Popup menu: scrollbar.
- PmenuThumb { bg = Normal.bg.li(58) }, -- Popup menu: Thumb of the scrollbar.
+ Pmenu { bg = p1.bg.da(10) }, -- Popup menu: normal item.
+ PmenuSel { bg = p1.bg.da(20) }, -- Popup menu: selected item.
+ PmenuSbar { bg = p1.bg.da(28) }, -- Popup menu: scrollbar.
+ PmenuThumb { bg = p1.bg.li(58) }, -- Popup menu: Thumb of the scrollbar.
- Search { bg = p.blossom.lightness(Normal.bg.l - 15), fg = p.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
- IncSearch { bg = p.blossom.lightness(Normal.bg.l - 35), fg = p1.bg, gui = "bold" }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
+ Search { bg = p.blossom.lightness(p1.bg.l - 15), fg = p.fg }, -- Last search pattern highlighting (see 'hlsearch'). Also used for similar items that need to stand out.
+ IncSearch { bg = p.blossom.lightness(p1.bg.l - 35), fg = p1.bg, gui = "bold" }, -- 'incsearch' highlighting; also used for the text replaced with ":s///c"
-- Substitute { }, -- |:substitute| replacement text highlighting
MatchParen { Search }, -- The character under the cursor or just before it, if it is a paired bracket, and its match. |pi_paren.txt|
-- QuickFixLine { }, -- Current |quickfix| item in the quickfix window. Combined with |hl-CursorLine| when the cursor is there.
@@ -94,17 +94,17 @@ local function generate(p, opt)
SpellLocal { SpellCap }, -- Word that is recognized by the spellchecker as one that is used in another region. |spell| Combined with the highlighting used otherwise.
SpellRare { SpellBad, guisp = p.wood }, -- Word that is recognized by the spellchecker as one that is hardly ever used. |spell| Combined with the highlighting used otherwise.
- StatusLine { bg = Normal.bg.da(14), fg = p.fg }, -- status line of current window
- StatusLineNC { bg = Normal.bg.da(10), fg = p.fg.li(28) }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
+ StatusLine { bg = p1.bg.da(14), fg = p.fg }, -- status line of current window
+ StatusLineNC { bg = p1.bg.da(10), fg = p.fg.li(28) }, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
TabLine { StatusLine }, -- tab pages line, not active tab page label
TabLineFill { StatusLineNC }, -- tab pages line, where there are no labels
TabLineSel { gui = "bold" }, -- tab pages line, active tab page label
VertSplit { fg = LineNr.fg, bg = opt.solid_vert_split and StatusLineNC.bg or "NONE" }, -- the column separating vertically split windows
- Visual { bg = p.fg.lightness(Normal.bg.l - 8) }, -- Visual mode selection
+ Visual { bg = p.fg.lightness(p1.bg.l - 8) }, -- Visual mode selection
-- VisualNOS { }, -- Visual mode selection when vim is "Not Owning the Selection".
- NonText { fg = Normal.bg.da(opt.darken_non_text or 25) }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|.
+ NonText { fg = p1.bg.da(opt.darken_non_text or 25) }, -- '@' at the end of the window, characters from 'showbreak' and other characters that do not really exist in the text (e.g., ">" displayed when a double-wide character doesn't fit at the end of the line). See also |hl-EndOfBuffer|.
SpecialKey { NonText, gui = "italic" }, -- Unprintable characters: text displayed differently from what it really is. But not 'listchars' whitespace. |hl-Whitespace|
Whitespace { NonText }, -- "nbsp", "space", "tab" and "trail" in 'listchars'
EndOfBuffer { NonText }, -- filler lines (~) after the end of the buffer. By default, this is highlighted like |hl-NonText|.
@@ -145,7 +145,7 @@ local function generate(p, opt)
-- Macro { }, -- same as Define
-- PreCondit { }, -- preprocessor #if, #else, #endif, etp.
- Type { fg = Normal.bg.sa(20).da(60) }, -- (preferred) int, long, char, etp.
+ Type { fg = p1.bg.sa(20).da(60) }, -- (preferred) int, long, char, etp.
-- StorageClass { }, -- static, register, volatile, etc.
-- Structure { }, -- struct, union, enum, etc.
-- Typedef { }, -- A typedef
@@ -153,7 +153,7 @@ local function generate(p, opt)
Special { fg = p1.fg3, gui = "bold" }, -- (preferred) any special symbol
-- SpecialChar { }, -- special character in a constant
-- Tag { }, -- you can use CTRL-] on this
- Delimiter { fg = Normal.bg.da(42) }, -- character that needs attention
+ Delimiter { fg = p1.bg.da(42) }, -- character that needs attention
SpecialComment { Comment, gui = "bold" }, -- special things inside a comment
-- Debug { }, -- debugging statements
@@ -181,8 +181,8 @@ local function generate(p, opt)
DiagnosticSignInfo { SignColumn, fg = DiagnosticInfo.fg },
DiagnosticSignHint { SignColumn, fg = DiagnosticHint.fg },
- DiagnosticVirtualTextError { DiagnosticError, bg = p.rose.saturation(52).lightness(Normal.bg.l - 4) },
- DiagnosticVirtualTextWarn { DiagnosticWarn, bg = p.wood.saturation(52).lightness(Normal.bg.l - 4)},
+ DiagnosticVirtualTextError { DiagnosticError, bg = p.rose.saturation(52).lightness(p1.bg.l - 4) },
+ DiagnosticVirtualTextWarn { DiagnosticWarn, bg = p.wood.saturation(52).lightness(p1.bg.l - 4)},
DiagnosticUnderlineError { DiagnosticError, gui = "undercurl" },
DiagnosticUnderlineWarn { DiagnosticWarn, gui = "undercurl" },
@@ -286,7 +286,7 @@ local function generate(p, opt)
GitGutterChange { GitSignsChange },
GitGutterDelete { GitSignsDelete },
- IndentBlanklineChar { fg = Normal.bg.da(12).de(20) },
+ IndentBlanklineChar { fg = p1.bg.da(12).de(20) },
TelescopeSelection { CursorLine },
TelescopeSelectionCaret { TelescopeSelection, fg = p.rose },
@@ -352,7 +352,7 @@ local function generate(p, opt)
TroubleText { Function },
TroubleSource { Constant },
- NvimTreeNormal { Normal, bg = Normal.bg.da(3) },
+ NvimTreeNormal { Normal, bg = not opt.transparent_background and p1.bg.da(3) or "NONE" },
NvimTreeVertSplit { fg = "bg" },
NvimTreeCursorLine { bg = StatusLineNC.bg },
NvimTreeCursorColumn { NvimTreeCursorLine },
@@ -370,7 +370,7 @@ local function generate(p, opt)
CmpItemKind { fg = p1.fg4 },
CmpItemMenu { fg = p1.fg5 },
- NnnNormal { Normal, bg = Normal.bg.da(3) },
+ NnnNormal { NvimTreeNormal },
NnnNormalNC { NnnNormal },
NnnVertSplit { fg = "bg" },
}
@@ -390,7 +390,7 @@ local function generate(p, opt)
-- selene: allow(undefined_variable)
lush(function()
return {
- NormalNC { base.Normal, bg = base.Normal.bg.da(2) }, -- normal text in non-current windows
+ NormalNC { base.Normal, bg = not opt.transparent_background and base.Normal.bg.da(2) or "NONE" }, -- normal text in non-current windows
}
end)
-- selene: deny(undefined_variable)