summaryrefslogtreecommitdiff
path: root/src/themes/tokyonight_storm.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 10:19:01 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitdfd2e318c32c267279cd1bed48e4afc54022ab99 (patch)
treea08ecc10748a763c39daf0f1200060fa09974f55 /src/themes/tokyonight_storm.zig
parent479b919c968d1d7413ec24d2e964d7f354450790 (diff)
downloadpardes-dfd2e318c32c267279cd1bed48e4afc54022ab99.tar.gz
pardes-dfd2e318c32c267279cd1bed48e4afc54022ab99.zip
Tokyo Night, as close to the original as pardes draws: tokyonight_night, tokyonight_storm, tokyonight_moon, tokyonight_day
Every colour is the original's own, cited file:line in each theme file. Sources: repo; https://github.com/folke/tokyonight.nvim; ~/05-genizah/tokyonight.nvim; cdc07ac78467a233fd62c493de29a17e0cf2b2b6 Chrome moved to meet pardes's floors (text, syntax, ANSI untouched): tokyonight_night: focused tag ground #16161e -> #363846: 1.00:1 off the unfocused #16161e, pardes needs 1.5:1 on a dark page tokyonight_night: unfocused tag text #3b4261 -> #7e8297: 1.83:1 on #16161e, tag text needs 4.5:1 to be read and run tokyonight_night: rules between panes #15161e -> #3b3e4d: 1.05:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does) tokyonight_storm: focused tag ground #1f2335 -> #3d4258: 1.00:1 off the unfocused #1f2335, pardes needs 1.5:1 on a dark page tokyonight_storm: unfocused tag text #3b4261 -> #858a9d: 1.58:1 on #1f2335, tag text needs 4.5:1 to be read and run tokyonight_storm: rules between panes #1d202f -> #44495f: 1.11:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does) tokyonight_storm: scroll thumb #3b4261 -> #404767: 1.42:1 on its track #272b3f tokyonight_moon: focused tag ground #1e2030 -> #3a3e56: 1.00:1 off the unfocused #1e2030, pardes needs 1.5:1 on a dark page tokyonight_moon: unfocused tag text #3b4261 -> #858a9d: 1.64:1 on #1e2030, tag text needs 4.5:1 to be read and run tokyonight_moon: focused tag text #828bb8 -> #a3a9ca: 3.16:1 on #3a3e56, tag text needs 4.5:1 tokyonight_moon: rules between panes #1b1d2b -> #414557: 1.09:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does) tokyonight_moon: scroll thumb #3b4261 -> #3e4564: 1.46:1 on its track #27293a tokyonight_day: focused tag ground #d0d5e3 -> #b5bdd7: 1.00:1 off the unfocused #d0d5e3, pardes needs 1.25:1 on a light page tokyonight_day: unfocused tag text #a8aecb -> #575a6a: 1.49:1 on #d0d5e3, tag text needs 4.5:1 to be read and run tokyonight_day: focused tag text #6172b0 -> #404b74: 2.47:1 on #b5bdd7, tag text needs 4.5:1 tokyonight_day: scroll thumb #a8aecb -> #9fa8ca: 1.41:1 on its track #c8cfe1 keyword is Neovim's tree-sitter @keyword (c.purple, groups/treesitter.lua:36), which is what pardes's tree-sitter keywords are, not vim's regex Keyword (cyan).
Diffstat (limited to 'src/themes/tokyonight_storm.zig')
-rw-r--r--src/themes/tokyonight_storm.zig97
1 files changed, 97 insertions, 0 deletions
diff --git a/src/themes/tokyonight_storm.zig b/src/themes/tokyonight_storm.zig
new file mode 100644
index 00000000..5fadf177
--- /dev/null
+++ b/src/themes/tokyonight_storm.zig
@@ -0,0 +1,97 @@
+//! Tokyo Night Storm: Tokyo Night, as close to the original as pardes can draw it.
+//! Every value is the original's own, cited on its line (path:line key); the
+//! chrome pardes needs and the original lacks is derived from its palette.
+//! Sources:
+//! repo; url https://github.com/folke/tokyonight.nvim; genizah ~/05-genizah/tokyonight.nvim; commit cdc07ac78467a233fd62c493de29a17e0cf2b2b6
+//! Tags: the window bar (StatusLine / StatusLineNC, or mode-line / mode-line-inactive).
+//! Adjusted to meet pardes's floors (chrome only; text, syntax and ANSI are untouched):
+//! - focused tag ground #1f2335 -> #3d4258: 1.00:1 off the unfocused #1f2335, pardes needs 1.5:1 on a dark page
+//! - unfocused tag text #3b4261 -> #858a9d: 1.58:1 on #1f2335, tag text needs 4.5:1 to be read and run
+//! - rules between panes #1d202f -> #44495f: 1.11:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
+//! - scroll thumb #3b4261 -> #404767: 1.42:1 on its track #272b3f
+//! Upstream notes: Values from upstream's generated extras (literal hex):
+//! highlight groups from extras/vim/colors, palette and terminal colours from
+//! extras/lua (the resolved colors table, which includes computed entries such
+//! as bg_statusline, bg_visual, diff.*; these match lua/tokyonight/colors/*.lua
+//! for the base names). extras/vim omits linked groups: Number and Boolean are
+//! not defined by the theme at all, so Neovim's built-in links to Constant
+//! apply. Visual has no fg (selection_fg null). WinSeparator fg is used for
+//! split. modified = diffChanged fg (git.change). accent = lualine normal a bg
+//! (colors.blue). Palette skips 'none' and the 'rainbow' list (duplicates of
+//! named colours); terminal.* omitted from palette since it is the ansi list.
+//! ansi matches extras/kitty/tokyonight_storm.conf color0-15.
+pub const theme = .{
+ .name = "tokyonight_storm",
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:193 Normal guibg
+ .bg = .{ 0x24, 0x28, 0x3b },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:193 Normal guifg
+ .fg = .{ 0xc0, 0xca, 0xf5 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:245 Visual guibg
+ .sel_bg = .{ 0x2e, 0x3c, 0x64 },
+ // the original keeps text colours over its selection; its text colour
+ .sel_fg = .{ 0xc0, 0xca, 0xf5 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:220 StatusLineNC guibg
+ .tag_bg = .{ 0x1f, 0x23, 0x35 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:220 StatusLineNC guifg #3b4261, adjusted
+ .tag_fg = .{ 0x85, 0x8a, 0x9d },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:219 StatusLine guibg #1f2335, adjusted
+ .tag_active_bg = .{ 0x3d, 0x42, 0x58 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:219 StatusLine guifg
+ .tag_active_fg = .{ 0xa9, 0xb1, 0xd6 },
+ // the focused grip: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:15 blue; lualine normal-mode section a bg = colors.blue per ~/05-genizah/tokyonight.nvim/lua/lualine/themes/_tokyonight.lua:12 (tokyonight-storm.lua calls it with style "storm")
+ .box = .{ 0x7a, 0xa2, 0xf7 },
+ // derived: the grip at rest, the accent #7aa2f7 faded toward the unfocused tag #1f2335 as far as 1.6:1 off it (0.26 of the way)
+ .box_dim = .{ 0x37, 0x44, 0x67 },
+ // an unsaved grip: the original's modified colour, ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:254 diffChanged guifg (= palette git.change)
+ .box_dirty = .{ 0x61, 0x83, 0xbb },
+ // derived: the column grip, the original's type colour, ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:228 Type guifg
+ .column_box = .{ 0x2a, 0xc3, 0xde },
+ // ~/05-genizah/tokyonight.nvim/lua/tokyonight/groups/treesitter.lua:36 ["@keyword"] = c.purple, ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:55 purple (vim's regex Keyword is #7dcfff)
+ .kw = .{ 0x9d, 0x7c, 0xd8 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:221 String guifg
+ .str = .{ 0x9e, 0xce, 0x6a },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:27 Constant guifg (Number is not defined by the theme, so Neovim's default link Number->Constant applies)
+ .num = .{ 0xff, 0x9e, 0x64 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:24 Comment guifg
+ .comment = .{ 0x56, 0x5f, 0x89 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:91 LineNr guifg
+ .lineno = .{ 0x3b, 0x42, 0x61 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:34 CursorLineNr guifg
+ .lineno_active = .{ 0xff, 0x9e, 0x64 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:201 PmenuSbar guibg
+ .scroll_track = .{ 0x27, 0x2b, 0x3f },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:203 PmenuThumb guibg #3b4261, adjusted
+ .scroll_thumb = .{ 0x40, 0x47, 0x67 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:250 WinSeparator guifg #1d202f, adjusted
+ .border = .{ 0x44, 0x49, 0x5f },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:207 Search guibg
+ .search_bg = .{ 0x3d, 0x59, 0xa1 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:207 Search guifg
+ .search_fg = .{ 0xc0, 0xca, 0xf5 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:36 DiagnosticError guifg
+ .diagnostic_error = .{ 0xdb, 0x4b, 0x4b },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:48 DiagnosticWarn guifg
+ .diagnostic_warning = .{ 0xe0, 0xaf, 0x68 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:38 DiagnosticInfo guifg
+ .diagnostic_info = .{ 0x0d, 0xb9, 0xd7 },
+ // ~/05-genizah/tokyonight.nvim/extras/vim/colors/tokyonight-storm.vim:37 DiagnosticHint guifg
+ .diagnostic_hint = .{ 0x1a, 0xbc, 0x9c },
+ .palette = .{
+ .{ 0x1d, 0x20, 0x2f }, // 0: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:61 terminal.black (vim.g.terminal_color_0 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xf7, 0x76, 0x8e }, // 1: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:71 terminal.red (vim.g.terminal_color_1 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x9e, 0xce, 0x6a }, // 2: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:67 terminal.green (vim.g.terminal_color_2 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xe0, 0xaf, 0x68 }, // 3: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:75 terminal.yellow (vim.g.terminal_color_3 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x7a, 0xa2, 0xf7 }, // 4: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:63 terminal.blue (vim.g.terminal_color_4 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xbb, 0x9a, 0xf7 }, // 5: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:69 terminal.magenta (vim.g.terminal_color_5 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x7d, 0xcf, 0xff }, // 6: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:65 terminal.cyan (vim.g.terminal_color_6 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xa9, 0xb1, 0xd6 }, // 7: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:73 terminal.white (vim.g.terminal_color_7 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x41, 0x48, 0x68 }, // 8: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:62 terminal.black_bright (vim.g.terminal_color_8 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xff, 0x89, 0x9d }, // 9: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:72 terminal.red_bright (vim.g.terminal_color_9 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x9f, 0xe0, 0x44 }, // 10: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:68 terminal.green_bright (vim.g.terminal_color_10 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xfa, 0xba, 0x4a }, // 11: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:76 terminal.yellow_bright (vim.g.terminal_color_11 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0x8d, 0xb0, 0xff }, // 12: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:64 terminal.blue_bright (vim.g.terminal_color_12 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xc7, 0xa9, 0xff }, // 13: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:70 terminal.magenta_bright (vim.g.terminal_color_13 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xa4, 0xda, 0xff }, // 14: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:66 terminal.cyan_bright (vim.g.terminal_color_14 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ .{ 0xc0, 0xca, 0xf5 }, // 15: ~/05-genizah/tokyonight.nvim/extras/lua/tokyonight_storm.lua:74 terminal.white_bright (vim.g.terminal_color_15 per ~/05-genizah/tokyonight.nvim/lua/tokyonight/theme.lua:33-57)
+ },
+};