From 8172884bfce0fe1e69681d0d76d5e094bf5d2eac Mon Sep 17 00:00:00 2001
From: Karol Kania <999044+khanyooh@users.noreply.github.com>
Date: Tue, 08 Dec 2020 20:06:37 +0000
Subject: [PATCH] markup highlight to match dark/light mode
---
exampleSite/config.toml | 5 +
assets/css/markupHighlight.css | 215 +++++++++++++++++++++++++++++++++++++++++++++++++++++
layouts/partials/head.html | 6 +
3 files changed, 226 insertions(+), 0 deletions(-)
diff --git a/assets/css/markupHighlight.css b/assets/css/markupHighlight.css
new file mode 100644
index 0000000..f50134e
--- /dev/null
+++ b/assets/css/markupHighlight.css
@@ -0,0 +1,215 @@
+:root {
+ /* Light -> monokailight */
+ --chr-def-color: #272822;
+ --chr-def-bg-color: #fafafa;
+ --chr-err-color: #960050;
+ --chr-err-bg-color: #960050;
+ --chr-hl-bg-color: #ffffcc;
+ --chr-lnt-color: #7f7f7f;
+ --chr-ln-color: #7f7f7f;
+ --chr-k-color: #00a8c8;
+ --chr-kc-color: #00a8c8;
+ --chr-kd-color: #00a8c8;
+ --chr-kn-color: #f92672;
+ --chr-kp-color: #00a8c8;
+ --chr-kr-color: #00a8c8;
+ --chr-kt-color: #00a8c8;
+ --chr-n-color: #111111;
+ --chr-na-color: #75af00;
+ --chr-nb-color: #111111;
+ --chr-bp-color: #111111;
+ --chr-nc-color: #75af00;
+ --chr-no-color: #00a8c8;
+ --chr-nd-color: #75af00;
+ --chr-ni-color: #111111;
+ --chr-ne-color: #75af00;
+ --chr-nf-color: #75af00;
+ --chr-fm-color: #111111;
+ --chr-nl-color: #111111;
+ --chr-nn-color: #111111;
+ --chr-nx-color: #75af00;
+ --chr-py-color: #111111;
+ --chr-nt-color: #f92672;
+ --chr-nv-color: #111111;
+ --chr-vc-color: #111111;
+ --chr-vg-color: #111111;
+ --chr-vi-color: #111111;
+ --chr-vm-color: #111111;
+ --chr-l-color: #ae81ff;
+ --chr-ld-color: #d88200;
+ --chr-s-color: #d88200;
+ --chr-sa-color: #d88200;
+ --chr-sb-color: #d88200;
+ --chr-sc-color: #d88200;
+ --chr-dl-color: #d88200;
+ --chr-sd-color: #d88200;
+ --chr-s2-color: #d88200;
+ --chr-se-color: #8045ff;
+ --chr-sh-color: #d88200;
+ --chr-si-color: #d88200;
+ --chr-sx-color: #d88200;
+ --chr-sr-color: #d88200;
+ --chr-s1-color: #d88200;
+ --chr-ss-color: #d88200;
+ --chr-m-color: #ae81ff;
+ --chr-mb-color: #ae81ff;
+ --chr-mf-color: #ae81ff;
+ --chr-mh-color: #ae81ff;
+ --chr-mi-color: #ae81ff;
+ --chr-il-color: #ae81ff;
+ --chr-mo-color: #ae81ff;
+ --chr-o-color: #f92672;
+ --chr-ow-color: #f92672;
+ --chr-p-color: #111111;
+ --chr-c-color: #75715e;
+ --chr-ch-color: #75715e;
+ --chr-cm-color: #75715e;
+ --chr-c1-color: #75715e;
+ --chr-cs-color: #75715e;
+ --chr-cp-color: #75715e;
+ --chr-cpf-color: #75715e;
+}
+
+html[data-theme='dark'] {
+ /* Dark -> monokai */
+ --chr-def-color: #f8f8f2;
+ --chr-def-bg-color: #272822;
+ --chr-err-color: #960050;
+ --chr-err-bg-color: #1e0010;
+ --chr-hl-bg-color: #ffffcc;
+ --chr-lnt-color: #7f7f7f;
+ --chr-ln-color: #7f7f7f;
+ --chr-k-color: #66d9ef;
+ --chr-kc-color: #66d9ef;
+ --chr-kd-color: #66d9ef;
+ --chr-kn-color: #f92672;
+ --chr-kp-color: #66d9ef;
+ --chr-kr-color: #66d9ef;
+ --chr-kt-color: #66d9ef;
+ --chr-na-color: #a6e22e;
+ --chr-nc-color: #a6e22e;
+ --chr-no-color: #66d9ef;
+ --chr-nd-color: #a6e22e;
+ --chr-ne-color: #a6e22e;
+ --chr-nf-color: #a6e22e;
+ --chr-nx-color: #a6e22e;
+ --chr-nt-color: #f92672;
+ --chr-l-color: #ae81ff;
+ --chr-ld-color: #e6db74;
+ --chr-s-color: #e6db74;
+ --chr-sa-color: #e6db74;
+ --chr-sb-color: #e6db74;
+ --chr-sc-color: #e6db74;
+ --chr-dl-color: #e6db74;
+ --chr-sd-color: #e6db74;
+ --chr-s2-color: #e6db74;
+ --chr-se-color: #ae81ff;
+ --chr-sh-color: #e6db74;
+ --chr-si-color: #e6db74;
+ --chr-sx-color: #e6db74;
+ --chr-sr-color: #e6db74;
+ --chr-s1-color: #e6db74;
+ --chr-ss-color: #e6db74;
+ --chr-m-color: #ae81ff;
+ --chr-mb-color: #ae81ff;
+ --chr-mf-color: #ae81ff;
+ --chr-mh-color: #ae81ff;
+ --chr-mi-color: #ae81ff;
+ --chr-il-color: #ae81ff;
+ --chr-mo-color: #ae81ff;
+ --chr-o-color: #f92672;
+ --chr-ow-color: #f92672;
+ --chr-c-color: #75715e;
+ --chr-ch-color: #75715e;
+ --chr-cm-color: #75715e;
+ --chr-c1-color: #75715e;
+ --chr-cs-color: #75715e;
+ --chr-cp-color: #75715e;
+ --chr-cpf-color: #75715e;
+ --chr-gd-color: #f92672;
+ --chr-gi-color: #a6e22e;
+ --chr-gu-color: #75715e;
+}
+
+/* Background */ .chroma { color: var(--chr-def-color); background-color: var(--chr-def-bg-color) }
+/* Other */ .chroma .x { }
+/* Error */ .chroma .err { color: var(--chr-err-color); background-color: var(--chr-err-bg-color) }
+/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; }
+/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; width: auto; overflow: auto; display: block; }
+/* LineHighlight */ .chroma .hl { display: block; width: 100%;background-color: var(--chr-hl-bg-color) }
+/* LineNumbersTable */ .chroma .lnt { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: var(--chr-lnt-color) }
+/* LineNumbers */ .chroma .ln { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: var(--chr-ln-color) }
+/* Keyword */ .chroma .k { color: var(--chr-k-color) }
+/* KeywordConstant */ .chroma .kc { color: var(--chr-kc-color) }
+/* KeywordDeclaration */ .chroma .kd { color: var(--chr-kd-color) }
+/* KeywordNamespace */ .chroma .kn { color: var(--chr-kn-color) }
+/* KeywordPseudo */ .chroma .kp { color: var(--chr-kp-color) }
+/* KeywordReserved */ .chroma .kr { color: var(--chr-kr-color) }
+/* KeywordType */ .chroma .kt { color: var(--chr-kt-color) }
+/* Name */ .chroma .n { color: var(--chr-n-color) }
+/* NameAttribute */ .chroma .na { color: var(--chr-na-color) }
+/* NameBuiltin */ .chroma .nb { color: var(--chr-nb-color) }
+/* NameBuiltinPseudo */ .chroma .bp { color: var(--chr-bp-color) }
+/* NameClass */ .chroma .nc { color: var(--chr-nc-color) }
+/* NameConstant */ .chroma .no { color: var(--chr-no-color) }
+/* NameDecorator */ .chroma .nd { color: var(--chr-nd-color) }
+/* NameEntity */ .chroma .ni { color: var(--chr-ni-color) }
+/* NameException */ .chroma .ne { color: var(--chr-ne-color) }
+/* NameFunction */ .chroma .nf { color: var(--chr-nf-color) }
+/* NameFunctionMagic */ .chroma .fm { color: var(--chr-fm-color) }
+/* NameLabel */ .chroma .nl { color: var(--chr-nl-color) }
+/* NameNamespace */ .chroma .nn { color: var(--chr-nn-color) }
+/* NameOther */ .chroma .nx { color: var(--chr-nx-color) }
+/* NameProperty */ .chroma .py { color: var(--chr-py-color) }
+/* NameTag */ .chroma .nt { color: var(--chr-nt-color) }
+/* NameVariable */ .chroma .nv { color: var(--chr-nv-color) }
+/* NameVariableClass */ .chroma .vc { color: var(--chr-vc-color) }
+/* NameVariableGlobal */ .chroma .vg { color: var(--chr-vg-color) }
+/* NameVariableInstance */ .chroma .vi { color: var(--chr-vi-color) }
+/* NameVariableMagic */ .chroma .vm { color: var(--chr-vm-color) }
+/* Literal */ .chroma .l { color: var(--chr-l-color) }
+/* LiteralDate */ .chroma .ld { color: var(--chr-ld-color) }
+/* LiteralString */ .chroma .s { color: var(--chr-s-color) }
+/* LiteralStringAffix */ .chroma .sa { color: var(--chr-sa-color) }
+/* LiteralStringBacktick */ .chroma .sb { color: var(--chr-sb-color) }
+/* LiteralStringChar */ .chroma .sc { color: var(--chr-sc-color) }
+/* LiteralStringDelimiter */ .chroma .dl { color: var(--chr-dl-color) }
+/* LiteralStringDoc */ .chroma .sd { color: var(--chr-sd-color) }
+/* LiteralStringDouble */ .chroma .s2 { color: var(--chr-s2-color) }
+/* LiteralStringEscape */ .chroma .se { color: var(--chr-se-color) }
+/* LiteralStringHeredoc */ .chroma .sh { color: var(--chr-sh-color) }
+/* LiteralStringInterpol */ .chroma .si { color: var(--chr-si-color) }
+/* LiteralStringOther */ .chroma .sx { color: var(--chr-sx-color) }
+/* LiteralStringRegex */ .chroma .sr { color: var(--chr-sr-color) }
+/* LiteralStringSingle */ .chroma .s1 { color: var(--chr-s1-color) }
+/* LiteralStringSymbol */ .chroma .ss { color: var(--chr-ss-color) }
+/* LiteralNumber */ .chroma .m { color: var(--chr-m-color) }
+/* LiteralNumberBin */ .chroma .mb { color: var(--chr-mb-color) }
+/* LiteralNumberFloat */ .chroma .mf { color: var(--chr-mf-color) }
+/* LiteralNumberHex */ .chroma .mh { color: var(--chr-mh-color) }
+/* LiteralNumberInteger */ .chroma .mi { color: var(--chr-mi-color) }
+/* LiteralNumberIntegerLong */ .chroma .il { color: var(--chr-il-color) }
+/* LiteralNumberOct */ .chroma .mo { color: var(--chr-mo-color) }
+/* Operator */ .chroma .o { color: var(--chr-o-color) }
+/* OperatorWord */ .chroma .ow { color: var(--chr-ow-color) }
+/* Punctuation */ .chroma .p { color: var(--chr-p-color) }
+/* Comment */ .chroma .c { color: var(--chr-c-color) }
+/* CommentHashbang */ .chroma .ch { color: var(--chr-ch-color) }
+/* CommentMultiline */ .chroma .cm { color: var(--chr-cm-color) }
+/* CommentSingle */ .chroma .c1 { color: var(--chr-c1-color) }
+/* CommentSpecial */ .chroma .cs { color: var(--chr-cs-color) }
+/* CommentPreproc */ .chroma .cp { color: var(--chr-cp-color) }
+/* CommentPreprocFile */ .chroma .cpf { color: var(--chr-cpf-color) }
+/* Generic */ .chroma .g { }
+/* GenericDeleted */ .chroma .gd { }
+/* GenericEmph */ .chroma .ge { font-style: italic }
+/* GenericError */ .chroma .gr { }
+/* GenericHeading */ .chroma .gh { }
+/* GenericInserted */ .chroma .gi { }
+/* GenericOutput */ .chroma .go { }
+/* GenericPrompt */ .chroma .gp { }
+/* GenericStrong */ .chroma .gs { font-weight: bold }
+/* GenericSubheading */ .chroma .gu { }
+/* GenericTraceback */ .chroma .gt { }
+/* GenericUnderline */ .chroma .gl { }
+/* TextWhitespace */ .chroma .w { }
diff --git a/exampleSite/config.toml b/exampleSite/config.toml
index 3adfbe4..d1687a4 100644
--- a/exampleSite/config.toml
+++ b/exampleSite/config.toml
@@ -13,6 +13,11 @@
# Google Analytics
#googleAnalytics = "UA-123-45"
+# Syntax highlighting
+pygmentsUseClasses = true
+pygmentsCodeFences = true
+pygmentsCodefencesGuessSyntax = true
+
[params]
title = "I'm Jane Doe"
author = "Jane Doe"
diff --git a/layouts/partials/head.html b/layouts/partials/head.html
index e6aa14d..f1ba79c 100644
--- a/layouts/partials/head.html
+++ b/layouts/partials/head.html
@@ -17,6 +17,12 @@
integrity="{{ $style.Data.Integrity }}"
crossorigin="anonymous"
type="text/css">
+ {{ $markupHighlightStyle := resources.Get "css/markupHighlight.css" | resources.Minify | resources.Fingerprint }}
+ <link rel="stylesheet"
+ href="{{ $markupHighlightStyle.Permalink }}"
+ integrity="{{ $markupHighlightStyle.Data.Integrity }}"
+ crossorigin="anonymous"
+ type="text/css">
{{- $css := "" -}}
{{- range .Site.Params.customCss -}}
{{ $css := resources.Get . | fingerprint }}
--
Gitblit v1.10.0