/* https://gist.github.com/qguv/7936275 */ @import '../common'; @import 'highlight.js/styles/base16/solarized-dark.css'; /* * Solarized dark colors */ $solarized-dark-new-bg: rgba(133, 153, 0, 0.15); $solarized-dark-new-idiff: rgba(133, 153, 0, 0.25); $solarized-dark-old-bg: rgba(220, 50, 47, 0.3); $solarized-dark-old-idiff: rgba(220, 50, 47, 0.25); $solarized-dark-border: #113b46; $solarized-dark-pre-bg: #002b36; $solarized-dark-pre-color: #93a1a1; $solarized-dark-pre-border: #113b46; $solarized-dark-line-bg: #002b36; $solarized-dark-line-color: rgba(255, 255, 255, 0.3); $solarized-dark-line-color-new: #5a766c; $solarized-dark-line-color-old: #7a6c71; $solarized-dark-highlight: #094554; $solarized-dark-hll-bg: #174652; $solarized-dark-expanded-bg: #010d10; $solarized-dark-coverage: #859900; $solarized-dark-no-coverage: #cb4b16; $solarized-dark-c: #586e75; $solarized-dark-err: #93a1a1; $solarized-dark-g: #93a1a1; $solarized-dark-k: #859900; $solarized-dark-l: #93a1a1; $solarized-dark-n: #93a1a1; $solarized-dark-o: #859900; $solarized-dark-x: #cb4b16; $solarized-dark-p: #93a1a1; $solarized-dark-cm: #586e75; $solarized-dark-cp: #859900; $solarized-dark-c1: #586e75; $solarized-dark-cs: #859900; $solarized-dark-cd: #586e75; $solarized-dark-gd: #2aa198; $solarized-dark-ge: #93a1a1; $solarized-dark-gr: #dc322f; $solarized-dark-gh: #cb4b16; $solarized-dark-gi: #859900; $solarized-dark-go: #93a1a1; $solarized-dark-gp: #93a1a1; $solarized-dark-gs: #93a1a1; $solarized-dark-gu: #cb4b16; $solarized-dark-gt: #93a1a1; $solarized-dark-kc: #cb4b16; $solarized-dark-kd: #268bd2; $solarized-dark-kn: #859900; $solarized-dark-kp: #859900; $solarized-dark-kr: #268bd2; $solarized-dark-kt: #dc322f; $solarized-dark-ld: #93a1a1; $solarized-dark-m: #2aa198; $solarized-dark-s: #2aa198; $solarized-dark-na: #93a1a1; $solarized-dark-nb: #b58900; $solarized-dark-nc: #268bd2; $solarized-dark-no: #cb4b16; $solarized-dark-nd: #268bd2; $solarized-dark-ni: #cb4b16; $solarized-dark-ne: #cb4b16; $solarized-dark-nf: #268bd2; $solarized-dark-nl: #93a1a1; $solarized-dark-nn: #93a1a1; $solarized-dark-nx: #93a1a1; $solarized-dark-py: #93a1a1; $solarized-dark-nt: #268bd2; $solarized-dark-nv: #268bd2; $solarized-dark-ow: #859900; $solarized-dark-w: #93a1a1; $solarized-dark-mf: #2aa198; $solarized-dark-mh: #2aa198; $solarized-dark-mi: #2aa198; $solarized-dark-mo: #2aa198; $solarized-dark-sb: #586e75; $solarized-dark-sc: #2aa198; $solarized-dark-sd: #93a1a1; $solarized-dark-s2: #2aa198; $solarized-dark-se: #cb4b16; $solarized-dark-sh: #93a1a1; $solarized-dark-si: #2aa198; $solarized-dark-sx: #2aa198; $solarized-dark-sr: #dc322f; $solarized-dark-s1: #2aa198; $solarized-dark-ss: #2aa198; $solarized-dark-bp: #268bd2; $solarized-dark-vc: #268bd2; $solarized-dark-vg: #268bd2; $solarized-dark-vi: #268bd2; $solarized-dark-il: #2aa198; :root { --default-diff-color-deletion: #ff362c; --default-diff-color-addition: #647e0e; } .code.solarized-dark { // Highlight.js theme overrides (https://gitlab.com/gitlab-org/gitlab/-/issues/365167) // We should be able to remove the overrides once the upstream issue is fixed (https://github.com/sourcegraph/sourcegraph/issues/23251) @include hljs-override('string', $solarized-dark-s); @include hljs-override('attr', $solarized-dark-na); @include hljs-override('attribute', $solarized-dark-n); @include hljs-override('selector-tag', $solarized-dark-nt); @include hljs-override('keyword', $solarized-dark-k); @include hljs-override('variable', $solarized-dark-nv); @include hljs-override('variable.language_', $solarized-dark-k); @include hljs-override('title', $solarized-dark-nf); @include hljs-override('name', $solarized-dark-k); @include hljs-override('tag', $solarized-dark-nt); @include hljs-override('type', $solarized-dark-nc); @include hljs-override('number', $solarized-dark-mf); @include hljs-override('literal', $solarized-dark-kc); @include hljs-override('built_in', $solarized-dark-n); @include hljs-override('section', $solarized-dark-gh); @include hljs-override('bullet', $solarized-dark-n); @include hljs-override('subst', $solarized-dark-p); @include hljs-override('symbol', $solarized-dark-ni); @include hljs-override('title.class_.inherited__', $solarized-dark-no); // Line numbers .file-line-num { @include line-link($white, 'link'); } .file-line-blame { @include line-link($white, 'git'); } .line-links { @include line-hover-bg($solarized-dark-pre-bg); } .line-numbers, .diff-line-num, .code-search-line { background-color: $solarized-dark-line-bg; } .diff-line-num, .diff-line-num a { color: $solarized-dark-line-color; } // Code itself pre.code, .diff-line-num { border-color: $solarized-dark-pre-border; } &, pre.code, .line_holder .line_content { background-color: $solarized-dark-pre-bg; color: $solarized-dark-pre-color; } .diff-line-expand-button { @include diff-expansion(lighten($solarized-dark-pre-bg, 10%), $gray-200, lighten($solarized-dark-pre-bg, 20%), $white); } // Diff line .line_holder { &.match .line_content, &.old-nonewline .line_content, &.new-nonewline .line_content { @include dark-diff-match-line; } &.diff-grid-row { --diff-expansion-background-color: #{lighten($solarized-dark-pre-bg, 10%)}; @include dark-diff-expansion-line; } .diff-td.diff-line-num.hll:not(.empty-cell), .diff-td.line-coverage.hll:not(.empty-cell), .diff-td.line-codequality.hll:not(.empty-cell), .diff-td.line_content.hll:not(.empty-cell), td.diff-line-num.hll:not(.empty-cell), td.line-coverage.hll:not(.empty-cell), td.line_content.hll:not(.empty-cell) { background-color: $solarized-dark-hll-bg; border-color: darken($solarized-dark-hll-bg, 15%); } .line-coverage { @include line-coverage-border-color($solarized-dark-coverage, $solarized-dark-no-coverage); } &:not(.match) .diff-grid-left:hover, &:not(.match) .diff-grid-right:hover, &.code-search-line:hover { .diff-line-num:not(.empty-cell) { @include line-number-hover; } } .diff-line-num.new, .line-coverage.new, .line-codequality.new, .line_content.new, .diff-line-num.new-nomappinginraw, .line-coverage.new-nomappinginraw, .line-codequality.new-nomappinginraw, .line_content.new-nomappinginraw { @include diff-background($solarized-dark-new-bg, $solarized-dark-new-idiff, $solarized-dark-border); &::before, a { color: $solarized-dark-line-color-new; } } .diff-line-num.old, .line-coverage.old, .line-codequality.old, .line_content.old, .diff-line-num.old-nomappinginraw, .line-coverage.old-nomappinginraw, .line-codequality.old-nomappinginraw, .line_content.old-nomappinginraw { @include diff-background($solarized-dark-old-bg, $solarized-dark-old-idiff, $solarized-dark-border); &::before, a { color: $solarized-dark-line-color-old; } } .diff-line-num { &.is-over, &.hll:not(.empty-cell).is-over { @include line-number-hover; } } .line_content.match { @include dark-diff-match-line; } &:not(.diff-expanded) + .diff-expanded, &.diff-expanded + .line_holder:not(.diff-expanded) { > .diff-line-num, > .line-coverage, > .line_content { border-top: 1px solid $black; } } &.diff-expanded { > .diff-line-num, > .line-coverage, > .line_content { background: $solarized-dark-expanded-bg; border-color: $solarized-dark-expanded-bg; } } } @include conflict-colors('solarized-dark'); // highlight line via anchor pre .hll { background-color: $solarized-dark-hll-bg !important; } // Search result highlight span.highlight_word { background-color: $solarized-dark-highlight !important; } // Links to URLs, emails, or dependencies .line a { color: $solarized-dark-kd; } /* Solarized Dark For use with Jekyll and Pygments http://ethanschoonover.com/solarized SOLARIZED HEX ROLE --------- -------- ------------------------------------------ base03 #002b36 background base01 #586e75 comments / secondary content base1 #93a1a1 body text / default code / primary content orange #cb4b16 constants red #dc322f regex, special keywords blue #268bd2 reserved keywords cyan #2aa198 strings, numbers green #859900 operators, other keywords */ .c { color: $solarized-dark-c; } /* Comment */ .err { color: $solarized-dark-err; } /* Error */ .g { color: $solarized-dark-g; } /* Generic */ .k { color: $solarized-dark-k; } /* Keyword */ .l { color: $solarized-dark-l; } /* Literal */ .n { color: $solarized-dark-n; } /* Name */ .o { color: $solarized-dark-o; } /* Operator */ .x { color: $solarized-dark-x; } /* Other */ .p { color: $solarized-dark-p; } /* Punctuation */ .cm { color: $solarized-dark-cm; } /* Comment.Multiline */ .cp { color: $solarized-dark-cp; } /* Comment.Preproc */ .c1 { color: $solarized-dark-c1; } /* Comment.Single */ .cs { color: $solarized-dark-cs; } /* Comment.Special */ .cd { color: $solarized-dark-cd; } /* Comment.Doc */ .gd { color: $solarized-dark-gd; } /* Generic.Deleted */ .ge { /* Generic.Emph */ color: $solarized-dark-ge; font-style: italic; } .gr { color: $solarized-dark-gr; } /* Generic.Error */ .gh { color: $solarized-dark-gh; } /* Generic.Heading */ .gi { color: $solarized-dark-gi; } /* Generic.Inserted */ .go { color: $solarized-dark-go; } /* Generic.Output */ .gp { color: $solarized-dark-gp; } /* Generic.Prompt */ .gs { /* Generic.Strong */ color: $solarized-dark-gs; font-weight: $gl-font-weight-bold; } .gu { color: $solarized-dark-gu; } /* Generic.Subheading */ .gt { color: $solarized-dark-gt; } /* Generic.Traceback */ .kc { color: $solarized-dark-kc; } /* Keyword.Constant */ .kd { color: $solarized-dark-kd; } /* Keyword.Declaration */ .kn { color: $solarized-dark-kn; } /* Keyword.Namespace */ .kp { color: $solarized-dark-kp; } /* Keyword.Pseudo */ .kr { color: $solarized-dark-kr; } /* Keyword.Reserved */ .kt { color: $solarized-dark-kt; } /* Keyword.Type */ .ld { color: $solarized-dark-ld; } /* Literal.Date */ .m { color: $solarized-dark-m; } /* Literal.Number */ .s { color: $solarized-dark-s; } /* Literal.String */ .na { color: $solarized-dark-na; } /* Name.Attribute */ .nb { color: $solarized-dark-nb; } /* Name.Builtin */ .nc { color: $solarized-dark-nc; } /* Name.Class */ .no { color: $solarized-dark-no; } /* Name.Constant */ .nd { color: $solarized-dark-nd; } /* Name.Decorator */ .ni { color: $solarized-dark-ni; } /* Name.Entity */ .ne { color: $solarized-dark-ne; } /* Name.Exception */ .nf { color: $solarized-dark-nf; } /* Name.Function */ .nl { color: $solarized-dark-nl; } /* Name.Label */ .nn { color: $solarized-dark-nn; } /* Name.Namespace */ .nx { color: $solarized-dark-nx; } /* Name.Other */ .py { color: $solarized-dark-py; } /* Name.Property */ .nt { color: $solarized-dark-nt; } /* Name.Tag */ .nv { color: $solarized-dark-nv; } /* Name.Variable */ .ow { color: $solarized-dark-ow; } /* Operator.Word */ .w { color: $solarized-dark-w; } /* Text.Whitespace */ .mf { color: $solarized-dark-mf; } /* Literal.Number.Float */ .mh { color: $solarized-dark-mh; } /* Literal.Number.Hex */ .mi { color: $solarized-dark-mi; } /* Literal.Number.Integer */ .mo { color: $solarized-dark-mo; } /* Literal.Number.Oct */ .sb { color: $solarized-dark-sb; } /* Literal.String.Backtick */ .sc { color: $solarized-dark-sc; } /* Literal.String.Char */ .sd { color: $solarized-dark-sd; } /* Literal.String.Doc */ .s2 { color: $solarized-dark-s2; } /* Literal.String.Double */ .se { color: $solarized-dark-se; } /* Literal.String.Escape */ .sh { color: $solarized-dark-sh; } /* Literal.String.Heredoc */ .si { color: $solarized-dark-si; } /* Literal.String.Interpol */ .sx { color: $solarized-dark-sx; } /* Literal.String.Other */ .sr { color: $solarized-dark-sr; } /* Literal.String.Regex */ .s1 { color: $solarized-dark-s1; } /* Literal.String.Single */ .ss { color: $solarized-dark-ss; } /* Literal.String.Symbol */ .bp { color: $solarized-dark-bp; } /* Name.Builtin.Pseudo */ .vc { color: $solarized-dark-vc; } /* Name.Variable.Class */ .vg { color: $solarized-dark-vg; } /* Name.Variable.Global */ .vi { color: $solarized-dark-vi; } /* Name.Variable.Instance */ .il { color: $solarized-dark-il; } /* Literal.Number.Integer.Long */ }