aboutsummaryrefslogtreecommitdiff
path: root/.local/share/mode/switch.d/anki
blob: f1a20a449ae4e2ef64bce610cef56ef8cd89c48e (plain)
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#!/bin/sh

# this generates theme files compatible with Anki-redesign:
# <https://ankiweb.net/shared/info/308574457>
# <https://github.com/shirajuki/anki-redesign>
ANKI_REDESIGN="$XDG_DATA_HOME/Anki2/addons21/308574457"

# ensure folders exist
mkdir -p "$ANKI_REDESIGN/user_files/themes"

# ensure theme is set to mode
CONFIG="$ANKI_REDESIGN/config.json"
[ -e "$CONFIG" ] && jq '.theme = "mode"' "$CONFIG" | sponge "$CONFIG"

name() {
	key="$1"
	value="$2"
	key_json="$(printf '%s' "$key" | tr '[:lower:]' '[:upper:]' | tr -c '[:alnum:]' '_')"
	key_css="--$(printf '%s' "$key" | tr '[:upper:]' '[:lower:]' | tr -c '[:alnum:]' '-')"
	echo "\"$key_json\": [ \"\", \"\", \"$value\", \"$value\", \"$key_css\" ]"
}

unused="#ff00ff"
surface_0=$(mix_rgb $bg '#000000' 0.7)
surface_1=$(mix_rgb $color0 $bg 0.40)
surface_2=$(mix_rgb $color0 $bg 0.60)

cat << EOF > "$ANKI_REDESIGN/user_files/themes/mode.json"
{
	"colors": {
		$(name accent-card                   "#93c5fd"),
		$(name accent-danger                 "#f87171"),
		$(name accent-note                   "#4ade80"),
		$(name border                        "#202020"),
		$(name border-focus                  "#3b82f6"),
		$(name border-strong                 "#020202"),
		$(name border-subtle                 "$bg"),
		$(name buried-fg                     "#777733"),
		$(name button-bg                     "$surface_1"),
		$(name button-disabled               "$bg"),
		$(name button-focus-bg               "#0093d0"),
		$(name button-gradient-end           "$surface_2"),
		$(name button-gradient-start         "$surface_2"),
		$(name button-hover-border           "#141414"),
		$(name button-primary-bg             "#2652cf"),
		$(name button-primary-disabled       "#4484ed"),
		$(name button-primary-gradient-end   "#2652cf"),
		$(name button-primary-gradient-start "#2f67e1"),
		$(name canvas                        "$bg"),
		$(name canvas-code                   "$surface_0"),
		$(name canvas-elevated               "$bg"),
		$(name canvas-inset                  "$surface_1"),
		$(name canvas-overlay                "$bg"),
		$(name current-deck                  "$unused"),
		$(name disabled                      "#777"),
		$(name faint-border                  "#29292b"),
		$(name fg                            "$fg"),
		$(name fg-disabled                   "#737373"),
		$(name fg-faint                      "#545454"),
		$(name fg-link                       "#bfdbfe"),
		$(name fg-subtle                     "#858585"),
		$(name flag1-bg                      "#aa5555"),
		$(name flag1-fg                      "#ff7b7b"),
		$(name flag2-bg                      "#ac653a"),
		$(name flag2-fg                      "#f5aa41"),
		$(name flag3-bg                      "#559238"),
		$(name flag3-fg                      "#86ce5d"),
		$(name flag4-bg                      "#506aa3"),
		$(name flag4-fg                      "#6f9dff"),
		$(name flag5-bg                      "#975d8f"),
		$(name flag5-fg                      "#f097e4"),
		$(name flag6-bg                      "#399185"),
		$(name flag6-fg                      "#5ccfca"),
		$(name flag7-bg                      "#624b77"),
		$(name flag7-fg                      "#9f63d3"),
		$(name flag-1                        "$color9"),
		$(name flag-2                        "$color11"),
		$(name flag-3                        "$color10"),
		$(name flag-4                        "$color12"),
		$(name flag-5                        "$color13"),
		$(name flag-6                        "$color14"),
		$(name flag-7                        "$color5"),
		$(name focus-shadow                  "#0093d0"),
		$(name frame-bg                      "$surface_1"),
		$(name highlight-bg                  "$accent"),
		$(name highlight-fg                  "$accent_text"),
		$(name learn-count                   "#ff935b"),
		$(name link                          "#77ccff"),
		$(name marked-bg                     "#77c"),
		$(name medium-border                 "#444"),
		$(name new-count                     "#77ccff"),
		$(name review-count                  "#5ccc00"),
		$(name scrollbar-bg                  "$surface_1"),
		$(name scrollbar-bg-active           "$surface_2"),
		$(name scrollbar-bg-hover            "$surface_2"),
		$(name selected-bg                   "rgba(147, 197, 253, 0.5)"),
		$(name selected-fg                   "$fg"),
		$(name shadow                        "#141414"),
		$(name shadow-focus                  "#6366f1"),
		$(name shadow-inset                  "#202020"),
		$(name shadow-subtle                 "#363636"),
		$(name slightly-grey-text            "#ccc"),
		$(name state-buried                  "#92400e"),
		$(name state-learn                   "#f87171"),
		$(name state-marked                  "#a855f7"),
		$(name state-new                     "#93c5fd"),
		$(name state-review                  "#22c55e"),
		$(name state-suspended               "#fef9c3"),
		$(name suspended-bg                  "#aaaa33"),
		$(name suspended-fg                  "#ffffb2"),
		$(name text-fg                       "$fg"),
		$(name tooltip-bg                    "$surface_1"),
		$(name window-bg                     "$bg"),
		$(name zero-count                    "#444")
	},
	"version": { "major": -1, "minor": -1 }
}
EOF