4.2.0 (#530)
* revamp code highlighting * replace standard Fira Code with a variable version * change buttons arrows * redesign code blocks * make terminal logo more prominent * separate terminal theme styles from terminal.css Terminal.css styles only can change the color scheme. * update docs and version * remove USERS.md * fix header pattern * remove old prismjs shortcode * remove old rss template * remove old figure shortcode * [chore] update yarn LOL, I'm still using 1.22.x * [chore] update package-lock.json * fix pagination & boost meta visibility * fix code blocks on mobile & move some parts from CSS to JS
This commit is contained in:
parent
c7770bc85e
commit
3f87c12098
34 changed files with 4747 additions and 6686 deletions
32
assets/js/code.js
Normal file
32
assets/js/code.js
Normal file
|
@ -0,0 +1,32 @@
|
|||
const blockcodes = document.querySelectorAll(".chroma code[data-lang]");
|
||||
|
||||
for (const bc of blockcodes) {
|
||||
const parent = bc.parentElement;
|
||||
const content = bc.innerText.split("\n").filter(Boolean).join("\n");
|
||||
|
||||
// Code title
|
||||
const title = document.createElement("div");
|
||||
const lang = bc.dataset.lang;
|
||||
title.classList.add("code-title");
|
||||
title.innerText = lang;
|
||||
|
||||
// Copy to clipboard
|
||||
if (navigator.clipboard !== undefined) {
|
||||
const cpbutton = document.createElement("button");
|
||||
cpbutton.classList.add("copy-button");
|
||||
cpbutton.innerText = "Copy";
|
||||
|
||||
cpbutton.addEventListener("click", () => {
|
||||
cpbutton.innerText = "Copied";
|
||||
setTimeout(() => {
|
||||
cpbutton.innerText = "Copy";
|
||||
}, 1000);
|
||||
|
||||
navigator.clipboard.writeText(content);
|
||||
});
|
||||
|
||||
title.append(cpbutton);
|
||||
}
|
||||
|
||||
parent.closest(".highlight").prepend(title);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue