From ecef0367bcc1fc06d33f6aa7a193f0720828f63f Mon Sep 17 00:00:00 2001 From: Michael Chris Lopez Date: Thu, 4 Nov 2021 09:46:36 +0800 Subject: [PATCH] feat: add duckbones flavor --- README.md | 1 + colors/duckbones.lua | 12 ++++++++++++ doc/showcase.md | 4 ++++ doc/zenbones.md | 1 + lua/duckbones/init.lua | 17 +++++++++++++++++ lua/duckbones/palette.lua | 19 +++++++++++++++++++ 6 files changed, 54 insertions(+) create mode 100644 colors/duckbones.lua create mode 100644 lua/duckbones/init.lua create mode 100644 lua/duckbones/palette.lua diff --git a/README.md b/README.md index f8ba765..847771d 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,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) 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 @@ Screen Shot 2021-10-31 at 8 52 12 AM Screen Shot 2021-10-31 at 8 52 20 AM + +## Duckbones + +Screen Shot 2021-11-04 at 9 45 11 AM diff --git a/doc/zenbones.md b/doc/zenbones.md index 20d79e8..1f88c9b 100644 --- a/doc/zenbones.md +++ b/doc/zenbones.md @@ -21,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 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