jekyll-theme-chirpy 3.2.2 → 4.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -29
  3. data/_config.yml +11 -20
  4. data/_includes/css-selector.html +5 -0
  5. data/_includes/disqus.html +1 -1
  6. data/_includes/favicons.html +11 -26
  7. data/_includes/head.html +16 -22
  8. data/_includes/js-selector.html +29 -5
  9. data/_includes/refactor-content.html +0 -5
  10. data/_includes/timeago.html +5 -1
  11. data/_includes/topbar.html +1 -1
  12. data/_layouts/home.html +1 -1
  13. data/_layouts/post.html +6 -7
  14. data/_sass/addon/commons.scss +84 -56
  15. data/_sass/addon/module.scss +6 -5
  16. data/_sass/colors/dark-typography.scss +1 -0
  17. data/_sass/colors/light-syntax.scss +1 -1
  18. data/_sass/colors/light-typography.scss +2 -1
  19. data/_sass/jekyll-theme-chirpy.scss +1 -1
  20. data/_sass/layout/post.scss +8 -0
  21. data/{404.html → assets/404.html} +0 -0
  22. data/{feed.xml → assets/feed.xml} +4 -3
  23. data/assets/img/favicons/android-chrome-192x192.png +0 -0
  24. data/assets/img/favicons/android-chrome-512x512.png +0 -0
  25. data/assets/img/favicons/apple-touch-icon.png +0 -0
  26. data/assets/img/favicons/browserconfig.xml +3 -6
  27. data/assets/img/favicons/favicon-16x16.png +0 -0
  28. data/assets/img/favicons/favicon-32x32.png +0 -0
  29. data/assets/img/favicons/favicon.ico +0 -0
  30. data/assets/img/favicons/mstile-150x150.png +0 -0
  31. data/assets/img/favicons/site.webmanifest +26 -0
  32. data/assets/js/data/swcache.js +64 -0
  33. data/assets/js/dist/categories.min.js +2 -2
  34. data/assets/js/dist/commons.min.js +6 -0
  35. data/assets/js/dist/home.min.js +2 -2
  36. data/assets/js/dist/page.min.js +2 -2
  37. data/assets/js/dist/post.min.js +2 -2
  38. data/assets/js/dist/pvreport.min.js +2 -2
  39. data/{app.js → assets/js/pwa/app.js} +1 -0
  40. data/assets/js/pwa/sw.js +87 -0
  41. data/{robots.txt → assets/robots.txt} +1 -1
  42. metadata +14 -32
  43. data/_includes/lozad.html +0 -10
  44. data/assets/img/favicons/android-icon-144x144.png +0 -0
  45. data/assets/img/favicons/android-icon-192x192.png +0 -0
  46. data/assets/img/favicons/android-icon-36x36.png +0 -0
  47. data/assets/img/favicons/android-icon-48x48.png +0 -0
  48. data/assets/img/favicons/android-icon-72x72.png +0 -0
  49. data/assets/img/favicons/android-icon-96x96.png +0 -0
  50. data/assets/img/favicons/apple-icon-114x114.png +0 -0
  51. data/assets/img/favicons/apple-icon-120x120.png +0 -0
  52. data/assets/img/favicons/apple-icon-144x144.png +0 -0
  53. data/assets/img/favicons/apple-icon-152x152.png +0 -0
  54. data/assets/img/favicons/apple-icon-180x180.png +0 -0
  55. data/assets/img/favicons/apple-icon-57x57.png +0 -0
  56. data/assets/img/favicons/apple-icon-60x60.png +0 -0
  57. data/assets/img/favicons/apple-icon-72x72.png +0 -0
  58. data/assets/img/favicons/apple-icon-76x76.png +0 -0
  59. data/assets/img/favicons/apple-icon-precomposed.png +0 -0
  60. data/assets/img/favicons/apple-icon.png +0 -0
  61. data/assets/img/favicons/favicon-96x96.png +0 -0
  62. data/assets/img/favicons/manifest.json +0 -54
  63. data/assets/img/favicons/ms-icon-144x144.png +0 -0
  64. data/assets/img/favicons/ms-icon-150x150.png +0 -0
  65. data/assets/img/favicons/ms-icon-310x310.png +0 -0
  66. data/assets/img/favicons/ms-icon-70x70.png +0 -0
  67. data/assets/js/data/cache-list.js +0 -65
  68. data/sw.js +0 -61
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9a36f6248ffa49d35542f65f5243667d7e4cc7d937af7f7108a6bb07cd807d7c
4
- data.tar.gz: 04dca9dc35358c737c1abec42eb53cf1124e84b4550f0a972d04db15a22f8040
3
+ metadata.gz: d184bb7ea0d85aab6518e6206da789d7ed52d8d69fa6b99d49143c5e64579791
4
+ data.tar.gz: b26a14744e2ffdd408da2ad694e9963de3fe2fded5993a8edba5769a65972236
5
5
  SHA512:
6
- metadata.gz: 62e1c23473be119580d580820201423118bbed6caf9b8b649fa2d7270f9a3241ac9793d7f25ce20b309705d4c7e411bcc69346427c3d3a34e92250845439ca11
7
- data.tar.gz: 821595cc8bf64a93826ca41c5d30372624cf427cc0869ce88b336fe1bbc6691bbf2c6f51f83f98b9dc1c254133c5b88461954c929865ab63fb759908338f449e
6
+ metadata.gz: 83c977ab26d362130f78e03ba9d6ff2c80388a9d361e54f503a2036561ed93bfaf091f5bad787a467467d9fe298df675bcfbd8f50be87fae71ab6ba8c6b896c0
7
+ data.tar.gz: 2a82eaad1b0e2bf1eb168cdcb0b81a6f520f6ee4d953008ab82f1b3d40db1380ecc6bb2a5a067981780c2973bd562e6efe30a7eaed809ef66b9ea73c044c767d
data/README.md CHANGED
@@ -12,18 +12,6 @@ A minimal, sidebar, responsive web design Jekyll theme that focuses on text pres
12
12
 
13
13
  [![Devices Mockup](https://cdn.jsdelivr.net/gh/cotes2020/chirpy-images/commons/devices-mockup.png)](https://chirpy.cotes.info)
14
14
 
15
- ## Table of Contents
16
-
17
- - [Features](#features)
18
- - [Prerequisites](#prerequisites)
19
- - [Installation](#installation)
20
- - [Usage](#usage)
21
- - [Documentation](#documentation)
22
- - [Contributing](#contributing)
23
- - [Credits](#credits)
24
- - [Support](#support)
25
- - [License](#license)
26
-
27
15
  ## Features
28
16
 
29
17
  - Pinned Posts
@@ -81,7 +69,7 @@ Finally, copy the required files from the theme's gem (for detailed files, see [
81
69
  > $ bundle info --path jekyll-theme-chirpy
82
70
  > ```
83
71
 
84
- Or you can [**use the starter template**][use-starter] to create a Jekyll site to save time copying files from theme's gem. We have prepared everything for you there!
72
+ Or you can [**use the starter template**][use-starter] to create a Jekyll site to save time copying files from the theme's gem. We have prepared everything for you there!
85
73
 
86
74
  ### Fork on GitHub
87
75
 
@@ -108,7 +96,7 @@ What it does is:
108
96
  - files under `_posts`
109
97
  - folder `docs`
110
98
 
111
- 2. If you use the `--no-gh` option, the directory `.github` will be deleted. Otherwise, setup the GitHub Action workflow by removing extension `.hook` of `.github/workflows/pages-deploy.yml.hook`, and then remove the other files and directories in folder `.github`.
99
+ 2. If you use the `--no-gh` option, the directory `.github` will be deleted. Otherwise, setup the GitHub Action workflow by removing the extension `.hook` of `.github/workflows/pages-deploy.yml.hook`, and then remove the other files and directories in the folder `.github`.
112
100
 
113
101
  3. Automatically create a commit to save the changes.
114
102
 
@@ -144,7 +132,7 @@ Open a browser and visit to _<http://localhost:4000>_.
144
132
 
145
133
  ### Deployment
146
134
 
147
- Before the deployment begins, checkout the file `_config.yml` and make sure the `url` is configured correctly. Furthermore, if you prefer the [**project site**](https://help.github.com/en/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites) and don't use a custom domain, or you want to visit your website with a base url on a web server other than **GitHub Pages**, remember to change the `baseurl` to your project name that starting with a slash, e.g, `/project-name`.
135
+ Before the deployment begins, checkout the file `_config.yml` and make sure the `url` is configured correctly. Furthermore, if you prefer the [**project site**](https://help.github.com/en/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites) and don't use a custom domain, or you want to visit your website with a base URL on a web server other than **GitHub Pages**, remember to change the `baseurl` to your project name that starting with a slash, e.g, `/project-name`.
148
136
 
149
137
  Now you can choose ONE of the following methods to deploy your Jekyll site.
150
138
 
@@ -155,15 +143,15 @@ For security reasons, GitHub Pages build runs on `safe` mode, which restricts us
155
143
  Quickly check the files needed for GitHub Actions build:
156
144
 
157
145
  - Ensure your Jekyll site has the file `.github/workflows/pages-deploy.yml`. Otherwise, create a new one and fill in the contents of the [workflow file][workflow], and the value of the `on.push.branches` should be the same as your repo's default branch name.
158
- - Ensuer your Jekyll site has file `tools/test.sh` and `tools/deploy.sh`. Otherwise, copy them from this repo to your Jekyll site.
146
+ - Ensure your Jekyll site has file `tools/test.sh` and `tools/deploy.sh`. Otherwise, copy them from this repo to your Jekyll site.
159
147
 
160
- And then rename your repoistory to `<GH-USERNAME>.github.io` on GitHub.
148
+ And then rename your repository to `<GH-USERNAME>.github.io` on GitHub.
161
149
 
162
150
  Now publish your Jekyll site by:
163
151
 
164
152
  1. Push any commit to remote to trigger the GitHub Actions workflow. Once the build is complete and successful, a new remote branch named `gh-pages` will appear to store the built site files.
165
153
 
166
- 2. Browse to your repo's landing page on GitHub and select the branch `gh-pages` as the [publishing source](https://docs.github.com/en/github/working-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site) throught _Settings_ → _Options_ → _GitHub Pages_:
154
+ 2. Browse to your repo's landing page on GitHub and select the branch `gh-pages` as the [publishing source](https://docs.github.com/en/github/working-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site) through _Settings_ → _Options_ → _GitHub Pages_:
167
155
 
168
156
  ![gh-pages-sources](https://cdn.jsdelivr.net/gh/cotes2020/chirpy-images/posts/20190809/gh-pages-sources.png)
169
157
 
@@ -193,7 +181,7 @@ Unless you specified the output path, the generated site files will be placed in
193
181
 
194
182
  ## Documentation
195
183
 
196
- For more details and the better reading experience, please check out the [tutorials on demo site](https://chirpy.cotes.info/categories/tutorial/). In the meanwhile, a copy of the tutorial is also available on the [Wiki](https://github.com/cotes2020/jekyll-theme-chirpy/wiki).
184
+ For more details and a better reading experience, please check out the [tutorials on the demo site](https://chirpy.cotes.info/categories/tutorial/). In the meanwhile, a copy of the tutorial is also available on the [Wiki](https://github.com/cotes2020/jekyll-theme-chirpy/wiki).
197
185
 
198
186
  ## Contributing
199
187
 
@@ -201,21 +189,19 @@ The old saying, "Two heads are better than one." Consequently, welcome to report
201
189
 
202
190
  ## Credits
203
191
 
204
- This theme is mainly built with [Jekyll](https://jekyllrb.com/) ecosystem, [Bootstrap](https://getbootstrap.com/), [Font Awesome](https://fontawesome.com/) and some other wonderful tools (their copyright information can be found in the relevant files).
205
-
206
- :tada: Thanks to all the volunteers who contributed to this project, their GitHub IDs are on [this list](https://github.com/cotes2020/jekyll-theme-chirpy/graphs/contributors). Also, I won't forget those guys who submitted the issues or unmerged PR because they reported bugs, shared ideas or inspired me to write more readable documentation.
192
+ This theme is mainly built with [Jekyll](https://jekyllrb.com/) ecosystem, [Bootstrap](https://getbootstrap.com/), [Font Awesome](https://fontawesome.com/) and some other wonderful tools (their copyright information can be found in the relevant files). The avatar and favicon design comes from [Clipart Max](https://www.clipartmax.com/middle/m2i8b1m2K9Z5m2K9_ant-clipart-childrens-ant-cute/).
207
193
 
208
- Also, thank [JetBrains][jb] for providing the open source license.
194
+ :tada: Thanks to all the volunteers who contributed to this project, their GitHub IDs are on [this list](https://github.com/cotes2020/jekyll-theme-chirpy/graphs/contributors). Also, I won't forget those guys who submitted the issues or unmerged PR because they reported bugs, shared ideas, or inspired me to write more readable documentation.
209
195
 
210
- [![JB-logo](https://cdn.jsdelivr.net/gh/cotes2020/chirpy-images/commons/jetbrains.svg)][jb]
196
+ Last but not least, thank [JetBrains][jb] for providing the open source license.
211
197
 
212
- ## Support
198
+ ## Sponsoring
213
199
 
214
200
  If you like this theme or find it helpful, please consider sponsoring me, because it will encourage and help me better maintain the project, I will be very grateful!
215
201
 
216
- [![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-orange?logo=buy-me-a-coffee&logoColor=white)](https://www.buymeacoffee.com/coteschung)
217
- [![Wechat Pay](https://img.shields.io/badge/WeChat%20Pay-brightgreen?logo=wechat&logoColor=white)][cn-donation]
218
- [![Alipay](https://img.shields.io/badge/Alipay-blue?logo=alipay&logoColor=white)][cn-donation]
202
+ [![Buy Me a Coffee](https://img.shields.io/badge/-Buy%20Me%20a%20Coffee-ff813f?logo=buy-me-a-coffee&logoColor=white)](https://www.buymeacoffee.com/coteschung)
203
+ [![Wechat Pay](https://img.shields.io/badge/-Tip%20Me%20on%20WeChat-brightgreen?logo=wechat&logoColor=white)][cn-donation]
204
+ [![Alipay](https://img.shields.io/badge/-Tip%20Me%20on%20Alipay-blue?logo=alipay&logoColor=white)][cn-donation]
219
205
 
220
206
  ## License
221
207
 
@@ -229,4 +215,3 @@ This work is published under [MIT](https://github.com/cotes2020/jekyll-theme-chi
229
215
 
230
216
  [jb]: https://www.jetbrains.com/?from=jekyll-theme-chirpy
231
217
  [cn-donation]: https://cotes.gitee.io/alipay-wechat-donation/
232
-
data/_config.yml CHANGED
@@ -27,8 +27,6 @@ description: >- # used by seo meta and the atom feed
27
27
  # fill in the protocol & hostname for your site, e.g., 'https://username.github.io'
28
28
  url: ''
29
29
 
30
- author: your_full_name # change to your full name
31
-
32
30
  github:
33
31
  username: github_username # change to your github username
34
32
 
@@ -36,7 +34,9 @@ twitter:
36
34
  username: twitter_username # change to your twitter username
37
35
 
38
36
  social:
39
- name: your_full_name # it will shows as the copyright owner in Footer
37
+ # Change to your full name.
38
+ # It will be displayed as the default author of the posts and the copyright owner in the Footer
39
+ name: your_full_name
40
40
  email: example@doamin.com # change to your email address
41
41
  links:
42
42
  # The first element serves as the copyright owner's link
@@ -50,15 +50,11 @@ google_site_verification: google_meta_tag_verification # change to your verifica
50
50
  # --------------------------
51
51
 
52
52
  google_analytics:
53
- id: '' # Fill with your Google Analytics ID
53
+ id: '' # fill in your Google Analytics ID
54
+ # Google Analytics pageviews report settings
54
55
  pv:
55
- # The Google Analytics pageviews switch.
56
- # DO NOT enable it unless you know how to deploy the Google Analytics superProxy.
57
- enabled: false
58
- # the next options only valid when `google_analytics.pv` is enabled.
59
- proxy_url: ''
60
- proxy_endpoint: ''
61
- cache: false # pv data local cache, good for the users from GFW area.
56
+ proxy_endpoint: # fill in the Google Analytics superProxy endpoint of Google App Engine
57
+ cache_path: # the local PV cache data, friendly to visitors from GFW region
62
58
 
63
59
  # Prefer color scheme setting.
64
60
  #
@@ -105,10 +101,6 @@ kramdown:
105
101
  line_numbers: true
106
102
  start_line: 1
107
103
 
108
- # DO NOT change this unless you're a Pro user on Jekyll and Web development,
109
- # Or you think you're smart enough to change other relevant URLs within this template.
110
- permalink: /posts/:title/
111
-
112
104
  collections:
113
105
  tabs:
114
106
  output: true
@@ -124,6 +116,9 @@ defaults:
124
116
  layout: post
125
117
  comments: true # Enable comments in posts.
126
118
  toc: true # Display TOC column in posts.
119
+ # DO NOT modify the following parameter unless you are confident enough
120
+ # to update the code of all other post links in this project.
121
+ permalink: /posts/:title/
127
122
  -
128
123
  scope:
129
124
  path: _drafts
@@ -151,9 +146,6 @@ compress_html:
151
146
  envs: [development]
152
147
 
153
148
  exclude:
154
- - vendor
155
- - Gemfile
156
- - Gemfile.lock
157
149
  - '*.gem'
158
150
  - '*.gemspec'
159
151
  - tools
@@ -162,8 +154,7 @@ exclude:
162
154
  - LICENSE
163
155
  - gulpfile.js
164
156
  - node_modules
165
- - package.json
166
- - package-lock.json
157
+ - '*.json'
167
158
 
168
159
  jekyll-archives:
169
160
  enabled: [categories, tags]
@@ -8,3 +8,8 @@
8
8
  <link rel="stylesheet"
9
9
  href="https://cdn.jsdelivr.net/gh/afeld/bootstrap-toc@1.0.1/dist/bootstrap-toc.min.css">
10
10
  {% endif %}
11
+
12
+ {% if page.layout == 'page' or page.layout == 'post' %}
13
+ <!-- Manific Popup -->
14
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/magnific-popup@1.1.0/dist/magnific-popup.min.css">
15
+ {% endif %}
@@ -5,7 +5,7 @@
5
5
 
6
6
  <div id="disqus" class="pt-2 pb-2">
7
7
  <p class="text-center text-muted small pb-5">
8
- Loading comments from <a href="https://disqus.com/">Disqus</a> ...
8
+ Comments powered by <a href="https://disqus.com/">Disqus</a>.
9
9
  </p>
10
10
  </div>
11
11
 
@@ -1,32 +1,17 @@
1
1
  <!--
2
2
  The Favicons for Web, Android, Microsoft, and iOS (iPhone and iPad) Apps
3
- Generated by: https://www.favicon-generator.org/
3
+ Generated by: https://realfavicongenerator.net/
4
4
  -->
5
5
 
6
- {% capture icon_url %}{{ site.baseurl }}/assets/img/favicons{% endcapture %}
6
+ {% capture favicon_path %}{{ '/assets/img/favicons' | relative_url }}{% endcapture %}
7
7
 
8
- <link rel="shortcut icon" href="{{ icon_url }}/favicon.ico" type="image/x-icon">
9
- <link rel="icon" href="{{ icon_url }}/favicon.ico" type="image/x-icon">
10
-
11
- <link rel="apple-touch-icon" href="{{ icon_url }}/apple-icon.png">
12
- <link rel="apple-touch-icon" href="{{ icon_url }}/apple-icon-precomposed.png">
13
- <link rel="apple-touch-icon" sizes="57x57" href="{{ icon_url }}/apple-icon-57x57.png">
14
- <link rel="apple-touch-icon" sizes="60x60" href="{{ icon_url }}/apple-icon-60x60.png">
15
- <link rel="apple-touch-icon" sizes="72x72" href="{{ icon_url }}/apple-icon-72x72.png">
16
- <link rel="apple-touch-icon" sizes="76x76" href="{{ icon_url }}/apple-icon-76x76.png">
17
- <link rel="apple-touch-icon" sizes="114x114" href="{{ icon_url }}/apple-icon-114x114.png">
18
- <link rel="apple-touch-icon" sizes="120x120" href="{{ icon_url }}/apple-icon-120x120.png">
19
- <link rel="apple-touch-icon" sizes="144x144" href="{{ icon_url }}/apple-icon-144x144.png">
20
- <link rel="apple-touch-icon" sizes="152x152" href="{{ icon_url }}/apple-icon-152x152.png">
21
- <link rel="apple-touch-icon" sizes="180x180" href="{{ icon_url }}/apple-icon-180x180.png">
22
-
23
- <link rel="icon" type="image/png" sizes="192x192" href="{{ icon_url }}/android-icon-192x192.png">
24
- <link rel="icon" type="image/png" sizes="32x32" href="{{ icon_url }}/favicon-32x32.png">
25
- <link rel="icon" type="image/png" sizes="96x96" href="{{ icon_url }}/favicon-96x96.png">
26
- <link rel="icon" type="image/png" sizes="16x16" href="{{ icon_url }}/favicon-16x16.png">
27
-
28
- <link rel="manifest" href="{{ icon_url }}/manifest.json">
29
- <meta name='msapplication-config' content='{{ icon_url }}/browserconfig.xml'>
30
- <meta name="msapplication-TileColor" content="#ffffff">
31
- <meta name="msapplication-TileImage" content="{{ icon_url }}/ms-icon-144x144.png">
8
+ <link rel="apple-touch-icon" sizes="180x180" href="{{ favicon_path }}/apple-touch-icon.png">
9
+ <link rel="icon" type="image/png" sizes="32x32" href="{{ favicon_path }}/favicon-32x32.png">
10
+ <link rel="icon" type="image/png" sizes="16x16" href="{{ favicon_path }}/favicon-16x16.png">
11
+ <link rel="manifest" href="{{ favicon_path }}/site.webmanifest">
12
+ <link rel="shortcut icon" href="{{ favicon_path }}/favicon.ico">
13
+ <meta name="apple-mobile-web-app-title" content="{{ site.title }}">
14
+ <meta name="application-name" content="{{ site.title }}">
15
+ <meta name="msapplication-TileColor" content="#da532c">
16
+ <meta name="msapplication-config" content="{{ favicon_path }}/browserconfig.xml">
32
17
  <meta name="theme-color" content="#ffffff">
data/_includes/head.html CHANGED
@@ -7,19 +7,15 @@
7
7
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
8
8
 
9
9
  {% if page.layout == 'home' or page.layout == 'post' %}
10
- <meta name="pv-cache-enabled" content="{{ site.google_analytics.pv.enabled }}">
11
10
 
12
- {% if site.google_analytics.pv.enabled %}
13
- {% if site.google_analytics.pv.proxy_endpoint != ''
14
- and site.google_analytics.pv.proxy_endpoint %}
15
- <meta name="pv-proxy-endpoint" content="{{ site.google_analytics.pv.proxy_endpoint }}">
16
- {% endif %}
17
-
18
- {% if site.google_analytics.pv.cache %}
19
- <meta name="pv-cache-data" content="{{ '/assets/js/data/pageviews.json' | relative_url }}">
20
- {% endif %}
11
+ {% if site.google_analytics.pv.proxy_endpoint %}
12
+ <meta name="pv-proxy-endpoint" content="{{ site.google_analytics.pv.proxy_endpoint }}">
13
+ {% endif %}
21
14
 
15
+ {% if site.google_analytics.pv.cache_path %}
16
+ <meta name="pv-cache-path" content="{{ site.google_analytics.pv.cache_path | relative_url }}">
22
17
  {% endif %}
18
+
23
19
  {% endif %}
24
20
 
25
21
  {% seo title=false %}
@@ -45,26 +41,24 @@
45
41
  <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin="anonymous">
46
42
  <link rel="dns-prefetch" href="https://www.googletagmanager.com">
47
43
 
48
- {% if site.google_analytics.pv.proxy_url and site.google_analytics.pv.enabled %}
49
- <link rel="preconnect" href="{{ site.google_analytics.pv.proxy_url }}" crossorigin="use-credentials">
50
- <link rel="dns-prefetch" href="{{ site.google_analytics.pv.proxy_url }}">
44
+ {% if site.google_analytics.pv.proxy_endpoint %}
45
+ {% assign proxy_url = site.google_analytics.pv.proxy_endpoint
46
+ | replace: "https://", "" | split: "/" | first | prepend: "https://" %}
47
+
48
+ <link rel="preconnect" href="{{ proxy_url }}" crossorigin="use-credentials">
49
+ <link rel="dns-prefetch" href="{{ proxy_url }}">
51
50
  {% endif %}
52
51
  {% endif %}
53
52
 
54
53
  <!-- jsDelivr CDN -->
55
- <link rel="preconnect" href="cdn.jsdelivr.net">
56
- <link rel="dns-prefetch" href="cdn.jsdelivr.net">
54
+ <link rel="preconnect" href="https://cdn.jsdelivr.net">
55
+ <link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
57
56
 
58
57
  <!-- Bootstrap -->
59
- <link rel="stylesheet"
60
- href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css"
61
- integrity="sha256-LA89z+k9fjgMKQ/kq4OO2Mrf8VltYml/VES+Rg0fh20=" crossorigin="anonymous">
58
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css">
62
59
 
63
60
  <!-- Font Awesome -->
64
- <link rel="stylesheet"
65
- href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.11.2/css/all.min.css"
66
- integrity="sha256-+N4/V/SbAFiW1MPBCXnfnP9QSN3+Keu+NlB+0ev/YKQ="
67
- crossorigin="anonymous">
61
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.11.2/css/all.min.css">
68
62
 
69
63
  {% include css-selector.html %}
70
64
 
@@ -3,19 +3,26 @@
3
3
  -->
4
4
 
5
5
  {% if page.layout == 'home' or page.layout == 'post' %}
6
- {% if site.google_analytics.pv.enabled %}
6
+ {% if site.google_analytics.pv.proxy_endpoint or site.google_analytics.pv.cache_path %}
7
7
  <!-- pv-report needs countup.js -->
8
8
  <script async src="https://cdn.jsdelivr.net/npm/countup.js@1.9.3/dist/countUp.min.js"></script>
9
9
  <script async src="{{ '/assets/js/dist/pvreport.min.js' | relative_url }}"></script>
10
10
  {% endif %}
11
11
  {% endif %}
12
12
 
13
+ {% if page.layout == 'post' or page.layout == 'page' %}
14
+ <!-- image lazy-loading & popup -->
15
+ <script async
16
+ src="https://cdn.jsdelivr.net/combine/npm/lozad/dist/lozad.min.js,npm/magnific-popup@1/dist/jquery.magnific-popup.min.js"></script>
17
+ {% endif %}
18
+
13
19
  {% if page.layout == 'home'
20
+ or page.layout == 'categories'
14
21
  or page.layout == 'post'
15
- or page.layout == 'categories' %}
22
+ or page.layout == 'page' %}
16
23
  {% assign type = page.layout %}
17
24
  {% else %}
18
- {% assign type = "page" %}
25
+ {% assign type = "commons" %}
19
26
  {% endif %}
20
27
 
21
28
  {% assign js = type | prepend: '/assets/js/dist/' | append: '.min.js' %}
@@ -23,8 +30,25 @@
23
30
 
24
31
  {% if page.math %}
25
32
  <!-- MathJax -->
26
- <script defer src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
27
- <script defer src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
33
+ <script>
34
+ /* see: <https://docs.mathjax.org/en/latest/options/input/tex.html#tex-options> */
35
+ MathJax = {
36
+ tex: {
37
+ inlineMath: [ /* start/end delimiter pairs for in-line math */
38
+ ['$','$'],
39
+ ['\\(','\\)']
40
+ ],
41
+ displayMath: [ /* start/end delimiter pairs for display math */
42
+ ['$$', '$$'],
43
+ ['\\[', '\\]']
44
+ ]
45
+ }
46
+ };
47
+ </script>
48
+ <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
49
+ <script type="text/javascript" id="MathJax-script" async
50
+ src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js">
51
+ </script>
28
52
  {% endif %}
29
53
 
30
54
  {% if jekyll.environment == 'production' %}
@@ -46,7 +46,6 @@
46
46
  {% assign _content = _content | replace: '<img src="/', img_path_replacement %}
47
47
 
48
48
  <!-- lazy-load images <https://github.com/ApoorvSaxena/lozad.js#usage> -->
49
- {% assign lozad = true %}
50
49
  {% assign img_placehodler
51
50
  = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' %}
52
51
 
@@ -60,7 +59,3 @@
60
59
 
61
60
  <!-- return -->
62
61
  {{ _content }}
63
-
64
- {% if lozad %}
65
- {% include lozad.html %}
66
- {% endif %}
@@ -1,5 +1,6 @@
1
1
  <!--
2
2
  Date format snippet
3
+ See: /assets/js/_utils/timeage.js
3
4
  -->
4
5
 
5
6
  {% assign tooltip_df = site.data.date_format.tooltip | default: '%a, %b %e, %Y, %l:%M %p %z' %}
@@ -11,7 +12,10 @@
11
12
  data-toggle="tooltip"
12
13
  data-placement="bottom"
13
14
  title="{{ include.date | date: tooltip_df }}"
14
- {% endif %}>
15
+ {% endif %}
16
+
17
+ {% if include.prefix %}prefix="{{ include.prefix }} "{% endif%}
18
+ {% if include.prep %}prep="{{ include.prep }}"{% endif %} >
15
19
 
16
20
  {% assign this_year = site.time | date: "%Y" %}
17
21
  {% assign post_year = include.date | date: "%Y" %}
@@ -60,7 +60,7 @@
60
60
  <span id="search-wrapper" class="align-items-center">
61
61
  <i class="fas fa-search fa-fw"></i>
62
62
  <input class="form-control" id="search-input" type="search"
63
- aria-label="search" placeholder="{{ site.data.label.search_hint | default: 'Search' }}...">
63
+ aria-label="search" autocomplete="off" placeholder="{{ site.data.label.search_hint | default: 'Search' }}...">
64
64
  <i class="fa fa-times-circle fa-fw" id="search-cleaner"></i>
65
65
  </span>
66
66
  <span id="search-cancel" >Cancel</span>
data/_layouts/home.html CHANGED
@@ -68,7 +68,7 @@ layout: page
68
68
  {% include read-time.html content=post.content %}
69
69
 
70
70
  <!-- page views -->
71
- {% if site.google_analytics.pv.enabled %}
71
+ {% if site.google_analytics.pv.proxy_endpoint or site.google_analytics.pv.cache_path %}
72
72
  <i class="far fa-eye fa-fw"></i>
73
73
  <span id="pv_{{-post.title-}}" class="pageviews">
74
74
  <i class="fas fa-spinner fa-spin fa-fw"></i>
data/_layouts/post.html CHANGED
@@ -14,19 +14,18 @@ layout: default
14
14
  <div class="post-meta text-muted d-flex flex-column">
15
15
  <!-- Published date and author -->
16
16
  <div>
17
- {% include timeago.html date=page.date tooltip=true %}
18
- by
19
- <span class="author">
20
- {{ page.author | default: site.author }}
17
+ <span class="semi-bold">
18
+ {{ page.author | default: site.social.name }}
21
19
  </span>
20
+ {% include timeago.html date=page.date prep="on" tooltip=true %}
22
21
  </div>
23
22
 
24
23
  <div>
25
24
  <!-- lastmod -->
26
25
  {% if page.last_modified_at %}
27
26
  <span>
28
- Updated
29
- {% include timeago.html date=page.last_modified_at class="lastmod" tooltip=true %}
27
+ {% include timeago.html date=page.last_modified_at
28
+ class="lastmod" prefix="Updated" tooltip=true %}
30
29
  </span>
31
30
  {% endif %}
32
31
 
@@ -34,7 +33,7 @@ layout: default
34
33
  {% include read-time.html content=content %}
35
34
 
36
35
  <!-- page views -->
37
- {% if site.google_analytics.pv.enabled %}
36
+ {% if site.google_analytics.pv.proxy_endpoint or site.google_analytics.pv.cache_path %}
38
37
  <span id="pv" class="pageviews"><i class="fas fa-spinner fa-spin fa-fw"></i></span>
39
38
  {% endif %}
40
39