jevstrudel.git / packages / codemirror / themes / gruvboxDark.mjs

gruvbox-dark author morhetz From github.com/codemirror/codemirror5/blob/master/theme/gruvbox-dark.css

6import { tags as t } from '@lezer/highlight';
7import { createTheme } from './theme-helper.mjs';
9export const settings = {
10  background: '#282828',
11  lineBackground: '#28282899',
12  foreground: '#ebdbb2',
13  muted: '#ebdbb250',
14  caret: '#ebdbb2',
15  selection: '#bdae93',
16  selectionMatch: '#bdae93',
17  lineHighlight: '#3c3836',
18  gutterBackground: '#282828',
19  gutterForeground: '#7c6f64',
20};
21
22export default createTheme({
23  theme: 'dark',
24  settings: {
25    background: '#282828',
26    foreground: '#ebdbb2',
27    muted: '#ebdbb250',
28    caret: '#ebdbb2',
29    selection: '#b99d555c',
30    selectionMatch: '#b99d555c',
31    lineHighlight: '#baa1602b',
32    gutterBackground: '#282828',
33    gutterForeground: '#7c6f64',
34  },
35  styles: [
36    { tag: t.keyword, color: '#fb4934' },
37    { tag: [t.name, t.deleted, t.character, t.propertyName, t.macroName], color: '#8ec07c' },
38    { tag: [t.variableName], color: '#83a598' },
39    { tag: [t.function(t.variableName)], color: '#8ec07c', fontStyle: 'bold' },
40    { tag: [t.labelName], color: '#ebdbb2' },
41    { tag: [t.color, t.constant(t.name), t.standard(t.name)], color: '#d3869b' },
42    { tag: [t.definition(t.name), t.separator], color: '#ebdbb2' },
43    { tag: [t.brace], color: '#ebdbb2' },
44    { tag: [t.annotation], color: '#fb4934d' },
45    { tag: [t.number, t.changed, t.annotation, t.modifier, t.self, t.namespace], color: '#d3869b' },
46    { tag: [t.typeName, t.className], color: '#fabd2f' },
47    { tag: [t.operatorKeyword], color: '#fb4934' },
48    {
49      tag: [t.tagName],
50      color: '#8ec07c',
51      fontStyle: 'bold',
52    },
53    { tag: [t.squareBracket], color: '#fe8019' },
54    { tag: [t.angleBracket], color: '#83a598' },
55    { tag: [t.attributeName], color: '#8ec07c' },
56    { tag: [t.regexp], color: '#8ec07c' },
57    { tag: [t.quote], color: '#928374' },
58    { tag: [t.string], color: '#ebdbb2' },
59    {
60      tag: t.link,
61      color: '#a89984',
62      textDecoration: 'underline',
63      textUnderlinePosition: 'under',
64    },
65    { tag: [t.url, t.escape, t.special(t.string)], color: '#d3869b' },
66    { tag: [t.meta], color: '#fabd2f' },
67    { tag: [t.comment], color: '#928374', fontStyle: 'italic' },
68    { tag: t.strong, fontWeight: 'bold', color: '#fe8019' },
69    { tag: t.emphasis, fontStyle: 'italic', color: '#b8bb26' },
70    { tag: t.strikethrough, textDecoration: 'line-through' },
71    { tag: t.heading, fontWeight: 'bold', color: '#b8bb26' },
72    { tag: [t.heading1, t.heading2], fontWeight: 'bold', color: '#b8bb26' },
73    {
74      tag: [t.heading3, t.heading4],
75      fontWeight: 'bold',
76      color: '#fabd2f',
77    },
78    { tag: [t.heading5, t.heading6], color: '#fabd2f' },
79    { tag: [t.atom, t.bool, t.special(t.variableName)], color: '#d3869b' },
80    { tag: [t.processingInstruction, t.inserted], color: '#83a598' },
81    { tag: [t.contentSeparator], color: '#fb4934' },
82    { tag: t.invalid, color: '#fe8019', borderBottom: `1px dotted #fb4934d` },
83  ],
84});