UNPKG

@scalar/code-highlight

Version:

Central methods and themes for code highlighting in Scalar projects

195 lines (163 loc) 3.93 kB
.scalar-app { :where(code.hljs) * { font-size: inherit; font-family: var(--scalar-font-code); text-align: left; white-space: pre; word-spacing: normal; word-break: normal; word-wrap: normal; line-height: 1.4; tab-size: 4; } code.hljs { all: unset; font-size: inherit; color: var(--scalar-color-2); font-family: var(--scalar-font-code); counter-reset: linenumber; } .hljs { background: transparent; color: var(--scalar-color-2); } .hljs .line::before { color: var(--scalar-color-3); display: inline-block; counter-increment: linenumber; content: counter(linenumber); margin-right: 0.875rem; /* Variable is set on the code element by the plugin when line numbers are used */ min-width: calc(var(--line-digits) * 1ch); text-align: right; } /* ------------------------------------------------------------- */ /* Data types */ .hljs-comment, .hljs-quote { color: var(--scalar-color-3); font-style: italic; } .hljs-number { color: var(--scalar-color-orange); } .hljs-regexp, .hljs-string { color: var(--scalar-color-blue); } /** Globals such as `var()` and `!important` */ .hljs-built_in { color: var(--scalar-color-blue); } /** Class initializers such as `Array` or `Date` */ /** Type declarations such as `Record` */ .hljs-title.class_ { color: var(--scalar-color-1); } /** Language indicators such as `new`, `const`, or `function` in JS */ .hljs-keyword { color: var(--scalar-color-purple); } /** Function names when declaring and calling */ .hljs-title.function_ { color: var(--scalar-color-orange); } /** Template substitution */ .hljs-subst { color: var(--scalar-color-blue); } /** HTML Tag name */ .hljs-name { color: var(--scalar-color-blue); } /** Attribute name (ex. `class`, `id`) */ .hljs-attr, .hljs-attribute { color: var(--scalar-color-1); } .hljs-addition, .hljs-literal, .hljs-selector-tag, .hljs-type { color: var(--scalar-color-green); } .hljs-selector-attr, .hljs-selector-pseudo { color: var(--scalar-color-orange); } .hljs-doctag { color: var(--scalar-color-blue); } .hljs-section, .hljs-title { color: var(--scalar-color-blue); } .hljs-selector-id, .hljs-template-variable, .hljs-variable { color: var(--scalar-color-1); } .hljs-name, .hljs-section, .hljs-strong { font-weight: var(--scalar-semibold); } .hljs-bullet, .hljs-link, .hljs-meta, .hljs-symbol { color: var(--scalar-color-blue); } .hljs-deletion { color: var(--scalar-color-red); } .hljs-formula { background: var(--scalar-color-1); } .hljs-emphasis { font-style: italic; } /** Hide credentials */ .credential .credential-value { font-size: 0; color: transparent; } /** Show a few dots instead */ .credential::after { content: "·····"; color: var(--scalar-color-3); user-select: none; } } /* -------------------------------------------------------------- */ /* Language specific overrides */ /** For HTML we leave the content strings brighter */ .hljs.language-html { color: var(--scalar-color-1); } /** For HTML make the attr text different than the content */ .hljs.language-html .hljs-attr { color: var(--scalar-color-2); } .hljs.language-curl .hljs-string { color: var(--scalar-color-blue); } .hljs.language-curl .hljs-literal { color: var(--scalar-color-1); } /** Compromise here */ .hljs.language-cpp .hljs-built_in { /* color: var(--scalar-color-1); */ } .hljs.language-php .hljs-variable { color: var(--scalar-color-blue); } .hljs.language-objectivec .hljs-meta { color: var(--scalar-color-1); } .hljs.language-objectivec .hljs-built_in { color: var(--scalar-color-orange); } .hljs-built_in { color: var(--scalar-color-orange); }