jekyll-theme-yat 1.6.4 → 1.7.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: 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