1import { tags as t } from '@lezer/highlight'; 2import { createTheme } from './theme-helper.mjs'; 3 4export const settings = { 5 background: '#212121', 6 lineBackground: '#21212199', 7 foreground: '#bdbdbd', 8 muted: '#bdbdbd50', 9 caret: '#a0a4ae', 10 selection: '#d7d4f0', 11 selectionMatch: '#d7d4f0', 12 gutterBackground: '#212121', 13 gutterForeground: '#999', 14 gutterActiveForeground: '#4f5b66', 15 lineHighlight: '#111111', 16}; 17 18export default createTheme({ 19 theme: 'dark', 20 settings: { 21 background: '#212121', 22 foreground: '#bdbdbd', 23 muted: '#bdbdbd50', 24 caret: '#a0a4ae', 25 selection: '#d7d4f063', 26 selectionMatch: '#d7d4f063', 27 gutterBackground: '#212121', 28 gutterForeground: '#999', 29 gutterActiveForeground: '#4f5b66', 30 lineHighlight: '#333333', 31 }, 32 styles: [ 33 { tag: t.keyword, color: '#cf6edf' }, 34 { tag: [t.name, t.deleted, t.character, t.macroName], color: '#56c8d8' }, 35 { tag: [t.propertyName], color: '#82AAFF' }, 36 { tag: [t.variableName], color: '#bdbdbd' }, 37 { tag: [t.function(t.variableName)], color: '#82AAFF' }, 38 { tag: [t.labelName], color: '#cf6edf' }, 39 { tag: [t.color, t.constant(t.name), t.standard(t.name)], color: '#facf4e' }, 40 { tag: [t.definition(t.name), t.separator], color: '#56c8d8' }, 41 { tag: [t.brace], color: '#cf6edf' }, 42 { tag: [t.annotation], color: '#f07178' }, 43 { tag: [t.number, t.changed, t.annotation, t.modifier, t.self, t.namespace], color: '#f07178' }, 44 { tag: [t.typeName, t.className], color: '#f07178' }, 45 { tag: [t.operator, t.operatorKeyword], color: '#82AAFF' }, 46 { tag: [t.tagName], color: '#99d066' }, 47 { tag: [t.squareBracket], color: '#f07178' }, 48 { tag: [t.angleBracket], color: '#606f7a' }, 49 { tag: [t.attributeName], color: '#bdbdbd' }, 50 { tag: [t.regexp], color: '#f07178' }, 51 { tag: [t.quote], color: '#6abf69' }, 52 { tag: [t.string], color: '#99d066' }, 53 { 54 tag: t.link, 55 color: '#56c8d8', 56 textDecoration: 'underline', 57 textUnderlinePosition: 'under', 58 }, 59 { tag: [t.url, t.escape, t.special(t.string)], color: '#facf4e' }, 60 { tag: [t.meta], color: '#707d8b' }, 61 { tag: [t.comment], color: '#707d8b', fontStyle: 'italic' }, 62 { tag: t.monospace, color: '#bdbdbd' }, 63 { tag: t.strong, fontWeight: 'bold', color: '#f07178' }, 64 { tag: t.emphasis, fontStyle: 'italic', color: '#99d066' }, 65 { tag: t.strikethrough, textDecoration: 'line-through' }, 66 { tag: t.heading, fontWeight: 'bold', color: '#facf4e' }, 67 { tag: t.heading1, fontWeight: 'bold', color: '#facf4e' }, 68 { 69 tag: [t.heading2, t.heading3, t.heading4], 70 fontWeight: 'bold', 71 color: '#facf4e', 72 }, 73 { tag: [t.heading5, t.heading6], color: '#facf4e' }, 74 { tag: [t.atom, t.bool, t.special(t.variableName)], color: '#56c8d8' }, 75 { tag: [t.processingInstruction, t.inserted], color: '#f07178' }, 76 { tag: [t.contentSeparator], color: '#56c8d8' }, 77 { tag: t.invalid, color: '#606f7a', borderBottom: `1px dotted #f07178` }, 78 ], 79});