jekyll-theme-gaeblogx 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +9 -0
- data/_includes/algolia.html +75 -0
- data/_includes/backToTop.html +5 -0
- data/_includes/category.html +19 -0
- data/_includes/comments.html +46 -0
- data/_includes/footer.html +33 -0
- data/_includes/head.html +58 -0
- data/_includes/header.html +34 -0
- data/_includes/previousAndNext.html +13 -0
- data/_includes/sidebar-search.html +25 -0
- data/_includes/tag.html +16 -0
- data/_layouts/default.html +26 -0
- data/_layouts/demo.html +10 -0
- data/_layouts/page.html +31 -0
- data/_layouts/post.html +107 -0
- data/_sass/_backToTop.scss +49 -0
- data/_sass/_demo.scss +65 -0
- data/_sass/_footer.scss +63 -0
- data/_sass/_header.scss +174 -0
- data/_sass/_index.scss +174 -0
- data/_sass/_layout.scss +242 -0
- data/_sass/_page.scss +238 -0
- data/_sass/_post-old.scss +109 -0
- data/_sass/_post.scss +83 -0
- data/_sass/_reset.scss +119 -0
- data/_sass/_scrollbar.scss +35 -0
- data/_sass/_syntax-highlighting.scss +99 -0
- data/assets/10.jpg +0 -0
- data/assets/AWS-Introduction-ec2.png +0 -0
- data/assets/Cache-Oblivious-Algorithms-FunnelSort.jpg +0 -0
- data/assets/Condition-Variables-fig1.png +0 -0
- data/assets/Dynamic-Compilation-adaptJVM.pdf +0 -0
- data/assets/Dynamic-Compilation-dyncomp.pdf +0 -0
- data/assets/Fibonacci-Heap-Fig3.png +0 -0
- data/assets/Fibonacci-Heap-Fig5.png +0 -0
- data/assets/Fibonacci-Heap-Fig6.png +0 -0
- data/assets/Fibonacci-Heap-Fig7.png +0 -0
- data/assets/File-System-bc.jpg +0 -0
- data/assets/File-System-filetable.rich.jpg +0 -0
- data/assets/GIL-Battle.png +0 -0
- data/assets/GIL-CPU.png +0 -0
- data/assets/GIL-Check.png +0 -0
- data/assets/GIL-IO.png +0 -0
- data/assets/GIL-Measure-1.png +0 -0
- data/assets/GIL-Measure-2.png +0 -0
- data/assets/GIL-Signal.png +0 -0
- data/assets/GIL-Tick.png +0 -0
- data/assets/Garbage-Collection-Slides-gc.pdf +0 -0
- data/assets/Garbage-Collection-copying-1.png +0 -0
- data/assets/Garbage-Collection-copying-2.png +0 -0
- data/assets/Garbage-Collection-free-list.png +0 -0
- data/assets/Garbage-Collection-generation-1.png +0 -0
- data/assets/Garbage-Collection-mark-sweep.png +0 -0
- data/assets/Garbage-Collection-nursery-1.png +0 -0
- data/assets/Garbage-Collection-nursery-2.png +0 -0
- data/assets/Garbage-Collection-nursery-3.png +0 -0
- data/assets/Garbage-Collection-nursery-4.png +0 -0
- data/assets/Garbage-Collection-nursery-5.png +0 -0
- data/assets/Garbage-Collection-process.png +0 -0
- data/assets/Garbage-Collection-ref-counting.png +0 -0
- data/assets/Interpreter-Optimization-interp.pdf +0 -0
- data/assets/Memory-Management-fig1.png +0 -0
- data/assets/Memory-Management-fig2.png +0 -0
- data/assets/Memory-Management-fig3.png +0 -0
- data/assets/Memory-Management-fig4.png +0 -0
- data/assets/Memory-Management-fig5.png +0 -0
- data/assets/Memory-Management-fig6.png +0 -0
- data/assets/Memory-Management-fig7.png +0 -0
- data/assets/Memory-Management-fig8.png +0 -0
- data/assets/Multicore-GIL-1.png +0 -0
- data/assets/Multicore-GIL-2.png +0 -0
- data/assets/My-Photo.JPG +0 -0
- data/assets/Operating-System-Virtualization-ept.png +0 -0
- data/assets/Operating-System-Virtualization-guest-page.png +0 -0
- data/assets/Operating-System-Virtualization-kvm-arch.png +0 -0
- data/assets/Operating-System-Virtualization-kvm-process.png +0 -0
- data/assets/Operating-System-Virtualization-kvm-qemu.png +0 -0
- data/assets/Operating-System-Virtualization-kvm-state.png +0 -0
- data/assets/Operating-System-Virtualization-vtx.png +0 -0
- data/assets/Operating-System-Virtualization-xen-arch.png +0 -0
- data/assets/Program-Profiling-profiling.pdf +0 -0
- data/assets/Programming-Language-Virtual-Machine-vm.pdf +0 -0
- data/assets/Remote-Shell-Session-Setup-1.png +0 -0
- data/assets/Signals-1.png +0 -0
- data/assets/Signals-2.png +0 -0
- data/assets/Signals-3.png +0 -0
- data/assets/Some-Slides-about-Containers-Kubernetes.pdf +0 -0
- data/assets/Some-Slides-about-Containers-UCSB-nurmi.pdf +0 -0
- data/assets/Some-Slides-about-PaaS-CS293B_CloudPlatforms.pdf +0 -0
- data/assets/avg-1thread.c +172 -0
- data/assets/avg-manythread.c +284 -0
- data/assets/avg-nothread.c +71 -0
- data/assets/file-create1.c +75 -0
- data/assets/file-create2.c +120 -0
- data/assets/file-fd1.c +56 -0
- data/assets/file-fd2.c +25 -0
- data/assets/file-fd3.c +23 -0
- data/assets/file-read1.c +62 -0
- data/assets/file-read2.c +66 -0
- data/assets/file-seek1.c +87 -0
- data/assets/fork-1.c +35 -0
- data/assets/fork-2.c +44 -0
- data/assets/fork-3.c +60 -0
- data/assets/fork-4.c +64 -0
- data/assets/joinall-1.c +163 -0
- data/assets/joinall-2.c +162 -0
- data/assets/market-kthreads.c +465 -0
- data/assets/market-semaphore.c +504 -0
- data/assets/market1.c +478 -0
- data/assets/market2.c +490 -0
- data/assets/market3.c +503 -0
- data/assets/market4.c +509 -0
- data/assets/my-cat.c +35 -0
- data/assets/pipe-1.c +45 -0
- data/assets/pipe-2.c +80 -0
- data/assets/pipe-3.c +83 -0
- data/assets/pipe-4.c +116 -0
- data/assets/race1.c +75 -0
- data/assets/race2.c +77 -0
- data/assets/race3.c +87 -0
- data/assets/race_ABC.c +144 -0
- data/assets/search-by-algolia.svg +1 -0
- data/assets/semaphore.book.ps +8827 -0
- data/assets/sys-call1.c +20 -0
- data/assets/sys-call2.c +16 -0
- data/assets//350/265/253/347/202/2161.PNG +0 -0
- data/feed.xml +30 -0
- data/index.html +164 -0
- data/js/jekyll-search.min.js +1 -0
- data/js/lunr.min.js +2977 -0
- data/js/main.js +57 -0
- data/js/masonry.pkgd.min.js +9 -0
- data/js/pageContent.js +166 -0
- data/js/search.js +17 -0
- data/js/smooth-scroll.min.js +2 -0
- data/js/waterfall.js +214 -0
- data/page/0archives.html +83 -0
- data/page/1category.html +62 -0
- data/page/2tags.html +64 -0
- data/page/3search.html +112 -0
- data/page/4about.md +34 -0
- metadata +270 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 5a7885f35ba20ce30188870c55979c6e53937127
|
|
4
|
+
data.tar.gz: 845f35eb542e86b714db0e48a2a47b65c9574433
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: cdb6288597d30f582a454d4ebc0d3fcdc9b8b6d4f208dec59c9a7500f255c92080d354cb3ffae20590b86f6f824e8820f3fabb47e5b00426e90521f1f421ae10
|
|
7
|
+
data.tar.gz: fa6cd2cf950db3d081bc63de0aafec7eb922106d880241ec3e5136eb0b8fadb1ce5c4585d7b420632538340e7bad0c74456c2a3a5f7859eeb7e6a195ecb6d781
|
data/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2018 Baby Pepper
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# SeraphRoy.github.io
|
|
2
|
+
|
|
3
|
+
Adapted theme: https://github.com/Gaohaoyang/gaohaoyang.github.io and do some upgrades
|
|
4
|
+
|
|
5
|
+
Modifications:
|
|
6
|
+
- Add sidebar search for title/tag/category/content
|
|
7
|
+
- Add algolia search with search result highlight
|
|
8
|
+
- Archive by month instead of year
|
|
9
|
+
- SEO optimization
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
<script src="https://cdn.jsdelivr.net/npm/instantsearch.js/dist/instantsearch.min.js"></script>
|
|
2
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>
|
|
3
|
+
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/instantsearch.js@2.3.3/dist/instantsearch.min.css">
|
|
4
|
+
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/instantsearch.js@2.3.3/dist/instantsearch-theme-algolia.min.css">
|
|
5
|
+
|
|
6
|
+
<script>
|
|
7
|
+
const search = instantsearch({
|
|
8
|
+
appId: '{{ site.algolia.application_id }}',
|
|
9
|
+
apiKey: '{{ site.algolia.search_only_api_key }}',
|
|
10
|
+
indexName: '{{ site.algolia.index_name }}',
|
|
11
|
+
searchParameters: {
|
|
12
|
+
restrictSearchableAttributes: [
|
|
13
|
+
'title',
|
|
14
|
+
'content'
|
|
15
|
+
]
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
const hitTemplate = function(hit) {
|
|
20
|
+
let date = '';
|
|
21
|
+
if (hit.date) {
|
|
22
|
+
date = moment.unix(hit.date).format('MMM D, YYYY');
|
|
23
|
+
}
|
|
24
|
+
const url = hit.url;
|
|
25
|
+
const title = hit._highlightResult.title.value;
|
|
26
|
+
const content = hit._highlightResult.html.value;
|
|
27
|
+
|
|
28
|
+
return `
|
|
29
|
+
<div class="post-item">
|
|
30
|
+
<h2><a class="post-link" href="${url}">${title}</a></h2>
|
|
31
|
+
<div class="post-snippet">${content}</div>
|
|
32
|
+
</div>
|
|
33
|
+
`;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
search.addWidget(
|
|
38
|
+
instantsearch.widgets.searchBox({
|
|
39
|
+
container: '#search-searchbar',
|
|
40
|
+
placeholder: 'Search into posts...'
|
|
41
|
+
})
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
search.addWidget(
|
|
45
|
+
instantsearch.widgets.hits({
|
|
46
|
+
container: '#search-hits',
|
|
47
|
+
templates: {
|
|
48
|
+
item: hitTemplate
|
|
49
|
+
}
|
|
50
|
+
})
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
search.start();
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<style>
|
|
57
|
+
.ais-search-box {
|
|
58
|
+
max-width: 100%;
|
|
59
|
+
margin-bottom: 15px;
|
|
60
|
+
}
|
|
61
|
+
.post-item {
|
|
62
|
+
margin-bottom: 30px;
|
|
63
|
+
}
|
|
64
|
+
.post-link .ais-Highlight {
|
|
65
|
+
color: #111;
|
|
66
|
+
font-style: normal;
|
|
67
|
+
text-decoration: underline;
|
|
68
|
+
}
|
|
69
|
+
.post-snippet .ais-Highlight {
|
|
70
|
+
color: #2a7ae2;
|
|
71
|
+
font-style: normal;
|
|
72
|
+
font-weight: bold;
|
|
73
|
+
}
|
|
74
|
+
</style>
|
|
75
|
+
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{% capture categories %}
|
|
2
|
+
{% if post %}
|
|
3
|
+
{% for category in post.categories %}
|
|
4
|
+
<a href="{{ root_url }}/{{ site.category_dir }}#{{ category }}" title="Category: {{ category }}" rel="category">{{ category | join: "/" }}</a>{% unless forloop.last %} {% endunless %}
|
|
5
|
+
{% endfor %}
|
|
6
|
+
{% else %}
|
|
7
|
+
{% for category in page.categories %}
|
|
8
|
+
<a href="{{ root_url }}/{{ site.category_dir }}#{{ category }}" title="Category: {{ category }}" rel="category">{{ category | join: "/" }}</a>{% unless forloop.last %} {% endunless %}
|
|
9
|
+
{% endfor %}
|
|
10
|
+
{% endif %}
|
|
11
|
+
{% endcapture %}
|
|
12
|
+
{% capture category_size %}{{ categories | strip_newlines | replace: ' ', '' | size }}{% endcapture %}
|
|
13
|
+
{% unless category_size == '0' %}
|
|
14
|
+
<!-- <span class="point">•</span> -->
|
|
15
|
+
<span class="categories">
|
|
16
|
+
<i class="fa fa-th-list"></i>{{ categories }}
|
|
17
|
+
<!-- <span class="point">•</span> -->
|
|
18
|
+
</span>
|
|
19
|
+
{% endunless %}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{% if site.duoshuo_shortname %}
|
|
2
|
+
<!-- 多说评论框 start -->
|
|
3
|
+
<div class="ds-thread" data-thread-key="{{ site.url }}{{ page.url }}" data-title="{{page.title}}" data-url="{{ site.url }}{{ page.url }}"></div>
|
|
4
|
+
<!-- 多说评论框 end -->
|
|
5
|
+
<!-- 多说公共JS代码 start (一个网页只需插入一次) -->
|
|
6
|
+
<script type="text/javascript">
|
|
7
|
+
var duoshuoQuery = {
|
|
8
|
+
short_name: "{{site.duoshuo_shortname}}"
|
|
9
|
+
};
|
|
10
|
+
(function() {
|
|
11
|
+
var ds = document.createElement('script');
|
|
12
|
+
ds.type = 'text/javascript';
|
|
13
|
+
ds.async = true;
|
|
14
|
+
ds.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//static.duoshuo.com/embed.js';
|
|
15
|
+
ds.charset = 'UTF-8';
|
|
16
|
+
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ds);
|
|
17
|
+
})();
|
|
18
|
+
</script>
|
|
19
|
+
<!-- 多说公共JS代码 end -->
|
|
20
|
+
{% endif %}
|
|
21
|
+
|
|
22
|
+
{% if site.disqus_shortname %}
|
|
23
|
+
<div id="disqus_thread"></div>
|
|
24
|
+
<script>
|
|
25
|
+
/**
|
|
26
|
+
* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
|
|
27
|
+
* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
var disqus_config = function() {
|
|
31
|
+
this.page.url = '{{ site.url }}{{ page.url }}'; // Replace PAGE_URL with your page's canonical URL variable
|
|
32
|
+
this.page.identifier = '{{ site.url }}{{ page.url }}'; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
(function() { // DON'T EDIT BELOW THIS LINE
|
|
36
|
+
var d = document,
|
|
37
|
+
s = d.createElement('script');
|
|
38
|
+
|
|
39
|
+
s.src = '//{{site.disqus_shortname}}.disqus.com/embed.js';
|
|
40
|
+
|
|
41
|
+
s.setAttribute('data-timestamp', +new Date());
|
|
42
|
+
(d.head || d.body).appendChild(s);
|
|
43
|
+
})();
|
|
44
|
+
</script>
|
|
45
|
+
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
|
|
46
|
+
{% endif %}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<footer class="site-footer">
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<div class="wrapper">
|
|
5
|
+
|
|
6
|
+
<p class="description">
|
|
7
|
+
{% if site.description_footer %} {{site.description_footer}} {% endif %}
|
|
8
|
+
</p>
|
|
9
|
+
<p class="contact">
|
|
10
|
+
Contact me at: {% if site.github_username %}
|
|
11
|
+
<a href="https://github.com/{{site.github_username}}" title="GitHub"><i class="fa fa-github" aria-hidden="true"></i></a> {% endif %} {% if site.email %}
|
|
12
|
+
<a href="mailto:{{site.email}}" title="email"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> {% endif %} {% if site.weibo_username %}
|
|
13
|
+
<a href="http://weibo.com/{{site.weibo_username}}" title="Weibo"><i class="fa fa-weibo" aria-hidden="true"></i></a> {% endif %} {% if site.zhihu_username %}
|
|
14
|
+
<a href="https://www.zhihu.com/people/{{site.zhihu_username}}" title="Zhihu"><i class="iconfont icon-daoruzhihu"></i></a> {% endif %} {% if site.twitter_username %}
|
|
15
|
+
<a href="https://twitter.com/{{site.twitter_username}}" title="Twitter"><i class="fa fa-twitter" aria-hidden="true"></i></a> {% endif %} {% if site.facebook_username %}
|
|
16
|
+
<a href="https://www.facebook.com/{{site.facebook_username}}" title="Facebook"><i class="fa fa-facebook-official" aria-hidden="true"></i></a> {% endif %} {% if site.linkedIn_username %}
|
|
17
|
+
<a href="https://www.linkedin.com/in/{{site.linkedIn_username}}" title="LinkedIn"><i class="fa fa-linkedin" aria-hidden="true"></i></a> {% endif %} {% if site.dribbble_username %}
|
|
18
|
+
<a href=" https://dribbble.com/{{site.dribbble_username}}" title="Dribbble"><i class="fa fa-dribbble" aria-hidden="true"></i></a> {% endif %}
|
|
19
|
+
</p>
|
|
20
|
+
<p>
|
|
21
|
+
本站总访问量<span id="busuanzi_value_site_pv"></span>次,本站访客数<span id="busuanzi_value_site_uv"></span>人次,本文总阅读量<span id="busuanzi_value_page_pv"></span>次
|
|
22
|
+
</p>
|
|
23
|
+
<p class="power">
|
|
24
|
+
<span>
|
|
25
|
+
Site powered by <a href="https://jekyllrb.com/">Jekyll</a> & <a href="https://pages.github.com/">Github Pages</a>.
|
|
26
|
+
</span>
|
|
27
|
+
<span>
|
|
28
|
+
Theme designed by <a href="https://github.com/Gaohaoyang">HyG</a>.
|
|
29
|
+
</span>
|
|
30
|
+
</p>
|
|
31
|
+
</div>
|
|
32
|
+
</footer>
|
|
33
|
+
<script async src="https://dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js"></script>
|
data/_includes/head.html
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<head>
|
|
2
|
+
<meta charset="utf-8">
|
|
3
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
4
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
5
|
+
|
|
6
|
+
<title>{% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %}</title>
|
|
7
|
+
<meta name="description" content="{% if page.excerpt %}{{ page.excerpt | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}">
|
|
8
|
+
|
|
9
|
+
<link rel="shortcut icon" href="/favicon.ico?" type="image/x-icon">
|
|
10
|
+
<link rel="icon" href="/favicon.ico?" type="image/x-icon">
|
|
11
|
+
<link rel="stylesheet" href="https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css">
|
|
12
|
+
<link rel="stylesheet" href="https://at.alicdn.com/t/font_8v3czwksspqlg14i.css">
|
|
13
|
+
<link rel="stylesheet" href="{{ "/css/main.css " | prepend: site.baseurl }}">
|
|
14
|
+
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
|
|
15
|
+
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml " | prepend: site.baseurl | prepend: site.url }}">
|
|
16
|
+
|
|
17
|
+
{% if site.baidu_tongji_id %}
|
|
18
|
+
<script>
|
|
19
|
+
// 百度统计代码
|
|
20
|
+
var _hmt = _hmt || [];
|
|
21
|
+
(function() {
|
|
22
|
+
var hm = document.createElement("script");
|
|
23
|
+
hm.src = "//hm.baidu.com/hm.js?{{site.baidu_tongji_id}}";
|
|
24
|
+
var s = document.getElementsByTagName("script")[0];
|
|
25
|
+
s.parentNode.insertBefore(hm, s);
|
|
26
|
+
})();
|
|
27
|
+
</script>
|
|
28
|
+
{% endif %}
|
|
29
|
+
{% if site.google_analytics_id %}
|
|
30
|
+
<script>
|
|
31
|
+
// google analytics
|
|
32
|
+
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
33
|
+
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
34
|
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
35
|
+
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
|
36
|
+
|
|
37
|
+
ga('create', '{{site.google_analytics_id}}', 'auto');
|
|
38
|
+
ga('send', 'pageview');
|
|
39
|
+
|
|
40
|
+
</script>
|
|
41
|
+
{% endif %}
|
|
42
|
+
|
|
43
|
+
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
44
|
+
{% if page.mathjax %}
|
|
45
|
+
<script type="text/x-mathjax-config">
|
|
46
|
+
MathJax.Hub.Config({
|
|
47
|
+
tex2jax: { inlineMath: [["$","$"],["\\(","\\)"]] },
|
|
48
|
+
"HTML-CSS": {
|
|
49
|
+
linebreaks: { automatic: true, width: "container" }
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
</script>
|
|
53
|
+
<script type="text/javascript"
|
|
54
|
+
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
|
|
55
|
+
</script>
|
|
56
|
+
{% endif %}
|
|
57
|
+
{% seo %}
|
|
58
|
+
</head>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<header id="top">
|
|
2
|
+
<div class="wrapper">
|
|
3
|
+
<a href="{{ site.baseurl }}/" class="brand">{{ site.title }}</a>
|
|
4
|
+
<small>{{site.brief-intro}}</small>
|
|
5
|
+
<button id="headerMenu" class="menu"><i class="fa fa-bars"></i></button>
|
|
6
|
+
<nav id="headerNav">
|
|
7
|
+
<ul>
|
|
8
|
+
<li>
|
|
9
|
+
{% if page.url == '/' %}
|
|
10
|
+
<a class="active" href="{{site.baseurl}}/">
|
|
11
|
+
{% else %}
|
|
12
|
+
<a href="{{site.baseurl}}/">
|
|
13
|
+
{% endif %}
|
|
14
|
+
<i class="fa fa-home"></i>Home
|
|
15
|
+
</a>
|
|
16
|
+
</li>
|
|
17
|
+
|
|
18
|
+
{% for my_page in site.pages %}
|
|
19
|
+
{% if my_page.type == 'page' %}
|
|
20
|
+
<li>
|
|
21
|
+
{% if my_page.url == page.url %}
|
|
22
|
+
<a class="active" href="{{ my_page.url | prepend: site.baseurl }}">
|
|
23
|
+
{% else %}
|
|
24
|
+
<a href="{{ my_page.url | prepend: site.baseurl }}">
|
|
25
|
+
{% endif %}
|
|
26
|
+
<i class="fa fa-{{my_page.icon}}"></i>{{ my_page.title }}
|
|
27
|
+
</a>
|
|
28
|
+
</li>
|
|
29
|
+
{% endif %}
|
|
30
|
+
{% endfor %}
|
|
31
|
+
</ul>
|
|
32
|
+
</nav>
|
|
33
|
+
</div>
|
|
34
|
+
</header>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<div class="post-recent">
|
|
2
|
+
<div class="pre">
|
|
3
|
+
{% if page.previous %}
|
|
4
|
+
<p><strong>上一篇</strong> <a href="{{ page.previous.url | prepend: site.baseurl }}">{{ page.previous.title }}</a></p>
|
|
5
|
+
{% endif %}
|
|
6
|
+
</div>
|
|
7
|
+
<div class="nex">
|
|
8
|
+
|
|
9
|
+
{% if page.next %}
|
|
10
|
+
<p><strong>下一篇</strong> <a href="{{ page.next.url | prepend: site.baseurl }}">{{ page.next.title }}</a></p>
|
|
11
|
+
{% endif %}
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<div>
|
|
2
|
+
<i class="fa fa-search"></i>
|
|
3
|
+
Search
|
|
4
|
+
</div>
|
|
5
|
+
<div id="site_search">
|
|
6
|
+
<input type="text" id="search_box" placeholder="Search..." >
|
|
7
|
+
</div>
|
|
8
|
+
|
|
9
|
+
<ul class="content-ul" id="search_results" recent></ul>
|
|
10
|
+
|
|
11
|
+
<link rel="stylesheet" type="text/css" href="{{ site.url }}/css/main.css">
|
|
12
|
+
<script type="text/javascript" src="{{ site.url }}/js/search.js"></script>
|
|
13
|
+
<script src="{{ site.url }}/js/jekyll-search.min.js"></script>
|
|
14
|
+
|
|
15
|
+
<script type="text/javascript">
|
|
16
|
+
SimpleJekyllSearch({
|
|
17
|
+
searchInput: document.getElementById('search_box'),
|
|
18
|
+
resultsContainer: document.getElementById('search_results'),
|
|
19
|
+
json: '{{ site.baseurl }}/search_data.json',
|
|
20
|
+
searchResultTemplate: '<li><a href="{url}" title="{desc}">{title}</a></li>',
|
|
21
|
+
noResultsText: 'No results found',
|
|
22
|
+
limit: 10,
|
|
23
|
+
fuzzy: false,
|
|
24
|
+
})
|
|
25
|
+
</script>
|
data/_includes/tag.html
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{% capture tags %}
|
|
2
|
+
{% if post %}
|
|
3
|
+
{% for tag in post.tags %}
|
|
4
|
+
<a href="{{ root_url }}/{{ site.tag_dir }}#{{ tag }}" title="Tag: {{ tag }}" rel="tag">{{ tag | join: "/" }}</a>{% unless forloop.last %} {% endunless %}
|
|
5
|
+
{% endfor %}
|
|
6
|
+
{% else %}
|
|
7
|
+
{% for tag in page.tags %}
|
|
8
|
+
<!--a href="{{ root_url }}/{{ site.tag_dir }}#{{ tag | cgi_escape }}" title="Tag: {{ tag }}" rel="tag">{{ tag | join: "/" }}</a-->
|
|
9
|
+
<a href="{{ root_url }}/{{ site.tag_dir }}#{{ tag }}" title="Tag: {{ tag }}" rel="tag">{{ tag | join: "/" }}</a>{% unless forloop.last %} {% endunless %}
|
|
10
|
+
{% endfor %}
|
|
11
|
+
{% endif %}
|
|
12
|
+
{% endcapture %}
|
|
13
|
+
<!-- <span class="point">•</span> -->
|
|
14
|
+
<span class="pageTag">
|
|
15
|
+
<i class="fa fa-tags"></i>{{ tags }}
|
|
16
|
+
</span>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
|
|
4
|
+
{% include head.html %}
|
|
5
|
+
|
|
6
|
+
<body>
|
|
7
|
+
|
|
8
|
+
{% include header.html %}
|
|
9
|
+
|
|
10
|
+
{{ content }}
|
|
11
|
+
|
|
12
|
+
{% include footer.html %}
|
|
13
|
+
{% include backToTop.html %}
|
|
14
|
+
<script src="{{ " /js/main.js " | prepend: site.baseurl }}" charset="utf-8"></script>
|
|
15
|
+
<script src="{{ " /js/smooth-scroll.min.js " | prepend: site.baseurl }}" charset="utf-8"></script>
|
|
16
|
+
<script type="text/javascript">
|
|
17
|
+
smoothScroll.init({
|
|
18
|
+
speed: 500, // Integer. How fast to complete the scroll in milliseconds
|
|
19
|
+
easing: 'easeInOutCubic', // Easing pattern to use
|
|
20
|
+
offset: 20, // Integer. How far to offset the scrolling anchor location in pixels
|
|
21
|
+
});
|
|
22
|
+
</script>
|
|
23
|
+
<!-- <script src="{{ " /js/scroll.min.js " | prepend: site.baseurl }}" charset="utf-8"></script> -->
|
|
24
|
+
</body>
|
|
25
|
+
|
|
26
|
+
</html>
|
data/_layouts/demo.html
ADDED
data/_layouts/page.html
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: default
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
<div class="page clearfix" post>
|
|
6
|
+
<div class="left">
|
|
7
|
+
<h1>{{page.title}}</h1>
|
|
8
|
+
<hr>
|
|
9
|
+
{{content}}
|
|
10
|
+
</div>
|
|
11
|
+
<button class="anchor"><i class="fa fa-anchor"></i></button>
|
|
12
|
+
<div class="right">
|
|
13
|
+
<div class="wrap">
|
|
14
|
+
|
|
15
|
+
<div class="side content">
|
|
16
|
+
{% include sidebar-search.html %}
|
|
17
|
+
</div>
|
|
18
|
+
<!-- Content -->
|
|
19
|
+
<div class="side content">
|
|
20
|
+
<div>
|
|
21
|
+
Content
|
|
22
|
+
</div>
|
|
23
|
+
<ul id="content-side" class="content-ul">
|
|
24
|
+
</ul>
|
|
25
|
+
</div>
|
|
26
|
+
<!-- 其他div框放到这里 -->
|
|
27
|
+
<!-- <div class="side">bbbb</div> -->
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
<script src="{{ "/js/pageContent.js " | prepend: site.baseurl }}" charset="utf-8"></script>
|