1 | package styles
|
---|
2 |
|
---|
3 | import (
|
---|
4 | "fmt"
|
---|
5 |
|
---|
6 | "github.com/alecthomas/chroma/v2"
|
---|
7 | )
|
---|
8 |
|
---|
9 | var (
|
---|
10 | // colors used from https://github.com/primer/primitives
|
---|
11 | ghRed2 = "#ffa198"
|
---|
12 | ghRed3 = "#ff7b72"
|
---|
13 | ghRed9 = "#490202"
|
---|
14 | ghOrange2 = "#ffa657"
|
---|
15 | ghOrange3 = "#f0883e"
|
---|
16 | ghGreen1 = "#7ee787"
|
---|
17 | ghGreen2 = "#56d364"
|
---|
18 | ghGreen7 = "#0f5323"
|
---|
19 | ghBlue1 = "#a5d6ff"
|
---|
20 | ghBlue2 = "#79c0ff"
|
---|
21 | ghPurple2 = "#d2a8ff"
|
---|
22 | ghGray3 = "#8b949e"
|
---|
23 | ghGray4 = "#6e7681"
|
---|
24 | ghFgSubtle = "#6e7681"
|
---|
25 | ghFgDefault = "#c9d1d9"
|
---|
26 | ghBgDefault = "#0d1117"
|
---|
27 | ghDangerFg = "#f85149"
|
---|
28 | )
|
---|
29 |
|
---|
30 | // GitHub Dark style.
|
---|
31 | var GitHubDark = Register(chroma.MustNewStyle("github-dark", chroma.StyleEntries{
|
---|
32 | // Default Token Style
|
---|
33 | chroma.Background: fmt.Sprintf("bg:%s %s", ghBgDefault, ghFgDefault),
|
---|
34 |
|
---|
35 | chroma.LineNumbers: ghGray4,
|
---|
36 | // has transparency in VS Code theme as `colors.codemirror.activelineBg`
|
---|
37 | chroma.LineHighlight: ghGray4,
|
---|
38 |
|
---|
39 | chroma.Error: ghDangerFg,
|
---|
40 |
|
---|
41 | chroma.Keyword: ghRed3,
|
---|
42 | chroma.KeywordConstant: ghBlue2,
|
---|
43 | chroma.KeywordPseudo: ghBlue2,
|
---|
44 |
|
---|
45 | chroma.Name: ghFgDefault,
|
---|
46 | chroma.NameClass: "bold " + ghOrange3,
|
---|
47 | chroma.NameConstant: "bold " + ghBlue2,
|
---|
48 | chroma.NameDecorator: "bold " + ghPurple2,
|
---|
49 | chroma.NameEntity: ghOrange2,
|
---|
50 | chroma.NameException: "bold " + ghOrange3,
|
---|
51 | chroma.NameFunction: "bold " + ghPurple2,
|
---|
52 | chroma.NameLabel: "bold " + ghBlue2,
|
---|
53 | chroma.NameNamespace: ghRed3,
|
---|
54 | chroma.NameProperty: ghBlue2,
|
---|
55 | chroma.NameTag: ghGreen1,
|
---|
56 | chroma.NameVariable: ghBlue2,
|
---|
57 |
|
---|
58 | chroma.Literal: ghBlue1,
|
---|
59 | chroma.LiteralDate: ghBlue2,
|
---|
60 | chroma.LiteralStringAffix: ghBlue2,
|
---|
61 | chroma.LiteralStringDelimiter: ghBlue2,
|
---|
62 | chroma.LiteralStringEscape: ghBlue2,
|
---|
63 | chroma.LiteralStringHeredoc: ghBlue2,
|
---|
64 | chroma.LiteralStringRegex: ghBlue2,
|
---|
65 |
|
---|
66 | chroma.Operator: "bold " + ghRed3,
|
---|
67 |
|
---|
68 | chroma.Comment: "italic " + ghGray3,
|
---|
69 | chroma.CommentPreproc: "bold " + ghGray3,
|
---|
70 | chroma.CommentSpecial: "bold italic " + ghGray3,
|
---|
71 |
|
---|
72 | chroma.Generic: ghFgDefault,
|
---|
73 | chroma.GenericDeleted: fmt.Sprintf("bg:%s %s", ghRed9, ghRed2),
|
---|
74 | chroma.GenericEmph: "italic",
|
---|
75 | chroma.GenericError: ghRed2,
|
---|
76 | chroma.GenericHeading: "bold " + ghBlue2,
|
---|
77 | chroma.GenericInserted: fmt.Sprintf("bg:%s %s", ghGreen7, ghGreen2),
|
---|
78 | chroma.GenericOutput: ghGray3,
|
---|
79 | chroma.GenericPrompt: ghGray3,
|
---|
80 | chroma.GenericStrong: "bold",
|
---|
81 | chroma.GenericSubheading: ghBlue2,
|
---|
82 | chroma.GenericTraceback: ghRed3,
|
---|
83 | chroma.GenericUnderline: "underline",
|
---|
84 |
|
---|
85 | chroma.TextWhitespace: ghFgSubtle,
|
---|
86 | }))
|
---|