diff --git a/lua/cyberdream/extra/base16.lua b/lua/cyberdream/extra/base16.lua new file mode 100644 index 0000000..c60a6e6 --- /dev/null +++ b/lua/cyberdream/extra/base16.lua @@ -0,0 +1,42 @@ +local colors = require("cyberdream.colors") +local util = require("cyberdream.util") + +-- remove the # from the hex color +local function fomat_colors(unformatted) + local formatted = {} + for k, v in pairs(unformatted) do + formatted[k] = string.sub(v, 2) + end + return formatted +end + +local M = {} + +--- Generate cyberdream theme for base16. +--- @param variant string: Variation of the colorscheme to use. +function M.generate(variant) + local formatted_colors = fomat_colors(colors[variant]) + local template = [==[ +scheme: "Cyberdream" +author: "Scott McKendry" +base00: "${bg}" +base01: "${bgAlt}" +base02: "${bgHighlight}" +base03: "${grey}" +base04: "${grey}" +base05: "${fg}" +base06: "${bg}" +base07: "${fg}" +base08: "${red}" +base09: "${orange}" +base0A: "${yellow}" +base0B: "${green}" +base0C: "${cyan}" +base0D: "${blue}" +base0E: "${purple}" +base0F: "${magenta}" +]==] + return util.parse_extra_template(template, formatted_colors) +end + +return M diff --git a/lua/cyberdream/extra/init.lua b/lua/cyberdream/extra/init.lua index e015029..d63ae89 100644 --- a/lua/cyberdream/extra/init.lua +++ b/lua/cyberdream/extra/init.lua @@ -7,6 +7,7 @@ M.variants = { M.extras = { alacritty = { extension = "toml", name = "alacritty" }, + base16 = { extension = "yaml", name = "base16" }, fish = { extension = "theme", name = "fish" }, gitui = { extension = "ron", name = "gitui" }, helix = { extension = "toml", name = "helix" },