jekyll-zeta 0.7.5 → 0.9.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 21dc8aa56c7fb7e09847239cddbc87f3e70d0d704bc226cc24265b4980dd6964
4
- data.tar.gz: 3cce2977cfbe497287c19ea4cfd5b3d2e141bfed3528718b69f64869d79f20b0
3
+ metadata.gz: 1936ba60486879de4de21ff2e9fa7b67a6a8488345c7ef3d3b84bb47f2a2433b
4
+ data.tar.gz: 4c1b68385474906261beb1a672db82b2d27ecb7a13731cdc063ccab10b50e044
5
5
  SHA512:
6
- metadata.gz: 5d4aeef0a1d4459f519209c0e262fda5be431e482673a3e0113730ff0129833714332d866215d11c590dc571472bc2b37ee68695e416dab36bddc058421b96e8
7
- data.tar.gz: 52a1a13bdf3045223c65714919be4b61ccf5208cbccdf6584cb54fcbd78fd4bec78ae0a6fcaacf1271489645185621c3fd0c3c39b26da2be054885a89d5e8c70
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
+ }