summaryrefslogtreecommitdiff
path: root/src/themes/monokai_pro_classic.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/themes/monokai_pro_classic.zig')
-rw-r--r--src/themes/monokai_pro_classic.zig85
1 files changed, 85 insertions, 0 deletions
diff --git a/src/themes/monokai_pro_classic.zig b/src/themes/monokai_pro_classic.zig
new file mode 100644
index 00000000..69f26327
--- /dev/null
+++ b/src/themes/monokai_pro_classic.zig
@@ -0,0 +1,85 @@
+//! Monokai Classic: Monokai Pro, 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:
+//! Monokai Pro for VS Code 2.0.15, published by Wimer Hazenberg (Monokai), verified on Open VSX; url https://open-vsx.org/api/monokai/theme-monokai-pro-vscode/2.0.15/file/monokai.theme-monokai-pro-vscode-2.0.15.vsix; genizah ~/05-genizah/monokai-pro-vscode/vsix/extension/themes
+//! Tags: the tab (focused = the active tab, unfocused = the inactive one).
+//! Adjusted to meet pardes's floors (chrome only; text, syntax and ANSI are untouched):
+//! - focused tag ground #272822 -> #46452f: 1.00:1 off the unfocused #272822, pardes needs 1.5:1 on a dark page
+//! - rules between panes #1d1e19 -> #4a4b44: 1.13:1 off the page, lifted toward the text to 1.6:1 (as colors.zig separatorOf does)
+//! - scroll thumb #3e3f38 -> #46473f: 1.40:1 on its track #272822
+pub const theme = .{
+ .name = "monokai_pro_classic",
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editor.background"
+ .bg = .{ 0x27, 0x28, 0x22 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editor.foreground"
+ .fg = .{ 0xfd, 0xff, 0xf1 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editor.selectionBackground" #c0c1b526 over #272822
+ .sel_bg = .{ 0x3e, 0x3f, 0x38 },
+ // the original keeps text colours over its selection; its text colour
+ .sel_fg = .{ 0xfd, 0xff, 0xf1 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."tab.inactiveBackground"
+ .tag_bg = .{ 0x27, 0x28, 0x22 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."tab.inactiveForeground"
+ .tag_fg = .{ 0x91, 0x92, 0x88 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."tab.activeBackground" #272822, adjusted
+ .tag_active_bg = .{ 0x46, 0x45, 0x2f },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."tab.activeForeground"
+ .tag_active_fg = .{ 0xe6, 0xdb, 0x74 },
+ // the focused grip: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."tab.activeBorder"
+ .box = .{ 0xe6, 0xdb, 0x74 },
+ // derived: the grip at rest, the accent #e6db74 faded toward the unfocused tag #272822 as far as 1.6:1 off it (0.20 of the way)
+ .box_dim = .{ 0x4d, 0x4c, 0x32 },
+ // an unsaved grip: the original's modified colour, ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorGutter.modifiedBackground"
+ .box_dirty = .{ 0xfd, 0x97, 0x1f },
+ // derived: the column grip, the original's type colour, ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 tokenColors[42] "entity.name.type"
+ .column_box = .{ 0x66, 0xd9, 0xef },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 tokenColors[57] "keyword"
+ .kw = .{ 0xf9, 0x26, 0x72 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 tokenColors[132] "string"
+ .str = .{ 0xe6, 0xdb, 0x74 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 tokenColors[22] "constant.numeric"
+ .num = .{ 0xae, 0x81, 0xff },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 tokenColors[0] "comment"
+ .comment = .{ 0x6e, 0x70, 0x66 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorLineNumber.foreground"
+ .lineno = .{ 0x57, 0x58, 0x4f },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorLineNumber.activeForeground"
+ .lineno_active = .{ 0xc0, 0xc1, 0xb5 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 no scrollbar.background: the editor shows through
+ .scroll_track = .{ 0x27, 0x28, 0x22 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."scrollbarSlider.background" #c0c1b526 over #272822 #3e3f38, adjusted
+ .scroll_thumb = .{ 0x46, 0x47, 0x3f },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorGroup.border" #1d1e19, adjusted
+ .border = .{ 0x4a, 0x4b, 0x44 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editor.findMatchBackground" #fdfff126 over #272822
+ .search_bg = .{ 0x47, 0x48, 0x41 },
+ // derived: the original keeps text colours over a match; the page's text, whichever reads better on it
+ .search_fg = .{ 0xfd, 0xff, 0xf1 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorError.foreground"
+ .diagnostic_error = .{ 0xf9, 0x26, 0x72 },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorWarning.foreground"
+ .diagnostic_warning = .{ 0xfd, 0x97, 0x1f },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorInfo.foreground"
+ .diagnostic_info = .{ 0x66, 0xd9, 0xef },
+ // ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."editorHint.foreground"
+ .diagnostic_hint = .{ 0xae, 0x81, 0xff },
+ .palette = .{
+ .{ 0x3b, 0x3c, 0x35 }, // 0: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBlack"
+ .{ 0xf9, 0x26, 0x72 }, // 1: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiRed"
+ .{ 0xa6, 0xe2, 0x2e }, // 2: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiGreen"
+ .{ 0xe6, 0xdb, 0x74 }, // 3: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiYellow"
+ .{ 0xfd, 0x97, 0x1f }, // 4: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBlue"
+ .{ 0xae, 0x81, 0xff }, // 5: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiMagenta"
+ .{ 0x66, 0xd9, 0xef }, // 6: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiCyan"
+ .{ 0xfd, 0xff, 0xf1 }, // 7: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiWhite"
+ .{ 0x6e, 0x70, 0x66 }, // 8: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightBlack"
+ .{ 0xf9, 0x26, 0x72 }, // 9: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightRed"
+ .{ 0xa6, 0xe2, 0x2e }, // 10: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightGreen"
+ .{ 0xe6, 0xdb, 0x74 }, // 11: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightYellow"
+ .{ 0xfd, 0x97, 0x1f }, // 12: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightBlue"
+ .{ 0xae, 0x81, 0xff }, // 13: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightMagenta"
+ .{ 0x66, 0xd9, 0xef }, // 14: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightCyan"
+ .{ 0xfd, 0xff, 0xf1 }, // 15: ~/05-genizah/monokai-pro-vscode/vsix/extension/themes/Monokai Classic.json:1 colors."terminal.ansiBrightWhite"
+ },
+};