1import { tags as t } from '@lezer/highlight';
2import { createTheme } from './theme-helper.mjs';
3
4export const settings = {
5  background: '#272822',
6  lineBackground: '#27282299',
7  foreground: '#FFFFFF',
8  muted: '#FFFFFF50',
9  caret: '#FFFFFF',
10  selection: '#49483E',
11  selectionMatch: '#49483E',
12  gutterBackground: '#272822',
13  gutterForeground: '#FFFFFF70',
14  lineHighlight: '#00000059',
15};
16
17export default createTheme({
18  theme: 'dark',
19  settings: {
20    background: '#272822',
21    foreground: '#FFFFFF',
22    muted: '#FFFFFF50',
23    caret: '#FFFFFF',
24    selection: '#49483E',
25    selectionMatch: '#49483E',
26    gutterBackground: '#272822',
27    gutterForeground: '#FFFFFF70',
28    lineHighlight: '#0000003b',
29  },
30  styles: [
31    { tag: t.labelName, color: '#bababa' },
32    { tag: [t.comment, t.documentMeta], color: '#8292a2' },
33    { tag: [t.number, t.bool, t.null, t.atom], color: '#ae81ff' },
34    { tag: [t.attributeValue, t.className, t.name], color: '#e6db74' },
35    { tag: [t.propertyName, t.attributeName], color: '#a6e22e' },
36    { tag: [t.variableName], color: '#9effff' },
37    { tag: [t.squareBracket], color: '#bababa' },
38    { tag: [t.string, t.special(t.brace)], color: '#e6db74' },
39    { tag: [t.regexp, t.className, t.typeName, t.definition(t.typeName)], color: '#66d9ef' },
40    {
41      tag: [t.definition(t.variableName), t.definition(t.propertyName), t.function(t.variableName)],
42      color: '#a6e22e',
43    },
44    // { tag: t.keyword, color: '#f92672' },
45    { tag: [t.keyword, t.definitionKeyword, t.modifier, t.tagName, t.angleBracket], color: '#f92672' },
46  ],
47});