summaryrefslogtreecommitdiff
path: root/src/themes/alucard.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 10:19:00 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitc41d23f454721e8f926edc8c61b9d76a9d38d0e0 (patch)
treea6219acb137b9f6e42c2de425a92e04bbf65d110 /src/themes/alucard.zig
parent5252204c1dedd31f5cfc09d7f3fdc4038d379b8c (diff)
downloadpardes-c41d23f454721e8f926edc8c61b9d76a9d38d0e0.tar.gz
pardes-c41d23f454721e8f926edc8c61b9d76a9d38d0e0.zip
Dracula, as close to the original as pardes draws: dracula, dracula_soft, alucard
Every colour is the original's own, cited file:line in each theme file. Sources: official palette (Dracula, Alucard); https://github.com/dracula/dracula-theme; ~/05-genizah/dracula-theme; 1e04a4b768302fa2de37d09cc7b8087eabcd3ed8 official VS Code port: roles, UI, ANSI, Soft transform; https://github.com/dracula/visual-studio-code; ~/05-genizah/dracula-visual-studio-code; a08a206f2c8420ba3c05f0e8d01d43b2f933fdf8 Chrome moved to meet pardes's floors (text, syntax, ANSI untouched): dracula: focused tag ground #282a36 -> #41434d: 1.11:1 off the unfocused #21222c, pardes needs 1.5:1 on a dark page dracula: unfocused tag text #6272a4 -> #7b89b3: 3.36:1 on #21222c, tag text needs 4.5:1 to be read and run dracula_soft: focused tag ground #282a36 -> #454751: 1.05:1 off the unfocused #272727, pardes needs 1.5:1 on a dark page dracula_soft: unfocused tag text #7b7f8b -> #8b8e99: 3.74:1 on #272727, tag text needs 4.5:1 to be read and run alucard: unfocused tag text #6c664b -> #5d5841: 3.75:1 on #cfcfde, tag text needs 4.5:1 to be read and run
Diffstat (limited to 'src/themes/alucard.zig')
-rw-r--r--src/themes/alucard.zig76
1 files changed, 76 insertions, 0 deletions
diff --git a/src/themes/alucard.zig b/src/themes/alucard.zig
new file mode 100644
index 00000000..1b5695cc
--- /dev/null
+++ b/src/themes/alucard.zig
@@ -0,0 +1,76 @@
+//! Alucard (Dracula light): Dracula, 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:
+//! official palette (Dracula, Alucard); url https://github.com/dracula/dracula-theme; genizah ~/05-genizah/dracula-theme; commit 1e04a4b768302fa2de37d09cc7b8087eabcd3ed8
+//! official VS Code port: roles, UI, ANSI, Soft transform; url https://github.com/dracula/visual-studio-code; genizah ~/05-genizah/dracula-visual-studio-code; commit a08a206f2c8420ba3c05f0e8d01d43b2f933fdf8
+//! 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):
+//! - unfocused tag text #6c664b -> #5d5841: 3.75:1 on #cfcfde, tag text needs 4.5:1 to be read and run
+//! Upstream notes: The README gives Alucard only as a palette; roles follow
+//! dracula.yml, UI surfaces it lacks are derived.
+pub const theme = .{
+ .name = "alucard",
+ // ~/05-genizah/dracula-theme/README.md:34 Alucard Background; role as dracula.yml editor.background *BG
+ .bg = .{ 0xff, 0xfb, 0xeb },
+ // ~/05-genizah/dracula-theme/README.md:37 Alucard Foreground; role as dracula.yml editor.foreground *FG
+ .fg = .{ 0x1f, 0x1f, 0x1f },
+ // ~/05-genizah/dracula-theme/README.md:36 Alucard Selection; role as dracula.yml editor.selectionBackground *SELECTION
+ .sel_bg = .{ 0xcf, 0xcf, 0xde },
+ // the original keeps text colours over its selection; its text colour
+ .sel_fg = .{ 0x1f, 0x1f, 0x1f },
+ // ~/05-genizah/dracula-theme/README.md:36 Alucard Selection; role as dracula.yml tab.inactiveBackground (*BGDark: Alucard has no BG variants; Selection derived)
+ .tag_bg = .{ 0xcf, 0xcf, 0xde },
+ // ~/05-genizah/dracula-theme/README.md:38 Alucard Comment; role as dracula.yml tab.inactiveForeground *COMMENT #6c664b, adjusted
+ .tag_fg = .{ 0x5d, 0x58, 0x41 },
+ // ~/05-genizah/dracula-theme/README.md:34 Alucard Background; role as dracula.yml tab.activeBackground *BG
+ .tag_active_bg = .{ 0xff, 0xfb, 0xeb },
+ // ~/05-genizah/dracula-theme/README.md:37 Alucard Foreground; role as dracula.yml tab.activeForeground *FG
+ .tag_active_fg = .{ 0x1f, 0x1f, 0x1f },
+ // the focused grip: ~/05-genizah/dracula-theme/README.md:42 Alucard Pink; role as dracula.yml tab.activeBorderTop *PINK
+ .box = .{ 0xa3, 0x14, 0x4d },
+ // derived: the grip at rest, the accent #a3144d faded toward the unfocused tag #cfcfde as far as 1.6:1 off it (0.30 of the way)
+ .box_dim = .{ 0xc2, 0x97, 0xb3 },
+ // an unsaved grip: the original's warning colour, ~/05-genizah/dracula-theme/README.md:39 Alucard Cyan; role as dracula.yml editorWarning.foreground *CYAN
+ .box_dirty = .{ 0x03, 0x6a, 0x96 },
+ // derived: the column grip, the original's type colour, ~/05-genizah/dracula-theme/README.md:39 Alucard Cyan; role as dracula.yml *CYAN
+ .column_box = .{ 0x03, 0x6a, 0x96 },
+ // ~/05-genizah/dracula-theme/README.md:42 Alucard Pink; role as dracula.yml Keywords *PINK
+ .kw = .{ 0xa3, 0x14, 0x4d },
+ // ~/05-genizah/dracula-theme/README.md:45 Alucard Yellow; role as dracula.yml Strings *YELLOW
+ .str = .{ 0x84, 0x6e, 0x15 },
+ // ~/05-genizah/dracula-theme/README.md:43 Alucard Purple; role as dracula.yml Constants *PURPLE
+ .num = .{ 0x64, 0x4a, 0xc9 },
+ // ~/05-genizah/dracula-theme/README.md:38 Alucard Comment; role as dracula.yml Comments *COMMENT
+ .comment = .{ 0x6c, 0x66, 0x4b },
+ // ~/05-genizah/dracula-theme/README.md:38 Alucard Comment; role as dracula.yml editorLineNumber.foreground *COMMENT
+ .lineno = .{ 0x6c, 0x66, 0x4b },
+ // derived: none in the original; the page
+ .scroll_track = .{ 0xff, 0xfb, 0xeb },
+ // derived: none in the original; line numbers, ~/05-genizah/dracula-theme/README.md:38 Alucard Comment; role as dracula.yml editorLineNumber.foreground *COMMENT
+ .scroll_thumb = .{ 0x6c, 0x66, 0x4b },
+ // ~/05-genizah/dracula-theme/README.md:43 Alucard Purple; role as dracula.yml editorGroup.border *PURPLE
+ .border = .{ 0x64, 0x4a, 0xc9 },
+ // ~/05-genizah/dracula-theme/README.md:44 Alucard Red; role as dracula.yml editorError.foreground *RED
+ .diagnostic_error = .{ 0xcb, 0x3a, 0x2a },
+ // ~/05-genizah/dracula-theme/README.md:39 Alucard Cyan; role as dracula.yml editorWarning.foreground *CYAN
+ .diagnostic_warning = .{ 0x03, 0x6a, 0x96 },
+ .palette = .{
+ .{ 0x1f, 0x1f, 0x1f }, // 0: ~/05-genizah/dracula-theme/README.md:37 Alucard Foreground (ANSI 0 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xcb, 0x3a, 0x2a }, // 1: ~/05-genizah/dracula-theme/README.md:44 Alucard Red (ANSI 1 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x14, 0x71, 0x0a }, // 2: ~/05-genizah/dracula-theme/README.md:40 Alucard Green (ANSI 2 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x84, 0x6e, 0x15 }, // 3: ~/05-genizah/dracula-theme/README.md:45 Alucard Yellow (ANSI 3 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x64, 0x4a, 0xc9 }, // 4: ~/05-genizah/dracula-theme/README.md:43 Alucard Purple (ANSI 4 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xa3, 0x14, 0x4d }, // 5: ~/05-genizah/dracula-theme/README.md:42 Alucard Pink (ANSI 5 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x03, 0x6a, 0x96 }, // 6: ~/05-genizah/dracula-theme/README.md:39 Alucard Cyan (ANSI 6 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xcf, 0xcf, 0xde }, // 7: ~/05-genizah/dracula-theme/README.md:36 Alucard Selection (ANSI 7 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x6c, 0x66, 0x4b }, // 8: ~/05-genizah/dracula-theme/README.md:38 Alucard Comment (ANSI 8 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xcb, 0x3a, 0x2a }, // 9: ~/05-genizah/dracula-theme/README.md:44 Alucard Red (ANSI 9 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x14, 0x71, 0x0a }, // 10: ~/05-genizah/dracula-theme/README.md:40 Alucard Green (ANSI 10 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x84, 0x6e, 0x15 }, // 11: ~/05-genizah/dracula-theme/README.md:45 Alucard Yellow (ANSI 11 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x64, 0x4a, 0xc9 }, // 12: ~/05-genizah/dracula-theme/README.md:43 Alucard Purple (ANSI 12 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xa3, 0x14, 0x4d }, // 13: ~/05-genizah/dracula-theme/README.md:42 Alucard Pink (ANSI 13 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0x03, 0x6a, 0x96 }, // 14: ~/05-genizah/dracula-theme/README.md:39 Alucard Cyan (ANSI 14 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ .{ 0xff, 0xfb, 0xeb }, // 15: ~/05-genizah/dracula-theme/README.md:34 Alucard Background (ANSI 15 derived: Dracula's ansi order with Alucard colours, dark ink as black)
+ },
+};