jekyll-theme-yat 1.6.4 → 1.7.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: d16f89597b967a3dbf863b569304d660769634299e54c3b6d03b7e7501bcae0f
4
- data.tar.gz: 2ea148e50b2f6a3df84ebbf0245aa7ce8d6cedc6e4d7fae6997bad6fb4d9539b
3
+ metadata.gz: 2e64474766ce139b9a917d18a8a2fe0ff867b0bcc7c343349ab6819bd8990fbd
4
+ data.tar.gz: 279eeb6dd5e6a47244ae9516824fbf157e77b92c97a6ecf19604a1e04706c3c9
5
5
  SHA512:
6
- metadata.gz: e0133198787f1044e4334a89f6aa9f140f5d319a77f528533aa65798ecfd5744c494b267787cf641f9ff9ba5550c8be2e1c440f35a241f539867de0a0d40bfef
7
- data.tar.gz: 1da4f0b6247b01e666457e114cca771cebfe0a65fedd9b191e2f9c6ec11b2de2dbf9a509318b9077f47216b3d10425e9b9624e425e1b174a0561e2c16676135b
6
+ metadata.gz: 28b59c6996eb0c3a95b8a6906c3aeb1647f77a34518f44a645a985217ce9965be55a4a5190564bceb704b8761ca4456b71fc37aad7f613d0b047be1af4c61c27
7
+ data.tar.gz: c08b686b732a4f146ad9ca5ff039ad4d8ca16f95b1ffb52c6b67c3b85599690274379490cca405f8108ed4aeb399aecd519e5168868da1dc567c8e82abb51d8b
data/README.md CHANGED
@@ -9,7 +9,10 @@
9
9
  alt="Donate (Ko-fi)" />
10
10
  </a>
11
11
 
12
- Hey, nice to meet you, you found this Jekyll theme. Here the yet another theme is a modern theme, and it's quiet clear, clean and neat for writers and posts.
12
+ Hey, nice to meet you, you found this [Jekyll][jekyll] theme. Here the
13
+ **Yet Another Theme** is a modern responsive theme, and it's quiet clear,
14
+ clean and neat for writers and posts. **If you like the theme, give it
15
+ a star!**
13
16
 
14
17
 
15
18
  <p align="center">
@@ -18,7 +21,7 @@ Hey, nice to meet you, you found this Jekyll theme. Here the yet another theme i
18
21
 
19
22
  </p>
20
23
 
21
- <h3 align="center">Night Mode</h3>
24
+ <h3 align="center">🌌 Night Mode</h3>
22
25
 
23
26
  <p align="center">
24
27
 
@@ -29,6 +32,7 @@ Hey, nice to meet you, you found this Jekyll theme. Here the yet another theme i
29
32
  ## Features
30
33
 
31
34
  - Support beautiful __Night Mode__.
35
+ - Modern responsive web design.
32
36
  - Full layouts `home`, `post`, `tags`, `archive` and `about`.
33
37
  - Uses font awesome 5 for icons.
34
38
  - Beautiful Syntax Highlight using [hilight.js][hilight-js].
@@ -0,0 +1,91 @@
1
+ <link rel="stylesheet"
2
+ href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/styles/default.min.css">
3
+ <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/highlight.min.js"></script>
4
+ <!-- and it's easy to individually load additional languages -->
5
+ <script charset="UTF-8"
6
+ src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/languages/go.min.js"></script>
7
+
8
+ {%- assign name = 'code_badge.enabled' -%}
9
+ {%- include functions.html func='get_value' default='true' -%}
10
+ {%- assign badge_enabled = return -%}
11
+
12
+ {%- assign name = 'code_badge.color' -%}
13
+ {%- include functions.html func='get_value' default='#fff' -%}
14
+ {%- assign badge_color = return -%}
15
+
16
+ {%- assign name = 'code_badge.background_color' -%}
17
+ {%- include functions.html func='get_value' default='#ff4e00' -%}
18
+ {%- assign badge_background_color = return -%}
19
+
20
+ {%- assign name = 'code_badge.text_transform' -%}
21
+ {%- include functions.html func='get_value' default='uppercase' -%}
22
+ {%- assign badge_text_transform = return -%}
23
+
24
+ <script>
25
+ // Init highlight js
26
+ document.addEventListener('DOMContentLoaded', function(event) {
27
+ var els = document.querySelectorAll('pre code')
28
+
29
+ function addLangData(block) {
30
+ var outer = block.parentElement.parentElement.parentElement;
31
+ var lang = block.getAttribute('data-lang');
32
+ for (var i = 0; i < outer.classList.length; i++) {
33
+ var cls = outer.classList[i];
34
+ if (cls.startsWith('language-')) {
35
+ lang = cls;
36
+ break;
37
+ }
38
+ }
39
+ if (!lang) {
40
+ cls = block.getAttribute('class');
41
+ lang = cls ? cls.replace('hljs ', '') : '';
42
+ }
43
+ if (lang.startsWith('language-')) {
44
+ lang = lang.substr(9);
45
+ }
46
+ block.setAttribute('class', 'hljs ' + lang);
47
+ block.parentNode.setAttribute('data-lang', lang);
48
+ }
49
+
50
+ function addBadge(block) {
51
+ var enabled = ('{{ badge_enabled }}' || 'true').toLowerCase();
52
+ if (enabled == 'true') {
53
+ var pre = block.parentElement;
54
+ pre.classList.add('badge');
55
+ }
56
+ }
57
+
58
+ function handle(block) {
59
+ addLangData(block);
60
+ addBadge(block)
61
+ hljs.highlightBlock(block);
62
+ }
63
+
64
+ for (var i = 0; i < els.length; i++) {
65
+ var el = els[i];
66
+ handle(el);
67
+ }
68
+ });
69
+ </script>
70
+
71
+ <style>
72
+ /* code language badge */
73
+ pre.badge::before {
74
+ content: attr(data-lang);
75
+ color: {{badge_color}};
76
+ background-color: {{badge_background_color}};
77
+ padding: 0 .5em;
78
+ border-radius: 0 2px;
79
+ text-transform: {{badge_text_transform}};
80
+ text-align: center;
81
+ min-width: 32px;
82
+ display: inline-block;
83
+ position: absolute;
84
+ right: 0;
85
+ }
86
+
87
+ /* fix wrong badge display for firefox browser */
88
+ code > table pre::before {
89
+ display: none;
90
+ }
91
+ </style>
@@ -17,18 +17,22 @@
17
17
  (function() {
18
18
  var sw = document.getElementById('theme-switch');
19
19
  var html = document.getElementsByTagName('html')[0];
20
+ var nightModeOption = ('{{ night_mode }}' || 'auto').toLowerCase();
21
+ var storage = nightModeOption === 'manual'
22
+ ? localStorage
23
+ : sessionStorage;
20
24
  var themeData = loadThemeData();
21
25
 
22
26
  function saveThemeData(data) {
23
- localStorage.setItem('theme', JSON.stringify(data));
27
+ storage.setItem('theme', JSON.stringify(data));
24
28
  }
25
29
 
26
30
  function loadThemeData() {
27
- var data = localStorage.getItem('theme');
31
+ var data = storage.getItem('theme');
28
32
  try {
29
33
  data = JSON.parse(data ? data : '');
30
34
  } catch(e) {
31
- data = { nightShift: false, autoToggleAt: 0 };
35
+ data = { nightShift: undefined, autoToggleAt: 0 };
32
36
  saveThemeData(data);
33
37
  }
34
38
  return data;
@@ -81,9 +85,6 @@
81
85
  handleThemeToggle(event.target.checked);
82
86
  });
83
87
 
84
- var nightModeOption = '{{ night_mode }}' || 'auto';
85
- nightModeOption = nightModeOption.toLowerCase();
86
-
87
88
  if (nightModeOption == 'auto') {
88
89
  var data = autoThemeToggle();
89
90
 
@@ -97,7 +98,11 @@
97
98
  } else if (nightModeOption == 'manual') {
98
99
  handleThemeToggle(themeData.nightShift);
99
100
  } else {
100
- handleThemeToggle(nightModeOption == 'on');
101
+ var nightShift = themeData.nightShift;
102
+ if (nightShift === undefined) {
103
+ nightShift = nightModeOption === 'on';
104
+ }
105
+ handleThemeToggle(nightShift);
101
106
  }
102
107
  })();
103
108
  </script>
@@ -2,6 +2,9 @@
2
2
  {%- assign name = include.params.name -%}
3
3
  {%- endif -%}
4
4
 
5
+ {%- assign keys = name | split:'.'- %}
6
+ {%- assign name = keys.first -%}
7
+
5
8
  {%- if page[name] != nil -%}
6
9
  {%- assign return = page[name] -%}
7
10
  {%- elsif site[name] != nil -%}
@@ -17,3 +20,13 @@
17
20
  {%- else -%}
18
21
  {%- assign return = include.params.default -%}
19
22
  {%- endif -%}
23
+
24
+ {%- assign keys = keys | shift -%}
25
+ {%- for key in keys -%}
26
+ {%- assign return = return[key] -%}
27
+ {%- if return == nil -%}
28
+ {%- assign return = include.params.default -%}
29
+ {%- break -%}
30
+ {%- endif -%}
31
+ {%- endfor -%}
32
+
@@ -7,16 +7,11 @@
7
7
  <link rel="shortcut icon" href="{{ site.favicon }}">
8
8
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
9
9
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/typeface-noto-sans@0.0.72/index.min.css">
10
- <link rel="stylesheet"
11
- href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/styles/default.min.css">
12
- <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/highlight.min.js"></script>
13
- <!-- and it's easy to individually load additional languages -->
14
- <script charset="UTF-8"
15
- src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/languages/go.min.js"></script>
16
10
  <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}">
17
11
  <script src="{{ "/assets/js/main.js" | relative_url }}"></script>
18
12
  {%- feed_meta -%}
19
13
  {%- if jekyll.environment == 'production' and site.google_analytics -%}
20
14
  {%- include extensions/google-analytics.html -%}
21
15
  {%- endif -%}
16
+ {%- include extensions/code-highlight.html -%}
22
17
  </head>
@@ -3,7 +3,7 @@
3
3
 
4
4
  <div class="wrapper">
5
5
  <div class="site-footer-inner">
6
- <div>{{ site.copyright }} @{{ site.author | escape }}</div>
6
+ <div>{{ site.copyright }} {% if site.author %}@{{ site.author | escape }}{% endif %}</div>
7
7
  <div>Powered by <a title="Jekyll is a simple, blog-aware, static site
8
8
  generator." href="http://jekyllrb.com/">Jekyll</a> &amp; <a title="Yat, yet
9
9
  another theme." href="https://github.com/jeffreytse/jekyll-theme-yat">Yat Theme</a>.</div>
@@ -0,0 +1,12 @@
1
+ .gitment-container {
2
+ color: #787878 !important;
3
+ }
4
+
5
+ .gitment-comment-main, .gitment-editor-main {
6
+ background-color: #fff;
7
+ border-radius: 3px !important;
8
+ }
9
+
10
+ .gitment-heart-icon {
11
+ fill: #ff0808;
12
+ }
@@ -4,7 +4,7 @@
4
4
  margin-top: 10px;
5
5
  margin-right: 60px;
6
6
  margin-left: auto;
7
- transition: 0.1s all ease-in-out;
7
+ transition: .3s cubic-bezier(.4,.03,0,1);
8
8
 
9
9
  label, .toggle {
10
10
  border-radius: 100px;
@@ -65,5 +65,6 @@ $on-laptop: 800px !default;
65
65
  "misc/theme-toggle",
66
66
  "misc/article-menu",
67
67
  "misc/common-list",
68
- "misc/google-translate"
68
+ "misc/google-translate",
69
+ "misc/gitment"
69
70
  ;
@@ -159,26 +159,6 @@ pre {
159
159
  position: relative;
160
160
  background-color: #f0f0f0;
161
161
 
162
- // code language badge
163
- &::before {
164
- content: attr(data-lang);
165
- color: #fff;
166
- background-color: #ff4e00;
167
- padding: 0 .5em;
168
- border-radius: 0 2px;
169
- text-transform: uppercase;
170
- text-align: center;
171
- min-width: 32px;
172
- display: inline-block;
173
- position: absolute;
174
- right: 0;
175
- }
176
-
177
- // fix wrong badge display for firefox browser
178
- code > table pre::before {
179
- display: none;
180
- }
181
-
182
162
  > code {
183
163
  display: inline-block;
184
164
  padding: 20px!important;
@@ -225,11 +205,13 @@ pre {
225
205
  * Tables
226
206
  */
227
207
  table {
208
+ display: block;
228
209
  margin-bottom: $spacing-unit;
229
210
  width: 100%;
230
211
  text-align: $table-text-align;
231
212
  color: lighten($text-color, 5%);
232
213
  border-collapse: collapse;
214
+ overflow: auto;
233
215
 
234
216
  tr {
235
217
  &:nth-child(even) {
@@ -50,11 +50,22 @@ html[data-theme="dark"] {
50
50
  .ct-language-dropdown {
51
51
  color: #f8f8f8;
52
52
  background-color: $dark-background-color;
53
+ box-shadow: 0 0 3px 1px #0000005b;
53
54
  }
54
55
 
55
56
  .ct-language-selected, .ct-language-dropdown li:hover {
56
57
  background-color: #222 !important;
57
58
  }
59
+
60
+ @include media-query($on-laptop) {
61
+ .menu-icon > svg {
62
+ fill: rgba($dark-text-color, 80%);
63
+ }
64
+
65
+ .site-nav input:checked ~ .trigger {
66
+ background-color: #090909;
67
+ }
68
+ }
58
69
  }
59
70
 
60
71
  .site-footer {
@@ -389,7 +389,6 @@ html {
389
389
 
390
390
  .post-content {
391
391
  margin-bottom: $spacing-unit;
392
- overflow-x: auto;
393
392
  overflow-wrap: normal;
394
393
  word-wrap: normal;
395
394
  word-break: normal;
@@ -56,32 +56,3 @@ function smoothScrollTo(y, time) {
56
56
  }
57
57
  }
58
58
 
59
- // Init highlight js
60
- document.addEventListener('DOMContentLoaded', function(event) {
61
- var els = document.querySelectorAll('pre code')
62
- function handle(block) {
63
- var outer = block.parentElement.parentElement.parentElement;
64
- var lang = block.getAttribute('data-lang');
65
- for (var i = 0; i < outer.classList.length; i++) {
66
- var cls = outer.classList[i];
67
- if (cls.startsWith('language-')) {
68
- lang = cls;
69
- break;
70
- }
71
- }
72
- if (!lang) {
73
- cls = block.getAttribute('class');
74
- lang = cls ? cls.replace('hljs ', '') : '';
75
- }
76
- if (lang.startsWith('language-')) {
77
- lang = lang.substr(9);
78
- }
79
- block.setAttribute('class', 'hljs ' + lang);
80
- block.parentNode.setAttribute('data-lang', lang);
81
- hljs.highlightBlock(block);
82
- }
83
- for (var i = 0; i < els.length; i++) {
84
- var el = els[i];
85
- handle(el);
86
- }
87
- });
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-theme-yat
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.4
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - jeffreytse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-06 00:00:00.000000000 Z
11
+ date: 2021-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -151,6 +151,7 @@ files:
151
151
  - README.md
152
152
  - _data/defaults.yml
153
153
  - _data/translate_langs.yml
154
+ - _includes/extensions/code-highlight.html
154
155
  - _includes/extensions/comments/disqus.html
155
156
  - _includes/extensions/comments/gitment.html
156
157
  - _includes/extensions/geopattern.html
@@ -196,6 +197,7 @@ files:
196
197
  - _layouts/tags.html
197
198
  - _sass/misc/article-menu.scss
198
199
  - _sass/misc/common-list.scss
200
+ - _sass/misc/gitment.scss
199
201
  - _sass/misc/google-translate.scss
200
202
  - _sass/misc/theme-toggle.scss
201
203
  - _sass/yat.scss