From 3f3ac131b3de506da2be4536bc7cfda900535856 Mon Sep 17 00:00:00 2001 From: Jan De Dobbeleer Date: Mon, 10 Jan 2022 21:59:49 +0100 Subject: [PATCH] docs: new code block theme --- docs/docusaurus.config.js | 7 +- docs/src/css/prism-rose-pine-moon.css | 201 ++++++++++++++++++++++++++ 2 files changed, 205 insertions(+), 3 deletions(-) create mode 100644 docs/src/css/prism-rose-pine-moon.css diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index f553e762..61adfb96 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -15,8 +15,6 @@ module.exports = { ], themeConfig: { prism: { - theme: require("prism-react-renderer/themes/duotoneLight"), - darkTheme: require("prism-react-renderer/themes/oceanicNext"), additionalLanguages: ['powershell', 'lua', 'jsstacktrace'], }, navbar: { @@ -124,7 +122,10 @@ module.exports = { editUrl: "https://github.com/jandedobbeleer/oh-my-posh/edit/main/docs/", }, theme: { - customCss: require.resolve("./src/css/custom.css"), + customCss: [ + require.resolve("./src/css/custom.css"), + require.resolve("./src/css/prism-rose-pine-moon.css") + ], }, }, ], diff --git a/docs/src/css/prism-rose-pine-moon.css b/docs/src/css/prism-rose-pine-moon.css new file mode 100644 index 00000000..2a75b18c --- /dev/null +++ b/docs/src/css/prism-rose-pine-moon.css @@ -0,0 +1,201 @@ +/** + * MIT License + * Rosé Pine Theme + * https://github.com/rose-pine + * Ported for PrismJS by fvrests [@fvrests] + */ + + code[class*="language-"], + pre[class*="language-"] { + color: #e0def4; + background: #232136; + font-family: "Cartograph CF", ui-monospace, SFMono-Regular, Menlo, Monaco, + Consolas, "Liberation Mono", "Courier New", monospace; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; + + @media print { + text-shadow: none; + } + } + + /* Selection */ + code[class*="language-"]::-moz-selection, + pre[class*="language-"]::-moz-selection, + code[class*="language-"] ::-moz-selection, + pre[class*="language-"] ::-moz-selection { + background: #312f44; + } + + code[class*="language-"]::selection, + pre[class*="language-"]::selection, + code[class*="language-"] ::selection, + pre[class*="language-"] ::selection { + background: #312f44; + } + + /* Code (block & inline) */ + :not(pre) > code[class*="language-"], + pre[class*="language-"] { + color: #e0def4; + background: #232136; + } + + /* Code blocks */ + pre[class*="language-"] { + padding: 1em; + margin: 0.5em 0; + overflow: auto; + } + + /* Inline code */ + :not(pre) > code[class*="language-"] { + padding: 0.1em; + border-radius: 0.3em; + white-space: normal; + color: #e0def4; + background: #232136; + } + + /* Text style & opacity */ + .token.entity { + cursor: help; + } + + .token.important, + .token.bold { + font-weight: bold; + } + + .token.italic, + .token.selector, + .token.doctype, + .token.attr-name, + .token.inserted, + .token.deleted, + .token.comment, + .token.prolog, + .token.cdata, + .token.constant, + .token.parameter, + .token.url { + font-style: italic; + } + + .token.url { + text-decoration: underline; + } + + .namespace { + opacity: 0.7; + } + + /* Syntax highlighting */ + .token.constant { + color: #e0def4; + } + + .token.comment, + .token.prolog, + .token.cdata, + .token.punctuation { + color: #59546d; + } + + .token.delimiter, + .token.important, + .token.atrule, + .token.operator, + .token.keyword { + color: #3e8fb0; + } + + .token.tag, + .token.tag .punctuation, + .token.doctype, + .token.variable, + .token.regex, + .token.class-name, + .token.selector, + .token.inserted { + color: #9ccfd8; + } + + .token.boolean, + .token.entity, + .token.number, + .token.symbol, + .token.function { + color: #ea9a97; + } + + .token.string, + .token.char, + .token.property, + .token.attr-value, + .token.attr-value .punctuation { + color: #f6c177; + } + + .token.parameter, + .token.url, + .token.name, + .token.attr-name, + .token.builtin { + color: #c4a7e7; + } + + .token.deleted { + color: #eb6f92; + } + + /* Insertions & deletions */ + .token.inserted { + background: rgba(156 207 216 0.12); + } + + .token.deleted { + background: rgba(235 111 146 0.12); + } + + /* Line highlighting */ + pre[data-line] { + position: relative; + } + + pre[class*="language-"] > code[class*="language-"] { + position: relative; + z-index: 1; + } + + .line-highlight, + .highlight-lines .highlighted { + position: absolute; + left: 0; + right: 0; + padding: inherit 0; + margin-top: 1em; + + background: #312f44; + box-shadow: inset 5px 0 0 #e0def4; + + z-index: 0; + + pointer-events: none; + + line-height: inherit; + white-space: pre; + }