summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWe-unite <3205135446@qq.com>2025-01-05 15:05:17 +0800
committerWe-unite <3205135446@qq.com>2025-01-05 15:05:17 +0800
commit11e64c5804b696f170b9d5d881befbabc4a4e85c (patch)
tree931db6605c0b10007c935c4bd0d5f9a2cd335cd5
parent644a16ce9e49692964fcc2f6c017af6fc020350f (diff)
downloadmyweb-11e64c5804b696f170b9d5d881befbabc4a4e85c.tar.gz
myweb-11e64c5804b696f170b9d5d881befbabc4a4e85c.zip
mv highlight fuction into another domain
In the old version, to make highlight usable forever, I decided to use own local version but not cdn of highlight.js website, and write my config js to use it and line-numbers/copy. However, it's hard to upgrade highlight.js. So I move all highlight function into spercific domain, it's easy to change configs or upgrade the hole highlight.js. Besides, it benifits to other sites, because I want to use them now only in blogs, but also in cgit code show pages.
-rw-r--r--code/cpppp.html2
-rw-r--r--code/highlight.html2
-rw-r--r--code/index.html2
-rw-r--r--code/linux/aliyun_cloud.html2
-rw-r--r--code/linux/gitserver.html2
-rw-r--r--code/linux/httpmyserver.html2
-rw-r--r--code/linux/keymap.html2
-rw-r--r--code/linux/vim.html2
-rw-r--r--code/projects/lcm_compile.html2
-rw-r--r--common/CSS/highlight.css83
-rw-r--r--common/js/myhighlight.js78
-rw-r--r--courseNotes/parallel.html3
12 files changed, 10 insertions, 172 deletions
diff --git a/code/cpppp.html b/code/cpppp.html
index ee44972..2bfb80e 100644
--- a/code/cpppp.html
+++ b/code/cpppp.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>cpppp快速基础</title> 8 <title>cpppp快速基础</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script><script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script>\n<script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/highlight.html b/code/highlight.html
index e2dee0d..1874af8 100644
--- a/code/highlight.html
+++ b/code/highlight.html
@@ -5,7 +5,7 @@
5 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
6 <title>我的代码块</title> 6 <title>我的代码块</title>
7 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 7 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
8 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 8 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
9 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 9 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
10</head> 10</head>
11 11
diff --git a/code/index.html b/code/index.html
index ec6ecce..0550e98 100644
--- a/code/index.html
+++ b/code/index.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>我的实用代码</title> 8 <title>我的实用代码</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/linux/aliyun_cloud.html b/code/linux/aliyun_cloud.html
index bab99aa..f430bae 100644
--- a/code/linux/aliyun_cloud.html
+++ b/code/linux/aliyun_cloud.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>我的免费云服</title> 8 <title>我的免费云服</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/linux/gitserver.html b/code/linux/gitserver.html
index d0badaf..8c97999 100644
--- a/code/linux/gitserver.html
+++ b/code/linux/gitserver.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>自己的 git 托管</title> 8 <title>自己的 git 托管</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/linux/httpmyserver.html b/code/linux/httpmyserver.html
index b4f1337..d1e14a7 100644
--- a/code/linux/httpmyserver.html
+++ b/code/linux/httpmyserver.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>http浏览服务器文件</title> 8 <title>http浏览服务器文件</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/linux/keymap.html b/code/linux/keymap.html
index 97f64d6..a21a19a 100644
--- a/code/linux/keymap.html
+++ b/code/linux/keymap.html
@@ -6,7 +6,7 @@
6 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
7 <title>键盘映射</title> 7 <title>键盘映射</title>
8 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 8 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
9 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 9 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
11</head> 11</head>
12 12
diff --git a/code/linux/vim.html b/code/linux/vim.html
index badf5d5..75e0075 100644
--- a/code/linux/vim.html
+++ b/code/linux/vim.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>vim学习与我的配置</title> 8 <title>vim学习与我的配置</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/code/projects/lcm_compile.html b/code/projects/lcm_compile.html
index dbc8109..d889b58 100644
--- a/code/projects/lcm_compile.html
+++ b/code/projects/lcm_compile.html
@@ -7,7 +7,7 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>LCM 交叉编译</title> 8 <title>LCM 交叉编译</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12</head> 12</head>
13 13
diff --git a/common/CSS/highlight.css b/common/CSS/highlight.css
deleted file mode 100644
index 14b71ed..0000000
--- a/common/CSS/highlight.css
+++ /dev/null
@@ -1,83 +0,0 @@
1/* for block of numbers */
2pre code td.hljs-ln-numbers {
3 color: #9c9c9c;
4 border-right: 0.5px solid #9c9c9c;
5 vertical-align: top;
6 padding-left: 0.5rem;
7 padding-right: 0.8rem;
8 border: none;
9 text-align: right;
10}
11
12/* for block of code */
13pre code td.hljs-ln-code {
14 /* padding-left: 1rem; */
15 border: none;
16}
17
18pre {
19 position: relative;
20}
21
22pre .btn {
23 display: none;
24 position: absolute;
25 top: 0;
26 right: 0;
27 background: #333;
28 color: #f5f5f5;
29 border: none;
30 outline: none !important;
31}
32
33pre .btn:hover {
34 color: #fff
35}
36
37pre:hover .btn {
38 display: block;
39}
40
41pre .btn-tip {
42 display: none;
43 position: absolute;
44 top: 0px;
45 right: 0;
46 z-index: 9;
47 padding: 6px 12px;
48 background: #333;
49 color: #f5f5f5;
50 border: none;
51 border-radius: 4px;
52}
53
54.btn {
55 display: inline-block;
56 padding: 6px 12px;
57 margin-bottom: 0;
58 font-size: 14px;
59 font-weight: 400;
60 line-height: 1.42857143;
61 text-align: center;
62 white-space: nowrap;
63 vertical-align: middle;
64 -ms-touch-action: manipulation;
65 touch-action: manipulation;
66 cursor: pointer;
67 -webkit-user-select: none;
68 -moz-user-select: none;
69 -ms-user-select: none;
70 user-select: none;
71 background-image: none;
72 border: 1px solid transparent;
73 border-radius: 4px;
74}
75
76/* 代码复制时全选但不能被看到
77 * 该功能是不道德的,用户想要怎么复制是人家的权利
78 * 即使是自己用起来也经常只需要复制一段
79 * 所以还是让用户自由复制吧
80 */
81/* code ::selection {
82 background-color: rgba(0, 0, 0, 0);
83} */ \ No newline at end of file
diff --git a/common/js/myhighlight.js b/common/js/myhighlight.js
deleted file mode 100644
index 826c14d..0000000
--- a/common/js/myhighlight.js
+++ /dev/null
@@ -1,78 +0,0 @@
1// 代码高亮、加行号、加一键复制功能
2
3// 加js的函数
4function addScript(url, async = true) {
5 //默认先到先得地加载
6 const script = document.createElement('script');
7 script.src = url;
8 script.async = async;
9 document.head.appendChild(script);
10}
11
12// 加link的函数
13function addLink(href, rel = 'stylesheet') {
14 // 默认为stylesheet
15 const link = document.createElement('link');
16 link.rel = rel;
17 link.href = href;
18 document.head.appendChild(link);
19}
20
21// 此处是各个插件
22// 首先放置最高的jQuery备用
23// 而后是highlight.min.js高亮代码
24// 再加行号
25// 最后cliploard供一键复制使用
26var url = ["https://www.qin-juan-ge-zhu.top/common/js/jQuery.js", "https://www.qin-juan-ge-zhu.top/common/highlight/highlight.min.js", "https://www.qin-juan-ge-zhu.top/common/highlight/plugs/highlightjs-line-numbers.js", "https://www.qin-juan-ge-zhu.top/common/highlight/plugs/clipboard.min.js"]
27
28for (let i in url) {
29 // 要求必须按顺序加载
30 addScript(url[i], false);
31}
32
33// 加载高亮所需特殊css
34addLink("https://www.qin-juan-ge-zhu.top/common/CSS/highlight.css");
35
36// 此处负责随机选择一个代码高亮style的css并加载
37// 数组内是现highlight.js所有插件名称,共计75个
38const styles = ["a11y-dark.min.css", "a11y-light.min.css", "agate.min.css", "androidstudio.min.css", "an-old-hope.min.css", "arduino-light.min.css", "arta.min.css", "ascetic.min.css", "atom-one-dark.min.css", "atom-one-dark-reasonable.min.css", "atom-one-light.min.css", "base16", "brown-paper.min.css", "brown-papersq.png", "codepen-embed.min.css", "color-brewer.min.css", "dark.min.css", "default.min.css", "devibeans.min.css", "docco.min.css", "far.min.css", "felipec.min.css", "foundation.min.css", "github-dark-dimmed.min.css", "github-dark.min.css", "github.min.css", "gml.min.css", "googlecode.min.css", "gradient-dark.min.css", "gradient-light.min.css", "grayscale.min.css", "hybrid.min.css", "idea.min.css", "intellij-light.min.css", "ir-black.min.css", "isbl-editor-dark.min.css", "isbl-editor-light.min.css", "kimbie-dark.min.css", "kimbie-light.min.css", "lightfair.min.css", "lioshi.min.css", "magula.min.css", "mono-blue.min.css", "monokai.min.css", "monokai-sublime.min.css", "night-owl.min.css", "nnfx-dark.min.css", "nnfx-light.min.css", "nord.min.css", "obsidian.min.css", "panda-syntax-dark.min.css", "panda-syntax-light.min.css", "paraiso-dark.min.css", "paraiso-light.min.css", "pojoaque.jpg", "pojoaque.min.css", "purebasic.min.css", "qtcreator-dark.min.css", "qtcreator-light.min.css", "rainbow.min.css", "routeros.min.css", "school-book.min.css", "shades-of-purple.min.css", "srcery.min.css", "stackoverflow-dark.min.css", "stackoverflow-light.min.css", "sunburst.min.css", "tokyo-night-dark.min.css", "tokyo-night-light.min.css", "tomorrow-night-blue.min.css", "tomorrow-night-bright.min.css", "vs2015.min.css", "vs.min.css", "xcode.min.css", "xt256.min.css"];
39
40const href = "https://www.qin-juan-ge-zhu.top/common/highlight/styles/" + styles[~~(Math.random() * styles.length)];
41addLink(href);
42
43// 以下代码负责使用上述模块,因而必须在html文档整体完成之后加载
44onload = () => {
45 // 导出的源码由<pre><code>……</code></pre>包裹,符合highlight.min.js要求
46 // 需要在code之前加入复制按钮,要求点击之后显示已复制
47 var allpre = document.getElementsByTagName("pre");
48 for (i = 0; i < allpre.length; i++) {
49 var onepre = document.getElementsByTagName("pre")[i];
50 var mycode = document.getElementsByTagName("pre")[i].innerHTML;
51 onepre.innerHTML = '<div class="btn"><span class="btn-tip">已复制!</span><button class="btn" data-clipboard-action="copy">复制</button></div>' + mycode;
52 };
53
54 // 这两行负责加载代码高亮并为代码添加行号
55 hljs.initHighlightingOnLoad();
56 hljs.initLineNumbersOnLoad();
57
58 // 循环为pre标签加id
59 $("pre").each(function () {
60 $(this).attr('id', "pre" + $(this).index());
61 var btns = $(this).find("button");
62 $(btns).attr('data-clipboard-target', "#pre" + $(this).index())
63 });
64 var clipboard = new ClipboardJS('.btn');
65
66 // 是否成功复制
67 clipboard.on('success', function (e) {
68 $(".btn").each(function () {
69 var btntip = $(this).find("span.btn-tip");
70 $(btntip).css("display", "block").delay(1000).fadeOut(200);
71 });
72 console.log(e);
73 });
74
75 clipboard.on('error', function (e) {
76 console.log(e);
77 });
78}; \ No newline at end of file
diff --git a/courseNotes/parallel.html b/courseNotes/parallel.html
index 163bd24..ebd09d4 100644
--- a/courseNotes/parallel.html
+++ b/courseNotes/parallel.html
@@ -7,9 +7,8 @@
7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
8 <title>并行计算大法好</title> 8 <title>并行计算大法好</title>
9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css"> 9 <link rel="stylesheet" href="https://www.qin-juan-ge-zhu.top/common/CSS/pandoc.css">
10 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script> 10 <script type="text/javascript" src="https://hl.qin-juan-ge-zhu.top/myset/myhighlight.js"></script>
11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script> 11 <script type="text/javascript" src="https://www.qin-juan-ge-zhu.top/common/script4code.js"></script>
12 <script src="https://www.qin-juan-ge-zhu.top/common/js/myhighlight.js"></script>
13 <script type="text/javascript" async 12 <script type="text/javascript" async
14 src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"></script> 13 src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"></script>
15 <script type="text/x-mathjax-config"> 14 <script type="text/x-mathjax-config">