1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
//! acme's yellow page — the light theme, and the one that has to resolve
//! `palette` itself. A theme that only dresses the page can leave a child's
//! ANSI indices alone and let the host answer them; on #ffffea that is how you
//! get pale yellow `ls` output on pale yellow paper. So the sixteen below are
//! darkened for paper: index 7 (the "white" a shell writes most of its output
//! in) is a mid grey, and 15 (bright white) is BLACK, because a program asking
//! for the brightest color on a light page means "make this stand out".
//!
//! Every colour below that acme has is acme's own, from plan9port's acme.c
//! iconinit and draw.h: the tag #eaffff and body #ffffea (each 25% of
//! DPalebluegreen or DPaleyellow over white), their selections #9eeeee and
//! #eeee9e with black ink (acme changes the paper under a selection, never
//! the letters), the exec and look sweeps #aa0000 and #006600 with white ink,
//! the scrollbar's #99994c track under a #ffffea thumb, 12px wide, the
//! #8888cc (DPurpleblue) line between a tag and its body and the column
//! button, and 2px black rules between columns, windows and tags.
//!
//! acme has no focus colour; pardes needs one, so the focused pane's button
//! is filled #8888cc (the column button's look) and every other pane's is
//! acme's own: #eaffff in a 2px #8888cc ring, #000099 inside it when dirty.
//!
//! acme tints nothing in a tag; pardes tints the file's name, a +Name and
//! the Tty word everywhere, so here it is done quietly, in that same #000099
//! (draw.h's DMedblue): a navy that reads as ink until you look for it.
pub const theme = .{
.name = "acme",
.bg = .{ 0xff, 0xff, 0xea },
.fg = .{ 0x00, 0x00, 0x00 },
.sel_bg = .{ 0xee, 0xee, 0x9e },
.sel_fg = .{ 0x00, 0x00, 0x00 },
.tag_bg = .{ 0xea, 0xff, 0xff },
.tag_fg = .{ 0x00, 0x00, 0x00 },
.tag_name_fg = .{ 0x00, 0x00, 0x99 },
.box = .{ 0x88, 0x88, 0xcc },
.box_dim = .{ 0xea, 0xff, 0xff },
.kw = .{ 0x97, 0x0d, 0xae },
.str = .{ 0x00, 0x77, 0x33 },
.num = .{ 0xa0, 0x52, 0x00 },
.comment = .{ 0x55, 0x55, 0x55 },
.lineno = .{ 0x99, 0x99, 0x80 },
.scroll_track = .{ 0x99, 0x99, 0x4c },
.scroll_thumb = .{ 0xff, 0xff, 0xea },
// acme paints a column with no window white (cols.c:187).
.empty_col = .{ 0xff, 0xff, 0xff },
.border = .{ 0x00, 0x00, 0x00 },
.tag_rule = .{ 0x88, 0x88, 0xcc },
.rule_px = 2,
.box_border = .{ 0x88, 0x88, 0xcc },
.box_dirty = .{ 0x00, 0x00, 0x99 },
.rail_px = 12,
.tag_sel_bg = .{ 0x9e, 0xee, 0xee },
.sweep_bg = .{ .{ 0xee, 0xee, 0x9e }, .{ 0xaa, 0x00, 0x00 }, .{ 0x00, 0x66, 0x00 } },
.sweep_fg = .{ .{ 0x00, 0x00, 0x00 }, .{ 0xff, 0xff, 0xff }, .{ 0xff, 0xff, 0xff } },
.column_box = .{ 0x88, 0x88, 0xcc },
.column_box_dim = .{ 0x88, 0x88, 0xcc },
.palette = .{
.{ 0x00, 0x00, 0x00 }, .{ 0xaa, 0x22, 0x22 }, .{ 0x22, 0x80, 0x22 }, .{ 0x88, 0x66, 0x00 },
.{ 0x22, 0x44, 0xbb }, .{ 0x99, 0x33, 0x99 }, .{ 0x11, 0x88, 0x88 }, .{ 0x55, 0x55, 0x55 },
.{ 0x88, 0x88, 0x88 }, .{ 0xcc, 0x33, 0x33 }, .{ 0x33, 0xaa, 0x33 }, .{ 0xaa, 0x77, 0x00 },
.{ 0x33, 0x55, 0xdd }, .{ 0xbb, 0x44, 0xbb }, .{ 0x22, 0xaa, 0xaa }, .{ 0x00, 0x00, 0x00 },
},
};
|