diff --git a/extras/windows_terminal/duckbones.json b/extras/windows_terminal/duckbones.json new file mode 100644 index 0000000..9ec3c4c --- /dev/null +++ b/extras/windows_terminal/duckbones.json @@ -0,0 +1,24 @@ +{ + "name": "duckbones", + "foreground": "#EBEFC0", + "background": "#0E101A", + "selectionBackground": "#37382D", + "cursorColor": "#EDF2C2", + "black": "#0E101A", + "red": "#E03600", + "green": "#5DCD97", + "yellow": "#E39500", + "blue": "#00A3CB", + "purple": "#795CCC", + "cyan": "#00A3CB", + "white": "#EBEFC0", + "brightBlack": "#2B2F46", + "brightRed": "#FF4821", + "brightGreen": "#58DB9E", + "brightYellow": "#F6A100", + "brightBlue": "#00B4E0", + "brightPurple": "#B3A1E6", + "brightCyan": "#00B4E0", + "brightWhite": "#B3B692" +} + diff --git a/extras/windows_terminal/kanagawabones.json b/extras/windows_terminal/kanagawabones.json new file mode 100644 index 0000000..46c3556 --- /dev/null +++ b/extras/windows_terminal/kanagawabones.json @@ -0,0 +1,24 @@ +{ + "name": "kanagawabones", + "foreground": "#DDD8BB", + "background": "#1F1F28", + "selectionBackground": "#49473E", + "cursorColor": "#E6E0C2", + "black": "#1F1F28", + "red": "#E46A78", + "green": "#98BC6D", + "yellow": "#E5C283", + "blue": "#7EB3C9", + "purple": "#957FB8", + "cyan": "#7EB3C9", + "white": "#DDD8BB", + "brightBlack": "#3C3C51", + "brightRed": "#EC818C", + "brightGreen": "#9EC967", + "brightYellow": "#F1C982", + "brightBlue": "#7BC2DF", + "brightPurple": "#A98FD2", + "brightCyan": "#7BC2DF", + "brightWhite": "#A8A48D" +} + diff --git a/extras/windows_terminal/neobones_dark.json b/extras/windows_terminal/neobones_dark.json new file mode 100644 index 0000000..d7e3c1f --- /dev/null +++ b/extras/windows_terminal/neobones_dark.json @@ -0,0 +1,23 @@ +{ + "name": "neobones_dark", + "foreground": "#C6D5CF", + "background": "#0F191F", + "selectionBackground": "#3A3E3D", + "cursorColor": "#CEDDD7", + "black": "#0F191F", + "red": "#DE6E7C", + "green": "#90FF6B", + "yellow": "#B77E64", + "blue": "#8190D4", + "purple": "#B279A7", + "cyan": "#66A5AD", + "white": "#C6D5CF", + "brightBlack": "#263945", + "brightRed": "#E8838F", + "brightGreen": "#A0FF85", + "brightYellow": "#D68C67", + "brightBlue": "#92A0E2", + "brightPurple": "#CF86C1", + "brightCyan": "#65B8C1", + "brightWhite": "#98A39E" +} diff --git a/extras/windows_terminal/neobones_light.json b/extras/windows_terminal/neobones_light.json new file mode 100644 index 0000000..5db1a32 --- /dev/null +++ b/extras/windows_terminal/neobones_light.json @@ -0,0 +1,24 @@ +{ + "name": "neobones_light", + "foreground": "#202E18", + "background": "#E5EDE6", + "selectionBackground": "#ADE48C", + "cursorColor": "#202E18", + "black": "#E5EDE6", + "red": "#A8334C", + "green": "#567A30", + "yellow": "#944927", + "blue": "#286486", + "purple": "#88507D", + "cyan": "#3B8992", + "white": "#202E18", + "brightBlack": "#B3C6B6", + "brightRed": "#94253E", + "brightGreen": "#3F5A22", + "brightYellow": "#803D1C", + "brightBlue": "#1D5573", + "brightPurple": "#7B3B70", + "brightCyan": "#2B747C", + "brightWhite": "#415934" +} + diff --git a/extras/windows_terminal/seoulbones_dark.json b/extras/windows_terminal/seoulbones_dark.json new file mode 100644 index 0000000..62cf4a6 --- /dev/null +++ b/extras/windows_terminal/seoulbones_dark.json @@ -0,0 +1,24 @@ +{ + "name": "seoulbones_dark", + "foreground": "#DDDDDD", + "background": "#4B4B4B", + "selectionBackground": "#777777", + "cursorColor": "#E2E2E2", + "black": "#4B4B4B", + "red": "#E388A3", + "green": "#98BD99", + "yellow": "#FFDF9B", + "blue": "#97BDDE", + "purple": "#A5A6C5", + "cyan": "#6FBDBE", + "white": "#DDDDDD", + "brightBlack": "#6C6465", + "brightRed": "#EB99B1", + "brightGreen": "#8FCD92", + "brightYellow": "#FFE5B3", + "brightBlue": "#A2C8E9", + "brightPurple": "#B2B3DA", + "brightCyan": "#6BCACB", + "brightWhite": "#A8A8A8" +} + diff --git a/extras/windows_terminal/seoulbones_light.json b/extras/windows_terminal/seoulbones_light.json new file mode 100644 index 0000000..f623cde --- /dev/null +++ b/extras/windows_terminal/seoulbones_light.json @@ -0,0 +1,24 @@ +{ + "name": "seoulbones_light", + "foreground": "#555555", + "background": "#E2E2E2", + "selectionBackground": "#CCCCCC", + "cursorColor": "#555555", + "black": "#E2E2E2", + "red": "#DC5284", + "green": "#628562", + "yellow": "#C48562", + "blue": "#0084A3", + "purple": "#896788", + "cyan": "#008586", + "white": "#555555", + "brightBlack": "#BFBABB", + "brightRed": "#BE3C6D", + "brightGreen": "#487249", + "brightYellow": "#A76B48", + "brightBlue": "#006F89", + "brightPurple": "#7F4C7E", + "brightCyan": "#006F70", + "brightWhite": "#777777" +} + diff --git a/extras/windows_terminal/vimbones.json b/extras/windows_terminal/vimbones.json new file mode 100644 index 0000000..70c2456 --- /dev/null +++ b/extras/windows_terminal/vimbones.json @@ -0,0 +1,24 @@ +{ + "name": "vimbones", + "foreground": "#353535", + "background": "#F0F0CA", + "selectionBackground": "#D7D7D7", + "cursorColor": "#353535", + "black": "#F0F0CA", + "red": "#A8334C", + "green": "#4F6C31", + "yellow": "#944927", + "blue": "#286486", + "purple": "#88507D", + "cyan": "#3B8992", + "white": "#353535", + "brightBlack": "#C6C6A3", + "brightRed": "#94253E", + "brightGreen": "#3F5A22", + "brightYellow": "#803D1C", + "brightBlue": "#1D5573", + "brightPurple": "#7B3B70", + "brightCyan": "#2B747C", + "brightWhite": "#5C5C5C" +} + diff --git a/extras/windows_terminal/zenbones_dark.json b/extras/windows_terminal/zenbones_dark.json new file mode 100644 index 0000000..7802319 --- /dev/null +++ b/extras/windows_terminal/zenbones_dark.json @@ -0,0 +1,24 @@ +{ + "name": "zenbones_dark", + "foreground": "#B4BDC3", + "background": "#1C1917", + "selectionBackground": "#3D4042", + "cursorColor": "#C4CACF", + "black": "#1C1917", + "red": "#DE6E7C", + "green": "#819B69", + "yellow": "#B77E64", + "blue": "#6099C0", + "purple": "#B279A7", + "cyan": "#66A5AD", + "white": "#B4BDC3", + "brightBlack": "#403833", + "brightRed": "#E8838F", + "brightGreen": "#8BAE68", + "brightYellow": "#D68C67", + "brightBlue": "#61ABDA", + "brightPurple": "#CF86C1", + "brightCyan": "#65B8C1", + "brightWhite": "#888F94" +} + diff --git a/extras/windows_terminal/zenbones_light.json b/extras/windows_terminal/zenbones_light.json new file mode 100644 index 0000000..8bf8603 --- /dev/null +++ b/extras/windows_terminal/zenbones_light.json @@ -0,0 +1,24 @@ +{ + "name": "zenbones_light", + "foreground": "#2C363C", + "background": "#F0EDEC", + "selectionBackground": "#CBD9E3", + "cursorColor": "#2C363C", + "black": "#F0EDEC", + "red": "#A8334C", + "green": "#4F6C31", + "yellow": "#944927", + "blue": "#286486", + "purple": "#88507D", + "cyan": "#3B8992", + "white": "#2C363C", + "brightBlack": "#CFC1BA", + "brightRed": "#94253E", + "brightGreen": "#3F5A22", + "brightYellow": "#803D1C", + "brightBlue": "#1D5573", + "brightPurple": "#7B3B70", + "brightCyan": "#2B747C", + "brightWhite": "#4F5E68" +} + diff --git a/extras/windows_terminal/zenburned.json b/extras/windows_terminal/zenburned.json new file mode 100644 index 0000000..af13a06 --- /dev/null +++ b/extras/windows_terminal/zenburned.json @@ -0,0 +1,24 @@ +{ + "name": "zenburned", + "foreground": "#F0E4CF", + "background": "#404040", + "selectionBackground": "#746956", + "cursorColor": "#F3EADB", + "black": "#404040", + "red": "#E3716E", + "green": "#819B69", + "yellow": "#B77E64", + "blue": "#6099C0", + "purple": "#B279A7", + "cyan": "#66A5AD", + "white": "#F0E4CF", + "brightBlack": "#625A5B", + "brightRed": "#EC8685", + "brightGreen": "#8BAE68", + "brightYellow": "#D68C67", + "brightBlue": "#61ABDA", + "brightPurple": "#CF86C1", + "brightCyan": "#65B8C1", + "brightWhite": "#C0AB86" +} + diff --git a/extras/windows_terminal/zenwritten_dark.json b/extras/windows_terminal/zenwritten_dark.json new file mode 100644 index 0000000..49d6af5 --- /dev/null +++ b/extras/windows_terminal/zenwritten_dark.json @@ -0,0 +1,24 @@ +{ + "name": "zenwritten_dark", + "foreground": "#BBBBBB", + "background": "#191919", + "selectionBackground": "#404040", + "cursorColor": "#C9C9C9", + "black": "#191919", + "red": "#DE6E7C", + "green": "#819B69", + "yellow": "#B77E64", + "blue": "#6099C0", + "purple": "#B279A7", + "cyan": "#66A5AD", + "white": "#BBBBBB", + "brightBlack": "#3D3839", + "brightRed": "#E8838F", + "brightGreen": "#8BAE68", + "brightYellow": "#D68C67", + "brightBlue": "#61ABDA", + "brightPurple": "#CF86C1", + "brightCyan": "#65B8C1", + "brightWhite": "#8E8E8E" +} + diff --git a/extras/windows_terminal/zenwritten_light.json b/extras/windows_terminal/zenwritten_light.json new file mode 100644 index 0000000..a8cdddb --- /dev/null +++ b/extras/windows_terminal/zenwritten_light.json @@ -0,0 +1,24 @@ +{ + "name": "zenwritten_light", + "foreground": "#353535", + "background": "#EEEEEE", + "selectionBackground": "#D7D7D7", + "cursorColor": "#353535", + "black": "#EEEEEE", + "red": "#A8334C", + "green": "#4F6C31", + "yellow": "#944927", + "blue": "#286486", + "purple": "#88507D", + "cyan": "#3B8992", + "white": "#353535", + "brightBlack": "#C6C3C3", + "brightRed": "#94253E", + "brightGreen": "#3F5A22", + "brightYellow": "#803D1C", + "brightBlue": "#1D5573", + "brightPurple": "#7B3B70", + "brightCyan": "#2B747C", + "brightWhite": "#5C5C5C" +} + diff --git a/lua/zenbones/shipwright/init.lua b/lua/zenbones/shipwright/init.lua index 6b45945..4453ad9 100644 --- a/lua/zenbones/shipwright/init.lua +++ b/lua/zenbones/shipwright/init.lua @@ -77,7 +77,7 @@ local function make_runners(config) end M.run = function() - local runner_files = { "vim", "iterm", "alacritty", "kitty", "wezterm", "tmux", "lualine", "lightline" } + local runner_files = { "vim", "iterm", "alacritty", "kitty", "wezterm", "tmux", "windows_terminal", "lualine", "lightline" } local colorschemes = vim.fn.json_decode(vim.fn.readfile "zenbones.json") for _, colorscheme in ipairs(colorschemes) do for _, file in ipairs(runner_files) do diff --git a/lua/zenbones/shipwright/runners/windows_terminal.lua b/lua/zenbones/shipwright/runners/windows_terminal.lua new file mode 100644 index 0000000..96ebc4b --- /dev/null +++ b/lua/zenbones/shipwright/runners/windows_terminal.lua @@ -0,0 +1,43 @@ +local template = [[{ + "name": "$name", + "foreground": "$fg", + "background": "$bg", + "selectionBackground": "$selection_bg", + "cursorColor": "$cursor_bg", + "black": "$black", + "red": "$red", + "green": "$green", + "yellow": "$yellow", + "blue": "$blue", + "purple": "$magenta", + "cyan": "$cyan", + "white": "$white", + "brightBlack": "$bright_black", + "brightRed": "$bright_red", + "brightGreen": "$bright_green", + "brightYellow": "$bright_yellow", + "brightBlue": "$bright_blue", + "brightPurple": "$bright_magenta", + "brightCyan": "$bright_cyan", + "brightWhite": "$bright_white" +} +]] + +local helpers = require "shipwright.transform.helpers" + +---@diagnostic disable: undefined-global +-- selene: allow(undefined_variable) +run( + { specs, p, term }, + transform.colorscheme_to_term_colors, + function(colors) + return vim.tbl_extend("keep", colors, { name = name }) + end, + function(colors) + local text = helpers.apply_template(template, colors) + return { text } + end, + { overwrite, string.format("extras/windows_terminal/%s.json", name) } +) +-- selene: deny(undefined_variable) +---@diagnostic enable: undefined-global diff --git a/zenbones.json b/zenbones.json index 7cbbab8..afae056 100644 --- a/zenbones.json +++ b/zenbones.json @@ -14,23 +14,51 @@ }, { "name": "forestbones", - "exclude": ["iterm", "alacritty", "kitty", "wezterm", "tmux"], + "exclude": [ + "iterm", + "alacritty", + "kitty", + "wezterm", + "tmux", + "windows_terminal" + ], "description": "A zenbones variant inspired by Everforest." }, { "name": "nordbones", "background": "dark", - "exclude": ["iterm", "alacritty", "kitty", "wezterm", "tmux"], + "exclude": [ + "iterm", + "alacritty", + "kitty", + "wezterm", + "tmux", + "windows_terminal" + ], "description": "A zenbones variant inspired by Nord." }, { "name": "rosebones", - "exclude": ["iterm", "alacritty", "kitty", "wezterm", "tmux"], + "exclude": [ + "iterm", + "alacritty", + "kitty", + "wezterm", + "tmux", + "windows_terminal" + ], "description": "A zenbones variant inspired by Rosé Pine." }, { "name": "tokyobones", - "exclude": ["iterm", "alacritty", "kitty", "wezterm", "tmux"], + "exclude": [ + "iterm", + "alacritty", + "kitty", + "wezterm", + "tmux", + "windows_terminal" + ], "description": "A zenbones variant inspired by Tokyo Night." }, {