Syntax Highlighting - UserStyles.world

Syntax Highlighting for the Source Code. Additional features: load full code, theme switch, wrap code, copy code

คุณจะต้องติดตั้งส่วนขยาย เช่น Tampermonkey, Greasemonkey หรือ Violentmonkey เพื่อติดตั้งสคริปต์นี้

คุณจะต้องติดตั้งส่วนขยาย เช่น Tampermonkey หรือ Violentmonkey เพื่อติดตั้งสคริปต์นี้

คุณจะต้องติดตั้งส่วนขยาย เช่น Tampermonkey หรือ Violentmonkey เพื่อติดตั้งสคริปต์นี้

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name         Syntax Highlighting - UserStyles.world
// @namespace    https://github.com/pabli24
// @version      0.4
// @description  Syntax Highlighting for the Source Code. Additional features: load full code, theme switch, wrap code, copy code
// @author       Pabli
// @license      MIT
// @match        https://userstyles.world/style/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=userstyles.world
// @require      https://greasyfork.org/scripts/469422-highlight-js-css-less-scss-stylus/code/Highlightjs%20CSS%20Less%20SCSS%20Stylus.js?version=1210677
// @grant        GM_addStyle
// ==/UserScript==

(function() {
"use strict";
/*global hljs*/

const codeSection = document.querySelector("#code");
const h2 = codeSection.querySelector("h2");
const pre = codeSection.querySelector("pre");
const code = codeSection.querySelector("code");
const mark = codeSection.querySelector("mark");

const spanOptions = `
<span style="display: flex; justify-content: space-between; align-items: baseline">
  ${h2.outerHTML}
  <span style="margin-bottom: 0.5em">
  <input type="checkbox" id="code-full" style="opacity: 1; box-shadow: unset"><label for="code-full" style="margin-right: 0.5rem" data-tooltip="Don't trunace source code if it has over 10K characters">Full code</label>
  <input type="checkbox" id="code-wrap" style="opacity: 1; box-shadow: unset"><label for="code-wrap" style="margin-right: 0.5rem">Code wrap</label>
  <select id="theme-select" style="margin-right: 0.5rem">
    <optgroup label="Dark Theme">
      <option value="a11y-dark">a11y dark</option>
      <option value="atom-one-dark">Atom one dark</option>
      <option value="stackoverflow-dark">StackOverflow dark</option>
      <option value="github-dark">GitHub dark</option>
      <option value="tokyo-night-dark">Tokyo night dark</option>
      <option value="tomorrow-night-bright">Tomorrow night bright</option>
      <option value="vs2015">Visual Studio 2015 dark</option>
    </optgroup>
    <optgroup label="Light Theme">
      <option value="a11y-light">a11y light</option>
      <option value="atom-one-light">Atom one light</option>
      <option value="stackoverflow-light">StackOverflow light</option>
      <option value="github">GitHub</option>
      <option value="tokyo-night-light">Tokyo night light</option>
      <option value="vs">Visual Studio</option>
    </optgroup>
  </select>
  <button id="code-copy" data-tooltip="Copy source code" style="width: 18px; height: 18px; min-height: auto; vertical-align: middle; background: none; padding: 0; margin: 0; border: 0; cursor: pointer; box-shadow: unset">
    <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
      <rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect>
      <path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"></path>
    </svg>
  </button>
  </span>
</span>
`;

h2.remove();
codeSection.insertAdjacentHTML("afterbegin", spanOptions);

highlight();
codeFull();
codeWrap();
codeTheme()
codeCopy();

function highlight() {
	if (/@preprocessor\s+stylus/.test(code.innerText)) {
		code.classList.add("language-stylus");
	} else if (/@preprocessor\s+less/.test(code.innerText)) {
		code.classList.add("language-less");
	} else {
		code.classList.add("language-css");
	}

	hljs.highlightElement(code);
}

async function loadFullCode() {
	const installBtn = document.querySelector("#install").href;

	try {
		mark.remove();
		const response = await fetch(installBtn);
		const css = await response.text();
		code.textContent = css;
		hljs.highlightElement(code);
	} catch (error) {
		code.textContent = error;
	}
}

function codeFull() {
	const boxFull = document.querySelector("#code-full");

	if (localStorage.getItem("codeFull") === "true") {
		if (mark) loadFullCode();
		boxFull.checked = true;
	} else if (mark) {
		mark.innerHTML += `<a id="fullcode" style="margin: 0 5px;cursor: pointer;font-weight: bold"> Load full code anyway</a>`;
		document.querySelector("#fullcode").onclick = () => loadFullCode();
	}

	boxFull.addEventListener("click", () => {
		if (mark) loadFullCode();
		localStorage.setItem("codeFull", boxFull.checked);
	});
}

function codeWrap() {
	const boxWrap = document.querySelector("#code-wrap");

	if (localStorage.getItem("codeWrap") === "true") {
		pre.classList.add("prewrap");
		boxWrap.checked = true;
	} else {
		pre.classList.remove("prewrap");
	}

	boxWrap.addEventListener("click", () => {
		pre.classList.toggle("prewrap");
		localStorage.setItem("codeWrap", boxWrap.checked);
	});
}

function codeTheme() {
	const themeSelect = document.querySelector("#theme-select");
	const themeLs = localStorage.getItem("codeTheme");
	pre.classList.add("hljs");

	if (themeLs) {
		themeSelect.value = themeLs;
		codeSection.className = "theme-" + themeLs;
	} else {
		codeSection.className = "theme-a11y-dark";
	}

	themeSelect.addEventListener('change', () => {
		const val = themeSelect.value;

		codeSection.className = "theme-" + val;
		localStorage.setItem("codeTheme", val);
	});
}

function codeCopy() {
	const copy = document.querySelector("#code-copy");

	copy.addEventListener("click", () => {
		navigator.clipboard.writeText(code.textContent);
		copy.setAttribute("data-tooltip", "Source code has been copied to your clipboard");
	});
}

GM_addStyle(`
.prewrap {white-space: pre-wrap; overflow-wrap: break-word}
@media screen and (max-width: 1250px) {#code > span {flex-flow: row wrap}}
#code-copy::before {width: auto}

/* a11y-dark - Author @ericwbailey - Maintainer @ericwbailey */
.theme-a11y-dark pre code.hljs{display:block;padding:1em}.theme-a11y-dark code.hljs{padding:3px 5px}.theme-a11y-dark .hljs{background:#2b2b2b;color:#f8f8f2}.theme-a11y-dark .hljs-comment,.theme-a11y-dark .hljs-quote{color:#d4d0ab}.theme-a11y-dark .hljs-deletion,.theme-a11y-dark .hljs-name,.theme-a11y-dark .hljs-regexp,.theme-a11y-dark .hljs-selector-class,.theme-a11y-dark .hljs-selector-id,.theme-a11y-dark .hljs-tag,.theme-a11y-dark .hljs-template-variable,.theme-a11y-dark .hljs-variable{color:#ffa07a}.theme-a11y-dark .hljs-built_in,.theme-a11y-dark .hljs-link,.theme-a11y-dark .hljs-literal,.theme-a11y-dark .hljs-meta,.theme-a11y-dark .hljs-number,.theme-a11y-dark .hljs-params,.theme-a11y-dark .hljs-type{color:#f5ab35}.theme-a11y-dark .hljs-attribute{color:gold}.theme-a11y-dark .hljs-addition,.theme-a11y-dark .hljs-bullet,.theme-a11y-dark .hljs-string,.theme-a11y-dark .hljs-symbol{color:#abe338}.theme-a11y-dark .hljs-section,.theme-a11y-dark .hljs-title{color:#00e0e0}.theme-a11y-dark .hljs-keyword,.theme-a11y-dark .hljs-selector-tag{color:#dcc6e0}.theme-a11y-dark .hljs-emphasis{font-style:italic}.theme-a11y-dark .hljs-strong{font-weight:700}@media screen and (-ms-high-contrast: active){.theme-a11y-dark .hljs-addition,.theme-a11y-dark .hljs-attribute,.theme-a11y-dark .hljs-built_in,.theme-a11y-dark .hljs-bullet,.theme-a11y-dark .hljs-comment,.theme-a11y-dark .hljs-link,.theme-a11y-dark .hljs-literal,.theme-a11y-dark .hljs-meta,.theme-a11y-dark .hljs-number,.theme-a11y-dark .hljs-params,.theme-a11y-dark .hljs-quote,.theme-a11y-dark .hljs-string,.theme-a11y-dark .hljs-symbol,.theme-a11y-dark .hljs-type{color:highlight}.theme-a11y-dark .hljs-keyword,.theme-a11y-dark .hljs-selector-tag{font-weight:700}}
/* a11y-light - Author @ericwbailey - Maintainer @ericwbailey */
.theme-a11y-light pre code.hljs{display:block;padding:1em}.theme-a11y-light code.hljs{padding:3px 5px}.theme-a11y-light .hljs{background:#fefefe;color:#545454}.theme-a11y-light .hljs-comment,.theme-a11y-light .hljs-quote{color:dimgray}.theme-a11y-light .hljs-deletion,.theme-a11y-light .hljs-name,.theme-a11y-light .hljs-regexp,.theme-a11y-light .hljs-selector-class,.theme-a11y-light .hljs-selector-id,.theme-a11y-light .hljs-tag,.theme-a11y-light .hljs-template-variable,.theme-a11y-light .hljs-variable{color:#d91e18}.theme-a11y-light .hljs-attribute,.theme-a11y-light .hljs-built_in,.theme-a11y-light .hljs-link,.theme-a11y-light .hljs-literal,.theme-a11y-light .hljs-meta,.theme-a11y-light .hljs-number,.theme-a11y-light .hljs-params,.theme-a11y-light .hljs-type{color:#aa5d00}.theme-a11y-light .hljs-addition,.theme-a11y-light .hljs-bullet,.theme-a11y-light .hljs-string,.theme-a11y-light .hljs-symbol{color:green}.theme-a11y-light .hljs-section,.theme-a11y-light .hljs-title{color:#007faa}.theme-a11y-light .hljs-keyword,.theme-a11y-light .hljs-selector-tag{color:#7928a1}.theme-a11y-light .hljs-emphasis{font-style:italic}.theme-a11y-light .hljs-strong{font-weight:700}@media screen and (-ms-high-contrast: active){.theme-a11y-light .hljs-addition,.theme-a11y-light .hljs-attribute,.theme-a11y-light .hljs-built_in,.theme-a11y-light .hljs-bullet,.theme-a11y-light .hljs-comment,.theme-a11y-light .hljs-link,.theme-a11y-light .hljs-literal,.theme-a11y-light .hljs-meta,.theme-a11y-light .hljs-number,.theme-a11y-light .hljs-params,.theme-a11y-light .hljs-quote,.theme-a11y-light .hljs-string,.theme-a11y-light .hljs-symbol,.theme-a11y-light .hljs-type{color:highlight}.theme-a11y-light .hljs-keyword,.theme-a11y-light .hljs-selector-tag{font-weight:700}}
/* Atom-one-dark */
.theme-atom-one-dark pre code.hljs{display:block;padding:1em}.theme-atom-one-dark code.hljs{padding:3px 5px}.theme-atom-one-dark .hljs{color:#abb2bf;background:#282c34}.theme-atom-one-dark .hljs-comment,.theme-atom-one-dark .hljs-quote{color:#5c6370;font-style:italic}.theme-atom-one-dark .hljs-doctag,.theme-atom-one-dark .hljs-formula,.theme-atom-one-dark .hljs-keyword{color:#c678dd}.theme-atom-one-dark .hljs-deletion,.theme-atom-one-dark .hljs-name,.theme-atom-one-dark .hljs-section,.theme-atom-one-dark .hljs-selector-tag,.theme-atom-one-dark .hljs-subst{color:#e06c75}.theme-atom-one-dark .hljs-literal{color:#56b6c2}.theme-atom-one-dark .hljs-addition,.theme-atom-one-dark .hljs-attribute,.theme-atom-one-dark .hljs-meta .hljs-string,.theme-atom-one-dark .hljs-regexp,.theme-atom-one-dark .hljs-string{color:#98c379}.theme-atom-one-dark .hljs-attr,.theme-atom-one-dark .hljs-number,.theme-atom-one-dark .hljs-selector-attr,.theme-atom-one-dark .hljs-selector-class,.theme-atom-one-dark .hljs-selector-pseudo,.theme-atom-one-dark .hljs-template-variable,.theme-atom-one-dark .hljs-type,.theme-atom-one-dark .hljs-variable{color:#d19a66}.theme-atom-one-dark .hljs-bullet,.theme-atom-one-dark .hljs-link,.theme-atom-one-dark .hljs-meta,.theme-atom-one-dark .hljs-selector-id,.theme-atom-one-dark .hljs-symbol,.theme-atom-one-dark .hljs-title{color:#61aeee}.theme-atom-one-dark .hljs-built_in,.theme-atom-one-dark .hljs-class .hljs-title,.theme-atom-one-dark .hljs-title.class_{color:#e6c07b}.theme-atom-one-dark .hljs-emphasis{font-style:italic}.theme-atom-one-dark .hljs-strong{font-weight:700}.theme-atom-one-dark .hljs-link{text-decoration:underline}
/* Atom-one-light */
.theme-atom-one-light pre code.hljs{display:block;padding:1em}.theme-atom-one-light code.hljs{padding:3px 5px}.theme-atom-one-light .hljs{color:#383a42;background:#fafafa}.theme-atom-one-light .hljs-comment,.theme-atom-one-light .hljs-quote{color:#a0a1a7;font-style:italic}.theme-atom-one-light .hljs-doctag,.theme-atom-one-light .hljs-formula,.theme-atom-one-light .hljs-keyword{color:#a626a4}.theme-atom-one-light .hljs-deletion,.theme-atom-one-light .hljs-name,.theme-atom-one-light .hljs-section,.theme-atom-one-light .hljs-selector-tag,.theme-atom-one-light .hljs-subst{color:#e45649}.theme-atom-one-light .hljs-literal{color:#0184bb}.theme-atom-one-light .hljs-addition,.theme-atom-one-light .hljs-attribute,.theme-atom-one-light .hljs-meta .hljs-string,.theme-atom-one-light .hljs-regexp,.theme-atom-one-light .hljs-string{color:#50a14f}.theme-atom-one-light .hljs-attr,.theme-atom-one-light .hljs-number,.theme-atom-one-light .hljs-selector-attr,.theme-atom-one-light .hljs-selector-class,.theme-atom-one-light .hljs-selector-pseudo,.theme-atom-one-light .hljs-template-variable,.theme-atom-one-light .hljs-type,.theme-atom-one-light .hljs-variable{color:#986801}.theme-atom-one-light .hljs-bullet,.theme-atom-one-light .hljs-link,.theme-atom-one-light .hljs-meta,.theme-atom-one-light .hljs-selector-id,.theme-atom-one-light .hljs-symbol,.theme-atom-one-light .hljs-title{color:#4078f2}.theme-atom-one-light .hljs-built_in,.theme-atom-one-light .hljs-class .hljs-title,.theme-atom-one-light .hljs-title.class_{color:#c18401}.theme-atom-one-light .hljs-emphasis{font-style:italic}.theme-atom-one-light .hljs-strong{font-weight:700}.theme-atom-one-light .hljs-link{text-decoration:underline}
/* StackOverflow Dark - License MIT - Author stackoverflow.com - Maintainer @Hirse - Website https://github.com/StackExchange/Stacks */
.theme-stackoverflow-dark pre code.hljs{display:block;padding:1em}.theme-stackoverflow-dark code.hljs{padding:3px 5px}.theme-stackoverflow-dark .hljs{color:#fff;background:#1c1b1b}.theme-stackoverflow-dark .hljs-subst{color:#fff}.theme-stackoverflow-dark .hljs-comment{color:#999}.theme-stackoverflow-dark .hljs-attr,.theme-stackoverflow-dark .hljs-doctag,.theme-stackoverflow-dark .hljs-keyword,.theme-stackoverflow-dark .hljs-meta .hljs-keyword,.theme-stackoverflow-dark .hljs-section,.theme-stackoverflow-dark .hljs-selector-tag{color:#88aece}.theme-stackoverflow-dark .hljs-attribute{color:#c59bc1}.theme-stackoverflow-dark .hljs-name,.theme-stackoverflow-dark .hljs-number,.theme-stackoverflow-dark .hljs-quote,.theme-stackoverflow-dark .hljs-selector-id,.theme-stackoverflow-dark .hljs-template-tag,.theme-stackoverflow-dark .hljs-type{color:#f08d49}.theme-stackoverflow-dark .hljs-selector-class{color:#88aece}.theme-stackoverflow-dark .hljs-link,.theme-stackoverflow-dark .hljs-regexp,.theme-stackoverflow-dark .hljs-selector-attr,.theme-stackoverflow-dark .hljs-string,.theme-stackoverflow-dark .hljs-symbol,.theme-stackoverflow-dark .hljs-template-variable,.theme-stackoverflow-dark .hljs-variable{color:#b5bd68}.theme-stackoverflow-dark .hljs-meta,.theme-stackoverflow-dark .hljs-selector-pseudo{color:#88aece}.theme-stackoverflow-dark .hljs-built_in,.theme-stackoverflow-dark .hljs-literal,.theme-stackoverflow-dark .hljs-title{color:#f08d49}.theme-stackoverflow-dark .hljs-bullet,.theme-stackoverflow-dark .hljs-code{color:#ccc}.theme-stackoverflow-dark .hljs-meta .hljs-string{color:#b5bd68}.theme-stackoverflow-dark .hljs-deletion{color:#de7176}.theme-stackoverflow-dark .hljs-addition{color:#76c490}.theme-stackoverflow-dark .hljs-emphasis{font-style:italic}.theme-stackoverflow-dark .hljs-strong{font-weight:700}
/* StackOverflow Light - License MIT - Author stackoverflow.com - Maintainer @Hirse - Website https://github.com/StackExchange/Stacks */
.theme-stackoverflow-light pre code.hljs{display:block;padding:1em}.theme-stackoverflow-light code.hljs{padding:3px 5px}.theme-stackoverflow-light .hljs{color:#2f3337;background:#f6f6f6}.theme-stackoverflow-light .hljs-subst{color:#2f3337}.theme-stackoverflow-light .hljs-comment{color:#656e77}.theme-stackoverflow-light .hljs-attr,.theme-stackoverflow-light .hljs-doctag,.theme-stackoverflow-light .hljs-keyword,.theme-stackoverflow-light .hljs-meta .hljs-keyword,.theme-stackoverflow-light .hljs-section,.theme-stackoverflow-light .hljs-selector-tag{color:#015692}.theme-stackoverflow-light .hljs-attribute{color:#803378}.theme-stackoverflow-light .hljs-name,.theme-stackoverflow-light .hljs-number,.theme-stackoverflow-light .hljs-quote,.theme-stackoverflow-light .hljs-selector-id,.theme-stackoverflow-light .hljs-template-tag,.theme-stackoverflow-light .hljs-type{color:#b75501}.theme-stackoverflow-light .hljs-selector-class{color:#015692}.theme-stackoverflow-light .hljs-link,.theme-stackoverflow-light .hljs-regexp,.theme-stackoverflow-light .hljs-selector-attr,.theme-stackoverflow-light .hljs-string,.theme-stackoverflow-light .hljs-symbol,.theme-stackoverflow-light .hljs-template-variable,.theme-stackoverflow-light .hljs-variable{color:#54790d}.theme-stackoverflow-light .hljs-meta,.theme-stackoverflow-light .hljs-selector-pseudo{color:#015692}.theme-stackoverflow-light .hljs-built_in,.theme-stackoverflow-light .hljs-literal,.theme-stackoverflow-light .hljs-title{color:#b75501}.theme-stackoverflow-light .hljs-bullet,.theme-stackoverflow-light .hljs-code{color:#535a60}.theme-stackoverflow-light .hljs-meta .hljs-string{color:#54790d}.theme-stackoverflow-light .hljs-deletion{color:#c02d2e}.theme-stackoverflow-light .hljs-addition{color:#2f6f44}.theme-stackoverflow-light .hljs-emphasis{font-style:italic}.theme-stackoverflow-light .hljs-strong{font-weight:700}.theme-sunburst pre code.hljs{display:block;overflow-x:auto;padding:1em}.theme-sunburst code.hljs{padding:3px 5px}.theme-sunburst .hljs{background:#000;color:#f8f8f8}.theme-sunburst .hljs-comment,.theme-sunburst .hljs-quote{color:#aeaeae;font-style:italic}.theme-sunburst .hljs-keyword,.theme-sunburst .hljs-selector-tag,.theme-sunburst .hljs-type{color:#e28964}.theme-sunburst .hljs-string{color:#65b042}.theme-sunburst .hljs-subst{color:#daefa3}.theme-sunburst .hljs-link,.theme-sunburst .hljs-regexp{color:#e9c062}.theme-sunburst .hljs-name,.theme-sunburst .hljs-section,.theme-sunburst .hljs-tag,.theme-sunburst .hljs-title{color:#89bdff}.theme-sunburst .hljs-class .hljs-title,.theme-sunburst .hljs-doctag,.theme-sunburst .hljs-title.class_{text-decoration:underline}.theme-sunburst .hljs-bullet,.theme-sunburst .hljs-number,.theme-sunburst .hljs-symbol{color:#3387cc}.theme-sunburst .hljs-params,.theme-sunburst .hljs-template-variable,.theme-sunburst .hljs-variable{color:#3e87e3}.theme-sunburst .hljs-attribute{color:#cda869}.theme-sunburst .hljs-meta{color:#8996a8}.theme-sunburst .hljs-formula{background-color:#0e2231;color:#f8f8f8;font-style:italic}.theme-sunburst .hljs-addition{background-color:#253b22;color:#f8f8f8}.theme-sunburst .hljs-deletion{background-color:#420e09;color:#f8f8f8}.theme-sunburst .hljs-selector-class{color:#9b703f}.theme-sunburst .hljs-selector-id{color:#8b98ab}.theme-sunburst .hljs-emphasis{font-style:italic}.theme-sunburst .hljs-strong{font-weight:700}
/* GitHub Dark - Author github.com - Maintainer @Hirse */
.theme-github-dark pre code.hljs{display:block;padding:1em}.theme-github-dark code.hljs{padding:3px 5px}.theme-github-dark .hljs{color:#c9d1d9;background:#0d1117}.theme-github-dark .hljs-doctag,.theme-github-dark .hljs-keyword,.theme-github-dark .hljs-meta .hljs-keyword,.theme-github-dark .hljs-template-tag,.theme-github-dark .hljs-template-variable,.theme-github-dark .hljs-type,.theme-github-dark .hljs-variable.language_{color:#ff7b72}.theme-github-dark .hljs-title,.theme-github-dark .hljs-title.class_,.theme-github-dark .hljs-title.class_.inherited__,.theme-github-dark .hljs-title.function_{color:#d2a8ff}.theme-github-dark .hljs-attr,.theme-github-dark .hljs-attribute,.theme-github-dark .hljs-literal,.theme-github-dark .hljs-meta,.theme-github-dark .hljs-number,.theme-github-dark .hljs-operator,.theme-github-dark .hljs-selector-attr,.theme-github-dark .hljs-selector-class,.theme-github-dark .hljs-selector-id,.theme-github-dark .hljs-variable{color:#79c0ff}.theme-github-dark .hljs-meta .hljs-string,.theme-github-dark .hljs-regexp,.theme-github-dark .hljs-string{color:#a5d6ff}.theme-github-dark .hljs-built_in,.theme-github-dark .hljs-symbol{color:#ffa657}.theme-github-dark .hljs-code,.theme-github-dark .hljs-comment,.theme-github-dark .hljs-formula{color:#8b949e}.theme-github-dark .hljs-name,.theme-github-dark .hljs-quote,.theme-github-dark .hljs-selector-pseudo,.theme-github-dark .hljs-selector-tag{color:#7ee787}.theme-github-dark .hljs-subst{color:#c9d1d9}.theme-github-dark .hljs-section{color:#1f6feb;font-weight:700}.theme-github-dark .hljs-bullet{color:#f2cc60}.theme-github-dark .hljs-emphasis{color:#c9d1d9;font-style:italic}.theme-github-dark .hljs-strong{color:#c9d1d9;font-weight:700}.theme-github-dark .hljs-addition{color:#aff5b4;background-color:#033a16}.theme-github-dark .hljs-deletion{color:#ffdcd7;background-color:#67060c}
/* GitHub - Author github.com - Maintainer @Hirse */
.theme-github pre code.hljs{display:block;padding:1em}.theme-github code.hljs{padding:3px 5px}.theme-github .hljs{color:#24292e;background:#fff}.theme-github .hljs-doctag,.theme-github .hljs-keyword,.theme-github .hljs-meta .hljs-keyword,.theme-github .hljs-template-tag,.theme-github .hljs-template-variable,.theme-github .hljs-type,.theme-github .hljs-variable.language_{color:#d73a49}.theme-github .hljs-title,.theme-github .hljs-title.class_,.theme-github .hljs-title.class_.inherited__,.theme-github .hljs-title.function_{color:#6f42c1}.theme-github .hljs-attr,.theme-github .hljs-attribute,.theme-github .hljs-literal,.theme-github .hljs-meta,.theme-github .hljs-number,.theme-github .hljs-operator,.theme-github .hljs-selector-attr,.theme-github .hljs-selector-class,.theme-github .hljs-selector-id,.theme-github .hljs-variable{color:#005cc5}.theme-github .hljs-meta .hljs-string,.theme-github .hljs-regexp,.theme-github .hljs-string{color:#032f62}.theme-github .hljs-built_in,.theme-github .hljs-symbol{color:#e36209}.theme-github .hljs-code,.theme-github .hljs-comment,.theme-github .hljs-formula{color:#6a737d}.theme-github .hljs-name,.theme-github .hljs-quote,.theme-github .hljs-selector-pseudo,.theme-github .hljs-selector-tag{color:#22863a}.theme-github .hljs-subst{color:#24292e}.theme-github .hljs-section{color:#005cc5;font-weight:700}.theme-github .hljs-bullet{color:#735c0f}.theme-github .hljs-emphasis{color:#24292e;font-style:italic}.theme-github .hljs-strong{color:#24292e;font-weight:700}.theme-github .hljs-addition{color:#22863a;background-color:#f0fff4}.theme-github .hljs-deletion{color:#b31d28;background-color:#ffeef0}
/* Tokyo-night-Dark - License MIT - Author (c) Henri Vandersleyen <[email protected]> */
.theme-tokyo-night-dark pre code.hljs{display:block;padding:1em}.theme-tokyo-night-dark code.hljs{padding:3px 5px}.theme-tokyo-night-dark .hljs-comment,.theme-tokyo-night-dark .hljs-meta{color:#565f89}.theme-tokyo-night-dark .hljs-deletion,.theme-tokyo-night-dark .hljs-doctag,.theme-tokyo-night-dark .hljs-regexp,.theme-tokyo-night-dark .hljs-selector-attr,.theme-tokyo-night-dark .hljs-selector-class,.theme-tokyo-night-dark .hljs-selector-id,.theme-tokyo-night-dark .hljs-selector-pseudo,.theme-tokyo-night-dark .hljs-tag,.theme-tokyo-night-dark .hljs-template-tag,.theme-tokyo-night-dark .hljs-variable.language_{color:#f7768e}.theme-tokyo-night-dark .hljs-link,.theme-tokyo-night-dark .hljs-literal,.theme-tokyo-night-dark .hljs-number,.theme-tokyo-night-dark .hljs-params,.theme-tokyo-night-dark .hljs-template-variable,.theme-tokyo-night-dark .hljs-type,.theme-tokyo-night-dark .hljs-variable{color:#ff9e64}.theme-tokyo-night-dark .hljs-attribute,.theme-tokyo-night-dark .hljs-built_in{color:#e0af68}.theme-tokyo-night-dark .hljs-keyword,.theme-tokyo-night-dark .hljs-property,.theme-tokyo-night-dark .hljs-subst,.theme-tokyo-night-dark .hljs-title,.theme-tokyo-night-dark .hljs-title.class_,.theme-tokyo-night-dark .hljs-title.class_.inherited__,.theme-tokyo-night-dark .hljs-title.function_{color:#7dcfff}.theme-tokyo-night-dark .hljs-selector-tag{color:#73daca}.theme-tokyo-night-dark .hljs-addition,.theme-tokyo-night-dark .hljs-bullet,.theme-tokyo-night-dark .hljs-quote,.theme-tokyo-night-dark .hljs-string,.theme-tokyo-night-dark .hljs-symbol{color:#9ece6a}.theme-tokyo-night-dark .hljs-code,.theme-tokyo-night-dark .hljs-formula,.theme-tokyo-night-dark .hljs-section{color:#7aa2f7}.theme-tokyo-night-dark .hljs-attr,.theme-tokyo-night-dark .hljs-char.escape_,.theme-tokyo-night-dark .hljs-keyword,.theme-tokyo-night-dark .hljs-name,.theme-tokyo-night-dark .hljs-operator{color:#bb9af7}.theme-tokyo-night-dark .hljs-punctuation{color:#c0caf5}.theme-tokyo-night-dark .hljs{background:#1a1b26;color:#9aa5ce}.theme-tokyo-night-dark .hljs-emphasis{font-style:italic}.theme-tokyo-night-dark .hljs-strong{font-weight:700}
/* Tokyo-night-light - License MIT - Author (c) Henri Vandersleyen <[email protected]> */
.theme-tokyo-night-light pre code.hljs{display:block;padding:1em}.theme-tokyo-night-light code.hljs{padding:3px 5px}.theme-tokyo-night-light .hljs-comment,.theme-tokyo-night-light .hljs-meta{color:#9699a3}.theme-tokyo-night-light .hljs-deletion,.theme-tokyo-night-light .hljs-doctag,.theme-tokyo-night-light .hljs-regexp,.theme-tokyo-night-light .hljs-selector-attr,.theme-tokyo-night-light .hljs-selector-class,.theme-tokyo-night-light .hljs-selector-id,.theme-tokyo-night-light .hljs-selector-pseudo,.theme-tokyo-night-light .hljs-tag,.theme-tokyo-night-light .hljs-template-tag,.theme-tokyo-night-light .hljs-variable.language_{color:#8c4351}.theme-tokyo-night-light .hljs-link,.theme-tokyo-night-light .hljs-literal,.theme-tokyo-night-light .hljs-number,.theme-tokyo-night-light .hljs-params,.theme-tokyo-night-light .hljs-template-variable,.theme-tokyo-night-light .hljs-type,.theme-tokyo-night-light .hljs-variable{color:#965027}.theme-tokyo-night-light .hljs-attribute,.theme-tokyo-night-light .hljs-built_in{color:#8f5e15}.theme-tokyo-night-light .hljs-keyword,.theme-tokyo-night-light .hljs-property,.theme-tokyo-night-light .hljs-subst,.theme-tokyo-night-light .hljs-title,.theme-tokyo-night-light .hljs-title.class_,.theme-tokyo-night-light .hljs-title.class_.inherited__,.theme-tokyo-night-light .hljs-title.function_{color:#0f4b6e}.theme-tokyo-night-light .hljs-selector-tag{color:#33635c}.theme-tokyo-night-light .hljs-addition,.theme-tokyo-night-light .hljs-bullet,.theme-tokyo-night-light .hljs-quote,.theme-tokyo-night-light .hljs-string,.theme-tokyo-night-light .hljs-symbol{color:#485e30}.theme-tokyo-night-light .hljs-code,.theme-tokyo-night-light .hljs-formula,.theme-tokyo-night-light .hljs-section{color:#34548a}.theme-tokyo-night-light .hljs-attr,.theme-tokyo-night-light .hljs-char.escape_,.theme-tokyo-night-light .hljs-keyword,.theme-tokyo-night-light .hljs-name,.theme-tokyo-night-light .hljs-operator{color:#5a4a78}.theme-tokyo-night-light .hljs-punctuation{color:#343b58}.theme-tokyo-night-light .hljs{background:#d5d6db;color:#565a6e}.theme-tokyo-night-light .hljs-emphasis{font-style:italic}.theme-tokyo-night-light .hljs-strong{font-weight:700}
/* Tomorrow-night-bright */
.theme-tomorrow-night-bright pre code.hljs{display:block;padding:1em}.theme-tomorrow-night-bright code.hljs{padding:3px 5px}.theme-tomorrow-night-bright .hljs-comment,.theme-tomorrow-night-bright .hljs-quote{color:#969896}.theme-tomorrow-night-bright .hljs-deletion,.theme-tomorrow-night-bright .hljs-name,.theme-tomorrow-night-bright .hljs-regexp,.theme-tomorrow-night-bright .hljs-selector-class,.theme-tomorrow-night-bright .hljs-selector-id,.theme-tomorrow-night-bright .hljs-tag,.theme-tomorrow-night-bright .hljs-template-variable,.theme-tomorrow-night-bright .hljs-variable{color:#d54e53}.theme-tomorrow-night-bright .hljs-built_in,.theme-tomorrow-night-bright .hljs-link,.theme-tomorrow-night-bright .hljs-literal,.theme-tomorrow-night-bright .hljs-meta,.theme-tomorrow-night-bright .hljs-number,.theme-tomorrow-night-bright .hljs-params,.theme-tomorrow-night-bright .hljs-type{color:#e78c45}.theme-tomorrow-night-bright .hljs-attribute{color:#e7c547}.theme-tomorrow-night-bright .hljs-addition,.theme-tomorrow-night-bright .hljs-bullet,.theme-tomorrow-night-bright .hljs-string,.theme-tomorrow-night-bright .hljs-symbol{color:#b9ca4a}.theme-tomorrow-night-bright .hljs-section,.theme-tomorrow-night-bright .hljs-title{color:#7aa6da}.theme-tomorrow-night-bright .hljs-keyword,.theme-tomorrow-night-bright .hljs-selector-tag{color:#c397d8}.theme-tomorrow-night-bright .hljs{background:#000;color:#eaeaea}.theme-tomorrow-night-bright .hljs-emphasis{font-style:italic}.theme-tomorrow-night-bright .hljs-strong{font-weight:700}
/* vs */
.theme-vs pre code.hljs{display:block;padding:1em}.theme-vs code.hljs{padding:3px 5px}.theme-vs .hljs{background:#fff;color:#000}.theme-vs .hljs-comment,.theme-vs .hljs-quote,.theme-vs .hljs-variable{color:green}.theme-vs .hljs-built_in,.theme-vs .hljs-keyword,.theme-vs .hljs-name,.theme-vs .hljs-selector-tag,.theme-vs .hljs-tag{color:blue}.theme-vs .hljs-addition,.theme-vs .hljs-attribute,.theme-vs .hljs-literal,.theme-vs .hljs-section,.theme-vs .hljs-string,.theme-vs .hljs-template-tag,.theme-vs .hljs-template-variable,.theme-vs .hljs-title,.theme-vs .hljs-type{color:#a31515}.theme-vs .hljs-deletion,.theme-vs .hljs-meta,.theme-vs .hljs-selector-attr,.theme-vs .hljs-selector-pseudo{color:#2b91af}.theme-vs .hljs-doctag{color:gray}.theme-vs .hljs-attr{color:red}.theme-vs .hljs-bullet,.theme-vs .hljs-link,.theme-vs .hljs-symbol{color:#00b0e8}.theme-vs .hljs-emphasis{font-style:italic}.theme-vs .hljs-strong{font-weight:700}
/* vs2015 */
.theme-vs2015 pre code.hljs{display:block;padding:1em}.theme-vs2015 code.hljs{padding:3px 5px}.theme-vs2015 .hljs{background:#1e1e1e;color:#dcdcdc}.theme-vs2015 .hljs-keyword,.theme-vs2015 .hljs-literal,.theme-vs2015 .hljs-name,.theme-vs2015 .hljs-symbol{color:#569cd6}.theme-vs2015 .hljs-link{color:#569cd6;text-decoration:underline}.theme-vs2015 .hljs-built_in,.theme-vs2015 .hljs-type{color:#4ec9b0}.theme-vs2015 .hljs-class,.theme-vs2015 .hljs-number{color:#b8d7a3}.theme-vs2015 .hljs-meta .hljs-string,.theme-vs2015 .hljs-string{color:#d69d85}.theme-vs2015 .hljs-regexp,.theme-vs2015 .hljs-template-tag{color:#9a5334}.theme-vs2015 .hljs-formula,.theme-vs2015 .hljs-function,.theme-vs2015 .hljs-params,.theme-vs2015 .hljs-subst,.theme-vs2015 .hljs-title{color:#dcdcdc}.theme-vs2015 .hljs-comment,.theme-vs2015 .hljs-quote{color:#57a64a;font-style:italic}.theme-vs2015 .hljs-doctag{color:#608b4e}.theme-vs2015 .hljs-meta,.theme-vs2015 .hljs-meta .hljs-keyword,.theme-vs2015 .hljs-tag{color:#9b9b9b}.theme-vs2015 .hljs-template-variable,.theme-vs2015 .hljs-variable{color:#bd63c5}.theme-vs2015 .hljs-attr,.theme-vs2015 .hljs-attribute{color:#9cdcfe}.theme-vs2015 .hljs-section{color:gold}.theme-vs2015 .hljs-emphasis{font-style:italic}.theme-vs2015 .hljs-strong{font-weight:700}.theme-vs2015 .hljs-bullet,.theme-vs2015 .hljs-selector-attr,.theme-vs2015 .hljs-selector-class,.theme-vs2015 .hljs-selector-id,.theme-vs2015 .hljs-selector-pseudo,.theme-vs2015 .hljs-selector-tag{color:#d7ba7d}.theme-vs2015 .hljs-addition{background-color:#144212;display:inline-block;width:100%}.theme-vs2015 .hljs-deletion{background-color:#600;display:inline-block;width:100%}
`);

})();