summaryrefslogtreecommitdiff
path: root/src/themes/acme.zig
blob: 277249d3f2ad0aa9fe69da05808d7401e49c087c (plain) (blame)
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 },
    },
};