mirror of
https://github.com/cotes2020/jekyll-theme-chirpy.git
synced 2025-06-08 00:27:58 +00:00
Merge branch 'master' into production
This commit is contained in:
commit
c0e3e61fa7
@ -1,5 +1,8 @@
|
|||||||
{
|
{
|
||||||
"rules": {
|
"rules": {
|
||||||
"body-max-line-length": [0, "always"]
|
"body-max-line-length": [
|
||||||
|
0,
|
||||||
|
"always"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,13 @@ root = true
|
|||||||
|
|
||||||
[*]
|
[*]
|
||||||
charset = utf-8
|
charset = utf-8
|
||||||
# 2 space indentation
|
|
||||||
indent_style = space
|
indent_style = space
|
||||||
indent_size = 2
|
indent_size = 2
|
||||||
trim_trailing_whitespace = true
|
trim_trailing_whitespace = true
|
||||||
# Unix-style newlines with a newline ending every file
|
# Unix-style newlines with a newline ending every file
|
||||||
end_of_line = lf
|
end_of_line = lf
|
||||||
insert_final_newline = true
|
insert_final_newline = true
|
||||||
|
|
||||||
|
|
||||||
|
[*.js]
|
||||||
|
indent_size = 4
|
||||||
|
2
.github/FUNDING.yml
vendored
2
.github/FUNDING.yml
vendored
@ -1,2 +1,2 @@
|
|||||||
ko_fi: coteschung
|
ko_fi: coteschung
|
||||||
custom: https://cotes.gitee.io/alipay-wechat-donation
|
custom: https://sponsor.cotes.page
|
||||||
|
3
.github/workflows/pages-deploy.yml.hook
vendored
3
.github/workflows/pages-deploy.yml.hook
vendored
@ -1,4 +1,4 @@
|
|||||||
name: "Build and deploy"
|
name: "Build and Deploy"
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
@ -60,7 +60,6 @@ jobs:
|
|||||||
path: "_site${{ steps.pages.outputs.base_path }}"
|
path: "_site${{ steps.pages.outputs.base_path }}"
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
name: "Deploy site"
|
|
||||||
environment:
|
environment:
|
||||||
name: github-pages
|
name: github-pages
|
||||||
url: ${{ steps.deployment.outputs.page_url }}
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
22
.github/workflows/style-lint.yml
vendored
Normal file
22
.github/workflows/style-lint.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: 'Style Lint'
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- '_sass/**.scss'
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- '_sass/**.scss'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
stylelint:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Setup Node
|
||||||
|
uses: actions/setup-node@v3
|
||||||
|
- run: npm i
|
||||||
|
- run: npm test
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -7,6 +7,7 @@
|
|||||||
!.husky
|
!.husky
|
||||||
!.commitlintrc.json
|
!.commitlintrc.json
|
||||||
!.versionrc.json
|
!.versionrc.json
|
||||||
|
!.stylelintrc.json
|
||||||
|
|
||||||
# bundler cache
|
# bundler cache
|
||||||
_site
|
_site
|
||||||
|
22
.stylelintrc.json
Normal file
22
.stylelintrc.json
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"extends": "stylelint-config-standard-scss",
|
||||||
|
"rules": {
|
||||||
|
"no-descending-specificity": null,
|
||||||
|
"shorthand-property-no-redundant-values": null,
|
||||||
|
"at-rule-no-vendor-prefix": null,
|
||||||
|
"property-no-vendor-prefix": null,
|
||||||
|
"selector-no-vendor-prefix": null,
|
||||||
|
"value-no-vendor-prefix": null,
|
||||||
|
"color-function-notation": "legacy",
|
||||||
|
"alpha-value-notation": "number",
|
||||||
|
"selector-not-notation": "simple",
|
||||||
|
"color-hex-length": "long",
|
||||||
|
"declaration-block-single-line-max-declarations": 3,
|
||||||
|
"font-family-no-missing-generic-family-keyword": [
|
||||||
|
true,
|
||||||
|
{
|
||||||
|
"ignoreFontFamilies": ["Font Awesome 5 Free"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
@ -16,13 +16,16 @@ before_script: git -C "$HOME" clone "$BUILDER_REPO" --depth=1 -q
|
|||||||
jobs:
|
jobs:
|
||||||
include:
|
include:
|
||||||
- stage: Upgrade
|
- stage: Upgrade
|
||||||
|
cache: bundler
|
||||||
git:
|
git:
|
||||||
depth: false # for posts' lastmod
|
depth: false # for posts' lastmod
|
||||||
script: eval "$BUILD_CMD"
|
script: eval "$BUILD_CMD"
|
||||||
|
|
||||||
- stage: Starter
|
- stage: Starter
|
||||||
language: minimal
|
language: minimal
|
||||||
install: true # skip install step
|
install: true # skip install step
|
||||||
script: eval "$FLUSH_STARTER"
|
script: eval "$FLUSH_STARTER"
|
||||||
|
|
||||||
- stage: Docs
|
- stage: Docs
|
||||||
cache: bundler
|
cache: bundler
|
||||||
git:
|
git:
|
||||||
|
27
CHANGELOG.md
27
CHANGELOG.md
@ -2,6 +2,31 @@
|
|||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||||
|
|
||||||
|
### [5.3.1](https://github.com/cotes2020/jekyll-theme-chirpy/compare/v5.3.0...v5.3.1) (2022-10-25)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* 404 page missing title in tablet/desktop view ([5511b28](https://github.com/cotes2020/jekyll-theme-chirpy/commit/5511b2883fd5a395fddfb642588d00c122f18da7))
|
||||||
|
* prompt content overflows horizontally ([#705](https://github.com/cotes2020/jekyll-theme-chirpy/issues/705)) ([fb13e32](https://github.com/cotes2020/jekyll-theme-chirpy/commit/fb13e3219b5eca0d2e4f86a1ecabfab75240369f))
|
||||||
|
* **tools:** multiple configuration files will fail the test ([80cb0b3](https://github.com/cotes2020/jekyll-theme-chirpy/commit/80cb0b371754e96772a7907877a8ce196398ba3d))
|
||||||
|
|
||||||
|
|
||||||
|
### Improvements
|
||||||
|
|
||||||
|
* **layout:** improve the min-height of main content ([#674](https://github.com/cotes2020/jekyll-theme-chirpy/issues/674)) ([49bb93c](https://github.com/cotes2020/jekyll-theme-chirpy/commit/49bb93cc0c89ad9cfaad5edcf9cb28c3d5134575))
|
||||||
|
* modify checkbox icon with `Liquid` ([1fd665b](https://github.com/cotes2020/jekyll-theme-chirpy/commit/1fd665bf4990c26ae23635c511c5abc9640184d1))
|
||||||
|
* optimize the extra padding in lists ([#703](https://github.com/cotes2020/jekyll-theme-chirpy/issues/703)) ([39da11e](https://github.com/cotes2020/jekyll-theme-chirpy/commit/39da11e3f3685f49321757576d2b87a48bf25db5)), closes [#702](https://github.com/cotes2020/jekyll-theme-chirpy/issues/702)
|
||||||
|
* **posts:** improve core block bottom padding ([d2fb98b](https://github.com/cotes2020/jekyll-theme-chirpy/commit/d2fb98b3e57f2f6c3fc3816551cd0721731adf40))
|
||||||
|
* truncate post content for search results ([647eea8](https://github.com/cotes2020/jekyll-theme-chirpy/commit/647eea8dbd716f9d3cb8330c3139fa753903f51d))
|
||||||
|
* **typography:** optimize the line height of post content ([eac3f9b](https://github.com/cotes2020/jekyll-theme-chirpy/commit/eac3f9b434ca77e3dc64eea9cedea7b93e7b306b))
|
||||||
|
|
||||||
|
### Others
|
||||||
|
|
||||||
|
* **giscus:** add `reactions-enabled` option ([#712](https://github.com/cotes2020/jekyll-theme-chirpy/issues/712)) ([70662a0](https://github.com/cotes2020/jekyll-theme-chirpy/commit/70662a0365e6b9378602dc0a57462ddad5aebcf5))
|
||||||
|
* **locale:** restore options for changing date format ([#716](https://github.com/cotes2020/jekyll-theme-chirpy/issues/716)) ([f904e8c](https://github.com/cotes2020/jekyll-theme-chirpy/commit/f904e8cd48c343cc31e25859d9d50bfe2c056f41))
|
||||||
|
* remove site config option `prefer_datetime_locale` ([6852ceb](https://github.com/cotes2020/jekyll-theme-chirpy/commit/6852ceb280927ff4e753a3e1131f2b396d9807d0))
|
||||||
|
|
||||||
## [5.3.0](https://github.com/cotes2020/jekyll-theme-chirpy/compare/v5.2.1...v5.3.0) (2022-09-23)
|
## [5.3.0](https://github.com/cotes2020/jekyll-theme-chirpy/compare/v5.2.1...v5.3.0) (2022-09-23)
|
||||||
|
|
||||||
|
|
||||||
@ -20,7 +45,7 @@ All notable changes to this project will be documented in this file. See [standa
|
|||||||
* code contains spaces in headings ([#644](https://github.com/cotes2020/jekyll-theme-chirpy/issues/644)) ([3fa1bf3](https://github.com/cotes2020/jekyll-theme-chirpy/commit/3fa1bf305451f645a7f3aa93863b076463c8f165))
|
* code contains spaces in headings ([#644](https://github.com/cotes2020/jekyll-theme-chirpy/issues/644)) ([3fa1bf3](https://github.com/cotes2020/jekyll-theme-chirpy/commit/3fa1bf305451f645a7f3aa93863b076463c8f165))
|
||||||
* correct spelling of `panel` ([#686](https://github.com/cotes2020/jekyll-theme-chirpy/issues/686)) ([b288587](https://github.com/cotes2020/jekyll-theme-chirpy/commit/b288587c1c3d113a1c52c2d25fb46cddda348961))
|
* correct spelling of `panel` ([#686](https://github.com/cotes2020/jekyll-theme-chirpy/issues/686)) ([b288587](https://github.com/cotes2020/jekyll-theme-chirpy/commit/b288587c1c3d113a1c52c2d25fb46cddda348961))
|
||||||
* correct the i18n for tab titles ([0c5b697](https://github.com/cotes2020/jekyll-theme-chirpy/commit/0c5b697fd3b283b6a5c926742b61ed49d8688c18))
|
* correct the i18n for tab titles ([0c5b697](https://github.com/cotes2020/jekyll-theme-chirpy/commit/0c5b697fd3b283b6a5c926742b61ed49d8688c18))
|
||||||
* the `code` doesn’t wrap inside the prompt ([#626](https://github.com/cotes2020/jekyll-theme-chirpy/issues/626)) ([378b65a](https://github.com/cotes2020/jekyll-theme-chirpy/commit/378b65a0617787813519dde74d6f741f255eff3d))
|
* the `code` doesn't wrap inside the prompt ([#626](https://github.com/cotes2020/jekyll-theme-chirpy/issues/626)) ([378b65a](https://github.com/cotes2020/jekyll-theme-chirpy/commit/378b65a0617787813519dde74d6f741f255eff3d))
|
||||||
|
|
||||||
## [5.2.1](https://github.com/cotes2020/jekyll-theme-chirpy/compare/v5.2.0...v5.2.1) (2022-06-17)
|
## [5.2.1](https://github.com/cotes2020/jekyll-theme-chirpy/compare/v5.2.0...v5.2.1) (2022-06-17)
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
A minimal, responsive, and powerful Jekyll theme for presenting professional writing.
|
A minimal, responsive, and powerful Jekyll theme for presenting professional writing.
|
||||||
|
|
||||||
[](https://rubygems.org/gems/jekyll-theme-chirpy)
|
[](https://rubygems.org/gems/jekyll-theme-chirpy)
|
||||||
[](https://github.com/cotes2020/jekyll-theme-chirpy/actions?query=branch%3Amaster+event%3Apush)
|
[](https://github.com/cotes2020/jekyll-theme-chirpy/actions/workflows/ci.yml)
|
||||||
[](https://www.codacy.com/gh/cotes2020/jekyll-theme-chirpy/dashboard?utm_source=github.com&utm_medium=referral&utm_content=cotes2020/jekyll-theme-chirpy&utm_campaign=Badge_Grade)
|
[](https://www.codacy.com/gh/cotes2020/jekyll-theme-chirpy/dashboard?utm_source=github.com&utm_medium=referral&utm_content=cotes2020/jekyll-theme-chirpy&utm_campaign=Badge_Grade)
|
||||||
[](https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/LICENSE)
|
[](https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/LICENSE)
|
||||||
[](https://996.icu)
|
[](https://996.icu)
|
||||||
@ -102,4 +102,4 @@ This work is published under [MIT](https://github.com/cotes2020/jekyll-theme-chi
|
|||||||
<!-- ReadMe links -->
|
<!-- ReadMe links -->
|
||||||
|
|
||||||
[jb]: https://www.jetbrains.com/?from=jekyll-theme-chirpy
|
[jb]: https://www.jetbrains.com/?from=jekyll-theme-chirpy
|
||||||
[cn-donation]: https://cotes.gitee.io/alipay-wechat-donation/
|
[cn-donation]: https://cotes2020.github.io/sponsor/
|
||||||
|
@ -12,8 +12,6 @@ baseurl: ''
|
|||||||
# otherwise, the layout language will use the default value of 'en'.
|
# otherwise, the layout language will use the default value of 'en'.
|
||||||
lang: en
|
lang: en
|
||||||
|
|
||||||
# Additional parameters for datetime localization, optional. › https://github.com/iamkun/dayjs/tree/dev/src/locale
|
|
||||||
prefer_datetime_locale:
|
|
||||||
|
|
||||||
# Change to your timezone › http://www.timezoneconverter.com/cgi-bin/findzone/findzone
|
# Change to your timezone › http://www.timezoneconverter.com/cgi-bin/findzone/findzone
|
||||||
timezone: Asia/Shanghai
|
timezone: Asia/Shanghai
|
||||||
@ -41,7 +39,7 @@ social:
|
|||||||
# Change to your full name.
|
# Change to your full name.
|
||||||
# It will be displayed as the default author of the posts and the copyright owner in the Footer
|
# It will be displayed as the default author of the posts and the copyright owner in the Footer
|
||||||
name: your_full_name
|
name: your_full_name
|
||||||
email: example@doamin.com # change to your email address
|
email: example@domain.com # change to your email address
|
||||||
links:
|
links:
|
||||||
# The first element serves as the copyright owner's link
|
# The first element serves as the copyright owner's link
|
||||||
- https://twitter.com/username # change to your twitter homepage
|
- https://twitter.com/username # change to your twitter homepage
|
||||||
@ -106,6 +104,7 @@ comments:
|
|||||||
mapping: # optional, default to 'pathname'
|
mapping: # optional, default to 'pathname'
|
||||||
input_position: # optional, default to 'bottom'
|
input_position: # optional, default to 'bottom'
|
||||||
lang: # optional, default to the value of `site.lang`
|
lang: # optional, default to the value of `site.lang`
|
||||||
|
reactions_enabled: # optional, default to the value of `1`
|
||||||
|
|
||||||
# Self-hosted static assets, optional › https://github.com/cotes2020/chirpy-static-assets
|
# Self-hosted static assets, optional › https://github.com/cotes2020/chirpy-static-assets
|
||||||
assets:
|
assets:
|
||||||
|
@ -33,7 +33,7 @@ search:
|
|||||||
js: https://cdn.jsdelivr.net/npm/simple-jekyll-search@1.10.0/dest/simple-jekyll-search.min.js
|
js: https://cdn.jsdelivr.net/npm/simple-jekyll-search@1.10.0/dest/simple-jekyll-search.min.js
|
||||||
|
|
||||||
mermaid:
|
mermaid:
|
||||||
js: https://cdn.jsdelivr.net/npm/mermaid@8/dist/mermaid.min.js
|
js: https://cdn.jsdelivr.net/npm/mermaid@9/dist/mermaid.min.js
|
||||||
|
|
||||||
dayjs:
|
dayjs:
|
||||||
js:
|
js:
|
||||||
|
@ -22,7 +22,7 @@ search:
|
|||||||
js: /assets/lib/simple-jekyll-search-1.10.0/simple-jekyll-search.min.js
|
js: /assets/lib/simple-jekyll-search-1.10.0/simple-jekyll-search.min.js
|
||||||
|
|
||||||
mermaid:
|
mermaid:
|
||||||
js: /assets/lib/mermaid-8.13.10/mermaid.min.js
|
js: /assets/lib/mermaid-9.1.7/mermaid.min.js
|
||||||
|
|
||||||
dayjs:
|
dayjs:
|
||||||
js:
|
js:
|
||||||
|
@ -73,6 +73,16 @@ post:
|
|||||||
# pinned prompt of posts list on homepage
|
# pinned prompt of posts list on homepage
|
||||||
pin_prompt: Pinned
|
pin_prompt: Pinned
|
||||||
|
|
||||||
|
# Date time format.
|
||||||
|
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
|
||||||
|
df:
|
||||||
|
post:
|
||||||
|
strftime: '%b %e, %Y'
|
||||||
|
dayjs: 'll'
|
||||||
|
archives:
|
||||||
|
strftime: '%b'
|
||||||
|
dayjs: 'MMM'
|
||||||
|
|
||||||
# categories page
|
# categories page
|
||||||
categories:
|
categories:
|
||||||
category_measure:
|
category_measure:
|
||||||
|
@ -73,6 +73,13 @@ post:
|
|||||||
# pinned prompt of posts list on homepage
|
# pinned prompt of posts list on homepage
|
||||||
pin_prompt: 핀
|
pin_prompt: 핀
|
||||||
|
|
||||||
|
# Date time format.
|
||||||
|
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
|
||||||
|
df:
|
||||||
|
post:
|
||||||
|
strftime: '%Y/%m/%d'
|
||||||
|
dayjs: 'YYYY/MM/DD'
|
||||||
|
|
||||||
# categories page
|
# categories page
|
||||||
categories:
|
categories:
|
||||||
category_measure: 카테고리
|
category_measure: 카테고리
|
||||||
|
@ -72,6 +72,13 @@ post:
|
|||||||
# pinned prompt of posts list on homepage
|
# pinned prompt of posts list on homepage
|
||||||
pin_prompt: 顶置
|
pin_prompt: 顶置
|
||||||
|
|
||||||
|
# Date time format.
|
||||||
|
# See: <http://strftime.net/>, <https://day.js.org/docs/en/display/format>
|
||||||
|
df:
|
||||||
|
post:
|
||||||
|
strftime: '%Y/%m/%d'
|
||||||
|
dayjs: 'YYYY/MM/DD'
|
||||||
|
|
||||||
# categories page
|
# categories page
|
||||||
categories:
|
categories:
|
||||||
category_measure: 个分类
|
category_measure: 个分类
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
"data-category": "{{ site.comments.giscus.category }}",
|
"data-category": "{{ site.comments.giscus.category }}",
|
||||||
"data-category-id": "{{ site.comments.giscus.category_id }}",
|
"data-category-id": "{{ site.comments.giscus.category_id }}",
|
||||||
"data-mapping": "{{ site.comments.giscus.mapping | default: 'pathname' }}",
|
"data-mapping": "{{ site.comments.giscus.mapping | default: 'pathname' }}",
|
||||||
"data-reactions-enabled": "1",
|
"data-reactions-enabled": "{{ site.comments.giscus.reactions_enabled | default: '1' }}",
|
||||||
"data-emit-metadata": "0",
|
"data-emit-metadata": "0",
|
||||||
"data-theme": initTheme,
|
"data-theme": initTheme,
|
||||||
"data-input-position": "{{ site.comments.giscus.input_position | default: 'bottom' }}",
|
"data-input-position": "{{ site.comments.giscus.input_position | default: 'bottom' }}",
|
||||||
|
@ -4,14 +4,8 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
{% assign wrap_elem = include.wrap | default: 'em' %}
|
{% assign wrap_elem = include.wrap | default: 'em' %}
|
||||||
|
{% assign df_strftime = site.data.locales[site.lang].df.post.strftime | default: '%d/%m/%Y' %}
|
||||||
{% if site.prefer_datetime_locale == 'en' or lang == 'en' %}
|
{% assign df_dayjs = site.data.locales[site.lang].df.post.dayjs | default: 'DD/MM/YYYY' %}
|
||||||
{% assign df_strftime = '%b %e, %Y' %}
|
|
||||||
{% assign df_dayjs = 'll' %}
|
|
||||||
{% else %}
|
|
||||||
{% assign df_strftime = '%F' %}
|
|
||||||
{% assign df_dayjs = 'YYYY-MM-DD' %}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<{{ wrap_elem }} class="{% if include.class %}{{ include.class }}{% endif %}"
|
<{{ wrap_elem }} class="{% if include.class %}{{ include.class }}{% endif %}"
|
||||||
data-ts="{{ include.date | date: '%s' }}"
|
data-ts="{{ include.date | date: '%s' }}"
|
||||||
|
@ -1,20 +1,22 @@
|
|||||||
<!-- The Footer -->
|
<!-- The Footer -->
|
||||||
|
|
||||||
<footer class="row pl-3 pr-3">
|
<footer>
|
||||||
<div class="col-12 d-flex justify-content-between align-items-center text-muted pl-0 pr-0">
|
<div class="container pl-lg-4 pr-lg-4">
|
||||||
|
<div class="d-flex justify-content-between align-items-center text-muted ml-md-3 mr-md-3">
|
||||||
<div class="footer-left">
|
<div class="footer-left">
|
||||||
<p class="mb-0">
|
<p class="mb-0">
|
||||||
© {{ 'now' | date: "%Y" }}
|
© {{ 'now' | date: "%Y" }}
|
||||||
<a href="{{ site.social.links[0] }}">{{ site.social.name }}</a>.
|
<a href="{{ site.social.links[0] }}">{{ site.social.name }}</a>.
|
||||||
{% if site.data.locales[lang].copyright.brief %}
|
{% if site.data.locales[site.lang].copyright.brief %}
|
||||||
<span data-toggle="tooltip" data-placement="top"
|
<span data-toggle="tooltip" data-placement="top"
|
||||||
title="{{ site.data.locales[lang].copyright.verbose }}">{{ site.data.locales[lang].copyright.brief }}</span>
|
title="{{ site.data.locales[site.lang].copyright.verbose }}">{{ site.data.locales[site.lang].copyright.brief }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer-right">
|
<div class="footer-right">
|
||||||
<p class="mb-0">
|
<p class="mb-0">
|
||||||
|
|
||||||
{% capture _platform %}
|
{% capture _platform %}
|
||||||
<a href="https://jekyllrb.com" target="_blank" rel="noopener">Jekyll</a>
|
<a href="https://jekyllrb.com" target="_blank" rel="noopener">Jekyll</a>
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
@ -23,14 +25,12 @@
|
|||||||
<a href="https://github.com/cotes2020/jekyll-theme-chirpy" target="_blank" rel="noopener">Chirpy</a>
|
<a href="https://github.com/cotes2020/jekyll-theme-chirpy" target="_blank" rel="noopener">Chirpy</a>
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
{{ site.data.locales[lang].meta
|
{{ site.data.locales[site.lang].meta
|
||||||
| default: 'Powered by :PLATFORM with :THEME theme.'
|
| default: 'Powered by :PLATFORM with :THEME theme.'
|
||||||
| replace: ':PLATFORM', _platform | replace: ':THEME', _theme
|
| replace: ':PLATFORM', _platform | replace: ':THEME', _theme
|
||||||
}}
|
}}
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -6,11 +6,6 @@
|
|||||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
|
||||||
<!-- Allow having a localized datetime different from the appearance language -->
|
|
||||||
{% if site.prefer_datetime_locale %}
|
|
||||||
<meta name="prefer-datetime-locale" content="{{ site.prefer_datetime_locale }}">
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.layout == 'home' or page.layout == 'post' %}
|
{% if page.layout == 'home' or page.layout == 'post' %}
|
||||||
|
|
||||||
{% if site.google_analytics.pv.proxy_endpoint %}
|
{% if site.google_analytics.pv.proxy_endpoint %}
|
||||||
|
@ -29,11 +29,7 @@
|
|||||||
or page.layout == 'category'
|
or page.layout == 'category'
|
||||||
or page.layout == 'tag' %}
|
or page.layout == 'tag' %}
|
||||||
|
|
||||||
{% if site.prefer_datetime_locale %}
|
|
||||||
{% assign locale = site.prefer_datetime_locale | downcase %}
|
|
||||||
{% else %}
|
|
||||||
{% assign locale = site.lang | split: '-' | first %}
|
{% assign locale = site.lang | split: '-' | first %}
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% assign _urls = site.data.assets[origin].dayjs.js.common
|
{% assign _urls = site.data.assets[origin].dayjs.js.common
|
||||||
| append: ',' | append: site.data.assets[origin].dayjs.js.locale
|
| append: ',' | append: site.data.assets[origin].dayjs.js.locale
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
{% comment %}
|
|
||||||
Detect appearance language and return it through variable "lang"
|
|
||||||
{% endcomment %}
|
|
||||||
{% if site.data.locales[site.lang] %}
|
|
||||||
{% assign lang = site.lang %}
|
|
||||||
{% else %}
|
|
||||||
{% assign lang = 'en' %}
|
|
||||||
{% endif %}
|
|
@ -5,24 +5,24 @@
|
|||||||
<div class="post-navigation d-flex justify-content-between">
|
<div class="post-navigation d-flex justify-content-between">
|
||||||
{% if page.previous.url %}
|
{% if page.previous.url %}
|
||||||
<a href="{{ site.baseurl }}{{ page.previous.url }}" class="btn btn-outline-primary"
|
<a href="{{ site.baseurl }}{{ page.previous.url }}" class="btn btn-outline-primary"
|
||||||
prompt="{{ site.data.locales[lang].post.button.previous }}">
|
prompt="{{ site.data.locales[site.lang].post.button.previous }}">
|
||||||
<p>{{ page.previous.title }}</p>
|
<p>{{ page.previous.title }}</p>
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="btn btn-outline-primary disabled"
|
<div class="btn btn-outline-primary disabled"
|
||||||
prompt="{{ site.data.locales[lang].post.button.previous }}">
|
prompt="{{ site.data.locales[site.lang].post.button.previous }}">
|
||||||
<p>-</p>
|
<p>-</p>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.next.url %}
|
{% if page.next.url %}
|
||||||
<a href="{{ site.baseurl }}{{page.next.url}}" class="btn btn-outline-primary"
|
<a href="{{ site.baseurl }}{{page.next.url}}" class="btn btn-outline-primary"
|
||||||
prompt="{{ site.data.locales[lang].post.button.next }}">
|
prompt="{{ site.data.locales[site.lang].post.button.next }}">
|
||||||
<p>{{ page.next.title }}</p>
|
<p>{{ page.next.title }}</p>
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="btn btn-outline-primary disabled"
|
<div class="btn btn-outline-primary disabled"
|
||||||
prompt="{{ site.data.locales[lang].post.button.next }}">
|
prompt="{{ site.data.locales[site.lang].post.button.next }}">
|
||||||
<p>-</p>
|
<p>-</p>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<div class="share-wrapper">
|
<div class="share-wrapper">
|
||||||
<span class="share-label text-muted mr-1">{{ site.data.locales[lang].post.share }}</span>
|
<span class="share-label text-muted mr-1">{{ site.data.locales[site.lang].post.share }}</span>
|
||||||
<span class="share-icons">
|
<span class="share-icons">
|
||||||
{% capture title %}{{ page.title }} - {{ site.title }}{% endcapture %}
|
{% capture title %}{{ page.title }} - {{ site.title }}{% endcapture %}
|
||||||
{% assign title = title | url_encode %}
|
{% assign title = title | url_encode %}
|
||||||
@ -19,8 +19,8 @@
|
|||||||
|
|
||||||
<i id="copy-link" class="fa-fw fas fa-link small"
|
<i id="copy-link" class="fa-fw fas fa-link small"
|
||||||
data-toggle="tooltip" data-placement="top"
|
data-toggle="tooltip" data-placement="top"
|
||||||
title="{{ site.data.locales[lang].post.button.share_link.title }}"
|
title="{{ site.data.locales[site.lang].post.button.share_link.title }}"
|
||||||
data-title-succeed="{{ site.data.locales[lang].post.button.share_link.succeed }}">
|
data-title-succeed="{{ site.data.locales[site.lang].post.button.share_link.succeed }}">
|
||||||
</i>
|
</i>
|
||||||
|
|
||||||
</span>
|
</span>
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
{% endunless %}
|
{% endunless %}
|
||||||
|
|
||||||
{% capture read_prompt %}
|
{% capture read_prompt %}
|
||||||
{{- site.data.locales[lang].post.read_time.prompt -}}
|
{{- site.data.locales[site.lang].post.read_time.prompt -}}
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
<!-- return element -->
|
<!-- return element -->
|
||||||
<span class="readtime" data-toggle="tooltip" data-placement="bottom"
|
<span class="readtime" data-toggle="tooltip" data-placement="bottom"
|
||||||
title="{{ words }} {{ site.data.locales[lang].post.words }}">
|
title="{{ words }} {{ site.data.locales[site.lang].post.words }}">
|
||||||
<em>{{- read_time -}}{{" "}}{{- site.data.locales[lang].post.read_time.unit -}}</em>
|
<em>{{- read_time -}}{{" "}}{{- site.data.locales[site.lang].post.read_time.unit -}}</em>
|
||||||
{%- if include.prompt -%}
|
{%- if include.prompt -%}
|
||||||
{%- assign _prompt_words = read_prompt | number_of_words: 'auto' -%}
|
{%- assign _prompt_words = read_prompt | number_of_words: 'auto' -%}
|
||||||
{%- unless _prompt_words > 1 -%}{{ " " }}{%- endunless -%}{{ read_prompt }}
|
{%- unless _prompt_words > 1 -%}{{ " " }}{%- endunless -%}{{ read_prompt }}
|
||||||
|
@ -31,11 +31,15 @@
|
|||||||
%}
|
%}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- Add attribute 'hide-bullet' to the checkbox list -->
|
<!-- Change the icon of checkbox -->
|
||||||
|
{% if _content contains '<input type="checkbox"' %}
|
||||||
{% if _content contains '<li class="task-list-item"><' %}
|
|
||||||
{% assign _content = _content
|
{% assign _content = _content
|
||||||
| replace: '"task-list-item"><', '"task-list-item" hide-bullet><'
|
| replace:
|
||||||
|
'<input type="checkbox" class="task-list-item-checkbox" disabled="disabled" checked="checked" />',
|
||||||
|
'<i class="fas fa-check-circle fa-fw checked"></i>'
|
||||||
|
| replace:
|
||||||
|
'<input type="checkbox" class="task-list-item-checkbox" disabled="disabled" />',
|
||||||
|
'<i class="far fa-circle fa-fw"></i>'
|
||||||
%}
|
%}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
@ -177,7 +181,7 @@
|
|||||||
| append: '<div class="code-header">'
|
| append: '<div class="code-header">'
|
||||||
| append: _label
|
| append: _label
|
||||||
| append: '<button aria-label="copy" data-title-succeed="'
|
| append: '<button aria-label="copy" data-title-succeed="'
|
||||||
| append: site.data.locales[lang].post.button.copy_code.succeed
|
| append: site.data.locales[site.lang].post.button.copy_code.succeed
|
||||||
| append: '"><i class="far fa-clipboard"></i></button></div>'
|
| append: '"><i class="far fa-clipboard"></i></button></div>'
|
||||||
| append: '<div class="highlight"><code>'
|
| append: '<div class="highlight"><code>'
|
||||||
%}
|
%}
|
||||||
|
@ -78,7 +78,7 @@
|
|||||||
{% if index_list.size > 0 %}
|
{% if index_list.size > 0 %}
|
||||||
<div id="related-posts" class="mb-2 mb-sm-4">
|
<div id="related-posts" class="mb-2 mb-sm-4">
|
||||||
<h3 class="pt-2 mb-4 ml-1"
|
<h3 class="pt-2 mb-4 ml-1"
|
||||||
data-toc-skip>{{ site.data.locales[lang].post.relate_posts }}</h3>
|
data-toc-skip>{{ site.data.locales[site.lang].post.relate_posts }}</h3>
|
||||||
<div class="card-deck mb-4">
|
<div class="card-deck mb-4">
|
||||||
{% for entry in index_list %}
|
{% for entry in index_list %}
|
||||||
{% assign index = entry | plus: 0 %}
|
{% assign index = entry | plus: 0 %}
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
{% capture not_found %}<p class="mt-5">{{ site.data.locales[lang].search.no_results }}</p>{% endcapture %}
|
{% capture not_found %}<p class="mt-5">{{ site.data.locales[site.lang].search.no_results }}</p>{% endcapture %}
|
||||||
|
|
||||||
<script src="{{ site.data.assets[origin].search.js | relative_url }}"></script>
|
<script src="{{ site.data.assets[origin].search.js | relative_url }}"></script>
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="site-title mt-3">
|
<div class="site-title">
|
||||||
<a href="{{ '/' | relative_url }}">{{ site.title }}</a>
|
<a href="{{ '/' | relative_url }}">{{ site.title }}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="site-subtitle font-italic">{{ site.tagline }}</div>
|
<div class="site-subtitle font-italic">{{ site.tagline }}</div>
|
||||||
@ -34,7 +34,7 @@
|
|||||||
<li class="nav-item{% if page.layout == 'home' %}{{ " active" }}{% endif %}">
|
<li class="nav-item{% if page.layout == 'home' %}{{ " active" }}{% endif %}">
|
||||||
<a href="{{ '/' | relative_url }}" class="nav-link">
|
<a href="{{ '/' | relative_url }}" class="nav-link">
|
||||||
<i class="fa-fw fas fa-home ml-xl-3 mr-xl-3 unloaded"></i>
|
<i class="fa-fw fas fa-home ml-xl-3 mr-xl-3 unloaded"></i>
|
||||||
<span>{{ site.data.locales[lang].tabs.home | upcase }}</span>
|
<span>{{ site.data.locales[site.lang].tabs.home | upcase }}</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<!-- the real tabs -->
|
<!-- the real tabs -->
|
||||||
@ -44,7 +44,7 @@
|
|||||||
<i class="fa-fw {{ tab.icon }} ml-xl-3 mr-xl-3 unloaded"></i>
|
<i class="fa-fw {{ tab.icon }} ml-xl-3 mr-xl-3 unloaded"></i>
|
||||||
{% capture tab_name %}{{ tab.url | split: '/' }}{% endcapture %}
|
{% capture tab_name %}{{ tab.url | split: '/' }}{% endcapture %}
|
||||||
|
|
||||||
<span>{{ site.data.locales[lang].tabs.[tab_name] | default: tab.title | upcase }}</span>
|
<span>{{ site.data.locales[site.lang].tabs.[tab_name] | default: tab.title | upcase }}</span>
|
||||||
</a>
|
</a>
|
||||||
</li> <!-- .nav-item -->
|
</li> <!-- .nav-item -->
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
<script src="{{ site.data.assets[origin].bootstrap-toc.js | relative_url }}"></script>
|
<script src="{{ site.data.assets[origin].bootstrap-toc.js | relative_url }}"></script>
|
||||||
|
|
||||||
<div id="toc-wrapper" class="pl-0 pr-4 mb-5">
|
<div id="toc-wrapper" class="pl-0 pr-4 mb-5">
|
||||||
<div class="panel-heading pl-3 pt-2 mb-2">{{- site.data.locales[lang].panel.toc -}}</div>
|
<div class="panel-heading pl-3 pt-2 mb-2">{{- site.data.locales[site.lang].panel.toc -}}</div>
|
||||||
<nav id="toc" data-toggle="toc"></nav>
|
<nav id="toc" data-toggle="toc"></nav>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
{% if paths.size == 0 or page.layout == 'home' %}
|
{% if paths.size == 0 or page.layout == 'home' %}
|
||||||
<!-- index page -->
|
<!-- index page -->
|
||||||
<span>{{ site.data.locales[lang].tabs.home | capitalize }}</span>
|
<span>{{ site.data.locales[site.lang].tabs.home | capitalize }}</span>
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
|
||||||
@ -19,14 +19,14 @@
|
|||||||
{% if forloop.first %}
|
{% if forloop.first %}
|
||||||
<span>
|
<span>
|
||||||
<a href="{{ '/' | relative_url }}">
|
<a href="{{ '/' | relative_url }}">
|
||||||
{{ site.data.locales[lang].tabs.home | capitalize }}
|
{{ site.data.locales[site.lang].tabs.home | capitalize }}
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
{% elsif forloop.last %}
|
{% elsif forloop.last %}
|
||||||
|
|
||||||
{% if page.collection == 'tabs' %}
|
{% if page.collection == 'tabs' %}
|
||||||
<span>{{ site.data.locales[lang].tabs[item] | default: page.title }}</span>
|
<span>{{ site.data.locales[site.lang].tabs[item] | default: page.title }}</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span>{{ page.title }}</span>
|
<span>{{ page.title }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@ -34,7 +34,7 @@
|
|||||||
{% elsif page.layout == 'category' or page.layout == 'tag' %}
|
{% elsif page.layout == 'category' or page.layout == 'tag' %}
|
||||||
<span>
|
<span>
|
||||||
<a href="{{ item | relative_url }}">
|
<a href="{{ item | relative_url }}">
|
||||||
{{ site.data.locales[lang].tabs[item] | default: page.title }}
|
{{ site.data.locales[site.lang].tabs[item] | default: page.title }}
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@ -49,12 +49,12 @@
|
|||||||
|
|
||||||
<div id="topbar-title">
|
<div id="topbar-title">
|
||||||
{% if page.layout == 'home' %}
|
{% if page.layout == 'home' %}
|
||||||
{{- site.data.locales[lang].title | default: site.title -}}
|
{{- site.data.locales[site.lang].title | default: site.title -}}
|
||||||
{% elsif page.collection == 'tabs' or page.layout == 'page' %}
|
{% elsif page.collection == 'tabs' or page.layout == 'page' %}
|
||||||
{%- capture tab_key -%}{{ page.url | split: '/' }}{%- endcapture -%}
|
{%- capture tab_key -%}{{ page.url | split: '/' }}{%- endcapture -%}
|
||||||
{{- site.data.locales[lang].tabs[tab_key] | default: page.title -}}
|
{{- site.data.locales[site.lang].tabs[tab_key] | default: page.title -}}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{- site.data.locales[lang].layout[page.layout] | default: page.layout | capitalize -}}
|
{{- site.data.locales[site.lang].layout[page.layout] | default: page.layout | capitalize -}}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -62,9 +62,9 @@
|
|||||||
<span id="search-wrapper" class="align-items-center">
|
<span id="search-wrapper" class="align-items-center">
|
||||||
<i class="fas fa-search fa-fw"></i>
|
<i class="fas fa-search fa-fw"></i>
|
||||||
<input class="form-control" id="search-input" type="search"
|
<input class="form-control" id="search-input" type="search"
|
||||||
aria-label="search" autocomplete="off" placeholder="{{ site.data.locales[lang].search.hint | capitalize }}...">
|
aria-label="search" autocomplete="off" placeholder="{{ site.data.locales[site.lang].search.hint | capitalize }}...">
|
||||||
</span>
|
</span>
|
||||||
<span id="search-cancel" >{{ site.data.locales[lang].search.cancel }}</span>
|
<span id="search-cancel" >{{ site.data.locales[site.lang].search.cancel }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
|
|
||||||
{% if trending_tags.size > 0 %}
|
{% if trending_tags.size > 0 %}
|
||||||
<div id="access-tags">
|
<div id="access-tags">
|
||||||
<div class="panel-heading">{{- site.data.locales[lang].panel.trending_tags -}}</div>
|
<div class="panel-heading">{{- site.data.locales[site.lang].panel.trending_tags -}}</div>
|
||||||
<div class="d-flex flex-wrap mt-3 mb-1 mr-3">
|
<div class="d-flex flex-wrap mt-3 mb-1 mr-3">
|
||||||
|
|
||||||
{% for tag_name in trending_tags %}
|
{% for tag_name in trending_tags %}
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
{% if update_list.size > 0 %}
|
{% if update_list.size > 0 %}
|
||||||
|
|
||||||
<div id="access-lastmod" class="post">
|
<div id="access-lastmod" class="post">
|
||||||
<div class="panel-heading">{{- site.data.locales[lang].panel.lastmod -}}</div>
|
<div class="panel-heading">{{- site.data.locales[site.lang].panel.lastmod -}}</div>
|
||||||
<ul class="post-content pl-0 pb-1 ml-1 mt-2">
|
<ul class="post-content pl-0 pb-1 ml-1 mt-2">
|
||||||
{% for item in update_list %}
|
{% for item in update_list %}
|
||||||
{% assign index = item | split: "::" | last | plus: 0 %}
|
{% assign index = item | split: "::" | last | plus: 0 %}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/**
|
||||||
Reference: https://bootsnipp.com/snippets/featured/link-to-top-page
|
* Reference: https://bootsnipp.com/snippets/featured/link-to-top-page
|
||||||
*/
|
*/
|
||||||
$(function() {
|
$(function() {
|
||||||
$(window).scroll(() => {
|
$(window).scroll(() => {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Listener for theme mode toggle
|
* Listener for theme mode toggle
|
||||||
*/
|
*/
|
||||||
$(function () {
|
$(function () {
|
||||||
|
@ -18,7 +18,9 @@ const ScrollHelper = (function () {
|
|||||||
|
|
||||||
addScrollUpTask: () => {
|
addScrollUpTask: () => {
|
||||||
scrollUpCount += 1;
|
scrollUpCount += 1;
|
||||||
if (!topbarLocked) { topbarLocked = true; }
|
if (!topbarLocked) {
|
||||||
|
topbarLocked = true;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
popScrollUpTask: () => scrollUpCount -= 1,
|
popScrollUpTask: () => scrollUpCount -= 1,
|
||||||
hasScrollUpTask: () => scrollUpCount > 0,
|
hasScrollUpTask: () => scrollUpCount > 0,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* This script make #search-result-wrapper switch to unloaded or shown automatically.
|
* This script make #search-result-wrapper switch to unloaded or shown automatically.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
$(function () {
|
$(function () {
|
||||||
|
|
||||||
const sidebarUtil = (function () {
|
const sidebarUtil = (function () {
|
||||||
const ATTR_DISPLAY = "sidebar-display";
|
const ATTR_DISPLAY = "sidebar-display";
|
||||||
let isExpanded = false;
|
let isExpanded = false;
|
||||||
@ -26,5 +25,4 @@ $(function() {
|
|||||||
$("#sidebar-trigger").click(sidebarUtil.toggle);
|
$("#sidebar-trigger").click(sidebarUtil.toggle);
|
||||||
|
|
||||||
$("#mask").click(sidebarUtil.toggle);
|
$("#mask").click(sidebarUtil.toggle);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Hide Header on scroll down
|
* Hide Header on scroll down
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -86,5 +86,4 @@ $(function() {
|
|||||||
didScroll = false;
|
didScroll = false;
|
||||||
}
|
}
|
||||||
}, 250);
|
}, 250);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Top bar title auto change while scrolling up/down in mobile screens.
|
* Top bar title auto change while scrolling up/down in mobile screens.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Tab 'Categories' expand/close effect.
|
* Tab 'Categories' expand/close effect.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
/*
|
|
||||||
* Create a more beautiful checkbox
|
|
||||||
*/
|
|
||||||
|
|
||||||
$(function() {
|
|
||||||
/* hide browser default checkbox */
|
|
||||||
$("input[type=checkbox]").addClass("unloaded");
|
|
||||||
/* create checked checkbox */
|
|
||||||
$("input[type=checkbox][checked]").before("<i class=\"fas fa-check-circle checked\"></i>");
|
|
||||||
/* create normal checkbox */
|
|
||||||
$("input[type=checkbox]:not([checked])").before("<i class=\"far fa-circle\"></i>");
|
|
||||||
});
|
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Clipboard functions
|
* Clipboard functions
|
||||||
*
|
*
|
||||||
* Dependencies:
|
* Dependencies:
|
||||||
|
@ -4,7 +4,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
$(function () {
|
$(function () {
|
||||||
|
|
||||||
const IMG_SCOPE = '#main > div.row:first-child > div:first-child';
|
const IMG_SCOPE = '#main > div.row:first-child > div:first-child';
|
||||||
|
|
||||||
if ($(`${IMG_SCOPE} img`).length <= 0) {
|
if ($(`${IMG_SCOPE} img`).length <= 0) {
|
||||||
|
@ -6,9 +6,7 @@
|
|||||||
|
|
||||||
/* A tool for locale datetime */
|
/* A tool for locale datetime */
|
||||||
const LocaleHelper = (function () {
|
const LocaleHelper = (function () {
|
||||||
const $preferLocale = $('meta[name="prefer-datetime-locale"]');
|
const locale = $('html').attr('lang').substr(0, 2);
|
||||||
const locale = $preferLocale.length > 0 ?
|
|
||||||
$preferLocale.attr('content').toLowerCase() : $('html').attr('lang').substr(0, 2);
|
|
||||||
const attrTimestamp = 'data-ts';
|
const attrTimestamp = 'data-ts';
|
||||||
const attrDateFormat = 'data-df';
|
const attrDateFormat = 'data-df';
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
* Count page views form GA or local cache file.
|
* Count page views form GA or local cache file.
|
||||||
*
|
*
|
||||||
* Dependencies:
|
* Dependencies:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
/**
|
||||||
Safari doesn't support CSS `scroll-behavior: smooth`,
|
Safari doesn't support CSS `scroll-behavior: smooth`,
|
||||||
so here is a compatible solution for all browser to smooth scrolling
|
so here is a compatible solution for all browser to smooth scrolling
|
||||||
|
|
||||||
@ -28,7 +28,7 @@ $(function() {
|
|||||||
const hash = decodeURI(this.hash);
|
const hash = decodeURI(this.hash);
|
||||||
let toFootnoteRef = RegExp(/^#fnref:/).test(hash);
|
let toFootnoteRef = RegExp(/^#fnref:/).test(hash);
|
||||||
let toFootnote = toFootnoteRef ? false : RegExp(/^#fn:/).test(hash);
|
let toFootnote = toFootnoteRef ? false : RegExp(/^#fn:/).test(hash);
|
||||||
let selector = hash.includes(":") ? hash.replace(/\:/g, "\\:") : hash;
|
let selector = hash.includes(":") ? hash.replace(/:/g, "\\:") : hash;
|
||||||
let $target = $(selector);
|
let $target = $(selector);
|
||||||
|
|
||||||
let isMobileViews = $topbarTitle.is(":visible");
|
let isMobileViews = $topbarTitle.is(":visible");
|
||||||
|
@ -3,15 +3,8 @@ layout: page
|
|||||||
# The Archives of posts.
|
# The Archives of posts.
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
{% assign df_strftime_m = site.data.locales[site.lang].df.archives.strftime | default: '/ %m' %}
|
||||||
|
{% assign df_dayjs_m = site.data.locales[site.lang].df.archives.dayjs | default: '/ MM' %}
|
||||||
{% if site.prefer_datetime_locale == 'en' or lang == 'en' %}
|
|
||||||
{% assign df_strftime_m = '%b' %}
|
|
||||||
{% assign df_dayjs_m = 'MMM' %}
|
|
||||||
{% else %}
|
|
||||||
{% assign df_strftime_m = '/ %m' %}
|
|
||||||
{% assign df_dayjs_m = '/ MM' %}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<div id="archives" class="pl-xl-3">
|
<div id="archives" class="pl-xl-3">
|
||||||
|
|
||||||
|
@ -3,8 +3,6 @@ layout: page
|
|||||||
# All the Categories of posts
|
# All the Categories of posts
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
{% assign HEAD_PREFIX = "h_" %}
|
{% assign HEAD_PREFIX = "h_" %}
|
||||||
{% assign LIST_PREFIX = "l_" %}
|
{% assign LIST_PREFIX = "l_" %}
|
||||||
|
|
||||||
@ -48,22 +46,22 @@ layout: page
|
|||||||
{% if sub_categories_size > 0 %}
|
{% if sub_categories_size > 0 %}
|
||||||
{{ sub_categories_size }}
|
{{ sub_categories_size }}
|
||||||
{% if sub_categories_size > 1 %}
|
{% if sub_categories_size > 1 %}
|
||||||
{{ site.data.locales[lang].categories.category_measure.plural
|
{{ site.data.locales[site.lang].categories.category_measure.plural
|
||||||
| default: site.data.locales[lang].categories.category_measure }}
|
| default: site.data.locales[site.lang].categories.category_measure }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ site.data.locales[lang].categories.category_measure.singular
|
{{ site.data.locales[site.lang].categories.category_measure.singular
|
||||||
| default: site.data.locales[lang].categories.category_measure }}
|
| default: site.data.locales[site.lang].categories.category_measure }}
|
||||||
{% endif %},
|
{% endif %},
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{{ top_posts_size }}
|
{{ top_posts_size }}
|
||||||
|
|
||||||
{% if top_posts_size > 1 %}
|
{% if top_posts_size > 1 %}
|
||||||
{{ site.data.locales[lang].categories.post_measure.plural
|
{{ site.data.locales[site.lang].categories.post_measure.plural
|
||||||
| default: site.data.locales[lang].categories.post_measure }}
|
| default: site.data.locales[site.lang].categories.post_measure }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ site.data.locales[lang].categories.post_measure.singular
|
{{ site.data.locales[site.lang].categories.post_measure.singular
|
||||||
| default: site.data.locales[lang].categories.post_measure }}
|
| default: site.data.locales[site.lang].categories.post_measure }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
@ -99,11 +97,11 @@ layout: page
|
|||||||
{{ posts_size }}
|
{{ posts_size }}
|
||||||
|
|
||||||
{% if posts_size > 1 %}
|
{% if posts_size > 1 %}
|
||||||
{{ site.data.locales[lang].categories.post_measure.plural
|
{{ site.data.locales[site.lang].categories.post_measure.plural
|
||||||
| default: site.data.locales[lang].categories.post_measure }}
|
| default: site.data.locales[site.lang].categories.post_measure }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ site.data.locales[lang].categories.post_measure.singular
|
{{ site.data.locales[site.lang].categories.post_measure.singular
|
||||||
| default: site.data.locales[lang].categories.post_measure }}
|
| default: site.data.locales[site.lang].categories.post_measure }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
|
@ -3,8 +3,6 @@ layout: page
|
|||||||
# The Category layout
|
# The Category layout
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
<div id="page-category">
|
<div id="page-category">
|
||||||
<h1 class="pl-lg-2">
|
<h1 class="pl-lg-2">
|
||||||
<i class="far fa-folder-open fa-fw text-muted"></i>
|
<i class="far fa-folder-open fa-fw text-muted"></i>
|
||||||
|
@ -5,8 +5,6 @@ layout: compress
|
|||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
{% include assets-origin.html %}
|
{% include assets-origin.html %}
|
||||||
|
|
||||||
{% capture prefer_mode %}
|
{% capture prefer_mode %}
|
||||||
@ -15,7 +13,8 @@ layout: compress
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
<html lang="{{ site.lang }}"{{ prefer_mode }}>
|
<!-- `site.alt_lang` can specify a language different from the UI -->
|
||||||
|
<html lang="{{ site.alt_lang | default: site.lang }}"{{ prefer_mode }}>
|
||||||
|
|
||||||
{% include head.html %}
|
{% include head.html %}
|
||||||
|
|
||||||
@ -27,17 +26,15 @@ layout: compress
|
|||||||
|
|
||||||
<div id="main-wrapper" class="d-flex justify-content-center">
|
<div id="main-wrapper" class="d-flex justify-content-center">
|
||||||
<div id="main" class="container pl-xl-4 pr-xl-4">
|
<div id="main" class="container pl-xl-4 pr-xl-4">
|
||||||
|
|
||||||
{{ content }}
|
{{ content }}
|
||||||
|
|
||||||
{% include footer.html %}
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% include search-results.html %}
|
{% include search-results.html %}
|
||||||
|
|
||||||
</div> <!-- #main-wrapper -->
|
</div> <!-- #main-wrapper -->
|
||||||
|
|
||||||
|
{% include footer.html %}
|
||||||
|
|
||||||
{% if page.mermaid %}
|
{% if page.mermaid %}
|
||||||
{% include mermaid.html %}
|
{% include mermaid.html %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@ -57,9 +54,9 @@ layout: compress
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="toast-body text-center pt-0">
|
<div class="toast-body text-center pt-0">
|
||||||
<p class="pl-2 pr-2 mb-3">{{ site.data.locales[lang].notification.update_found }}</p>
|
<p class="pl-2 pr-2 mb-3">{{ site.data.locales[site.lang].notification.update_found }}</p>
|
||||||
<button type="button" class="btn btn-primary" aria-label="Update">
|
<button type="button" class="btn btn-primary" aria-label="Update">
|
||||||
{{ site.data.locales[lang].notification.update }}
|
{{ site.data.locales[site.lang].notification.update }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,8 +3,6 @@ layout: page
|
|||||||
# The Home page layout
|
# The Home page layout
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
{% assign pinned = site.posts | where: "pin", "true" %}
|
{% assign pinned = site.posts | where: "pin", "true" %}
|
||||||
{% assign default = site.posts | where_exp: "item", "item.pin != true and item.hidden != true" %}
|
{% assign default = site.posts | where_exp: "item", "item.pin != true and item.hidden != true" %}
|
||||||
|
|
||||||
@ -79,7 +77,7 @@ layout: page
|
|||||||
{% if post.pin %}
|
{% if post.pin %}
|
||||||
<div class="pin">
|
<div class="pin">
|
||||||
<i class="fas fa-thumbtack fa-fw"></i>
|
<i class="fas fa-thumbtack fa-fw"></i>
|
||||||
<span>{{ site.data.locales[lang].post.pin_prompt }}</span>
|
<span>{{ site.data.locales[site.lang].post.pin_prompt }}</span>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -2,14 +2,12 @@
|
|||||||
layout: default
|
layout: default
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
{% include assets-origin.html %}
|
{% include assets-origin.html %}
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
<!-- core -->
|
<!-- core -->
|
||||||
<div id="core-wrapper" class="col-12 col-lg-11 col-xl-9 pr-xl-4 pb-5">
|
<div id="core-wrapper" class="col-12 col-lg-11 col-xl-9 pr-xl-4">
|
||||||
<div class="post pl-1 pr-1 pl-md-2 pr-md-2">
|
<div class="post pl-1 pr-1 pl-md-2 pr-md-2">
|
||||||
|
|
||||||
{% capture _content %}
|
{% capture _content %}
|
||||||
@ -20,9 +18,9 @@ layout: default
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
{% if page.collection == 'tabs' %}
|
{% if page.layout == 'page' or page.collection == 'tabs' %}
|
||||||
{% assign tab_key = page.title | downcase %}
|
{% assign tab_key = page.title | downcase %}
|
||||||
{% assign title = site.data.locales[lang].tabs[tab_key] | default: page.title %}
|
{% assign title = site.data.locales[site.lang].tabs[tab_key] | default: page.title %}
|
||||||
<h1 class="dynamic-title">
|
<h1 class="dynamic-title">
|
||||||
{{ title }}
|
{{ title }}
|
||||||
</h1>
|
</h1>
|
||||||
@ -55,7 +53,7 @@ layout: default
|
|||||||
<!-- tail -->
|
<!-- tail -->
|
||||||
{% if layout.tail_includes %}
|
{% if layout.tail_includes %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div id="tail-wrapper" class="col-12 col-lg-11 col-xl-9 pl-3 pr-3 pr-xl-4">
|
<div id="tail-wrapper" class="col-12 col-lg-11 col-xl-9 pl-3 pr-3 pr-xl-4 mt-5">
|
||||||
{% for _include in layout.tail_includes %}
|
{% for _include in layout.tail_includes %}
|
||||||
{% assign _include_path = _include | append: '.html' %}
|
{% assign _include_path = _include | append: '.html' %}
|
||||||
{% include {{ _include_path }} %}
|
{% include {{ _include_path }} %}
|
||||||
|
@ -9,21 +9,19 @@ tail_includes:
|
|||||||
- comments
|
- comments
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
<h1 data-toc-skip>{{ page.title }}</h1>
|
<h1 data-toc-skip>{{ page.title }}</h1>
|
||||||
|
|
||||||
<div class="post-meta text-muted">
|
<div class="post-meta text-muted">
|
||||||
<!-- published date -->
|
<!-- published date -->
|
||||||
<span>
|
<span>
|
||||||
{{ site.data.locales[lang].post.posted }}
|
{{ site.data.locales[site.lang].post.posted }}
|
||||||
{% include datetime.html date=page.date tooltip=true %}
|
{% include datetime.html date=page.date tooltip=true %}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<!-- lastmod date -->
|
<!-- lastmod date -->
|
||||||
{% if page.last_modified_at %}
|
{% if page.last_modified_at %}
|
||||||
<span>
|
<span>
|
||||||
{{ site.data.locales[lang].post.updated }}
|
{{ site.data.locales[site.lang].post.updated }}
|
||||||
{% include datetime.html date=page.last_modified_at tooltip=true %}
|
{% include datetime.html date=page.last_modified_at tooltip=true %}
|
||||||
</span>
|
</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@ -65,7 +63,7 @@ tail_includes:
|
|||||||
{% assign authors = page.authors %}
|
{% assign authors = page.authors %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{{ site.data.locales[lang].post.written_by }}
|
{{ site.data.locales[site.lang].post.written_by }}
|
||||||
|
|
||||||
<em>
|
<em>
|
||||||
{% if authors %}
|
{% if authors %}
|
||||||
@ -86,7 +84,7 @@ tail_includes:
|
|||||||
<em id="pv" class="pageviews">
|
<em id="pv" class="pageviews">
|
||||||
<i class="fas fa-spinner fa-spin fa-fw"></i>
|
<i class="fas fa-spinner fa-spin fa-fw"></i>
|
||||||
</em>
|
</em>
|
||||||
{{ site.data.locales[lang].post.pageview_measure }}
|
{{ site.data.locales[site.lang].post.pageview_measure }}
|
||||||
</span>
|
</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
@ -132,15 +130,15 @@ tail_includes:
|
|||||||
d-flex justify-content-between align-items-center mt-3 pt-5 pb-2">
|
d-flex justify-content-between align-items-center mt-3 pt-5 pb-2">
|
||||||
<div class="license-wrapper">
|
<div class="license-wrapper">
|
||||||
|
|
||||||
{% if site.data.locales[lang].copyright.license.template %}
|
{% if site.data.locales[site.lang].copyright.license.template %}
|
||||||
|
|
||||||
{% capture _replacement %}
|
{% capture _replacement %}
|
||||||
<a href="{{ site.data.locales[lang].copyright.license.link }}">
|
<a href="{{ site.data.locales[site.lang].copyright.license.link }}">
|
||||||
{{ site.data.locales[lang].copyright.license.name }}
|
{{ site.data.locales[site.lang].copyright.license.name }}
|
||||||
</a>
|
</a>
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
{{ site.data.locales[lang].copyright.license.template | replace: ':LICENSE_NAME', _replacement }}
|
{{ site.data.locales[site.lang].copyright.license.template | replace: ':LICENSE_NAME', _replacement }}
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,8 +3,6 @@ layout: page
|
|||||||
# The layout for Tag page
|
# The layout for Tag page
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
<div id="page-tag">
|
<div id="page-tag">
|
||||||
<h1 class="pl-lg-2">
|
<h1 class="pl-lg-2">
|
||||||
<i class="fa fa-tag fa-fw text-muted"></i>
|
<i class="fa fa-tag fa-fw text-muted"></i>
|
||||||
|
@ -30,17 +30,7 @@ This post is to show Markdown syntax rendering on [**Chirpy**](https://github.co
|
|||||||
|
|
||||||
## Paragraph
|
## Paragraph
|
||||||
|
|
||||||
I wandered lonely as a cloud
|
Quisque egestas convallis ipsum, ut sollicitudin risus tincidunt a. Maecenas interdum malesuada egestas. Duis consectetur porta risus, sit amet vulputate urna facilisis ac. Phasellus semper dui non purus ultrices sodales. Aliquam ante lorem, ornare a feugiat ac, finibus nec mauris. Vivamus ut tristique nisi. Sed vel leo vulputate, efficitur risus non, posuere mi. Nullam tincidunt bibendum rutrum. Proin commodo ornare sapien. Vivamus interdum diam sed sapien blandit, sit amet aliquam risus mattis. Nullam arcu turpis, mollis quis laoreet at, placerat id nibh. Suspendisse venenatis eros eros.
|
||||||
|
|
||||||
That floats on high o'er vales and hills,
|
|
||||||
|
|
||||||
When all at once I saw a crowd,
|
|
||||||
|
|
||||||
A host, of golden daffodils;
|
|
||||||
|
|
||||||
Beside the lake, beneath the trees,
|
|
||||||
|
|
||||||
Fluttering and dancing in the breeze.
|
|
||||||
|
|
||||||
## Lists
|
## Lists
|
||||||
|
|
||||||
@ -53,17 +43,15 @@ Fluttering and dancing in the breeze.
|
|||||||
### Unordered list
|
### Unordered list
|
||||||
|
|
||||||
- Chapter
|
- Chapter
|
||||||
- Section
|
+ Section
|
||||||
- Paragraph
|
* Paragraph
|
||||||
|
|
||||||
### Task list
|
### ToDo list
|
||||||
|
|
||||||
- [ ] TODO
|
- [ ] Job
|
||||||
- [x] Completed
|
+ [x] Step 1
|
||||||
- [ ] Defeat COVID-19
|
+ [x] Step 2
|
||||||
- [x] Vaccine production
|
+ [ ] Step 3
|
||||||
- [ ] Economic recovery
|
|
||||||
- [ ] People smile again
|
|
||||||
|
|
||||||
### Description list
|
### Description list
|
||||||
|
|
||||||
@ -118,30 +106,24 @@ _Full screen width and center alignment_
|
|||||||
|
|
||||||
- Shadow
|
- Shadow
|
||||||
|
|
||||||
{: .shadow width="1548" height="864" style="max-width: 90%" }
|
{: .shadow width="1548" height="864" .w-75 }
|
||||||
_shadow effect (visible in light mode)_
|
_shadow effect (visible in light mode)_
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
- Left aligned
|
- Left aligned
|
||||||
|
|
||||||
{: width="972" height="589" style="max-width: 70%" .normal}
|
{: width="972" height="589" .w-75 .normal}
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
- Float to left
|
- Float to left
|
||||||
|
|
||||||
{: width="972" height="589" style="max-width: 200px" .left}
|
{: width="972" height="589" .w-50 .left}
|
||||||
"A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space."
|
Praesent maximus aliquam sapien. Sed vel neque in dolor pulvinar auctor. Maecenas pharetra, sem sit amet interdum posuere, tellus lacus eleifend magna, ac lobortis felis ipsum id sapien. Proin ornare rutrum metus, ac convallis diam volutpat sit amet. Phasellus volutpat, elit sit amet tincidunt mollis, felis mi scelerisque mauris, ut facilisis leo magna accumsan sapien. In rutrum vehicula nisl eget tempor. Nullam maximus ullamcorper libero non maximus. Integer ultricies velit id convallis varius. Praesent eu nisl eu urna finibus ultrices id nec ex. Mauris ac mattis quam. Fusce aliquam est nec sapien bibendum, vitae malesuada ligula condimentum. Phasellus a tortor aliquam, tristique felis sit amet, elementum enim. Integer vestibulum vitae nulla nec pretium.
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
- Float to right
|
- Float to right
|
||||||
|
|
||||||
{: width="972" height="589" style="max-width: 200px" .right}
|
{: width="972" height="589" .w-50 .right}
|
||||||
"A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space. A repetitive and meaningless text is used to fill the space."
|
Praesent maximus aliquam sapien. Sed vel neque in dolor pulvinar auctor. Maecenas pharetra, sem sit amet interdum posuere, tellus lacus eleifend magna, ac lobortis felis ipsum id sapien. Proin ornare rutrum metus, ac convallis diam volutpat sit amet. Phasellus volutpat, elit sit amet tincidunt mollis, felis mi scelerisque mauris, ut facilisis leo magna accumsan sapien. In rutrum vehicula nisl eget tempor. Nullam maximus ullamcorper libero non maximus. Integer ultricies velit id convallis varius. Praesent eu nisl eu urna finibus ultrices id nec ex. Mauris ac mattis quam. Fusce aliquam est nec sapien bibendum, vitae malesuada ligula condimentum. Phasellus a tortor aliquam, tristique felis sit amet, elementum enim. Integer vestibulum vitae nulla nec pretium.
|
||||||
|
|
||||||
<br>
|
|
||||||
|
|
||||||
## Mermaid SVG
|
## Mermaid SVG
|
||||||
|
|
||||||
|
@ -113,7 +113,7 @@ Now publish your Jekyll site:
|
|||||||
|
|
||||||
1. Browse to your repository on GitHub. Select the tab _Settings_, then click _Pages_ in the left navigation bar. Then, in the **Source** section (under _Build and deployment_), select [**GitHub Actions**][pages-workflow-src] from the dropdown menu.
|
1. Browse to your repository on GitHub. Select the tab _Settings_, then click _Pages_ in the left navigation bar. Then, in the **Source** section (under _Build and deployment_), select [**GitHub Actions**][pages-workflow-src] from the dropdown menu.
|
||||||
|
|
||||||
2. Push any commit to remote to trigger the GitHub Actions workflow. In the _Actions_ tab of your repository, you should see the "Deploy Jekyll with GitHub Pages" workflow with at least one job running. Once the build is complete and successful, the site should be deployed automatically.
|
2. Push any commit to remote to trigger the GitHub Actions workflow. In the _Actions_ tab of your repository, you should see the workflow _Build and Deploy_ running. Once the build is complete and successful, the site should be deployed automatically.
|
||||||
|
|
||||||
3. Visit your website at the address indicated by GitHub.
|
3. Visit your website at the address indicated by GitHub.
|
||||||
|
|
||||||
|
@ -5,22 +5,22 @@
|
|||||||
html {
|
html {
|
||||||
@media (prefers-color-scheme: light) {
|
@media (prefers-color-scheme: light) {
|
||||||
&:not([data-mode]),
|
&:not([data-mode]),
|
||||||
&[data-mode=light] {
|
&[data-mode="light"] {
|
||||||
@include light-scheme;
|
@include light-scheme;
|
||||||
}
|
}
|
||||||
|
|
||||||
&[data-mode=dark] {
|
&[data-mode="dark"] {
|
||||||
@include dark-scheme;
|
@include dark-scheme;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
&:not([data-mode]),
|
&:not([data-mode]),
|
||||||
&[data-mode=dark] {
|
&[data-mode="dark"] {
|
||||||
@include dark-scheme;
|
@include dark-scheme;
|
||||||
}
|
}
|
||||||
|
|
||||||
&[data-mode=light] {
|
&[data-mode="light"] {
|
||||||
@include light-scheme;
|
@include light-scheme;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -29,11 +29,11 @@ html {
|
|||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
line-height: 1.75rem;
|
|
||||||
background: var(--body-bg);
|
background: var(--body-bg);
|
||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
font-family: 'Source Sans Pro', 'Microsoft Yahei', sans-serif;
|
font-family: "Source Sans Pro", "Microsoft Yahei", sans-serif;
|
||||||
|
line-height: 1.75;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --- Typography --- */
|
/* --- Typography --- */
|
||||||
@ -76,14 +76,6 @@ h5 {
|
|||||||
font-size: 1.1rem;
|
font-size: 1.1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
ol,
|
|
||||||
ul {
|
|
||||||
ol,
|
|
||||||
ul {
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
a {
|
||||||
@extend %link-color;
|
@extend %link-color;
|
||||||
}
|
}
|
||||||
@ -102,27 +94,28 @@ blockquote {
|
|||||||
display: flex;
|
display: flex;
|
||||||
border-left: 0;
|
border-left: 0;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
padding: 0.75rem 1.2rem;
|
padding: 1rem;
|
||||||
color: var(--prompt-text-color);
|
color: var(--prompt-text-color);
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
margin-right: 1rem;
|
|
||||||
font-family: "Font Awesome 5 Free";
|
font-family: "Font Awesome 5 Free";
|
||||||
text-align: center;
|
text-align: center;
|
||||||
width: 1.25rem;
|
width: 1.25rem;
|
||||||
|
margin-right: 0.75rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
p:last-child {
|
> div {
|
||||||
margin-bottom: 0rem;
|
max-width: calc(100% - 2rem);
|
||||||
|
|
||||||
|
> :last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@include prompt("tip", "\f0eb", 400);
|
@include prompt("tip", "\f0eb", 400);
|
||||||
|
|
||||||
@include prompt("info", "\f06a");
|
@include prompt("info", "\f06a");
|
||||||
|
|
||||||
@include prompt("warning", "\f06a");
|
@include prompt("warning", "\f06a");
|
||||||
|
|
||||||
@include prompt("danger", "\f071");
|
@include prompt("danger", "\f071");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -148,11 +141,10 @@ kbd {
|
|||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
footer {
|
||||||
@include pl-pr(1.5rem);
|
|
||||||
|
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
|
background-color: var(--main-bg);
|
||||||
|
|
||||||
> div.d-flex {
|
div.d-flex {
|
||||||
height: $footer-height;
|
height: $footer-height;
|
||||||
line-height: 1.2rem;
|
line-height: 1.2rem;
|
||||||
padding-bottom: 1rem;
|
padding-bottom: 1rem;
|
||||||
@ -172,7 +164,6 @@ footer {
|
|||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@extend %link-hover;
|
@extend %link-hover;
|
||||||
|
|
||||||
@include no-text-decoration;
|
@include no-text-decoration;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -189,6 +180,11 @@ i { /* fontawesome icons */
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@-webkit-keyframes fade-in {
|
||||||
|
from { opacity: 0; }
|
||||||
|
to { opacity: 1; }
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes fade-in {
|
@keyframes fade-in {
|
||||||
from { opacity: 0; }
|
from { opacity: 0; }
|
||||||
to { opacity: 1; }
|
to { opacity: 1; }
|
||||||
@ -197,7 +193,8 @@ i { /* fontawesome icons */
|
|||||||
img[data-src] {
|
img[data-src] {
|
||||||
margin: 0.5rem 0;
|
margin: 0.5rem 0;
|
||||||
|
|
||||||
&[data-loaded=true] {
|
&[data-loaded="true"] {
|
||||||
|
-webkit-animation: fade-in linear 0.5s;
|
||||||
animation: fade-in linear 0.5s;
|
animation: fade-in linear 0.5s;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -212,6 +209,7 @@ img[data-src] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.shadow {
|
&.shadow {
|
||||||
|
-webkit-filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.08));
|
||||||
filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.08));
|
filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.08));
|
||||||
box-shadow: none !important; /* cover the Bootstrap 4.6.1 styles */
|
box-shadow: none !important; /* cover the Bootstrap 4.6.1 styles */
|
||||||
}
|
}
|
||||||
@ -228,7 +226,7 @@ img[data-src] {
|
|||||||
margin-bottom: 4rem;
|
margin-bottom: 4rem;
|
||||||
|
|
||||||
&:only-child {
|
&:only-child {
|
||||||
position: -webkit-sticky; /* Safari */
|
position: -webkit-sticky;
|
||||||
position: sticky;
|
position: sticky;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -244,7 +242,6 @@ img[data-src] {
|
|||||||
.post-content {
|
.post-content {
|
||||||
font-size: 0.9rem;
|
font-size: 0.9rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#panel-wrapper {
|
#panel-wrapper {
|
||||||
@ -266,12 +263,12 @@ img[data-src] {
|
|||||||
&:hover {
|
&:hover {
|
||||||
background-color: #2a408e;
|
background-color: #2a408e;
|
||||||
border-color: #2a408e;
|
border-color: #2a408e;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
transition: none;
|
transition: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-topbar-visible=true] & > div {
|
[data-topbar-visible="true"] & > div {
|
||||||
top: 6rem;
|
top: 6rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -296,7 +293,6 @@ img[data-src] {
|
|||||||
|
|
||||||
color: inherit;
|
color: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.footnotes > ol {
|
.footnotes > ol {
|
||||||
@ -316,10 +312,11 @@ img[data-src] {
|
|||||||
|
|
||||||
/* [scroll-focus] added by `smooth-scroll.js` */
|
/* [scroll-focus] added by `smooth-scroll.js` */
|
||||||
&:target:not([scroll-focus]),
|
&:target:not([scroll-focus]),
|
||||||
&[scroll-focus=true] > p {
|
&[scroll-focus="true"] > p {
|
||||||
background-color: var(--footnote-target-bg);
|
background-color: var(--footnote-target-bg);
|
||||||
|
width: -moz-fit-content;
|
||||||
|
width: -webkit-fit-content;
|
||||||
width: fit-content;
|
width: fit-content;
|
||||||
-webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */
|
|
||||||
transition: background-color 1.5s ease-in-out;
|
transition: background-color 1.5s ease-in-out;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -331,7 +328,6 @@ img[data-src] {
|
|||||||
@include pl-pr(2px);
|
@include pl-pr(2px);
|
||||||
|
|
||||||
border-bottom-style: none !important;
|
border-bottom-style: none !important;
|
||||||
-webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */
|
|
||||||
transition: background-color 1.5s ease-in-out;
|
transition: background-color 1.5s ease-in-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -421,7 +417,6 @@ img[data-src] {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} /* a */
|
} /* a */
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.pageviews .fa-spinner {
|
.pageviews .fa-spinner {
|
||||||
@ -449,10 +444,8 @@ img[data-src] {
|
|||||||
|
|
||||||
.post-content {
|
.post-content {
|
||||||
font-size: 1.08rem;
|
font-size: 1.08rem;
|
||||||
line-height: 1.8;
|
|
||||||
margin-top: 2rem;
|
margin-top: 2rem;
|
||||||
overflow-wrap: break-word;
|
overflow-wrap: break-word;
|
||||||
word-wrap: break-word;
|
|
||||||
|
|
||||||
a {
|
a {
|
||||||
&:not(.img-link) {
|
&:not(.img-link) {
|
||||||
@ -466,17 +459,37 @@ img[data-src] {
|
|||||||
&.img-link {
|
&.img-link {
|
||||||
@extend %img-caption;
|
@extend %img-caption;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
> ol,
|
||||||
|
> ul {
|
||||||
|
-webkit-padding-start: 1.75rem;
|
||||||
|
padding-inline-start: 1.75rem;
|
||||||
|
|
||||||
|
li {
|
||||||
|
margin: 0.25rem 0;
|
||||||
|
padding-left: 0.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol,
|
||||||
ul {
|
ul {
|
||||||
/* attribute 'hide-bullet' was added by liquid */
|
-webkit-padding-start: 1rem;
|
||||||
.task-list-item[hide-bullet] {
|
padding-inline-start: 1rem;
|
||||||
|
margin: 0.5rem 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.task-list {
|
||||||
|
-webkit-padding-start: 1.25rem;
|
||||||
|
padding-inline-start: 1.25rem;
|
||||||
|
|
||||||
|
li {
|
||||||
list-style-type: none;
|
list-style-type: none;
|
||||||
|
padding-left: 0;
|
||||||
|
|
||||||
> i { /* checkbox icon */
|
> i { /* checkbox icon */
|
||||||
margin: 0 0.4rem 0.2rem -1.4rem;
|
width: 2rem;
|
||||||
vertical-align: middle;
|
margin-left: -1.25rem;
|
||||||
color: var(--checkbox-color);
|
color: var(--checkbox-color);
|
||||||
|
|
||||||
&.checked {
|
&.checked {
|
||||||
@ -484,39 +497,21 @@ img[data-src] {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
-webkit-padding-start: 1.75rem;
|
||||||
|
padding-inline-start: 1.75rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type=checkbox] {
|
input[type="checkbox"] {
|
||||||
margin: 0 0.5rem 0.2rem -1.3rem;
|
margin: 0 0.5rem 0.2rem -1.3rem;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* ul */
|
} /* ul */
|
||||||
|
|
||||||
> ol,
|
|
||||||
> ul {
|
|
||||||
padding-left: 2rem;
|
|
||||||
|
|
||||||
li {
|
|
||||||
ol,
|
|
||||||
ul { /* sub list */
|
|
||||||
padding-left: 2rem;
|
|
||||||
margin-top: 0.3rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
> ol {
|
|
||||||
li {
|
|
||||||
padding-left: 0.25em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dl > dd {
|
dl > dd {
|
||||||
margin-left: 1rem;
|
margin-left: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .post-content */
|
} /* .post-content */
|
||||||
|
|
||||||
.tag:hover {
|
.tag:hover {
|
||||||
@ -581,7 +576,6 @@ img[data-src] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.flex-grow-1 {
|
.flex-grow-1 {
|
||||||
-ms-flex-positive: 1 !important;
|
|
||||||
flex-grow: 1 !important;
|
flex-grow: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -673,9 +667,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
border: 2px solid rgba(222, 222, 222, 0.7);
|
border: 2px solid rgba(222, 222, 222, 0.7);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
-webkit-transform: translateZ(0);
|
||||||
transform: translateZ(0); /* fixed the zoom in Safari */
|
transform: translateZ(0); /* fixed the zoom in Safari */
|
||||||
-webkit-transition: border-color 0.35s ease-in-out;
|
|
||||||
-moz-transition: border-color 0.35s ease-in-out;
|
|
||||||
transition: border-color 0.35s ease-in-out;
|
transition: border-color 0.35s ease-in-out;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@ -686,13 +679,11 @@ $sidebar-display: "sidebar-display";
|
|||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
-webkit-transition: transform 0.5s;
|
transition: -webkit-transform 0.5s;
|
||||||
-moz-transition: transform 0.5s;
|
|
||||||
transition: transform 0.5s;
|
transition: transform 0.5s;
|
||||||
|
transition: transform 0.5s, -webkit-transform 0.5s;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
-ms-transform: scale(1.2);
|
|
||||||
-moz-transform: scale(1.2);
|
|
||||||
-webkit-transform: scale(1.2);
|
-webkit-transform: scale(1.2);
|
||||||
transform: scale(1.2);
|
transform: scale(1.2);
|
||||||
}
|
}
|
||||||
@ -700,23 +691,27 @@ $sidebar-display: "sidebar-display";
|
|||||||
} /* #avatar */
|
} /* #avatar */
|
||||||
|
|
||||||
.site-title {
|
.site-title {
|
||||||
|
margin-top: 0.55rem;
|
||||||
|
|
||||||
a {
|
a {
|
||||||
@extend %clickable-transition;
|
@extend %clickable-transition;
|
||||||
|
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
font-size: 1.5rem;
|
font-size: 1.5rem;
|
||||||
letter-spacing: 0.5px;
|
letter-spacing: 0.5px;
|
||||||
color: rgba(134, 133, 133, 99%);
|
color: rgba(134, 133, 133, 0.99);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.site-subtitle {
|
.site-subtitle {
|
||||||
font-size: 95%;
|
font-size: 95%;
|
||||||
color: var(--sidebar-muted-color);
|
color: var(--sidebar-muted-color);
|
||||||
line-height: 1.2rem;
|
line-height: 1.25rem;
|
||||||
word-spacing: 1px;
|
word-spacing: 1px;
|
||||||
margin: 0.5rem 1.5rem 0.5rem 1.5rem;
|
margin: 0.2rem 1.5rem 0.5rem 1.5rem;
|
||||||
min-height: 3rem; /* avoid vertical shifting in multi-line words */
|
min-height: 3rem; /* avoid vertical shifting in multi-line words */
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -797,9 +792,7 @@ $sidebar-display: "sidebar-display";
|
|||||||
@include fix-cursor($top);
|
@include fix-cursor($top);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* @for */
|
} /* @for */
|
||||||
|
|
||||||
} /* ul */
|
} /* ul */
|
||||||
|
|
||||||
.sidebar-bottom {
|
.sidebar-bottom {
|
||||||
@ -850,16 +843,11 @@ $sidebar-display: "sidebar-display";
|
|||||||
height: 3px;
|
height: 3px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .sidebar-bottom */
|
} /* .sidebar-bottom */
|
||||||
|
|
||||||
} /* #sidebar */
|
} /* #sidebar */
|
||||||
|
|
||||||
@media (hover: hover) {
|
@media (hover: hover) {
|
||||||
#sidebar ul > li:last-child::after {
|
#sidebar ul > li:last-child::after {
|
||||||
-webkit-transition: top 0.5s ease;
|
|
||||||
-moz-transition: top 0.5s ease;
|
|
||||||
-o-transition: top 0.5s ease;
|
|
||||||
transition: top 0.5s ease;
|
transition: top 0.5s ease;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -893,14 +881,14 @@ $sidebar-display: "sidebar-display";
|
|||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.07);
|
border-bottom: 1px solid rgba(0, 0, 0, 0.07);
|
||||||
background-color: var(--topbar-wrapper-bg);
|
background-color: var(--topbar-wrapper-bg);
|
||||||
|
|
||||||
[data-topbar-visible=false] & {
|
[data-topbar-visible="false"] & {
|
||||||
top: -$topbar-height; /* same as topbar height. */
|
top: -$topbar-height; /* same as topbar height. */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#topbar {
|
#topbar {
|
||||||
i { /* icons */
|
i { /* icons */
|
||||||
color: #999;
|
color: #999999;
|
||||||
}
|
}
|
||||||
|
|
||||||
#breadcrumb {
|
#breadcrumb {
|
||||||
@ -964,9 +952,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
background: center;
|
background: center;
|
||||||
|
|
||||||
&.form-control {
|
&.form-control {
|
||||||
&::-webkit-input-placeholder { @include input-placeholder; }
|
|
||||||
&::-moz-placeholder { @include input-placeholder; }
|
&::-moz-placeholder { @include input-placeholder; }
|
||||||
&:-ms-input-placeholder { @include input-placeholder; }
|
&::-webkit-input-placeholder { @include input-placeholder; }
|
||||||
&::placeholder { @include input-placeholder; }
|
&::placeholder { @include input-placeholder; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1052,8 +1039,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#core-wrapper {
|
#core-wrapper {
|
||||||
min-height: calc(100vh - #{$topbar-height} - #{$footer-height});
|
|
||||||
|
|
||||||
.categories,
|
.categories,
|
||||||
#tags,
|
#tags,
|
||||||
#archives {
|
#archives {
|
||||||
@ -1061,6 +1046,10 @@ $sidebar-display: "sidebar-display";
|
|||||||
@extend %no-bottom-border;
|
@extend %no-bottom-border;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@at-root .row:only-child > #{&} {
|
||||||
|
padding-bottom: 3rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#mask {
|
#mask {
|
||||||
@ -1082,9 +1071,9 @@ $sidebar-display: "sidebar-display";
|
|||||||
/* --- main wrapper --- */
|
/* --- main wrapper --- */
|
||||||
|
|
||||||
#main-wrapper {
|
#main-wrapper {
|
||||||
background-color: var(--main-wrapper-bg);
|
background-color: var(--main-bg);
|
||||||
position: relative;
|
position: relative;
|
||||||
min-height: 100vh;
|
min-height: calc(100vh - #{$footer-height});
|
||||||
|
|
||||||
@include pl-pr(0);
|
@include pl-pr(0);
|
||||||
}
|
}
|
||||||
@ -1116,7 +1105,9 @@ $sidebar-display: "sidebar-display";
|
|||||||
height: $size;
|
height: $size;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
border: 1px solid var(--btn-backtotop-border-color);
|
border: 1px solid var(--btn-backtotop-border-color);
|
||||||
|
transition: -webkit-transform 0.2s ease-out;
|
||||||
transition: transform 0.2s ease-out;
|
transition: transform 0.2s ease-out;
|
||||||
|
transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
|
||||||
-webkit-transition: transform 0.2s ease-out;
|
-webkit-transition: transform 0.2s ease-out;
|
||||||
|
|
||||||
i {
|
i {
|
||||||
@ -1132,6 +1123,13 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#notification {
|
#notification {
|
||||||
|
@-webkit-keyframes popup {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes popup {
|
@keyframes popup {
|
||||||
from {
|
from {
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
@ -1146,7 +1144,7 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
.toast-body {
|
.toast-body {
|
||||||
font-family: 'Lato';
|
font-family: Lato, sans-serif;
|
||||||
line-height: 1.25rem;
|
line-height: 1.25rem;
|
||||||
|
|
||||||
button {
|
button {
|
||||||
@ -1169,11 +1167,12 @@ $sidebar-display: "sidebar-display";
|
|||||||
position: fixed;
|
position: fixed;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
bottom: 20%;
|
bottom: 20%;
|
||||||
|
-webkit-transform: translateX(-50%);
|
||||||
transform: translateX(-50%);
|
transform: translateX(-50%);
|
||||||
|
-webkit-animation: popup 0.8s;
|
||||||
animation: popup 0.8s;
|
animation: popup 0.8s;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1189,10 +1188,9 @@ $sidebar-display: "sidebar-display";
|
|||||||
footer {
|
footer {
|
||||||
height: $footer-height-mobile;
|
height: $footer-height-mobile;
|
||||||
|
|
||||||
> div.d-flex {
|
div.d-flex {
|
||||||
padding: 1.5rem 0;
|
padding: 1.5rem 0;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
-ms-flex-pack: distribute !important;
|
|
||||||
justify-content: space-around !important;
|
justify-content: space-around !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1202,6 +1200,10 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#main-wrapper {
|
||||||
|
min-height: calc(100vh - #{$footer-height-mobile});
|
||||||
|
}
|
||||||
|
|
||||||
#core-wrapper {
|
#core-wrapper {
|
||||||
min-height: calc(100vh - #{$topbar-height} - #{$footer-height-mobile}) !important;
|
min-height: calc(100vh - #{$topbar-height} - #{$footer-height-mobile}) !important;
|
||||||
|
|
||||||
@ -1211,12 +1213,14 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
.post-content {
|
.post-content {
|
||||||
> blockquote[class^=prompt-] {
|
> blockquote[class^="prompt-"] {
|
||||||
|
@include pl-pr(1.25rem);
|
||||||
@include ml-mr(-1.25rem);
|
@include ml-mr(-1.25rem);
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
border-radius: 0;
|
||||||
|
max-width: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#avatar > a {
|
#avatar > a {
|
||||||
@ -1227,7 +1231,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
.site-subtitle {
|
.site-subtitle {
|
||||||
@include ml-mr(1.8rem);
|
@include ml-mr(1.8rem);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media all and (max-width: 768px) {
|
@media all and (max-width: 768px) {
|
||||||
@ -1249,11 +1252,10 @@ $sidebar-display: "sidebar-display";
|
|||||||
@media all and (max-width: 849px) {
|
@media all and (max-width: 849px) {
|
||||||
@mixin slide($append: null) {
|
@mixin slide($append: null) {
|
||||||
$basic: transform 0.4s ease;
|
$basic: transform 0.4s ease;
|
||||||
|
|
||||||
@if $append {
|
@if $append {
|
||||||
-webkit-transition: $basic, $append;
|
|
||||||
transition: $basic, $append;
|
transition: $basic, $append;
|
||||||
} @else {
|
} @else {
|
||||||
-webkit-transition: $basic;
|
|
||||||
transition: $basic;
|
transition: $basic;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1263,13 +1265,20 @@ $sidebar-display: "sidebar-display";
|
|||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
@include slide;
|
||||||
|
}
|
||||||
|
|
||||||
[#{$sidebar-display}] {
|
[#{$sidebar-display}] {
|
||||||
#sidebar {
|
#sidebar {
|
||||||
|
-webkit-transform: translateX(0);
|
||||||
transform: translateX(0);
|
transform: translateX(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#topbar-wrapper,
|
#topbar-wrapper,
|
||||||
#main-wrapper {
|
#main-wrapper,
|
||||||
|
footer {
|
||||||
|
-webkit-transform: translateX(#{$sidebar-width});
|
||||||
transform: translateX(#{$sidebar-width});
|
transform: translateX(#{$sidebar-width});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1281,8 +1290,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
-webkit-transform: translateX(-#{$sidebar-width});
|
-webkit-transform: translateX(-#{$sidebar-width});
|
||||||
|
|
||||||
.cursor {
|
.cursor {
|
||||||
-webkit-transition: none;
|
|
||||||
-moz-transition: none;
|
|
||||||
transition: none;
|
transition: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1294,7 +1301,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#topbar,
|
#topbar,
|
||||||
#main {
|
#main,
|
||||||
|
footer > .container {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1329,8 +1337,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#tags {
|
#tags {
|
||||||
-webkit-box-pack: center !important;
|
|
||||||
-ms-flex-pack: center !important;
|
|
||||||
justify-content: center !important;
|
justify-content: center !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1341,18 +1347,17 @@ $sidebar-display: "sidebar-display";
|
|||||||
margin-top: 3rem;
|
margin-top: 3rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* max-width: 849px */
|
} /* max-width: 849px */
|
||||||
|
|
||||||
@media all and (max-width: 849px) and (orientation: portrait) {
|
@media all and (max-width: 849px) and (orientation: portrait) {
|
||||||
[data-topbar-visible=false] #topbar-wrapper {
|
[data-topbar-visible="false"] #topbar-wrapper {
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Phone & Pad */
|
/* Phone & Pad */
|
||||||
@media all and (min-width: 577px) and (max-width: 1199px) {
|
@media all and (min-width: 577px) and (max-width: 1199px) {
|
||||||
footer > .d-flex > div {
|
footer .d-flex > div {
|
||||||
width: 312px;
|
width: 312px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1364,7 +1369,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
}
|
}
|
||||||
|
|
||||||
#main-wrapper {
|
#main-wrapper,
|
||||||
|
footer {
|
||||||
margin-left: $sidebar-width;
|
margin-left: $sidebar-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1395,21 +1401,14 @@ $sidebar-display: "sidebar-display";
|
|||||||
right: 5%;
|
right: 5%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#topbar {
|
|
||||||
@include pl-pr(2rem);
|
|
||||||
}
|
|
||||||
|
|
||||||
#topbar-title {
|
#topbar-title {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Pad horizontal */
|
/* Pad horizontal */
|
||||||
@media all and (min-width: 992px) and (max-width: 1199px) {
|
@media all and (min-width: 992px) and (max-width: 1199px) {
|
||||||
#main .col-lg-11 {
|
#main .col-lg-11 {
|
||||||
-webkit-box-flex: 0;
|
|
||||||
-ms-flex: 0 0 96%;
|
|
||||||
flex: 0 0 96%;
|
flex: 0 0 96%;
|
||||||
max-width: 96%;
|
max-width: 96%;
|
||||||
}
|
}
|
||||||
@ -1438,7 +1437,7 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#topbar-wrapper {
|
#topbar-wrapper {
|
||||||
left: 210px;
|
left: $sidebar-width-small;
|
||||||
}
|
}
|
||||||
|
|
||||||
#search-results > div {
|
#search-results > div {
|
||||||
@ -1456,8 +1455,9 @@ $sidebar-display: "sidebar-display";
|
|||||||
font-size: 90%;
|
font-size: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#main-wrapper {
|
#main-wrapper,
|
||||||
margin-left: 210px;
|
footer {
|
||||||
|
margin-left: $sidebar-width-small;
|
||||||
}
|
}
|
||||||
|
|
||||||
#breadcrumb {
|
#breadcrumb {
|
||||||
@ -1467,7 +1467,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
word-break: keep-all;
|
word-break: keep-all;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* panel hidden */
|
/* panel hidden */
|
||||||
@ -1477,8 +1476,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#main > div.row {
|
#main > div.row {
|
||||||
-webkit-box-pack: center !important;
|
|
||||||
-ms-flex-pack: center !important;
|
|
||||||
justify-content: center !important;
|
justify-content: center !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1495,7 +1492,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#search-input {
|
#search-input {
|
||||||
-webkit-transition: all 0.3s ease-in-out;
|
|
||||||
transition: all 0.3s ease-in-out;
|
transition: all 0.3s ease-in-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1520,10 +1516,11 @@ $sidebar-display: "sidebar-display";
|
|||||||
font-size: 1.03rem;
|
font-size: 1.03rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
footer > div.d-felx {
|
footer {
|
||||||
|
div.d-felx {
|
||||||
width: 85%;
|
width: 85%;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media all and (min-width: 1400px) {
|
@media all and (min-width: 1400px) {
|
||||||
@ -1533,7 +1530,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media all and (min-width: 1650px) {
|
@media all and (min-width: 1650px) {
|
||||||
#main-wrapper {
|
#main-wrapper,
|
||||||
|
footer {
|
||||||
margin-left: $sidebar-width-large;
|
margin-left: $sidebar-width-large;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1546,7 +1544,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#topbar,
|
#topbar,
|
||||||
#main {
|
#main,
|
||||||
|
footer > .container {
|
||||||
max-width: $main-content-max-width;
|
max-width: $main-content-max-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1590,6 +1589,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
.site-title {
|
.site-title {
|
||||||
@extend %profile-ml;
|
@extend %profile-ml;
|
||||||
|
|
||||||
|
margin-top: 0.4rem;
|
||||||
|
|
||||||
a {
|
a {
|
||||||
font-size: 1.7rem;
|
font-size: 1.7rem;
|
||||||
letter-spacing: 1px;
|
letter-spacing: 1px;
|
||||||
@ -1600,9 +1601,8 @@ $sidebar-display: "sidebar-display";
|
|||||||
@extend %profile-ml;
|
@extend %profile-ml;
|
||||||
|
|
||||||
word-spacing: 0;
|
word-spacing: 0;
|
||||||
margin-top: 0.3rem;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .profile-wrapper (min-width: 1650px) */
|
} /* .profile-wrapper (min-width: 1650px) */
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
@ -1628,7 +1628,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1639,8 +1638,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
$icon-block-size: 2rem;
|
$icon-block-size: 2rem;
|
||||||
|
|
||||||
&.justify-content-center {
|
&.justify-content-center {
|
||||||
-webkit-box-pack: start !important;
|
|
||||||
-ms-flex-pack: start !important;
|
|
||||||
justify-content: flex-start !important;
|
justify-content: flex-start !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1665,6 +1662,7 @@ $sidebar-display: "sidebar-display";
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
|
-webkit-transform: translate(-50%, -50%);
|
||||||
transform: translate(-50%, -50%);
|
transform: translate(-50%, -50%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1672,9 +1670,6 @@ $sidebar-display: "sidebar-display";
|
|||||||
.icon-border {
|
.icon-border {
|
||||||
top: 0.9rem;
|
top: 0.9rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .sidebar-bottom */
|
} /* .sidebar-bottom */
|
||||||
|
|
||||||
} /* #sidebar */
|
} /* #sidebar */
|
||||||
|
|
||||||
} /* min-width: 1650px */
|
} /* min-width: 1650px */
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
%heading {
|
%heading {
|
||||||
color: var(--heading-color);
|
color: var(--heading-color);
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-family: 'Lato', 'Microsoft Yahei', sans-serif;
|
font-family: Lato, "Microsoft Yahei", sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
%section {
|
%section {
|
||||||
@ -73,6 +73,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
%no-cursor {
|
%no-cursor {
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,6 +103,8 @@
|
|||||||
|
|
||||||
%sidebar-links {
|
%sidebar-links {
|
||||||
color: rgba(117, 117, 117, 0.9);
|
color: rgba(117, 117, 117, 0.9);
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -134,7 +138,6 @@
|
|||||||
position: relative;
|
position: relative;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
-webkit-transform: translateX(-50%);
|
-webkit-transform: translateX(-50%);
|
||||||
-ms-transform: translateX(-50%);
|
|
||||||
transform: translateX(-50%);
|
transform: translateX(-50%);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,22 +8,22 @@
|
|||||||
html {
|
html {
|
||||||
@media (prefers-color-scheme: light) {
|
@media (prefers-color-scheme: light) {
|
||||||
&:not([data-mode]),
|
&:not([data-mode]),
|
||||||
&[data-mode=light] {
|
&[data-mode="light"] {
|
||||||
@include light-syntax;
|
@include light-syntax;
|
||||||
}
|
}
|
||||||
|
|
||||||
&[data-mode=dark] {
|
&[data-mode="dark"] {
|
||||||
@include dark-syntax;
|
@include dark-syntax;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
&:not([data-mode]),
|
&:not([data-mode]),
|
||||||
&[data-mode=dark] {
|
&[data-mode="dark"] {
|
||||||
@include dark-syntax;
|
@include dark-syntax;
|
||||||
}
|
}
|
||||||
|
|
||||||
&[data-mode=light] {
|
&[data-mode="light"] {
|
||||||
@include light-syntax;
|
@include light-syntax;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -87,24 +87,21 @@ $code-radius: 6px;
|
|||||||
text-align: right;
|
text-align: right;
|
||||||
color: var(--highlight-lineno-color);
|
color: var(--highlight-lineno-color);
|
||||||
-webkit-user-select: none;
|
-webkit-user-select: none;
|
||||||
-khtml-user-select: none;
|
|
||||||
-moz-user-select: none;
|
-moz-user-select: none;
|
||||||
-ms-user-select: none;
|
|
||||||
-o-user-select: none;
|
-o-user-select: none;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* set the dollar sign to non-selectable */
|
/* set the dollar sign to non-selectable */
|
||||||
.gp {
|
.gp {
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .highlight */
|
} /* .highlight */
|
||||||
|
|
||||||
code {
|
code {
|
||||||
-webkit-hyphens: none;
|
-webkit-hyphens: none;
|
||||||
-ms-hyphens: none;
|
|
||||||
-moz-hyphens: none;
|
|
||||||
hyphens: none;
|
hyphens: none;
|
||||||
|
|
||||||
&.highlighter-rouge {
|
&.highlighter-rouge {
|
||||||
@ -152,16 +149,15 @@ td.rouge-code {
|
|||||||
border-bottom: none !important;
|
border-bottom: none !important;
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Hide line numbers for default, console, and terminal code snippets */
|
/* Hide line numbers for default, console, and terminal code snippets */
|
||||||
div {
|
div {
|
||||||
&[class^='highlighter-rouge'],
|
&[class^="highlighter-rouge"],
|
||||||
|
&.nolineno,
|
||||||
&.language-plaintext.highlighter-rouge,
|
&.language-plaintext.highlighter-rouge,
|
||||||
&.language-console.highlighter-rouge,
|
&.language-console.highlighter-rouge,
|
||||||
&.language-terminal.highlighter-rouge,
|
&.language-terminal.highlighter-rouge {
|
||||||
&.nolineno {
|
|
||||||
pre.lineno {
|
pre.lineno {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@ -252,6 +248,10 @@ div {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
&:not([timeout]):hover {
|
&:not([timeout]):hover {
|
||||||
background-color: rgba(128, 128, 128, 0.37);
|
background-color: rgba(128, 128, 128, 0.37);
|
||||||
|
|
||||||
@ -259,18 +259,12 @@ div {
|
|||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:focus {
|
|
||||||
outline: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media all and (max-width: 576px) {
|
@media all and (max-width: 576px) {
|
||||||
.post-content {
|
.post-content {
|
||||||
> div[class^='language-'] {
|
> div[class^="language-"] {
|
||||||
@include ml-mr(-1.25rem);
|
@include ml-mr(-1.25rem);
|
||||||
|
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
|
@ -13,20 +13,16 @@ $sidebar-width-large: 350px !default; /* screen width: >= 1650px */
|
|||||||
$tab-count: 5 !default; /* backward compatible (version <= 4.0.2) */
|
$tab-count: 5 !default; /* backward compatible (version <= 4.0.2) */
|
||||||
$tab-height: 3rem !default;
|
$tab-height: 3rem !default;
|
||||||
$tab-cursor-height: 1.6rem !default;
|
$tab-cursor-height: 1.6rem !default;
|
||||||
|
|
||||||
$cursor-width: 2px !default; /* the cursor width of the selected tab */
|
$cursor-width: 2px !default; /* the cursor width of the selected tab */
|
||||||
|
|
||||||
/* other framework sizes */
|
/* other framework sizes */
|
||||||
|
|
||||||
$topbar-height: 3rem !default;
|
$topbar-height: 3rem !default;
|
||||||
|
|
||||||
$search-max-width: 210px !default;
|
$search-max-width: 210px !default;
|
||||||
|
|
||||||
$footer-height: 5rem !default;
|
$footer-height: 5rem !default;
|
||||||
$footer-height-mobile: 6rem !default; /* screen width: <= 576px */
|
$footer-height-mobile: 6rem !default; /* screen width: <= 576px */
|
||||||
|
|
||||||
$main-content-max-width: 1250px !default;
|
$main-content-max-width: 1250px !default;
|
||||||
|
|
||||||
$bottom-min-height: 35rem !default;
|
$bottom-min-height: 35rem !default;
|
||||||
|
|
||||||
/* syntax highlight */
|
/* syntax highlight */
|
||||||
|
@ -3,7 +3,24 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
@mixin dark-syntax {
|
@mixin dark-syntax {
|
||||||
|
--highlight-bg-color: #252525;
|
||||||
|
--highlighter-rouge-color: #de6b18;
|
||||||
|
--highlight-lineno-color: #6c6c6d;
|
||||||
|
--inline-code-bg: #272822;
|
||||||
|
--code-header-text-color: #6a6a6a;
|
||||||
|
--code-header-muted-color: rgb(60, 60, 60);
|
||||||
|
--code-header-icon-color: rgb(86, 86, 86);
|
||||||
|
--clipboard-checked-color: #2bcc2b;
|
||||||
|
--filepath-text-color: #bdbdbd;
|
||||||
|
|
||||||
|
pre { color: #bfbfbf; } /* override Bootstrap */
|
||||||
|
|
||||||
|
.highlight {
|
||||||
|
.gp { color: #818c96; }
|
||||||
|
}
|
||||||
|
|
||||||
/* syntax highlight colors from https://raw.githubusercontent.com/jwarby/pygments-css/master/monokai.css */
|
/* syntax highlight colors from https://raw.githubusercontent.com/jwarby/pygments-css/master/monokai.css */
|
||||||
|
|
||||||
.highlight pre { background-color: var(--highlight-bg-color); }
|
.highlight pre { background-color: var(--highlight-bg-color); }
|
||||||
.highlight .hll { background-color: var(--highlight-bg-color); }
|
.highlight .hll { background-color: var(--highlight-bg-color); }
|
||||||
.highlight .c { color: #75715e; } /* Comment */
|
.highlight .c { color: #75715e; } /* Comment */
|
||||||
@ -67,22 +84,4 @@
|
|||||||
.highlight .gu { color: #75715e; } /* Generic.Subheading & Diff Unified/Comment? */
|
.highlight .gu { color: #75715e; } /* Generic.Subheading & Diff Unified/Comment? */
|
||||||
.highlight .gd { color: #f92672; background-color: #561c08; } /* Generic.Deleted & Diff Deleted */
|
.highlight .gd { color: #f92672; background-color: #561c08; } /* Generic.Deleted & Diff Deleted */
|
||||||
.highlight .gi { color: #a6e22e; background-color: #0b5858; } /* Generic.Inserted & Diff Inserted */
|
.highlight .gi { color: #a6e22e; background-color: #0b5858; } /* Generic.Inserted & Diff Inserted */
|
||||||
|
|
||||||
/* ----- custom styles ------ */
|
|
||||||
|
|
||||||
--highlight-bg-color: #252525;
|
|
||||||
--highlighter-rouge-color: #de6b18;
|
|
||||||
--highlight-lineno-color: #6c6c6d;
|
|
||||||
--inline-code-bg: #272822;
|
|
||||||
--code-header-text-color: #6a6a6a;
|
|
||||||
--code-header-muted-color: rgb(60 60 60);
|
|
||||||
--code-header-icon-color: rgb(86 86 86);
|
|
||||||
--clipboard-checked-color: #2bcc2b;
|
|
||||||
--filepath-text-color: #bdbdbd;
|
|
||||||
|
|
||||||
.highlight {
|
|
||||||
.gp { color: #818c96; }
|
|
||||||
}
|
|
||||||
|
|
||||||
pre { color: #bfbfbf; } /* override Bootstrap */
|
|
||||||
}
|
}
|
||||||
|
@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
@mixin dark-scheme {
|
@mixin dark-scheme {
|
||||||
/* Framework color */
|
/* Framework color */
|
||||||
--body-bg: var(--main-wrapper-bg);
|
--body-bg: var(--main-bg);
|
||||||
--mask-bg: rgb(68, 69, 70);
|
--mask-bg: rgb(68, 69, 70);
|
||||||
--main-wrapper-bg: rgb(27, 27, 30);
|
--main-bg: rgb(27, 27, 30);
|
||||||
--main-border-color: rgb(44, 45, 45);
|
--main-border-color: rgb(44, 45, 45);
|
||||||
|
|
||||||
/* Common color */
|
/* Common color */
|
||||||
@ -21,18 +21,18 @@
|
|||||||
--btn-border-color: rgb(63, 65, 68);
|
--btn-border-color: rgb(63, 65, 68);
|
||||||
--btn-backtotop-color: var(--text-color);
|
--btn-backtotop-color: var(--text-color);
|
||||||
--btn-backtotop-border-color: var(--btn-border-color);
|
--btn-backtotop-border-color: var(--btn-border-color);
|
||||||
--btn-box-shadow: var(--main-wrapper-bg);
|
--btn-box-shadow: var(--main-bg);
|
||||||
--card-header-bg: rgb(51, 50, 50);
|
--card-header-bg: rgb(51, 50, 50);
|
||||||
--label-color: rgb(108, 117, 125);
|
--label-color: rgb(108, 117, 125);
|
||||||
--checkbox-color: rgb(118 120 121);
|
--checkbox-color: rgb(118, 120, 121);
|
||||||
--checkbox-checked-color: var(--link-color);
|
--checkbox-checked-color: var(--link-color);
|
||||||
|
|
||||||
/* Sidebar */
|
/* Sidebar */
|
||||||
--sidebar-bg: radial-gradient(circle, #242424 0%, #1d1f27 100%);
|
--sidebar-bg: radial-gradient(circle, #242424 0%, #1d1f27 100%);
|
||||||
--sidebar-muted-color: #6d6c6b;
|
--sidebar-muted-color: #6d6c6b;
|
||||||
--sidebar-active-color: rgb(255 255 255 / 80%);
|
--sidebar-active-color: rgb(255, 255, 255, 0.8);
|
||||||
--nav-cursor-color: rgb(183, 182, 182);
|
--nav-cursor-color: rgb(183, 182, 182);
|
||||||
--sidebar-btn-bg: rgb(117 116 116 / 20%);
|
--sidebar-btn-bg: rgb(117, 116, 116, 0.2);
|
||||||
|
|
||||||
/* Topbar */
|
/* Topbar */
|
||||||
--topbar-text-color: var(--text-color);
|
--topbar-text-color: var(--text-color);
|
||||||
@ -48,7 +48,7 @@
|
|||||||
--btn-paginator-hover-color: rgb(64, 65, 66);
|
--btn-paginator-hover-color: rgb(64, 65, 66);
|
||||||
--btn-paginator-border-color: var(--btn-border-color);
|
--btn-paginator-border-color: var(--btn-border-color);
|
||||||
--btn-text-color: var(--text-color);
|
--btn-text-color: var(--text-color);
|
||||||
--pin-bg: rgb(34 35 37);
|
--pin-bg: rgb(34, 35, 37);
|
||||||
--pin-color: inherit;
|
--pin-color: inherit;
|
||||||
|
|
||||||
/* Posts */
|
/* Posts */
|
||||||
@ -64,19 +64,19 @@
|
|||||||
--relate-post-date: var(--text-muted-color);
|
--relate-post-date: var(--text-muted-color);
|
||||||
--card-bg: rgb(39, 40, 43);
|
--card-bg: rgb(39, 40, 43);
|
||||||
--card-border-color: rgb(53, 53, 60);
|
--card-border-color: rgb(53, 53, 60);
|
||||||
--card-box-shadow: var(--main-wrapper-bg);
|
--card-box-shadow: var(--main-bg);
|
||||||
--preview-img-bg: radial-gradient(circle, rgb(22 22 24) 0%, rgb(32 32 32) 100%);
|
--preview-img-bg: radial-gradient(circle, rgb(22, 22, 24) 0%, rgb(32, 32, 32) 100%);
|
||||||
--kbd-wrap-color: #6a6a6a;
|
--kbd-wrap-color: #6a6a6a;
|
||||||
--kbd-text-color: #d3d3d3;
|
--kbd-text-color: #d3d3d3;
|
||||||
--kbd-bg-color: #242424;
|
--kbd-bg-color: #242424;
|
||||||
--prompt-text-color: rgb(216 212 212 / 75%);
|
--prompt-text-color: rgb(216, 212, 212, 0.75);
|
||||||
--prompt-tip-bg: rgba(77, 187, 95, 0.2);
|
--prompt-tip-bg: rgba(77, 187, 95, 0.2);
|
||||||
--prompt-tip-icon-color: rgb(5 223 5 / 68%);
|
--prompt-tip-icon-color: rgb(5, 223, 5, 0.68);
|
||||||
--prompt-info-bg: rgb(7 59 104 / 80%);
|
--prompt-info-bg: rgb(7, 59, 104, 0.8);
|
||||||
--prompt-info-icon-color: #0075d1;
|
--prompt-info-icon-color: #0075d1;
|
||||||
--prompt-warning-bg: rgb(90 69 3 / 95%);
|
--prompt-warning-bg: rgb(90, 69, 3, 0.95);
|
||||||
--prompt-warning-icon-color: rgb(255 165 0 / 80%);
|
--prompt-warning-icon-color: rgb(255, 165, 0, 0.8);
|
||||||
--prompt-danger-bg: rgb(86 28 8 / 80%);
|
--prompt-danger-bg: rgb(86, 28, 8, 0.8);
|
||||||
--prompt-danger-icon-color: #cd0202;
|
--prompt-danger-icon-color: #cd0202;
|
||||||
|
|
||||||
/* tags */
|
/* tags */
|
||||||
@ -96,6 +96,7 @@
|
|||||||
--timeline-year-dot-color: var(--timeline-color);
|
--timeline-year-dot-color: var(--timeline-color);
|
||||||
|
|
||||||
.post img[data-src] {
|
.post img[data-src] {
|
||||||
|
-webkit-filter: brightness(95%);
|
||||||
filter: brightness(95%);
|
filter: brightness(95%);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -104,11 +105,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* posts' toc, override BS */
|
/* posts' toc, override BS */
|
||||||
nav[data-toggle=toc] .nav-link.active,
|
nav[data-toggle="toc"] .nav-link.active,
|
||||||
nav[data-toggle=toc] .nav-link.active:focus,
|
nav[data-toggle="toc"] .nav-link.active:focus,
|
||||||
nav[data-toggle=toc] .nav-link.active:hover,
|
nav[data-toggle="toc"] .nav-link.active:hover,
|
||||||
nav[data-toggle=toc] .nav > li > a:focus,
|
nav[data-toggle="toc"] .nav > li > a:focus,
|
||||||
nav[data-toggle=toc] .nav > li > a:hover {
|
nav[data-toggle="toc"] .nav > li > a:hover {
|
||||||
color: var(--toc-highlight) !important;
|
color: var(--toc-highlight) !important;
|
||||||
border-left-color: var(--toc-highlight) !important;
|
border-left-color: var(--toc-highlight) !important;
|
||||||
}
|
}
|
||||||
@ -150,8 +151,7 @@
|
|||||||
|
|
||||||
color-scheme: dark;
|
color-scheme: dark;
|
||||||
|
|
||||||
#disqus_thread {
|
#disqus_thread { /* stylelint-disable-line selector-id-pattern */
|
||||||
color-scheme: none;
|
color-scheme: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* dark-scheme */
|
} /* dark-scheme */
|
||||||
|
@ -76,9 +76,8 @@
|
|||||||
--code-header-icon-color: #d1d1d1;
|
--code-header-icon-color: #d1d1d1;
|
||||||
--clipboard-checked-color: #43c743;
|
--clipboard-checked-color: #43c743;
|
||||||
|
|
||||||
[class^=prompt-] {
|
[class^="prompt-"] {
|
||||||
--inline-code-bg: #fbfafa;
|
--inline-code-bg: #fbfafa;
|
||||||
--highlighter-rouge-color: rgb(82 82 82);
|
--highlighter-rouge-color: rgb(82, 82, 82);
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* light-syntax */
|
} /* light-syntax */
|
||||||
|
@ -6,18 +6,18 @@
|
|||||||
/* Framework color */
|
/* Framework color */
|
||||||
--body-bg: #fafafa;
|
--body-bg: #fafafa;
|
||||||
--mask-bg: #c1c3c5;
|
--mask-bg: #c1c3c5;
|
||||||
--main-wrapper-bg: white;
|
--main-bg: white;
|
||||||
--main-border-color: #f3f3f3;
|
--main-border-color: #f3f3f3;
|
||||||
|
|
||||||
/* Common color */
|
/* Common color */
|
||||||
--text-color: #34343c;
|
--text-color: #34343c;
|
||||||
--text-muted-color: gray;
|
--text-muted-color: gray;
|
||||||
--heading-color: black;
|
--heading-color: black;
|
||||||
--blockquote-border-color: #eee;
|
--blockquote-border-color: #eeeeee;
|
||||||
--blockquote-text-color: #9a9a9a;
|
--blockquote-text-color: #9a9a9a;
|
||||||
--link-color: #2a408e;
|
--link-color: #2a408e;
|
||||||
--link-underline-color: #dee2e6;
|
--link-underline-color: #dee2e6;
|
||||||
--button-bg: #fff;
|
--button-bg: #ffffff;
|
||||||
--btn-border-color: #e9ecef;
|
--btn-border-color: #e9ecef;
|
||||||
--btn-backtotop-color: #686868;
|
--btn-backtotop-color: #686868;
|
||||||
--btn-backtotop-border-color: #f1f1f1;
|
--btn-backtotop-border-color: #f1f1f1;
|
||||||
@ -35,8 +35,8 @@
|
|||||||
/* Topbar */
|
/* Topbar */
|
||||||
--topbar-text-color: rgb(78, 78, 78);
|
--topbar-text-color: rgb(78, 78, 78);
|
||||||
--topbar-wrapper-bg: white;
|
--topbar-wrapper-bg: white;
|
||||||
--search-wrapper-bg: rgb(245 245 245 / 50%);
|
--search-wrapper-bg: rgb(245, 245, 245, 0.5);
|
||||||
--search-wrapper-border-color: rgb(245 245 245);
|
--search-wrapper-border-color: rgb(245, 245, 245);
|
||||||
--search-tag-bg: #f8f9fa;
|
--search-tag-bg: #f8f9fa;
|
||||||
--search-icon-color: #c2c6cc;
|
--search-icon-color: #c2c6cc;
|
||||||
--input-focus-border-color: var(--btn-border-color);
|
--input-focus-border-color: var(--btn-border-color);
|
||||||
@ -53,7 +53,7 @@
|
|||||||
/* Posts */
|
/* Posts */
|
||||||
--btn-share-hover-color: var(--link-color);
|
--btn-share-hover-color: var(--link-color);
|
||||||
--card-border-color: #f1f1f1;
|
--card-border-color: #f1f1f1;
|
||||||
--card-box-shadow: rgba(234, 234, 234, 0.7686274509803922);
|
--card-box-shadow: rgba(234, 234, 234, 0.76);
|
||||||
--label-color: #616161;
|
--label-color: #616161;
|
||||||
--relate-post-date: rgba(30, 55, 70, 0.4);
|
--relate-post-date: rgba(30, 55, 70, 0.4);
|
||||||
--footnote-target-bg: lightcyan;
|
--footnote-target-bg: lightcyan;
|
||||||
@ -64,22 +64,22 @@
|
|||||||
--tb-odd-bg: #fbfcfd;
|
--tb-odd-bg: #fbfcfd;
|
||||||
--tb-border-color: #eaeaea;
|
--tb-border-color: #eaeaea;
|
||||||
--dash-color: silver;
|
--dash-color: silver;
|
||||||
--preview-img-bg: radial-gradient(circle, rgb(255 255 255) 0%, rgb(249 249 249) 100%);
|
--preview-img-bg: radial-gradient(circle, rgb(255, 255, 255) 0%, rgb(249, 249, 249) 100%);
|
||||||
--kbd-wrap-color: #bdbdbd;
|
--kbd-wrap-color: #bdbdbd;
|
||||||
--kbd-text-color: var(--text-color);
|
--kbd-text-color: var(--text-color);
|
||||||
--kbd-bg-color: white;
|
--kbd-bg-color: white;
|
||||||
--prompt-text-color: rgb(46 46 46 / 77%);
|
--prompt-text-color: rgb(46, 46, 46, 0.77);
|
||||||
--prompt-tip-bg: rgb(123 247 144 / 20%);
|
--prompt-tip-bg: rgb(123, 247, 144, 0.2);
|
||||||
--prompt-tip-icon-color: #03b303;
|
--prompt-tip-icon-color: #03b303;
|
||||||
--prompt-info-bg: #e1f5fe;
|
--prompt-info-bg: #e1f5fe;
|
||||||
--prompt-info-icon-color: #0070cb;
|
--prompt-info-icon-color: #0070cb;
|
||||||
--prompt-warning-bg: rgb(255 243 205);
|
--prompt-warning-bg: rgb(255, 243, 205);
|
||||||
--prompt-warning-icon-color: #ef9c03;
|
--prompt-warning-icon-color: #ef9c03;
|
||||||
--prompt-danger-bg: rgb(248 215 218 / 56%);
|
--prompt-danger-bg: rgb(248, 215, 218, 0.56);
|
||||||
--prompt-danger-icon-color: #df3c30;
|
--prompt-danger-icon-color: #df3c30;
|
||||||
|
|
||||||
[class^=prompt-] {
|
[class^="prompt-"] {
|
||||||
--link-underline-color: rgb(219 216 216);
|
--link-underline-color: rgb(219, 216, 216);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Categories */
|
/* Categories */
|
||||||
@ -90,5 +90,4 @@
|
|||||||
--timeline-color: rgba(0, 0, 0, 0.075);
|
--timeline-color: rgba(0, 0, 0, 0.075);
|
||||||
--timeline-node-bg: #c2c6cc;
|
--timeline-node-bg: #c2c6cc;
|
||||||
--timeline-year-dot-color: #ffffff;
|
--timeline-year-dot-color: #ffffff;
|
||||||
|
|
||||||
} /* light-scheme */
|
} /* light-scheme */
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*!
|
/*!
|
||||||
* The styles for Jekyll theme Chirpy
|
* The styles for Jekyll theme Chirpy
|
||||||
*
|
*
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
|
@ -41,8 +41,6 @@
|
|||||||
content: "";
|
content: "";
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
position: relative;
|
position: relative;
|
||||||
-webkit-border-radius: 50%;
|
|
||||||
-moz-border-radius: 50%;
|
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
height: 12px;
|
height: 12px;
|
||||||
@ -53,7 +51,6 @@
|
|||||||
box-shadow: 0 0 2px 0 #c2c6cc;
|
box-shadow: 0 0 2px 0 #c2c6cc;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
@ -65,8 +62,8 @@
|
|||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
|
|
||||||
&:nth-child(odd) {
|
&:nth-child(odd) {
|
||||||
background-color: var(--main-wrapper-bg, #fff);
|
background-color: var(--main-bg, #ffffff);
|
||||||
background-image: linear-gradient(to left, #fff, #fbfbfb, #fbfbfb, #fbfbfb, #fff);
|
background-image: linear-gradient(to left, #ffffff, #fbfbfb, #fbfbfb, #fbfbfb, #ffffff);
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
@ -81,7 +78,6 @@
|
|||||||
&:last-child li:last-child::before {
|
&:last-child li:last-child::before {
|
||||||
height: 1.5rem;
|
height: 1.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* #archives ul */
|
} /* #archives ul */
|
||||||
|
|
||||||
.date {
|
.date {
|
||||||
@ -97,8 +93,7 @@
|
|||||||
|
|
||||||
&.day {
|
&.day {
|
||||||
font-size: 85%;
|
font-size: 85%;
|
||||||
font-family: 'Lato', sans-serif;
|
font-family: Lato, sans-serif;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -117,8 +112,6 @@
|
|||||||
content: "";
|
content: "";
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
position: relative;
|
position: relative;
|
||||||
-webkit-border-radius: 50%;
|
|
||||||
-moz-border-radius: 50%;
|
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
width: 8px;
|
width: 8px;
|
||||||
height: 8px;
|
height: 8px;
|
||||||
@ -130,8 +123,7 @@
|
|||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} /* #archives */
|
||||||
} // #archives
|
|
||||||
|
|
||||||
@media all and (max-width: 576px) {
|
@media all and (max-width: 576px) {
|
||||||
#archives {
|
#archives {
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
i {
|
i {
|
||||||
@extend %category-icon-color;
|
@extend %category-icon-color;
|
||||||
|
|
||||||
font-size: 86%; // fontawesome icons
|
font-size: 86%; /* fontawesome icons */
|
||||||
}
|
}
|
||||||
|
|
||||||
.list-group-item {
|
.list-group-item {
|
||||||
@ -28,10 +28,8 @@
|
|||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
} /* .categories */
|
||||||
} // .categories
|
|
||||||
|
|
||||||
.category-trigger {
|
.category-trigger {
|
||||||
width: 1.7rem;
|
width: 1.7rem;
|
||||||
@ -40,28 +38,29 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
color: #6c757d !important;
|
color: #6c757d !important;
|
||||||
|
|
||||||
|
i {
|
||||||
|
position: relative;
|
||||||
|
height: 0.7rem;
|
||||||
|
width: 1rem;
|
||||||
|
transition: -webkit-transform 300ms ease;
|
||||||
|
transition: transform 300ms ease;
|
||||||
|
transition: transform 300ms ease, -webkit-transform 300ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
i {
|
i {
|
||||||
color: var(--categories-icon-hover-color);
|
color: var(--categories-icon-hover-color);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
i {
|
|
||||||
position: relative;
|
|
||||||
height: 0.7rem;
|
|
||||||
width: 1rem;
|
|
||||||
transition: transform 300ms ease;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (hover: hover) { // only works on desktop
|
@media (hover: hover) { /* only works on desktop */
|
||||||
.category-trigger:hover {
|
.category-trigger:hover {
|
||||||
background-color: var(--categories-hover-bg);
|
background-color: var(--categories-hover-bg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.rotate {
|
.rotate {
|
||||||
-ms-transform: rotate(-90deg); /* IE 9 */
|
-webkit-transform: rotate(-90deg);
|
||||||
-webkit-transform: rotate(-90deg); /* Safari 3-8 */
|
|
||||||
transform: rotate(-90deg);
|
transform: rotate(-90deg);
|
||||||
}
|
}
|
||||||
|
@ -13,8 +13,8 @@
|
|||||||
line-height: 1.5rem;
|
line-height: 1.5rem;
|
||||||
padding: 0.6rem 0;
|
padding: 0.6rem 0;
|
||||||
|
|
||||||
&::before { // dot
|
&::before { /* dot */
|
||||||
background: #999;
|
background: #999999;
|
||||||
width: 5px;
|
width: 5px;
|
||||||
height: 5px;
|
height: 5px;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
@ -37,7 +37,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#page-tag h1 > i { // tag icon
|
#page-tag h1 > i { /* tag icon */
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -51,7 +51,7 @@
|
|||||||
a:hover {
|
a:hover {
|
||||||
@extend %link-hover;
|
@extend %link-hover;
|
||||||
|
|
||||||
margin-bottom: -1px; // Avoid jumping
|
margin-bottom: -1px; /* Avoid jumping */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
.pagination {
|
.pagination {
|
||||||
color: var(--btn-patinator-text-color);
|
color: var(--btn-patinator-text-color);
|
||||||
font-family: 'Lato', sans-serif;
|
font-family: Lato, sans-serif;
|
||||||
|
|
||||||
a:hover {
|
a:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
@ -49,9 +49,8 @@
|
|||||||
&:last-child .page-link {
|
&:last-child .page-link {
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
} // .page-item
|
} /* .page-item */
|
||||||
|
} /* .pagination */
|
||||||
} // .pagination
|
|
||||||
|
|
||||||
#post-list {
|
#post-list {
|
||||||
margin-top: 1rem;
|
margin-top: 1rem;
|
||||||
@ -83,6 +82,19 @@
|
|||||||
em {
|
em {
|
||||||
@extend %normal-font-style;
|
@extend %normal-font-style;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.pin {
|
||||||
|
i {
|
||||||
|
-webkit-transform: rotate(45deg);
|
||||||
|
transform: rotate(45deg);
|
||||||
|
padding-left: 3px;
|
||||||
|
color: var(--pin-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
span {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.post-content {
|
.post-content {
|
||||||
@ -100,21 +112,8 @@
|
|||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} /* .post-preview */
|
||||||
.pin {
|
} /* #post-list */
|
||||||
> i {
|
|
||||||
transform: rotate(45deg);
|
|
||||||
padding-left: 3px;
|
|
||||||
color: var(--pin-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
> span {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
} // .post-preview
|
|
||||||
} // #post-list
|
|
||||||
|
|
||||||
/* Hide SideBar and TOC */
|
/* Hide SideBar and TOC */
|
||||||
@media all and (max-width: 830px) {
|
@media all and (max-width: 830px) {
|
||||||
@ -125,9 +124,7 @@
|
|||||||
&:not(:first-child):not(:last-child) {
|
&:not(:first-child):not(:last-child) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -165,15 +162,12 @@
|
|||||||
width: 2rem;
|
width: 2rem;
|
||||||
height: 2rem;
|
height: 2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-index {
|
.page-index {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
} /* .pagination */
|
||||||
} // .pagination
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Panel hidden */
|
/* Panel hidden */
|
||||||
|
@ -26,6 +26,15 @@
|
|||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
img.preview-img {
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 6px;
|
||||||
|
|
||||||
|
&.bg[data-loaded="true"] {
|
||||||
|
background: var(--preview-img-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
h1 + .post-meta {
|
h1 + .post-meta {
|
||||||
span + span::before {
|
span + span::before {
|
||||||
@include dot;
|
@include dot;
|
||||||
@ -40,23 +49,96 @@ h1 + .post-meta {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
img.preview-img {
|
|
||||||
margin: 0;
|
|
||||||
border-radius: 6px;
|
|
||||||
|
|
||||||
&.bg[data-loaded=true] {
|
|
||||||
background: var(--preview-img-bg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.post-tail-wrapper {
|
.post-tail-wrapper {
|
||||||
margin-top: 6rem;
|
margin-top: 6rem;
|
||||||
border-bottom: 1px double var(--main-border-color);
|
border-bottom: 1px double var(--main-border-color);
|
||||||
font-size: 0.85rem;
|
font-size: 0.85rem;
|
||||||
|
|
||||||
|
.post-tail-bottom a {
|
||||||
|
color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.license-wrapper {
|
||||||
|
line-height: 1.2rem;
|
||||||
|
|
||||||
|
> a {
|
||||||
|
color: var(--text-color);
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
@extend %link-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
span:last-child {
|
||||||
|
font-size: 0.85rem;
|
||||||
|
}
|
||||||
|
} /* .license-wrapper */
|
||||||
|
|
||||||
.post-meta a:not(:hover) {
|
.post-meta a:not(:hover) {
|
||||||
@extend %link-underline;
|
@extend %link-underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.share-wrapper {
|
||||||
|
vertical-align: middle;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
|
||||||
|
.share-icons {
|
||||||
|
font-size: 1.2rem;
|
||||||
|
|
||||||
|
> i {
|
||||||
|
position: relative;
|
||||||
|
bottom: 1px;
|
||||||
|
|
||||||
|
@extend %cursor-pointer;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
@extend %btn-share-hovor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
&:not(:last-child) {
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
>i {
|
||||||
|
@extend %btn-share-hovor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fab {
|
||||||
|
&.fa-twitter {
|
||||||
|
@include btn-sharing-color(rgba(29, 161, 242, 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fa-facebook-square {
|
||||||
|
@include btn-sharing-color(rgb(66, 95, 156));
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fa-telegram {
|
||||||
|
@include btn-sharing-color(rgb(39, 159, 217));
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fa-linkedin {
|
||||||
|
@include btn-sharing-color(rgb(0, 119, 181));
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fa-weibo {
|
||||||
|
@include btn-sharing-color(rgb(229, 20, 43));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} /* .share-icons */
|
||||||
|
|
||||||
|
.fas.fa-link {
|
||||||
|
@include btn-sharing-color(rgb(171, 171, 171));
|
||||||
|
}
|
||||||
|
} /* .share-wrapper */
|
||||||
}
|
}
|
||||||
|
|
||||||
.post-tags {
|
.post-tags {
|
||||||
@ -74,7 +156,7 @@ img.preview-img {
|
|||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: #2a408e;
|
background: #2a408e;
|
||||||
color: #fff;
|
color: #ffffff;
|
||||||
border-color: #2a408e;
|
border-color: #2a408e;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,15 +203,29 @@ img.preview-img {
|
|||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
white-space: normal;
|
white-space: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* .post-navigation */
|
} /* .post-navigation */
|
||||||
|
|
||||||
|
@-webkit-keyframes fade-up {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
position: relative;
|
||||||
|
top: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
position: relative;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes fade-up {
|
@keyframes fade-up {
|
||||||
from {
|
from {
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
top: 2rem;
|
top: 2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -143,19 +239,23 @@ img.preview-img {
|
|||||||
position: sticky;
|
position: sticky;
|
||||||
top: 4rem;
|
top: 4rem;
|
||||||
transition: top 0.2s ease-in-out;
|
transition: top 0.2s ease-in-out;
|
||||||
|
-webkit-animation: fade-up 0.8s;
|
||||||
animation: fade-up 0.8s;
|
animation: fade-up 0.8s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#toc li a {
|
#toc {
|
||||||
font-size: 0.8rem;
|
ul.nav.navbar-nav {
|
||||||
|
margin: 0.5rem 0;
|
||||||
|
padding: 0;
|
||||||
|
|
||||||
&.nav-link:not(.active) {
|
li {
|
||||||
color: inherit;
|
padding-top: 2px;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
nav[data-toggle="toc"] {
|
||||||
|
|
||||||
nav[data-toggle=toc] {
|
|
||||||
.nav {
|
.nav {
|
||||||
.nav > li > a.active {
|
.nav > li > a.active {
|
||||||
font-weight: 600 !important;
|
font-weight: 600 !important;
|
||||||
@ -176,25 +276,6 @@ nav[data-toggle=toc] {
|
|||||||
color: var(--relate-post-date);
|
color: var(--relate-post-date);
|
||||||
}
|
}
|
||||||
|
|
||||||
.card {
|
|
||||||
border-color: var(--card-border-color);
|
|
||||||
background-color: var(--card-bg);
|
|
||||||
box-shadow: 0 0 5px 0 var(--card-box-shadow);
|
|
||||||
-webkit-transition: all 0.3s ease-in-out;
|
|
||||||
-moz-transition: all 0.3s ease-in-out;
|
|
||||||
transition: all 0.3s ease-in-out;
|
|
||||||
|
|
||||||
h3 {
|
|
||||||
@extend %text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
-webkit-transform: translate3d(0, -3px, 0);
|
|
||||||
transform: translate3d(0, -3px, 0);
|
|
||||||
box-shadow: 0 10px 15px -4px rgba(0, 0, 0, 0.15);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
p {
|
p {
|
||||||
font-size: 0.9rem;
|
font-size: 0.9rem;
|
||||||
margin-bottom: 0.5rem;
|
margin-bottom: 0.5rem;
|
||||||
@ -209,20 +290,20 @@ nav[data-toggle=toc] {
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
ul {
|
.card {
|
||||||
list-style-type: none;
|
border-color: var(--card-border-color);
|
||||||
padding-inline-start: 1.5rem;
|
background-color: var(--card-bg);
|
||||||
|
box-shadow: 0 0 5px 0 var(--card-box-shadow);
|
||||||
|
transition: all 0.3s ease-in-out;
|
||||||
|
|
||||||
> li::before {
|
h3 {
|
||||||
background: #c2c9d4;
|
@extend %text-color;
|
||||||
width: 5px;
|
}
|
||||||
height: 5px;
|
|
||||||
border-radius: 1px;
|
&:hover {
|
||||||
display: block;
|
-webkit-transform: translate3d(0, -3px, 0);
|
||||||
content: "";
|
transform: translate3d(0, -3px, 0);
|
||||||
position: relative;
|
box-shadow: 0 10px 15px -4px rgba(0, 0, 0, 0.15);
|
||||||
top: 1rem;
|
|
||||||
right: 1rem;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -234,82 +315,15 @@ nav[data-toggle=toc] {
|
|||||||
margin-bottom: 2rem;
|
margin-bottom: 2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
#disqus_thread {
|
#disqus_thread { /* stylelint-disable-line selector-id-pattern */
|
||||||
min-height: 8.5rem;
|
min-height: 8.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.post-tail-bottom a {
|
|
||||||
color: inherit;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
%btn-share-hovor {
|
%btn-share-hovor {
|
||||||
color: var(--btn-share-hover-color) !important;
|
color: var(--btn-share-hover-color) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.share-wrapper {
|
|
||||||
vertical-align: middle;
|
|
||||||
user-select: none;
|
|
||||||
|
|
||||||
.share-icons {
|
|
||||||
font-size: 1.2rem;
|
|
||||||
|
|
||||||
a {
|
|
||||||
&:not(:last-child) {
|
|
||||||
margin-right: 0.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
> i {
|
|
||||||
@extend %btn-share-hovor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
> i {
|
|
||||||
position: relative;
|
|
||||||
bottom: 1px;
|
|
||||||
|
|
||||||
@extend %cursor-pointer;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
@extend %btn-share-hovor;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.fab {
|
|
||||||
&.fa-twitter {
|
|
||||||
@include btn-sharing-color(rgba(29, 161, 242, 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
&.fa-facebook-square {
|
|
||||||
@include btn-sharing-color(rgb(66, 95, 156));
|
|
||||||
}
|
|
||||||
|
|
||||||
&.fa-telegram {
|
|
||||||
@include btn-sharing-color(rgb(39, 159, 217));
|
|
||||||
}
|
|
||||||
|
|
||||||
&.fa-linkedin {
|
|
||||||
@include btn-sharing-color(rgb(0, 119, 181));
|
|
||||||
}
|
|
||||||
|
|
||||||
&.fa-weibo {
|
|
||||||
@include btn-sharing-color(rgb(229, 20, 43));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
} /* .share-icons */
|
|
||||||
|
|
||||||
.fas.fa-link {
|
|
||||||
@include btn-sharing-color(rgb(171, 171, 171));
|
|
||||||
}
|
|
||||||
|
|
||||||
} /* .share-wrapper */
|
|
||||||
|
|
||||||
.share-label {
|
.share-label {
|
||||||
@include label(inherit, 400, inherit);
|
@include label(inherit, 400, inherit);
|
||||||
|
|
||||||
@ -318,30 +332,12 @@ nav[data-toggle=toc] {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.license-wrapper {
|
|
||||||
line-height: 1.2rem;
|
|
||||||
|
|
||||||
> a {
|
|
||||||
color: var(--text-color);
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
@extend %link-hover;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
span:last-child {
|
|
||||||
font-size: 0.85rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
} /* .license-wrapper */
|
|
||||||
|
|
||||||
@media all and (max-width: 576px) {
|
@media all and (max-width: 576px) {
|
||||||
.preview-img[data-src] {
|
.preview-img[data-src] {
|
||||||
margin-top: 2.2rem;
|
margin-top: 2.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.post-tail-bottom {
|
.post-tail-bottom {
|
||||||
-ms-flex-wrap: wrap-reverse !important;
|
|
||||||
flex-wrap: wrap-reverse !important;
|
flex-wrap: wrap-reverse !important;
|
||||||
|
|
||||||
> div:first-child {
|
> div:first-child {
|
||||||
|
@ -14,6 +14,6 @@
|
|||||||
span {
|
span {
|
||||||
margin-left: 0.6em;
|
margin-left: 0.6em;
|
||||||
font-size: 0.7em;
|
font-size: 0.7em;
|
||||||
font-family: 'Oswald', sans-serif;
|
font-family: Oswald, sans-serif;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,4 +3,3 @@ layout: archives
|
|||||||
icon: fas fa-archive
|
icon: fas fa-archive
|
||||||
order: 3
|
order: 3
|
||||||
---
|
---
|
||||||
|
|
||||||
|
@ -9,8 +9,6 @@ redirect_from:
|
|||||||
- /posts/
|
- /posts/
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
|
||||||
|
|
||||||
<div class="lead">
|
<div class="lead">
|
||||||
<p>{{site.data.locales[lang].not_found.statment }}</p>
|
<p>{{site.data.locales[site.lang].not_found.statment }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -12,7 +12,7 @@ swcache: true
|
|||||||
"tags": {{ post.tags | join: ', ' | jsonify }},
|
"tags": {{ post.tags | join: ', ' | jsonify }},
|
||||||
"date": "{{ post.date }}",
|
"date": "{{ post.date }}",
|
||||||
{% include no-linenos.html content=post.content %}
|
{% include no-linenos.html content=post.content %}
|
||||||
"snippet": {{ content | strip_html | strip_newlines | jsonify }}
|
"snippet": {{ content | strip_html | strip_newlines | truncate: 200 | jsonify }}
|
||||||
}{% unless forloop.last %},{% endunless %}
|
}{% unless forloop.last %},{% endunless %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
]
|
]
|
||||||
|
@ -5,7 +5,6 @@ layout: compress
|
|||||||
---
|
---
|
||||||
|
|
||||||
const resource = [
|
const resource = [
|
||||||
|
|
||||||
/* --- CSS --- */
|
/* --- CSS --- */
|
||||||
'{{ "/assets/css/style.css" | relative_url }}',
|
'{{ "/assets/css/style.css" | relative_url }}',
|
||||||
|
|
||||||
@ -16,6 +15,7 @@ const resource = [
|
|||||||
/* --- HTML --- */
|
/* --- HTML --- */
|
||||||
'{{ "/index.html" | relative_url }}',
|
'{{ "/index.html" | relative_url }}',
|
||||||
'{{ "/404.html" | relative_url }}',
|
'{{ "/404.html" | relative_url }}',
|
||||||
|
|
||||||
{% for tab in site.tabs %}
|
{% for tab in site.tabs %}
|
||||||
'{{ tab.url | relative_url }}',
|
'{{ tab.url | relative_url }}',
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
@ -25,7 +25,6 @@ const resource = [
|
|||||||
{% for file in cache_list %}
|
{% for file in cache_list %}
|
||||||
'{{ file.path | relative_url }}'{%- unless forloop.last -%},{%- endunless -%}
|
'{{ file.path | relative_url }}'{%- unless forloop.last -%},{%- endunless -%}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
/* The request url with below domain will be cached */
|
/* The request url with below domain will be cached */
|
||||||
|
4
assets/js/dist/categories.min.js
vendored
4
assets/js/dist/categories.min.js
vendored
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(o=>{const e=$(o.target);let t=e.prop("tagName")==="button".toUpperCase()?e:e.parent();t.blur(),flipMode()})});const ScrollHelper=function(){const o=$("body"),e="data-topbar-visible",t=$("#topbar-wrapper").outerHeight();let l=0,a=!1,r=!1;return{hideTopbar:()=>o.attr(e,!1),showTopbar:()=>o.attr(e,!0),addScrollUpTask:()=>{l+=1,a=a||!0},popScrollUpTask:()=>--l,hasScrollUpTask:()=>0<l,topbarLocked:()=>!0===a,unlockTopbar:()=>a=!1,getTopbarHeight:()=>t,orientationLocked:()=>!0===r,lockOrientation:()=>r=!0,unLockOrientation:()=>r=!1}}();$(function(){const o=$("#sidebar-trigger"),e=$("#search-trigger"),t=$("#search-cancel"),l=$("#main"),a=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let o=0;return{block(){o=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(o)},getOffset(){return o}}}(),p={on(){o.addClass("unloaded"),a.addClass("unloaded"),e.addClass("unloaded"),r.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),r.removeClass("d-flex"),o.removeClass("unloaded"),a.removeClass("unloaded"),e.removeClass("unloaded")}},f=function(){let o=!1;return{on(){o||(d.block(),n.removeClass("unloaded"),l.addClass("unloaded"),o=!0)},off(){o&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),l.removeClass("unloaded"),d.release(),i.val(""),o=!1)},isVisible(){return o}}}();function u(){return t.hasClass("loaded")}e.click(function(){p.on(),f.on(),i.focus()}),t.click(function(){p.off(),f.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?u()?c.removeClass("unloaded"):f.off():(f.on(),u()&&c.addClass("unloaded"))})}),$(function(){var o=function(){const o="sidebar-display";let e=!1;const t=$("body");return{toggle(){!1===e?t.attr(o,""):t.removeAttr(o),e=!e}}}();$("#sidebar-trigger").click(o.toggle),$("#mask").click(o.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const e=$("#search-input"),t=ScrollHelper.getTopbarHeight();let o,l=0;function a(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var o=screen.orientation.type;"landscape-primary"!==o&&"landscape-secondary"!==o||a()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&a()}),$(window).scroll(()=>{o=o||!0}),setInterval(()=>{o&&(!function(){var o=$(this).scrollTop();if(!(Math.abs(l-o)<=t)){if(o>l)ScrollHelper.hideTopbar(),e.is(":focus")&&e.blur();else if(o+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}l=o}}(),o=!1)},250)}),$(function(){var e="div.post>h1:first-of-type";const t=$(e),n=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let l=t.text().trim(),a=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(l)&&(l=l.replace(/[0-9]/g,"").trim()),t.offset().top<$(window).scrollTop()&&n.text(l);let o=new IntersectionObserver(o=>{var e,t;a?(t=$(window).scrollTop(),e=r<t,r=t,t=o[0],e?0===t.intersectionRatio&&n.text(l):1===t.intersectionRatio&&n.text(s)):a=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]});o.observe(document.querySelector(e)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),$(function(){const o=$(".collapse");o.on("hide.bs.collapse",function(){var o="h_"+$(this).attr("id").substring("l_".length);o&&($(`#${o} .far.fa-folder-open`).attr("class","far fa-folder fa-fw"),$(`#${o} i.fas`).addClass("rotate"),$("#"+o).removeClass("hide-border-bottom"))}),o.on("show.bs.collapse",function(){var o="h_"+$(this).attr("id").substring("l_".length);o&&($(`#${o} .far.fa-folder`).attr("class","far fa-folder-open fa-fw"),$(`#${o} i.fas`).removeClass("rotate"),$("#"+o).addClass("hide-border-bottom"))})});
|
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(o=>{o=$(o.target);(o.prop("tagName")==="button".toUpperCase()?o:o.parent()).blur(),flipMode()})});const ScrollHelper=function(){const o=$("body"),e="data-topbar-visible",t=$("#topbar-wrapper").outerHeight();let a=0,r=!1,l=!1;return{hideTopbar:()=>o.attr(e,!1),showTopbar:()=>o.attr(e,!0),addScrollUpTask:()=>{a+=1,r=r||!0},popScrollUpTask:()=>--a,hasScrollUpTask:()=>0<a,topbarLocked:()=>!0===r,unlockTopbar:()=>r=!1,getTopbarHeight:()=>t,orientationLocked:()=>!0===l,lockOrientation:()=>l=!0,unLockOrientation:()=>l=!1}}();$(function(){const o=$("#sidebar-trigger"),e=$("#search-trigger"),t=$("#search-cancel"),a=$("#main"),r=$("#topbar-title"),l=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let o=0;return{block(){o=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(o)},getOffset(){return o}}}(),p={on(){o.addClass("unloaded"),r.addClass("unloaded"),e.addClass("unloaded"),l.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),l.removeClass("d-flex"),o.removeClass("unloaded"),r.removeClass("unloaded"),e.removeClass("unloaded")}},f=function(){let o=!1;return{on(){o||(d.block(),n.removeClass("unloaded"),a.addClass("unloaded"),o=!0)},off(){o&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("unloaded"),d.release(),i.val(""),o=!1)},isVisible(){return o}}}();function u(){return t.hasClass("loaded")}e.click(function(){p.on(),f.on(),i.focus()}),t.click(function(){p.off(),f.off()}),i.focus(function(){l.addClass("input-focus")}),i.focusout(function(){l.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?u()?c.removeClass("unloaded"):f.off():(f.on(),u()&&c.addClass("unloaded"))})}),$(function(){var o=function(){const o="sidebar-display";let e=!1;const t=$("body");return{toggle(){!1===e?t.attr(o,""):t.removeAttr(o),e=!e}}}();$("#sidebar-trigger").click(o.toggle),$("#mask").click(o.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const e=$("#search-input"),t=ScrollHelper.getTopbarHeight();let o,a=0;function r(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var o=screen.orientation.type;"landscape-primary"!==o&&"landscape-secondary"!==o||r()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&r()}),$(window).scroll(()=>{o=o||!0}),setInterval(()=>{o&&(!function(){var o=$(this).scrollTop();if(!(Math.abs(a-o)<=t)){if(o>a)ScrollHelper.hideTopbar(),e.is(":focus")&&e.blur();else if(o+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}a=o}}(),o=!1)},250)}),$(function(){var o="div.post>h1:first-of-type",e=$(o);const n=$("#topbar-title");if(0!==e.length&&!e.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let a=e.text().trim(),r=!1,l=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim()),e.offset().top<$(window).scrollTop()&&n.text(a);new IntersectionObserver(o=>{var e,t;r?(t=$(window).scrollTop(),e=l<t,l=t,t=o[0],e?0===t.intersectionRatio&&n.text(a):1===t.intersectionRatio&&n.text(s)):r=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]}).observe(document.querySelector(o)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),$(function(){var o=$(".collapse");o.on("hide.bs.collapse",function(){var o="h_"+$(this).attr("id").substring("l_".length);o&&($(`#${o} .far.fa-folder-open`).attr("class","far fa-folder fa-fw"),$(`#${o} i.fas`).addClass("rotate"),$("#"+o).removeClass("hide-border-bottom"))}),o.on("show.bs.collapse",function(){var o="h_"+$(this).attr("id").substring("l_".length);o&&($(`#${o} .far.fa-folder`).attr("class","far fa-folder-open fa-fw"),$(`#${o} i.fas`).removeClass("rotate"),$("#"+o).addClass("hide-border-bottom"))})});
|
||||||
|
4
assets/js/dist/commons.min.js
vendored
4
assets/js/dist/commons.min.js
vendored
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(o=>{const e=$(o.target);let t=e.prop("tagName")==="button".toUpperCase()?e:e.parent();t.blur(),flipMode()})});const ScrollHelper=function(){const o=$("body"),e="data-topbar-visible",t=$("#topbar-wrapper").outerHeight();let l=0,r=!1,a=!1;return{hideTopbar:()=>o.attr(e,!1),showTopbar:()=>o.attr(e,!0),addScrollUpTask:()=>{l+=1,r=r||!0},popScrollUpTask:()=>--l,hasScrollUpTask:()=>0<l,topbarLocked:()=>!0===r,unlockTopbar:()=>r=!1,getTopbarHeight:()=>t,orientationLocked:()=>!0===a,lockOrientation:()=>a=!0,unLockOrientation:()=>a=!1}}();$(function(){const o=$("#sidebar-trigger"),e=$("#search-trigger"),t=$("#search-cancel"),l=$("#main"),r=$("#topbar-title"),a=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let o=0;return{block(){o=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(o)},getOffset(){return o}}}(),p={on(){o.addClass("unloaded"),r.addClass("unloaded"),e.addClass("unloaded"),a.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),a.removeClass("d-flex"),o.removeClass("unloaded"),r.removeClass("unloaded"),e.removeClass("unloaded")}},u=function(){let o=!1;return{on(){o||(d.block(),n.removeClass("unloaded"),l.addClass("unloaded"),o=!0)},off(){o&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),l.removeClass("unloaded"),d.release(),i.val(""),o=!1)},isVisible(){return o}}}();function f(){return t.hasClass("loaded")}e.click(function(){p.on(),u.on(),i.focus()}),t.click(function(){p.off(),u.off()}),i.focus(function(){a.addClass("input-focus")}),i.focusout(function(){a.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var o=function(){const o="sidebar-display";let e=!1;const t=$("body");return{toggle(){!1===e?t.attr(o,""):t.removeAttr(o),e=!e}}}();$("#sidebar-trigger").click(o.toggle),$("#mask").click(o.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const e=$("#search-input"),t=ScrollHelper.getTopbarHeight();let o,l=0;function r(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var o=screen.orientation.type;"landscape-primary"!==o&&"landscape-secondary"!==o||r()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&r()}),$(window).scroll(()=>{o=o||!0}),setInterval(()=>{o&&(!function(){var o=$(this).scrollTop();if(!(Math.abs(l-o)<=t)){if(o>l)ScrollHelper.hideTopbar(),e.is(":focus")&&e.blur();else if(o+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}l=o}}(),o=!1)},250)}),$(function(){var e="div.post>h1:first-of-type";const t=$(e),n=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let l=t.text().trim(),r=!1,a=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(l)&&(l=l.replace(/[0-9]/g,"").trim()),t.offset().top<$(window).scrollTop()&&n.text(l);let o=new IntersectionObserver(o=>{var e,t;r?(t=$(window).scrollTop(),e=a<t,a=t,t=o[0],e?0===t.intersectionRatio&&n.text(l):1===t.intersectionRatio&&n.text(s)):r=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]});o.observe(document.querySelector(e)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}});
|
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(o=>{o=$(o.target);(o.prop("tagName")==="button".toUpperCase()?o:o.parent()).blur(),flipMode()})});const ScrollHelper=function(){const o=$("body"),e="data-topbar-visible",t=$("#topbar-wrapper").outerHeight();let l=0,r=!1,a=!1;return{hideTopbar:()=>o.attr(e,!1),showTopbar:()=>o.attr(e,!0),addScrollUpTask:()=>{l+=1,r=r||!0},popScrollUpTask:()=>--l,hasScrollUpTask:()=>0<l,topbarLocked:()=>!0===r,unlockTopbar:()=>r=!1,getTopbarHeight:()=>t,orientationLocked:()=>!0===a,lockOrientation:()=>a=!0,unLockOrientation:()=>a=!1}}();$(function(){const o=$("#sidebar-trigger"),e=$("#search-trigger"),t=$("#search-cancel"),l=$("#main"),r=$("#topbar-title"),a=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let o=0;return{block(){o=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(o)},getOffset(){return o}}}(),p={on(){o.addClass("unloaded"),r.addClass("unloaded"),e.addClass("unloaded"),a.addClass("d-flex"),t.addClass("loaded")},off(){t.removeClass("loaded"),a.removeClass("d-flex"),o.removeClass("unloaded"),r.removeClass("unloaded"),e.removeClass("unloaded")}},u=function(){let o=!1;return{on(){o||(d.block(),n.removeClass("unloaded"),l.addClass("unloaded"),o=!0)},off(){o&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),l.removeClass("unloaded"),d.release(),i.val(""),o=!1)},isVisible(){return o}}}();function f(){return t.hasClass("loaded")}e.click(function(){p.on(),u.on(),i.focus()}),t.click(function(){p.off(),u.off()}),i.focus(function(){a.addClass("input-focus")}),i.focusout(function(){a.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var o=function(){const o="sidebar-display";let e=!1;const t=$("body");return{toggle(){!1===e?t.attr(o,""):t.removeAttr(o),e=!e}}}();$("#sidebar-trigger").click(o.toggle),$("#mask").click(o.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const e=$("#search-input"),t=ScrollHelper.getTopbarHeight();let o,l=0;function r(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var o=screen.orientation.type;"landscape-primary"!==o&&"landscape-secondary"!==o||r()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&r()}),$(window).scroll(()=>{o=o||!0}),setInterval(()=>{o&&(!function(){var o=$(this).scrollTop();if(!(Math.abs(l-o)<=t)){if(o>l)ScrollHelper.hideTopbar(),e.is(":focus")&&e.blur();else if(o+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}l=o}}(),o=!1)},250)}),$(function(){var o="div.post>h1:first-of-type",e=$(o);const n=$("#topbar-title");if(0!==e.length&&!e.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let l=e.text().trim(),r=!1,a=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(l)&&(l=l.replace(/[0-9]/g,"").trim()),e.offset().top<$(window).scrollTop()&&n.text(l);new IntersectionObserver(o=>{var e,t;r?(t=$(window).scrollTop(),e=a<t,a=t,t=o[0],e?0===t.intersectionRatio&&n.text(l):1===t.intersectionRatio&&n.text(s)):r=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]}).observe(document.querySelector(o)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}});
|
||||||
|
4
assets/js/dist/home.min.js
vendored
4
assets/js/dist/home.min.js
vendored
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{const t=$(e.target);let o=t.prop("tagName")==="button".toUpperCase()?t:t.parent();o.blur(),flipMode()})});const ScrollHelper=function(){const e=$("body"),t="data-topbar-visible",o=$("#topbar-wrapper").outerHeight();let a=0,l=!1,r=!1;return{hideTopbar:()=>e.attr(t,!1),showTopbar:()=>e.attr(t,!0),addScrollUpTask:()=>{a+=1,l=l||!0},popScrollUpTask:()=>--a,hasScrollUpTask:()=>0<a,topbarLocked:()=>!0===l,unlockTopbar:()=>l=!1,getTopbarHeight:()=>o,orientationLocked:()=>!0===r,lockOrientation:()=>r=!0,unLockOrientation:()=>r=!1}}(),LocaleHelper=($(function(){const e=$("#sidebar-trigger"),t=$("#search-trigger"),o=$("#search-cancel"),a=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),p={on(){e.addClass("unloaded"),l.addClass("unloaded"),t.addClass("unloaded"),r.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),r.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),t.removeClass("unloaded")}},u=function(){let e=!1;return{on(){e||(d.block(),n.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("unloaded"),d.release(),i.val(""),e=!1)},isVisible(){return e}}}();function f(){return o.hasClass("loaded")}t.click(function(){p.on(),u.on(),i.focus()}),o.click(function(){p.off(),u.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var e=function(){const e="sidebar-display";let t=!1;const o=$("body");return{toggle(){!1===t?o.attr(e,""):o.removeAttr(e),t=!t}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#search-input"),o=ScrollHelper.getTopbarHeight();let e,a=0;function l(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var e=screen.orientation.type;"landscape-primary"!==e&&"landscape-secondary"!==e||l()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&l()}),$(window).scroll(()=>{e=e||!0}),setInterval(()=>{e&&(!function(){var e=$(this).scrollTop();if(!(Math.abs(a-e)<=o)){if(e>a)ScrollHelper.hideTopbar(),t.is(":focus")&&t.blur();else if(e+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}a=e}}(),e=!1)},250)}),$(function(){var t="div.post>h1:first-of-type";const o=$(t),n=$("#topbar-title");if(0!==o.length&&!o.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let a=o.text().trim(),l=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim()),o.offset().top<$(window).scrollTop()&&n.text(a);let e=new IntersectionObserver(e=>{var t,o;l?(o=$(window).scrollTop(),t=r<o,r=o,o=e[0],t?0===o.intersectionRatio&&n.text(a):1===o.intersectionRatio&&n.text(s)):l=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]});e.observe(document.querySelector(t)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),function(){const e=$('meta[name="prefer-datetime-locale"]'),t=0<e.length?e.attr("content").toLowerCase():$("html").attr("lang").substr(0,2),o="data-ts",a="data-df";return{locale:()=>t,attrTimestamp:()=>o,attrDateFormat:()=>a,getTimestamp:e=>Number(e.attr(o)),getDateFormat:e=>e.attr(a)}}());$(function(){dayjs.locale(LocaleHelper.locale()),dayjs.extend(window.dayjs_plugin_localizedFormat),$(`[${LocaleHelper.attrTimestamp()}]`).each(function(){const e=dayjs.unix(LocaleHelper.getTimestamp($(this)));var t=e.format(LocaleHelper.getDateFormat($(this))),t=($(this).text(t),$(this).removeAttr(LocaleHelper.attrTimestamp()),$(this).removeAttr(LocaleHelper.attrDateFormat()),$(this).attr("data-toggle"));void 0!==t&&"tooltip"===t&&(t=e.format("llll"),$(this).attr("data-original-title",t))})});
|
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{e=$(e.target);(e.prop("tagName")==="button".toUpperCase()?e:e.parent()).blur(),flipMode()})});const ScrollHelper=function(){const e=$("body"),t="data-topbar-visible",o=$("#topbar-wrapper").outerHeight();let a=0,l=!1,r=!1;return{hideTopbar:()=>e.attr(t,!1),showTopbar:()=>e.attr(t,!0),addScrollUpTask:()=>{a+=1,l=l||!0},popScrollUpTask:()=>--a,hasScrollUpTask:()=>0<a,topbarLocked:()=>!0===l,unlockTopbar:()=>l=!1,getTopbarHeight:()=>o,orientationLocked:()=>!0===r,lockOrientation:()=>r=!0,unLockOrientation:()=>r=!1}}(),LocaleHelper=($(function(){const e=$("#sidebar-trigger"),t=$("#search-trigger"),o=$("#search-cancel"),a=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),p={on(){e.addClass("unloaded"),l.addClass("unloaded"),t.addClass("unloaded"),r.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),r.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),t.removeClass("unloaded")}},u=function(){let e=!1;return{on(){e||(d.block(),n.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("unloaded"),d.release(),i.val(""),e=!1)},isVisible(){return e}}}();function f(){return o.hasClass("loaded")}t.click(function(){p.on(),u.on(),i.focus()}),o.click(function(){p.off(),u.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var e=function(){const e="sidebar-display";let t=!1;const o=$("body");return{toggle(){!1===t?o.attr(e,""):o.removeAttr(e),t=!t}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#search-input"),o=ScrollHelper.getTopbarHeight();let e,a=0;function l(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var e=screen.orientation.type;"landscape-primary"!==e&&"landscape-secondary"!==e||l()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&l()}),$(window).scroll(()=>{e=e||!0}),setInterval(()=>{e&&(!function(){var e=$(this).scrollTop();if(!(Math.abs(a-e)<=o)){if(e>a)ScrollHelper.hideTopbar(),t.is(":focus")&&t.blur();else if(e+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}a=e}}(),e=!1)},250)}),$(function(){var e="div.post>h1:first-of-type",t=$(e);const n=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let a=t.text().trim(),l=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim()),t.offset().top<$(window).scrollTop()&&n.text(a);new IntersectionObserver(e=>{var t,o;l?(o=$(window).scrollTop(),t=r<o,r=o,o=e[0],t?0===o.intersectionRatio&&n.text(a):1===o.intersectionRatio&&n.text(s)):l=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]}).observe(document.querySelector(e)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),function(){const e=$("html").attr("lang").substr(0,2),t="data-ts",o="data-df";return{locale:()=>e,attrTimestamp:()=>t,attrDateFormat:()=>o,getTimestamp:e=>Number(e.attr(t)),getDateFormat:e=>e.attr(o)}}());$(function(){dayjs.locale(LocaleHelper.locale()),dayjs.extend(window.dayjs_plugin_localizedFormat),$(`[${LocaleHelper.attrTimestamp()}]`).each(function(){var e=dayjs.unix(LocaleHelper.getTimestamp($(this))),t=e.format(LocaleHelper.getDateFormat($(this))),t=($(this).text(t),$(this).removeAttr(LocaleHelper.attrTimestamp()),$(this).removeAttr(LocaleHelper.attrDateFormat()),$(this).attr("data-toggle"));void 0!==t&&"tooltip"===t&&(t=e.format("llll"),$(this).attr("data-original-title",t))})});
|
||||||
|
4
assets/js/dist/misc.min.js
vendored
4
assets/js/dist/misc.min.js
vendored
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{const t=$(e.target);let o=t.prop("tagName")==="button".toUpperCase()?t:t.parent();o.blur(),flipMode()})});const ScrollHelper=function(){const e=$("body"),t="data-topbar-visible",o=$("#topbar-wrapper").outerHeight();let a=0,l=!1,r=!1;return{hideTopbar:()=>e.attr(t,!1),showTopbar:()=>e.attr(t,!0),addScrollUpTask:()=>{a+=1,l=l||!0},popScrollUpTask:()=>--a,hasScrollUpTask:()=>0<a,topbarLocked:()=>!0===l,unlockTopbar:()=>l=!1,getTopbarHeight:()=>o,orientationLocked:()=>!0===r,lockOrientation:()=>r=!0,unLockOrientation:()=>r=!1}}(),LocaleHelper=($(function(){const e=$("#sidebar-trigger"),t=$("#search-trigger"),o=$("#search-cancel"),a=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),p={on(){e.addClass("unloaded"),l.addClass("unloaded"),t.addClass("unloaded"),r.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),r.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),t.removeClass("unloaded")}},u=function(){let e=!1;return{on(){e||(d.block(),n.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("unloaded"),d.release(),i.val(""),e=!1)},isVisible(){return e}}}();function f(){return o.hasClass("loaded")}t.click(function(){p.on(),u.on(),i.focus()}),o.click(function(){p.off(),u.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var e=function(){const e="sidebar-display";let t=!1;const o=$("body");return{toggle(){!1===t?o.attr(e,""):o.removeAttr(e),t=!t}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#search-input"),o=ScrollHelper.getTopbarHeight();let e,a=0;function l(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var e=screen.orientation.type;"landscape-primary"!==e&&"landscape-secondary"!==e||l()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&l()}),$(window).scroll(()=>{e=e||!0}),setInterval(()=>{e&&(!function(){var e=$(this).scrollTop();if(!(Math.abs(a-e)<=o)){if(e>a)ScrollHelper.hideTopbar(),t.is(":focus")&&t.blur();else if(e+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}a=e}}(),e=!1)},250)}),$(function(){var t="div.post>h1:first-of-type";const o=$(t),n=$("#topbar-title");if(0!==o.length&&!o.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let a=o.text().trim(),l=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim()),o.offset().top<$(window).scrollTop()&&n.text(a);let e=new IntersectionObserver(e=>{var t,o;l?(o=$(window).scrollTop(),t=r<o,r=o,o=e[0],t?0===o.intersectionRatio&&n.text(a):1===o.intersectionRatio&&n.text(s)):l=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]});e.observe(document.querySelector(t)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),function(){const e=$('meta[name="prefer-datetime-locale"]'),t=0<e.length?e.attr("content").toLowerCase():$("html").attr("lang").substr(0,2),o="data-ts",a="data-df";return{locale:()=>t,attrTimestamp:()=>o,attrDateFormat:()=>a,getTimestamp:e=>Number(e.attr(o)),getDateFormat:e=>e.attr(a)}}());$(function(){dayjs.locale(LocaleHelper.locale()),dayjs.extend(window.dayjs_plugin_localizedFormat),$(`[${LocaleHelper.attrTimestamp()}]`).each(function(){const e=dayjs.unix(LocaleHelper.getTimestamp($(this)));var t=e.format(LocaleHelper.getDateFormat($(this))),t=($(this).text(t),$(this).removeAttr(LocaleHelper.attrTimestamp()),$(this).removeAttr(LocaleHelper.attrDateFormat()),$(this).attr("data-toggle"));void 0!==t&&"tooltip"===t&&(t=e.format("llll"),$(this).attr("data-original-title",t))})});
|
$(function(){$(window).scroll(()=>{50<$(this).scrollTop()&&"none"===$("#sidebar-trigger").css("display")?$("#back-to-top").fadeIn():$("#back-to-top").fadeOut()}),$("#back-to-top").click(()=>($("body,html").animate({scrollTop:0},800),!1))}),$(function(){$(".mode-toggle").click(e=>{e=$(e.target);(e.prop("tagName")==="button".toUpperCase()?e:e.parent()).blur(),flipMode()})});const ScrollHelper=function(){const e=$("body"),t="data-topbar-visible",o=$("#topbar-wrapper").outerHeight();let a=0,l=!1,r=!1;return{hideTopbar:()=>e.attr(t,!1),showTopbar:()=>e.attr(t,!0),addScrollUpTask:()=>{a+=1,l=l||!0},popScrollUpTask:()=>--a,hasScrollUpTask:()=>0<a,topbarLocked:()=>!0===l,unlockTopbar:()=>l=!1,getTopbarHeight:()=>o,orientationLocked:()=>!0===r,lockOrientation:()=>r=!0,unLockOrientation:()=>r=!1}}(),LocaleHelper=($(function(){const e=$("#sidebar-trigger"),t=$("#search-trigger"),o=$("#search-cancel"),a=$("#main"),l=$("#topbar-title"),r=$("#search-wrapper"),n=$("#search-result-wrapper"),s=$("#search-results"),i=$("#search-input"),c=$("#search-hints"),d=function(){let e=0;return{block(){e=window.scrollY,$("html,body").scrollTop(0)},release(){$("html,body").scrollTop(e)},getOffset(){return e}}}(),p={on(){e.addClass("unloaded"),l.addClass("unloaded"),t.addClass("unloaded"),r.addClass("d-flex"),o.addClass("loaded")},off(){o.removeClass("loaded"),r.removeClass("d-flex"),e.removeClass("unloaded"),l.removeClass("unloaded"),t.removeClass("unloaded")}},u=function(){let e=!1;return{on(){e||(d.block(),n.removeClass("unloaded"),a.addClass("unloaded"),e=!0)},off(){e&&(s.empty(),c.hasClass("unloaded")&&c.removeClass("unloaded"),n.addClass("unloaded"),a.removeClass("unloaded"),d.release(),i.val(""),e=!1)},isVisible(){return e}}}();function f(){return o.hasClass("loaded")}t.click(function(){p.on(),u.on(),i.focus()}),o.click(function(){p.off(),u.off()}),i.focus(function(){r.addClass("input-focus")}),i.focusout(function(){r.removeClass("input-focus")}),i.on("input",()=>{""===i.val()?f()?c.removeClass("unloaded"):u.off():(u.on(),f()&&c.addClass("unloaded"))})}),$(function(){var e=function(){const e="sidebar-display";let t=!1;const o=$("body");return{toggle(){!1===t?o.attr(e,""):o.removeAttr(e),t=!t}}}();$("#sidebar-trigger").click(e.toggle),$("#mask").click(e.toggle)}),$(function(){$('[data-toggle="tooltip"]').tooltip()}),$(function(){const t=$("#search-input"),o=ScrollHelper.getTopbarHeight();let e,a=0;function l(){0!==$(window).scrollTop()&&(ScrollHelper.lockOrientation(),ScrollHelper.hideTopbar())}screen.orientation?screen.orientation.onchange=()=>{var e=screen.orientation.type;"landscape-primary"!==e&&"landscape-secondary"!==e||l()}:$(window).on("orientationchange",()=>{$(window).width()<$(window).height()&&l()}),$(window).scroll(()=>{e=e||!0}),setInterval(()=>{e&&(!function(){var e=$(this).scrollTop();if(!(Math.abs(a-e)<=o)){if(e>a)ScrollHelper.hideTopbar(),t.is(":focus")&&t.blur();else if(e+$(window).height()<$(document).height()){if(ScrollHelper.hasScrollUpTask())return;ScrollHelper.topbarLocked()?ScrollHelper.unlockTopbar():ScrollHelper.orientationLocked()?ScrollHelper.unLockOrientation():ScrollHelper.showTopbar()}a=e}}(),e=!1)},250)}),$(function(){var e="div.post>h1:first-of-type",t=$(e);const n=$("#topbar-title");if(0!==t.length&&!t.hasClass("dynamic-title")&&!n.is(":hidden")){const s=n.text().trim();let a=t.text().trim(),l=!1,r=0;($("#page-category").length||$("#page-tag").length)&&/\s/.test(a)&&(a=a.replace(/[0-9]/g,"").trim()),t.offset().top<$(window).scrollTop()&&n.text(a);new IntersectionObserver(e=>{var t,o;l?(o=$(window).scrollTop(),t=r<o,r=o,o=e[0],t?0===o.intersectionRatio&&n.text(a):1===o.intersectionRatio&&n.text(s)):l=!0},{rootMargin:"-48px 0px 0px 0px",threshold:[0,1]}).observe(document.querySelector(e)),n.click(function(){$("body,html").animate({scrollTop:0},800)})}}),function(){const e=$("html").attr("lang").substr(0,2),t="data-ts",o="data-df";return{locale:()=>e,attrTimestamp:()=>t,attrDateFormat:()=>o,getTimestamp:e=>Number(e.attr(t)),getDateFormat:e=>e.attr(o)}}());$(function(){dayjs.locale(LocaleHelper.locale()),dayjs.extend(window.dayjs_plugin_localizedFormat),$(`[${LocaleHelper.attrTimestamp()}]`).each(function(){var e=dayjs.unix(LocaleHelper.getTimestamp($(this))),t=e.format(LocaleHelper.getDateFormat($(this))),t=($(this).text(t),$(this).removeAttr(LocaleHelper.attrTimestamp()),$(this).removeAttr(LocaleHelper.attrDateFormat()),$(this).attr("data-toggle"));void 0!==t&&"tooltip"===t&&(t=e.format("llll"),$(this).attr("data-original-title",t))})});
|
||||||
|
4
assets/js/dist/page.min.js
vendored
4
assets/js/dist/page.min.js
vendored
File diff suppressed because one or more lines are too long
4
assets/js/dist/post.min.js
vendored
4
assets/js/dist/post.min.js
vendored
File diff suppressed because one or more lines are too long
4
assets/js/dist/pvreport.min.js
vendored
4
assets/js/dist/pvreport.min.js
vendored
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Chirpy v5.3.0 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
* Chirpy v5.3.1 (https://github.com/cotes2020/jekyll-theme-chirpy/)
|
||||||
* © 2019 Cotes Chung
|
* © 2019 Cotes Chung
|
||||||
* MIT Licensed
|
* MIT Licensed
|
||||||
*/
|
*/
|
||||||
const getInitStatus=function(){let t=!1;return()=>{var e=t;return t=t||!0,e}}(),PvOpts=function(){function t(e){return $(e).attr("content")}function e(e){e=t(e);return void 0!==e&&!1!==e}return{getProxyMeta(){return t("meta[name=pv-proxy-endpoint]")},getLocalMeta(){return t("meta[name=pv-cache-path]")},hasProxyMeta(){return e("meta[name=pv-proxy-endpoint]")},hasLocalMeta(){return e("meta[name=pv-cache-path]")}}}(),PvStorage=function(){const a={KEY_PV:"pv",KEY_PV_SRC:"pv_src",KEY_CREATION:"pv_created_date"},t={LOCAL:"same-origin",PROXY:"cors"};function r(e){return localStorage.getItem(e)}function o(e,t){localStorage.setItem(e,t)}function n(e,t){o(a.KEY_PV,e),o(a.KEY_PV_SRC,t),o(a.KEY_CREATION,(new Date).toJSON())}return{keysCount(){return Object.keys(a).length},hasCache(){return null!==localStorage.getItem(a.KEY_PV)},getCache(){return JSON.parse(localStorage.getItem(a.KEY_PV))},saveLocalCache(e){n(e,t.LOCAL)},saveProxyCache(e){n(e,t.PROXY)},isExpired(){let e=new Date(r(a.KEY_CREATION));return e.setHours(e.getHours()+1),Date.now()>=e.getTime()},isFromLocal(){return r(a.KEY_PV_SRC)===t.LOCAL},isFromProxy(){return r(a.KEY_PV_SRC)===t.PROXY},newerThan(e){return PvStorage.getCache().totalsForAllResults["ga:pageviews"]>e.totalsForAllResults["ga:pageviews"]},inspectKeys(){if(localStorage.length!==PvStorage.keysCount())localStorage.clear();else for(let e=0;e<localStorage.length;e++)switch(localStorage.key(e)){case a.KEY_PV:case a.KEY_PV_SRC:case a.KEY_CREATION:break;default:return void localStorage.clear()}}}}();function countUp(t,a,r){if(t<a){let e=new CountUp(r,t,a);e.error?console.error(e.error):e.start()}}function countPV(t,a){let r=0;if(void 0!==a)for(let e=0;e<a.length;++e)if(a[parseInt(e,10)][0]===t){r+=parseInt(a[parseInt(e,10)][1],10);break}return r}function tacklePV(e,t,a,r){let o=countPV(t,e);o=0===o?1:o,r?(t=parseInt(a.text().replace(/,/g,""),10),o>t&&countUp(t,o,a.attr("id"))):a.text((new Intl.NumberFormat).format(o))}function displayPageviews(e){if(void 0!==e){let t=getInitStatus();const a=e.rows;0<$("#post-list").length?$(".post-preview").each(function(){var e=$(this).find("a").attr("href");tacklePV(a,e,$(this).find(".pageviews"),t)}):0<$(".post").length&&(e=window.location.pathname,tacklePV(a,e,$("#pv"),t))}}function fetchProxyPageviews(){PvOpts.hasProxyMeta()&&$.ajax({type:"GET",url:PvOpts.getProxyMeta(),dataType:"jsonp",jsonpCallback:"displayPageviews",success:e=>{PvStorage.saveProxyCache(JSON.stringify(e))},error:(e,t,a)=>{console.log("Failed to load pageviews from proxy server: "+a)}})}function fetchLocalPageviews(t=!1){return fetch(PvOpts.getLocalMeta()).then(e=>e.json()).then(e=>{t&&PvStorage.isFromProxy()&&PvStorage.newerThan(e)||(displayPageviews(e),PvStorage.saveLocalCache(JSON.stringify(e)))})}$(function(){$(".pageviews").length<=0||(PvStorage.inspectKeys(),PvStorage.hasCache()?(displayPageviews(PvStorage.getCache()),PvStorage.isExpired()?PvOpts.hasLocalMeta()?fetchLocalPageviews(!0).then(fetchProxyPageviews):fetchProxyPageviews():PvStorage.isFromLocal()&&fetchProxyPageviews()):PvOpts.hasLocalMeta()?fetchLocalPageviews().then(fetchProxyPageviews):fetchProxyPageviews())});
|
const getInitStatus=function(){let t=!1;return()=>{var e=t;return t=t||!0,e}}(),PvOpts=function(){function t(e){return $(e).attr("content")}function e(e){e=t(e);return void 0!==e&&!1!==e}return{getProxyMeta(){return t("meta[name=pv-proxy-endpoint]")},getLocalMeta(){return t("meta[name=pv-cache-path]")},hasProxyMeta(){return e("meta[name=pv-proxy-endpoint]")},hasLocalMeta(){return e("meta[name=pv-cache-path]")}}}(),PvStorage=function(){const a={KEY_PV:"pv",KEY_PV_SRC:"pv_src",KEY_CREATION:"pv_created_date"},t={LOCAL:"same-origin",PROXY:"cors"};function r(e){return localStorage.getItem(e)}function o(e,t){localStorage.setItem(e,t)}function n(e,t){o(a.KEY_PV,e),o(a.KEY_PV_SRC,t),o(a.KEY_CREATION,(new Date).toJSON())}return{keysCount(){return Object.keys(a).length},hasCache(){return null!==localStorage.getItem(a.KEY_PV)},getCache(){return JSON.parse(localStorage.getItem(a.KEY_PV))},saveLocalCache(e){n(e,t.LOCAL)},saveProxyCache(e){n(e,t.PROXY)},isExpired(){var e=new Date(r(a.KEY_CREATION));return e.setHours(e.getHours()+1),Date.now()>=e.getTime()},isFromLocal(){return r(a.KEY_PV_SRC)===t.LOCAL},isFromProxy(){return r(a.KEY_PV_SRC)===t.PROXY},newerThan(e){return PvStorage.getCache().totalsForAllResults["ga:pageviews"]>e.totalsForAllResults["ga:pageviews"]},inspectKeys(){if(localStorage.length!==PvStorage.keysCount())localStorage.clear();else for(let e=0;e<localStorage.length;e++)switch(localStorage.key(e)){case a.KEY_PV:case a.KEY_PV_SRC:case a.KEY_CREATION:break;default:return void localStorage.clear()}}}}();function countUp(e,t,a){e<t&&((a=new CountUp(a,e,t)).error?console.error(a.error):a.start())}function countPV(t,a){let r=0;if(void 0!==a)for(let e=0;e<a.length;++e)if(a[parseInt(e,10)][0]===t){r+=parseInt(a[parseInt(e,10)][1],10);break}return r}function tacklePV(e,t,a,r){t=0===(t=countPV(t,e))?1:t;r?(e=parseInt(a.text().replace(/,/g,""),10))<t&&countUp(e,t,a.attr("id")):a.text((new Intl.NumberFormat).format(t))}function displayPageviews(e){if(void 0!==e){let t=getInitStatus();const a=e.rows;0<$("#post-list").length?$(".post-preview").each(function(){var e=$(this).find("a").attr("href");tacklePV(a,e,$(this).find(".pageviews"),t)}):0<$(".post").length&&(e=window.location.pathname,tacklePV(a,e,$("#pv"),t))}}function fetchProxyPageviews(){PvOpts.hasProxyMeta()&&$.ajax({type:"GET",url:PvOpts.getProxyMeta(),dataType:"jsonp",jsonpCallback:"displayPageviews",success:e=>{PvStorage.saveProxyCache(JSON.stringify(e))},error:(e,t,a)=>{console.log("Failed to load pageviews from proxy server: "+a)}})}function fetchLocalPageviews(t=!1){return fetch(PvOpts.getLocalMeta()).then(e=>e.json()).then(e=>{t&&PvStorage.isFromProxy()&&PvStorage.newerThan(e)||(displayPageviews(e),PvStorage.saveLocalCache(JSON.stringify(e)))})}$(function(){$(".pageviews").length<=0||(PvStorage.inspectKeys(),PvStorage.hasCache()?(displayPageviews(PvStorage.getCache()),PvStorage.isExpired()?PvOpts.hasLocalMeta()?fetchLocalPageviews(!0).then(fetchProxyPageviews):fetchProxyPageviews():PvStorage.isFromLocal()&&fetchProxyPageviews()):PvOpts.hasLocalMeta()?fetchLocalPageviews().then(fetchProxyPageviews):fetchProxyPageviews())});
|
||||||
|
@ -32,8 +32,7 @@ if ('serviceWorker' in navigator) {
|
|||||||
}
|
}
|
||||||
$notification.toast('hide');
|
$notification.toast('hide');
|
||||||
});
|
});
|
||||||
}
|
});
|
||||||
);
|
|
||||||
|
|
||||||
let refreshing = false;
|
let refreshing = false;
|
||||||
|
|
||||||
@ -45,3 +44,4 @@ if ('serviceWorker' in navigator) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,3 +87,4 @@ self.addEventListener('fetch', event => {
|
|||||||
})
|
})
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit d1d2ec17c88176753d4dd2a1296620021dcc22fd
|
Subproject commit b2842d6583088cb6b33ad50093a39a3e2cf2c026
|
@ -24,6 +24,7 @@ function minifyJs() {
|
|||||||
return src(`${ JS_DEST }/*.js`)
|
return src(`${ JS_DEST }/*.js`)
|
||||||
.pipe(insert.prepend(fs.readFileSync(`${ JS_SRC }/copyright`, 'utf8')))
|
.pipe(insert.prepend(fs.readFileSync(`${ JS_SRC }/copyright`, 'utf8')))
|
||||||
.pipe(uglify({output: {comments: /^!|@preserve|@license|@cc_on/i}}))
|
.pipe(uglify({output: {comments: /^!|@preserve|@license|@cc_on/i}}))
|
||||||
|
.pipe(insert.append('\n'))
|
||||||
.pipe(dest(JS_DEST));
|
.pipe(dest(JS_DEST));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,7 +46,6 @@ const postJs = () => {
|
|||||||
`${JS_SRC}/commons/*.js`,
|
`${JS_SRC}/commons/*.js`,
|
||||||
`${JS_SRC}/utils/img-extra.js`,
|
`${JS_SRC}/utils/img-extra.js`,
|
||||||
`${JS_SRC}/utils/locale-datetime.js`,
|
`${JS_SRC}/utils/locale-datetime.js`,
|
||||||
`${JS_SRC}/utils/checkbox.js`,
|
|
||||||
`${JS_SRC}/utils/clipboard.js`,
|
`${JS_SRC}/utils/clipboard.js`,
|
||||||
// 'smooth-scroll.js' must be called after ToC is ready
|
// 'smooth-scroll.js' must be called after ToC is ready
|
||||||
`${JS_SRC}/utils/smooth-scroll.js`
|
`${JS_SRC}/utils/smooth-scroll.js`
|
||||||
@ -64,7 +64,6 @@ const categoriesJs = () => {
|
|||||||
const pageJs = () => {
|
const pageJs = () => {
|
||||||
return concatJs([
|
return concatJs([
|
||||||
`${JS_SRC}/commons/*.js`,
|
`${JS_SRC}/commons/*.js`,
|
||||||
`${JS_SRC}/utils/checkbox.js`,
|
|
||||||
`${JS_SRC}/utils/img-extra.js`,
|
`${JS_SRC}/utils/img-extra.js`,
|
||||||
`${JS_SRC}/utils/clipboard.js`,
|
`${JS_SRC}/utils/clipboard.js`,
|
||||||
`${JS_SRC}/utils/smooth-scroll.js`
|
`${JS_SRC}/utils/smooth-scroll.js`
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
Gem::Specification.new do |spec|
|
Gem::Specification.new do |spec|
|
||||||
spec.name = "jekyll-theme-chirpy"
|
spec.name = "jekyll-theme-chirpy"
|
||||||
spec.version = "5.3.0"
|
spec.version = "5.3.1"
|
||||||
spec.authors = ["Cotes Chung"]
|
spec.authors = ["Cotes Chung"]
|
||||||
spec.email = ["cotes.chung@gmail.com"]
|
spec.email = ["cotes.chung@gmail.com"]
|
||||||
|
|
||||||
@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
|
|||||||
spec.license = "MIT"
|
spec.license = "MIT"
|
||||||
|
|
||||||
spec.files = `git ls-files -z`.split("\x0").select { |f|
|
spec.files = `git ls-files -z`.split("\x0").select { |f|
|
||||||
f.match(%r!^((_(includes|layouts|sass|data|tabs|plugins)|assets)\/|_config|README|LICENSE|index)!i)
|
f.match(%r!^((_(includes|layouts|sass|data)|assets)\/|README|LICENSE)!i)
|
||||||
}
|
}
|
||||||
|
|
||||||
spec.metadata = {
|
spec.metadata = {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "jekyll-theme-chirpy",
|
"name": "jekyll-theme-chirpy",
|
||||||
"version": "5.3.0",
|
"version": "5.3.1",
|
||||||
"description": "A minimal, responsive, and powerful Jekyll theme for presenting professional writing.",
|
"description": "A minimal, responsive, and powerful Jekyll theme for presenting professional writing.",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@ -12,12 +12,18 @@
|
|||||||
"url": "https://github.com/cotes2020/jekyll-theme-chirpy/issues"
|
"url": "https://github.com/cotes2020/jekyll-theme-chirpy/issues"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/cotes2020/jekyll-theme-chirpy#readme",
|
"homepage": "https://github.com/cotes2020/jekyll-theme-chirpy#readme",
|
||||||
|
"scripts": {
|
||||||
|
"test": "npx stylelint _sass/**/*.scss",
|
||||||
|
"fixlint": "npx stylelint _sass/**/*.scss --fix"
|
||||||
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"gulp": "^4.0.2",
|
"gulp": "^4.0.2",
|
||||||
"gulp-concat": "^2.6.1",
|
"gulp-concat": "^2.6.1",
|
||||||
"gulp-insert": "^0.5.0",
|
"gulp-insert": "^0.5.0",
|
||||||
"gulp-rename": "^2.0.0",
|
"gulp-rename": "^2.0.0",
|
||||||
"gulp-uglify": "^3.0.2",
|
"gulp-uglify": "^3.0.2",
|
||||||
|
"stylelint": "^14.14.0",
|
||||||
|
"stylelint-config-standard-scss": "^5.0.0",
|
||||||
"uglify-js": "^3.14.3"
|
"uglify-js": "^3.14.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
opt_pre=false # preview mode option
|
opt_pre=false # preview mode option
|
||||||
|
opt_skip_ver=false # option for skip versioning
|
||||||
|
|
||||||
working_branch="$(git branch --show-current)"
|
working_branch="$(git branch --show-current)"
|
||||||
|
|
||||||
@ -48,6 +49,7 @@ help() {
|
|||||||
echo " bash ./tools/release.sh [options]"
|
echo " bash ./tools/release.sh [options]"
|
||||||
echo
|
echo
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
|
echo " -k, --skip-versioning Skip the step of generating the version number."
|
||||||
echo " -p, --preview Enable preview mode, only package, and will not modify the branches"
|
echo " -p, --preview Enable preview mode, only package, and will not modify the branches"
|
||||||
echo " -h, --help Print this information."
|
echo " -h, --help Print this information."
|
||||||
}
|
}
|
||||||
@ -170,6 +172,7 @@ release() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
main() {
|
main() {
|
||||||
|
if [[ $opt_skip_ver = false ]]; then
|
||||||
check
|
check
|
||||||
|
|
||||||
# auto-generate a new version number to the file 'package.json'
|
# auto-generate a new version number to the file 'package.json'
|
||||||
@ -178,6 +181,7 @@ main() {
|
|||||||
else
|
else
|
||||||
standard-version
|
standard-version
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
_version="$(grep '"version":' package.json | sed 's/.*: "//;s/".*//')"
|
_version="$(grep '"version":' package.json | sed 's/.*: "//;s/".*//')"
|
||||||
|
|
||||||
@ -201,6 +205,10 @@ while (($#)); do
|
|||||||
opt_pre=true
|
opt_pre=true
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
-k | --skip-versioning)
|
||||||
|
opt_skip_ver=true
|
||||||
|
shift
|
||||||
|
;;
|
||||||
-h | --help)
|
-h | --help)
|
||||||
help
|
help
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -12,6 +12,8 @@ SITE_DIR="_site"
|
|||||||
|
|
||||||
_config="_config.yml"
|
_config="_config.yml"
|
||||||
|
|
||||||
|
_baseurl=""
|
||||||
|
|
||||||
help() {
|
help() {
|
||||||
echo "Build and test the site content"
|
echo "Build and test the site content"
|
||||||
echo
|
echo
|
||||||
@ -24,18 +26,39 @@ help() {
|
|||||||
echo " -h, --help Print this information."
|
echo " -h, --help Print this information."
|
||||||
}
|
}
|
||||||
|
|
||||||
|
read_baseurl() {
|
||||||
|
if [[ $_config == *","* ]]; then
|
||||||
|
# multiple config
|
||||||
|
IFS=","
|
||||||
|
read -ra config_array <<<"$_config"
|
||||||
|
|
||||||
|
# reverse loop the config files
|
||||||
|
for ((i = ${#config_array[@]} - 1; i >= 0; i--)); do
|
||||||
|
_tmp_baseurl="$(grep '^baseurl:' "${config_array[i]}" | sed "s/.*: *//;s/['\"]//g;s/#.*//")"
|
||||||
|
|
||||||
|
if [[ -n $_tmp_baseurl ]]; then
|
||||||
|
_baseurl="$_tmp_baseurl"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
else
|
||||||
|
# single config
|
||||||
|
_baseurl="$(grep '^baseurl:' "$_config" | sed "s/.*: *//;s/['\"]//g;s/#.*//")"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
main() {
|
main() {
|
||||||
# clean up
|
# clean up
|
||||||
if [[ -d $SITE_DIR ]]; then
|
if [[ -d $SITE_DIR ]]; then
|
||||||
rm -rf "$SITE_DIR"
|
rm -rf "$SITE_DIR"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
_baseurl="$(grep '^baseurl:' "$_config" | sed "s/.*: *//;s/['\"]//g;s/#.*//")"
|
read_baseurl
|
||||||
|
|
||||||
# build
|
# build
|
||||||
JEKYLL_ENV=production bundle exec jekyll build \
|
JEKYLL_ENV=production bundle exec jekyll b \
|
||||||
--destination "$SITE_DIR$_baseurl" \
|
-d "$SITE_DIR$_baseurl" -c "$_config"
|
||||||
--config "$_config"
|
|
||||||
|
|
||||||
# test
|
# test
|
||||||
bundle exec htmlproofer "$SITE_DIR" \
|
bundle exec htmlproofer "$SITE_DIR" \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user