jekyll-zeta 0.7.5.1 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b372b1cf33d7034f355229d9f8c799a04cb27342489d30d8feb98ebf98c8f655
4
- data.tar.gz: 6bc4b3b1b244d79eff1b6357ad702d5953eba90202424de955ea8af7d9eb160d
3
+ metadata.gz: 1936ba60486879de4de21ff2e9fa7b67a6a8488345c7ef3d3b84bb47f2a2433b
4
+ data.tar.gz: 4c1b68385474906261beb1a672db82b2d27ecb7a13731cdc063ccab10b50e044
5
5
  SHA512:
6
- metadata.gz: d182e359bd7afb31c8fc52d21eacb9fc5f1a9fb517dcccca336e6838a738e1f90e95f8af889d18664fa2901273e484c9b2a88f1f4bd26acaf8c4411f704fa665
7
- data.tar.gz: d6848200db351e369ecac4638a5f63975c23ba0220609c51890174d08ef23b26a876ffadd03ababab644240353e943f10dbbd998e12ce7bfd61f7d9269574e12
6
+ metadata.gz: 3d80ee99b7c683f13fca9c08757347fc5ed2fdcd7b8bf8bdeddeb9edeebfdc29e1e18cf3713c8b46ca956cf91655d886636e65945768454549416ce4cb61acf2
7
+ data.tar.gz: 4ed94efbfd3466987d90303b3087c6af9de12556b7f42d75ff6e564c02676a7b5948c2d6a1a83c65240a3733e40c63fe5776b8d9d2f59ef94a907c7a1da3ac44
data/_config.yml CHANGED
@@ -17,6 +17,7 @@ favicon: "logo.png" # name+extension of favicon (which must be put on the root f
17
17
 
18
18
  theme_config:
19
19
  appearance: "auto" # can be "light", "dark" or "auto"
20
+ navbarPosition: left # left or top
20
21
  date_format: "%m/%d" # customize how date is formatted
21
22
  post_date_format: "%Y/%m/%d"
22
23
  encrypt_title: "Content is Encryped :)"
@@ -17,11 +17,23 @@
17
17
  {%- if ymPre != "" -%}
18
18
  </ul>
19
19
  {%- endif -%}
20
- {%- if yCounter == 0 -%}
21
- <li class="postlistli largeli largeli0">{{ymCur}}</li>
20
+
21
+ {% if include.showheatmap == 1 or include.showheatmap == true %}
22
+ <div class=archive-map>
23
+ {%- include heatmap.html endYear=ymCur title=ymCur -%}
24
+ </div >
22
25
  {%- else -%}
23
- <li class="postlistli largeli">{{ymCur}}</li>
24
- {%- endif -%}
26
+ {%- if yCounter == 0 -%}
27
+ <li class="postlistli largeli largeli0">{{ymCur}}</li>
28
+
29
+ {%- else -%}
30
+ <li class="postlistli largeli">{{ymCur}}</li>
31
+ {%- endif -%}
32
+ {% endif %}
33
+
34
+
35
+
36
+
25
37
 
26
38
  {%- assign yCounter = yCounter | plus:1 -%}
27
39
  <ul class="postlistul">
data/_includes/head.html CHANGED
@@ -23,10 +23,8 @@
23
23
  {%- endif -%}
24
24
 
25
25
  <link rel="shortcut icon" type="image/x-icon" href="{{ site.favicon | relative_url }}" />
26
- {%- if site.theme_config.combine_css_html -%}
27
- <style>
28
- {%- include main.css -%}
29
- </style>
26
+ {%- if site.theme_config.navbarPosition == 'left' -%}
27
+ <link rel="stylesheet" href="{{ "/assets/css/left.css" | relative_url }}" />
30
28
  {%- else -%}
31
29
  <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}" />
32
30
  {%- endif -%}
@@ -1,18 +1,31 @@
1
+ <div>
1
2
  {%- if include.collection -%}
2
3
  {%- assign posts = include.collection -%}
3
4
  {%- else -%}
4
5
  {%- assign posts = site.posts -%}
5
6
  {%- endif -%}
6
7
 
7
- <div>
8
- <span class="heatmap-title">{{ heatMapTitle | site.theme_config.heatMapTitle }}</span>
9
- <div class='heatmap' id="heatmap">
10
-
8
+ {% if datemapidOnPage == nil %}
9
+ {%- assign datemapidOnPage = 0 -%}
10
+ {%- else -%}
11
+ {%- assign datemapidOnPage = datemapidOnPage | plus : 1-%}
12
+
13
+ {%- endif -%}
11
14
 
15
+
16
+ {% assign mapEleId = "heatmap-" | append: datemapidOnPage %}
17
+ <div class="heatmap-title">{{ include.title | default :"" }}</div>
18
+
19
+ <div class='heatmap' id="{{mapEleId}}">
20
+
12
21
  </div>
13
- </div>
22
+ {%- if datemapidOnPage == 0 -%}
23
+
24
+ {% comment %}
25
+ 只加载一次
26
+ {% endcomment %}
14
27
  <script >
15
- (function(){
28
+ function create_heatmap(heatmapid,endYear){
16
29
 
17
30
  {%- assign MothStr = site.theme_config.heatMapMonth -%}
18
31
  {%- assign HeatMapShowWeek = site.theme_config.heatMapShowWeek -%}
@@ -26,8 +39,24 @@
26
39
  var _HeatMapType = "{{ HeatMapType | default:'1' }}"
27
40
  var _MonthStr = '{{ MothnStr | default: "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec" }}'
28
41
  var _showWeek = '{{ HeatMapShowWeek | default: "Mon Wed Fri" }}';
29
-
30
42
  var _allyearurl = '{{ "assets/dyn/allyear.json" | relative_url }}';
31
- {% include heatmap.js %}
32
- })()
43
+ {% include heatmap.js %}
44
+ }
45
+ </script>
46
+
47
+ {% else %}
48
+
49
+ {%- endif -%}
50
+
51
+
52
+ {{child_initialized}}
53
+
54
+ <script>
55
+ !function(){
56
+ var endYear = "{{ include.endYear }}"
57
+ var mapid = "{{ mapEleId }}"
58
+ create_heatmap(mapid,endYear )
59
+ }()
33
60
  </script>
61
+
62
+ </div>
data/_includes/heatmap.js CHANGED
@@ -1,3 +1,5 @@
1
+
2
+
1
3
  ;!function(){
2
4
 
3
5
  function date2ymd(t){
@@ -6,8 +8,8 @@ function date2ymd(t){
6
8
  return `${t.getFullYear()}-${m< 10 ? '0' + m : m }-${d<10 ? '0'+d:d}`
7
9
  }
8
10
 
11
+ const dateEnd = endYear && endYear.length == 4 ? new Date(`${endYear}-12-31`) : new Date();
9
12
 
10
- const dateEnd = new Date();
11
13
  const endStamp = dateEnd.getTime()
12
14
  const dayEleId = Math.random().toString(16).substring(2);
13
15
  let arr = _allyearurl.split('/');
@@ -141,23 +143,13 @@ const DayCount = (ColumnsCount - 1) * RowCount + dateEnd.getDay() + 1;
141
143
  return
142
144
  }
143
145
  const idxOfDay = SEQ[G_idxOfDay --];
144
-
145
146
  let dateKeyYmd = idx2Ymd(idxOfDay )
146
-
147
-
148
147
  let arrPostInOneDay = Map[dateKeyYmd];
149
- // debug
150
- arrPostInOneDay = arrPostInOneDay
151
-
152
-
153
148
  const dayCell = dayCells[idxOfDay]
154
149
  const nobg = parseInt(dateKeyYmd.substring(5,7))%2 == 1? 'hm-check-no-b' : 'hm-check-no-a';
155
150
  dayCell.classList = `heatmap-day-cell ${!arrPostInOneDay ? nobg :arrPostInOneDay.length > 1 ? 'hm-check2' : 'hm-check' }`
156
151
 
157
-
158
152
  if ((arrPostInOneDay && arrPostInOneDay.length > 0 )) {
159
-
160
-
161
153
  let isDirectly = arrPostInOneDay.length == 1
162
154
  let tip = document.createElement("div");
163
155
 
@@ -197,6 +189,9 @@ const DayCount = (ColumnsCount - 1) * RowCount + dateEnd.getDay() + 1;
197
189
 
198
190
  function updateMultiDays(){
199
191
  let day = heatMapLoadCount;
192
+ if (!day || day <= 0) {
193
+ day = 8;
194
+ }
200
195
  while (day -- ) {
201
196
  update1Day();
202
197
  }
@@ -209,11 +204,7 @@ const DayCount = (ColumnsCount - 1) * RowCount + dateEnd.getDay() + 1;
209
204
  requestAnimationFrame(updateMultiDays)
210
205
 
211
206
  return
212
-
213
-
214
-
215
-
216
-
207
+
217
208
  }
218
209
 
219
210
 
@@ -236,7 +227,7 @@ const DayCount = (ColumnsCount - 1) * RowCount + dateEnd.getDay() + 1;
236
227
 
237
228
  ;(function initMap(){
238
229
 
239
- let Father = document.getElementById("heatmap");
230
+ let Father = document.getElementById(heatmapid);
240
231
 
241
232
  const Frag = document.createDocumentFragment();
242
233
 
@@ -302,6 +293,4 @@ Father.append(Frag);
302
293
 
303
294
 
304
295
 
305
- }();
306
-
307
-
296
+ }();
data/_includes/home.html CHANGED
@@ -1,13 +1,12 @@
1
-
2
-
3
-
4
- {%- include heatmap.html -%}
5
-
6
-
7
1
  {%- assign titlelen = page.title.size -%}
8
2
  {%- if titlelen > 0 -%}
9
3
  <h2>{{ page.title }}</h2>
10
4
  {%- endif -%}
5
+
6
+ {%- include heatmap.html -%}
7
+
8
+
9
+
11
10
  {%-assign nextPage = site.paginate_path | replace: ':num', '2' -%}
12
11
 
13
12
 
@@ -0,0 +1,39 @@
1
+ <div class="sidebar">
2
+ <div class="sidecontent">
3
+ {%- capture currentUrl -%}{{ page.url | relative_url}}{%- endcapture %}
4
+ <img src="{{'assets/image/avartar.png' | relative_url }}" class="avatar"/>
5
+
6
+
7
+ <nav>
8
+ <ul class="navul">
9
+ {%-for item in site.theme_config.menu %}
10
+
11
+ {%- if item.url -%}
12
+ {%- capture itemurl -%}{{ item.url | relative_url}}{%- endcapture -%}
13
+
14
+ {%- assign iscurrent= false %}
15
+ {%- if currentUrl == itemurl -%}
16
+ {%- assign iscurrent= true %}
17
+ {%- else -%}
18
+ {%- for subpath in item.subpath %}
19
+ {%- if currentUrl contains subpath %}
20
+ {%- assign iscurrent= true %}
21
+ {%- break %}
22
+ {%- endif %}
23
+ {%- endfor %}
24
+ {%- endif %}
25
+ <li class="{% if iscurrent == true -%}navli curNav{%-else -%}navli{%- endif -%}">
26
+
27
+ <a href="{{ itemurl }}" class="nav">{{ item.title }}</a>
28
+
29
+ {%- else -%}
30
+ {{ item.title }}
31
+ {%- endif -%}
32
+ </li>
33
+ {%-endfor-%}
34
+ </ul>
35
+ </nav>
36
+
37
+
38
+ </div>
39
+ </div>
@@ -0,0 +1,20 @@
1
+ <header>
2
+ {%- include navbar_left.html -%}
3
+ </header>
4
+ <section class="rightsidecontent">
5
+ <div class="w">
6
+
7
+ {{ content }}
8
+
9
+ {%- assign footnote = site.theme_config.show_footnote -%}
10
+ {%- if footnote == true -%}
11
+
12
+ <footer class="footer">
13
+ <p> Powered by <a href="https://jekyllrb.com/">Jekyll</a> & <a href="https://github.com/vitock/jekyll-zeta">Jekyll-zeta</a>
14
+ </p>
15
+ </footer>
16
+ {%- endif -%}
17
+
18
+
19
+ </div>
20
+ </section>
@@ -3,18 +3,18 @@ layout: default
3
3
  ---
4
4
 
5
5
 
6
- {%- if page.heatmap -%}
7
- {%- include heatmap.html -%}
8
- {%- endif -%}
9
6
  {%- assign titlelen = page.title.size -%}
10
7
  {%- if titlelen > 0 -%}
11
8
  <!-- <h2>{{ page.title }}</h2> -->
12
9
  {%- endif -%}
13
10
 
14
11
  {%-assign posts = site.posts-%}
12
+
15
13
  {%- if posts.size > 0 -%}
16
14
  {%- include archive_list.html
17
15
  collection=posts
16
+
17
+ showheatmap = page.heatmap
18
18
  -%}
19
19
  {%- endif -%}
20
20
 
@@ -3,7 +3,10 @@
3
3
  {%- include head.html -%}
4
4
  <body a="{{ site.theme_config.appearance | default: "auto" }}">
5
5
  <main class="page-content" aria-label="Content">
6
-
6
+
7
+ {%- if site.theme_config.navbarPosition == 'left' -%}
8
+ {%- include page_frame_left.html -%}
9
+ {%- else -%}
7
10
  <div class="w">
8
11
  {%- include navbar.html -%}
9
12
  {{ content }}
@@ -16,6 +19,9 @@
16
19
  </footer>
17
20
  {%- endif -%}
18
21
  </div>
22
+ {%- endif -%}
23
+
24
+
19
25
  </main>
20
26
 
21
27
  {%-if site.goat_counter and jekyll.environment == "production"-%}
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  layout: default
3
3
  ---
4
- <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}" />
4
+
5
5
  <br/><br/><br/>
6
6
  {%- include heatmap.html -%}
7
7
 
data/_sass/common.scss ADDED
@@ -0,0 +1,336 @@
1
+
2
+ $color-red: #FF0000;
3
+ $color-black: #333;
4
+ $color-blue: #0064c1;
5
+ $color-hove: #0064c1;
6
+ $color-gray: #9ca3af;
7
+ $color-lightGray: #9ca3af;
8
+ $color-lightGrayBg: #F0f2f4;
9
+
10
+ $dbgBorder:none;//ssolid 1px red;
11
+
12
+
13
+
14
+
15
+ // $hmbloksizeW:11px;
16
+
17
+ li {
18
+ padding: 0.2rem;
19
+ }
20
+
21
+ main{
22
+ margin: 2.5em 0;
23
+ }
24
+ body{
25
+ font-family: monospace;
26
+ font-size: 1.15rem;
27
+ // background-color: #fafafa;
28
+ margin: 0;
29
+
30
+ // &::before{
31
+ // content: "";
32
+ // position: fixed;
33
+ // left: 0;
34
+ // right: 0;
35
+ // top: 0;
36
+ // bottom: 0;
37
+
38
+ // // background-image: url(../image/bg-2.png) ;
39
+ // // background-color: #fffef8 ;//#fffef9;
40
+ // z-index: -1;
41
+ // // filter: grayscale(0.8);
42
+ // // opacity: 0.9;
43
+ // }
44
+ }
45
+
46
+ article{
47
+ line-height: 1.6;
48
+ }
49
+ .w {
50
+ margin: auto;
51
+ word-wrap: break-word;
52
+ background-color: white;
53
+ // box-shadow: 0 2px 3px 0 #eee
54
+ }
55
+
56
+ code.highlighter-rouge {
57
+ color: $color-black;
58
+ background: $color-lightGrayBg;
59
+ border-radius: 5px;
60
+ padding: 0 5px;
61
+ margin: 5px;
62
+ }
63
+
64
+ code {
65
+ color: $color-black;
66
+ background: $color-lightGrayBg;;
67
+ max-height: 35rem;
68
+ }
69
+
70
+ div.highlighter-rouge code {
71
+ border-radius: 10px;
72
+ display: block;
73
+ overflow: auto;
74
+ padding: 1rem;
75
+ }
76
+
77
+ img {
78
+ width: 60%;
79
+ display: block;
80
+ margin: 0 auto;
81
+ }
82
+
83
+ blockquote {
84
+ font-style: italic;
85
+ border-left: 5px solid #22a2c3;
86
+ border-radius: 5px;
87
+ color: #999;
88
+ // padding: 2rem 0.25rem .25rem 0.25rem;
89
+ padding: 0.3rem 1rem;
90
+ margin: 1rem 0;
91
+ background-color: $color-lightGrayBg;
92
+
93
+
94
+ // &::before{
95
+ // content: "";
96
+ // display: block;
97
+ // background: url(../image/quote.svg) no-repeat 50% 50%;
98
+ // width: 27px;
99
+ // height: 20px;
100
+ // position: absolute;
101
+ // z-index: 1;
102
+
103
+ // margin-left: -10px;
104
+ // margin-top: -24px;
105
+ // opacity: 0.1;
106
+
107
+ // }
108
+ }
109
+
110
+ blockquote p {
111
+ margin: 0
112
+ }
113
+
114
+ table {
115
+ width: 100%;
116
+ }
117
+ table{
118
+ box-shadow: 0px 0px 5px #e0e0e0;
119
+ }
120
+ th{
121
+ background-color: #f5f5f5;
122
+ }
123
+ table,
124
+ th,
125
+ td {
126
+ border: thin solid #e0e0e0;
127
+ border-collapse: collapse;
128
+ padding: 0.4em 1em ;
129
+ }
130
+ tr:nth-child(even){
131
+ background-color: #f5f5f5;
132
+ }
133
+
134
+ // hr {
135
+ // margin-top: 2rem;
136
+ // margin-bottom: 2rem;
137
+
138
+
139
+ // border: 0;
140
+ // padding: 3px;
141
+
142
+ // background: repeating-linear-gradient(135deg, #000 0px, #000 1px, transparent 1px, transparent 5px);
143
+ // }
144
+
145
+ hr{
146
+ margin: 2rem 0;
147
+ border:none;
148
+ text-align: center;
149
+ color: $color-gray;
150
+ border-bottom: $color-lightGray dashed 1px;
151
+ }
152
+
153
+
154
+ a {
155
+ text-decoration: none;
156
+ color: $color-blue;
157
+ }
158
+
159
+
160
+ .w > h1>a {
161
+ color: $color-black;
162
+ }
163
+
164
+ .w > h1>a:hover {
165
+ color: $color-black;
166
+ }
167
+
168
+
169
+ nav{
170
+ /* 这个只是固定在页面上面 */
171
+ position: relative;
172
+ align-content: center;
173
+ }
174
+
175
+ .navul {
176
+ padding: 0;
177
+ display: flex;
178
+ font-weight: 700;
179
+ align-items: center;
180
+ }
181
+
182
+ .navli {
183
+ list-style-type: none;
184
+ margin-right: 1rem;
185
+ font-size: 1.125rem;
186
+ }
187
+
188
+ .postlistul {
189
+ padding: 0
190
+ }
191
+
192
+ .postlistli {
193
+ list-style-type: none;
194
+ display: flex;
195
+ align-items: first baseline;
196
+ padding: 5px 0;
197
+
198
+ }
199
+
200
+ .postlistli a,.pagebar a ,.tags-tag{
201
+ color: #000;
202
+ }
203
+
204
+ span.next{
205
+ color: #c3c3c3;
206
+ }
207
+
208
+ date {
209
+ color: $color-lightGray;
210
+ font-size: 0.9em;
211
+ margin-right: 1em;
212
+ }
213
+
214
+ time {
215
+ color: $color-lightGray;
216
+ font-weight: 500;
217
+ }
218
+ .tag {
219
+ color: $color-lightGray;
220
+ font-weight: 500;
221
+ }
222
+
223
+
224
+
225
+ .pagebar {
226
+ margin-top: 2rem;
227
+ display: flex;
228
+ // float: right;
229
+ align-items: baseline;
230
+ }
231
+
232
+ .page_number {
233
+ color: $color-black;
234
+ padding-left: 10px;
235
+ padding-right: 10px;
236
+ text-align: center;
237
+ }
238
+
239
+ .largeli {
240
+ font-weight: bolder;
241
+ color: $color-black;
242
+ font-size: 1.6rem;
243
+ padding: 2.25rem 1rem 0.5rem 0;
244
+ }
245
+
246
+ .largeli0 {
247
+ padding: 0 0 0.5rem 0;
248
+ }
249
+
250
+ .footer{
251
+ margin-top: 4rem;
252
+ color: #aaa;
253
+ width: 100%;
254
+ font-size: 0.9rem;
255
+ text-align: center;
256
+ }
257
+
258
+ .footer a {
259
+ color: #808080;
260
+ }
261
+
262
+ a:hover {
263
+ text-decoration: underline;
264
+ color:$color-hove;
265
+ }
266
+
267
+ .curNav > .nav{
268
+
269
+
270
+ color: #55bb8a;
271
+ }
272
+
273
+ .nav{
274
+ color: $color-black;
275
+ }
276
+
277
+ input[type="button"]{
278
+ /* 设置按钮的背景色,字体样式等 */
279
+ background-color: #e0e0e0;
280
+ border: none;
281
+ color: $color-black;
282
+ padding: 5px 12px;
283
+ text-align: center;
284
+ text-decoration: none;
285
+ display: inline-block;
286
+ font-size: 0.8em;
287
+
288
+ cursor: pointer;
289
+ border-radius: 3px;
290
+ /* 鼠标悬停时改变按钮颜色 */
291
+ }
292
+ input[type="button"]:hover{
293
+ background-color: $color-black;
294
+ color: white;
295
+ }
296
+
297
+
298
+ pre{
299
+ white-space: pre-wrap; /* 保留空白字符,但是允许自动换行 */
300
+ overflow-wrap: break-word; /* 在单词内允许换行 */
301
+ }
302
+
303
+ pre>code{
304
+ background-color: #1e131eff;
305
+ color: #e7e7b1;
306
+ box-shadow: 0px 0px 8px #000;
307
+ }
308
+
309
+ pre>code::before {
310
+ content: url('../image/dots.svg');
311
+ display: block;
312
+ margin-top:-1rem;
313
+ }
314
+
315
+
316
+ img{
317
+ max-width: 80%;
318
+
319
+ }
320
+
321
+ .iconchar{
322
+ margin-left: 10px;
323
+ // filter: grayscale(0.1) brightness(0.6);
324
+ font-size: 0.6em;
325
+ }
326
+
327
+
328
+ .archive-map{
329
+ padding-bottom: 1rem;
330
+ }
331
+
332
+
333
+ .avatar{
334
+ width: 76px;
335
+ height: 76px;
336
+ }