From 883857365d527980c687b0742d2272aabd401981 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 20:32:24 +0800 Subject: [PATCH 001/896] Initial import Purifying old commits. --- .gitignore | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3b16889 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +.* +*.pyc + +# jekyll debug +_site + +# Jeykll Gemfile.lock +Gemfile.lock + +# yui-compressor +*.jar From b04b34538198a73eed8ad3be680597be333cc30b Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 20:37:14 +0800 Subject: [PATCH 002/896] Import README. --- README.md | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..2b62625 --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +# Jekyll Theme Chirpy + +[![Build Status](https://travis-ci.com/cotes2020/jekyll-theme-chirpy.svg?branch=master)](https://travis-ci.com/cotes2020/jekyll-theme-chirpy) +[![GitHub license](https://img.shields.io/github/license/cotes2020/jekyll-theme-chirpy.svg)](https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/LICENSE) +[![996.icu](https://img.shields.io/badge/link-996.icu-red.svg)](https://996.icu) + +![devices-mockup](assets/img/sample/devices-mockup.png) + +A Jekyll theme with responsive web design that focuses on text presentation. [Live Demo »](https://chirpy.cotes.info) + +## Features + +* Last modified date +* Table of Contents +* Disqus Comments +* Syntax highlighting +* Two Level Categories +* Search +* HTML compress +* Atom feeds +* Google Analytics +* Pageviews (Advanced) + +## Quick start + +First of all, complete the installation of the following environment dependencies: + +- [Ruby](https://www.ruby-lang.org/en/downloads/) +- [RubyGem](https://rubygems.org/pages/download) +- [Bundler](https://bundler.io/) +- [Jekyll](https://jekyllrb.com/) +- [Python](https://www.python.org/downloads/) +- [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) + +Clone the repository locally, but to prevent losing the latest features, consider using **Fork** instead of cloning. + +Install the Jekyll plugins: + +``` +$ bundle install +``` + +Boot your site locally: + +``` +$ bash run.sh +``` + +Now, open your favorite brower and visit + +Please refer to the [documentation](https://chirpy.cotes.info/posts/getting-started/) for more details. Hope you like it. + + +## License + +This work is published under [MIT](https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/LICENSE) License. From 5d0e72d5da7aaee02578772f58631ea51b9fe879 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 20:38:10 +0800 Subject: [PATCH 003/896] Import travis config. --- .travis.yml | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..d8046c1 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,36 @@ +language: ruby +rvm: 2.5.3 + +before_install: + - pyenv global 3.7.1 + +install: + - pip install --upgrade pip + - pip install ruamel.yaml + +script: + - >- + git clone https://${GH_TOKEN}@github.com/cotes2020/blog-builder.git + ../blog-builder --depth=1 -q + - cp -r ../blog-builder/framework/* . + - bash _cibuild.sh + +branches: + only: master + +git: + depth: false # for posts lastmod + +cache: + directories: + - vendor/bundle + +notifications: + email: + recipients: + - secure: "GdZFhI2fu6MHwHeGkI9AI8NJexfT+cncJKoOTBxrMPywxvfm6HZ1vZTOwLD9mwG4XZUSznruD4NwRiXMBKs/94n8Z2f0QagCp2is/TuQWBVDUn1bowTbx1S7da6I3qTBGyIHvQWySwFgJuK9/uUeHdQF9ojMejESKZWfc6NjlgYie3Us3ax+Lygq6o4x+8+YPqlC/XwEKUUMUpXZT8Yubxg+s1mLwY9zmp2kJwB1snf6u498FPCWtCuQdGc91HEL4McfUfevnkNKttJQFwdE+mFkLoLn1FcXN0WQ8hPVTQvD/5TaCvACuB1oQ4dm4cnnoIRC5iuQntkP2Am7jPLnHLwxHDqB8vLDNxi1phbfGTk89ffY4n5FirF7DiYIn7hDDbDBlE4++9Pv/i7xgLp9+NzAzz25tdcfKZfXujrwE6b/2NbtXer/eWXyi7d6V/qWO6x8m7/IerX2/VrbXyQIgTvIDe2sSAraM77MMIiQ2KS6yhPIfjyCsC1sokFNRqUWut2UkqMFKOmAnSi/jTQY6/t1aOXGHtVRwgjFoyvBTk9F9NElxt3mseK26Mad3yAv5xLqhqHPFZJbVHJ8dP6RQvWwuvMK1uSqobTl+t0qBvvdSbt1/Oc/ubN1T2clObx1faF2luoMFhRtN+H5s7wfEMrO+sJAuSZnAHuDRpDIwCs=" + on_success: never + +env: + global: + - secure: "QNAqDoDQ+mF/3DFxKbc7fnYa5+FysJTX9Vs4XneH6iH63MS2lNtHfC7uT/M0/sRJaygK9eAdb+RaIeADE7CAMzqP3qdWx7l2N6qWab/kyK9KujUBsvoTGX6lDQTwC2Z+zlr5uUScHfLOhqHh6dbm6glziy2NB4dn9pVBXQrmBn09Rf9LImRT2u2h8gzmdl19hZ9TsW1/ROOb/1Soc3JElGRPrIxKI7ufHLQZt0UzZkYXGejQJwtstEEkRSmhfkJjlASeaeuyOFBvkWXjL1nKPsElwEKsAR+4II98JKA83YVqa9TJT2YSnXeLEFIhYDVSG6RLAMEU4rrITzRYC/hWKBKje4G0PDEM/cpnytk9Xhq+7oUFRmXCq3ZQgTQgzWhzl1kExC8b96hiWmQ+lVCw+Q2BG6+NloEEuOHOM839CTXfiitjRJ8KYUdLgW6IaruaingySBsbh1Vl+Dhu73QZ5H40KLdIH6woLXWAgtxkjpaL6DTeWDO6xMiwDreBa/2CJRT5R1tiG45CurZ+AkQ+yAAfSOEwGtE29oZl0sWeWMwVTaAClc0IJaG1+h8jxIVuQqHvK3fzd5RdlDtShrfCCVvQD0n29wXrdeNEg90F92kvdtmw8XgKc2P/Cl5uNzvVeTbFF3ZIHYpCVV4LW4Hn8clgYu+WUa/w4pVrBSdQOUw=" \ No newline at end of file From b845c829f6eab054b4f6ddd4eff7a803e071b409 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 20:38:41 +0800 Subject: [PATCH 004/896] Import the framework. --- 404.html | 24 + Gemfile | 13 + LICENSE | 21 + _config.yml | 166 ++ _data/label.yml | 17 + _includes/date-format.html | 8 + _includes/disqus.html | 24 + _includes/favicons.html | 34 + _includes/fixlinenos.html | 9 + _includes/footer.html | 24 + _includes/google-analytics.html | 14 + _includes/head.html | 53 + _includes/panel.html | 72 + _includes/search-results.html | 15 + _includes/search.html | 13 + _includes/sidebar.html | 65 + _includes/topbar.html | 49 + _layouts/category.html | 26 + _layouts/compress.html | 10 + _layouts/default.html | 44 + _layouts/home.html | 128 ++ _layouts/page.html | 29 + _layouts/post.html | 117 ++ _layouts/tag.html | 25 + _scripts/py/init_all.py | 16 + _scripts/py/pages_generator.py | 190 +++ _scripts/py/update_posts_lastmod.py | 121 ++ _scripts/py/utils/common.py | 43 + assets/css/_src/fonts.scss | 312 ++++ assets/css/_src/main.scss | 1518 +++++++++++++++++ assets/css/_src/syntax.scss | 157 ++ assets/css/styles.scss | 9 + assets/data/proxy.json | 1 + assets/img/favicons/android-icon-144x144.png | Bin 0 -> 15762 bytes assets/img/favicons/android-icon-192x192.png | Bin 0 -> 21277 bytes assets/img/favicons/android-icon-36x36.png | Bin 0 -> 2928 bytes assets/img/favicons/android-icon-48x48.png | Bin 0 -> 3978 bytes assets/img/favicons/android-icon-72x72.png | Bin 0 -> 6302 bytes assets/img/favicons/android-icon-96x96.png | Bin 0 -> 9203 bytes assets/img/favicons/apple-icon-114x114.png | Bin 0 -> 11500 bytes assets/img/favicons/apple-icon-120x120.png | Bin 0 -> 12426 bytes assets/img/favicons/apple-icon-144x144.png | Bin 0 -> 15762 bytes assets/img/favicons/apple-icon-152x152.png | Bin 0 -> 17139 bytes assets/img/favicons/apple-icon-180x180.png | Bin 0 -> 21529 bytes assets/img/favicons/apple-icon-57x57.png | Bin 0 -> 4797 bytes assets/img/favicons/apple-icon-60x60.png | Bin 0 -> 5002 bytes assets/img/favicons/apple-icon-72x72.png | Bin 0 -> 6302 bytes assets/img/favicons/apple-icon-76x76.png | Bin 0 -> 6833 bytes .../img/favicons/apple-icon-precomposed.png | Bin 0 -> 21851 bytes assets/img/favicons/apple-icon.png | Bin 0 -> 21851 bytes assets/img/favicons/browserconfig.xml | 17 + assets/img/favicons/favicon-16x16.png | Bin 0 -> 1545 bytes assets/img/favicons/favicon-32x32.png | Bin 0 -> 2515 bytes assets/img/favicons/favicon-96x96.png | Bin 0 -> 9203 bytes assets/img/favicons/favicon.ico | Bin 0 -> 1150 bytes assets/img/favicons/manifest.json | 48 + assets/img/favicons/ms-icon-144x144.png | Bin 0 -> 15762 bytes assets/img/favicons/ms-icon-150x150.png | Bin 0 -> 16765 bytes assets/img/favicons/ms-icon-310x310.png | Bin 0 -> 46986 bytes assets/img/favicons/ms-icon-70x70.png | Bin 0 -> 6105 bytes assets/img/sample/devices-mockup.png | Bin 0 -> 227162 bytes assets/img/sample/download-icons.png | Bin 0 -> 9832 bytes assets/img/sample/mockup.png | Bin 0 -> 32004 bytes assets/img/sample/profile.jpg | Bin 0 -> 18126 bytes assets/img/sample/upload-image.png | Bin 0 -> 35990 bytes assets/js/_src/_commons/back-to-top.js | 18 + assets/js/_src/_commons/search-display.js | 88 + assets/js/_src/_commons/sidebar.js | 54 + assets/js/_src/_commons/tooltip.js | 8 + assets/js/_src/_commons/topbar-switch.js | 64 + assets/js/_src/_commons/topbar-title.js | 44 + assets/js/_src/category-collapse.js | 31 + assets/js/_src/pageviews.js | 111 ++ assets/js/_src/timeago.js | 77 + assets/js/dist/_commons/back-to-top.min.js | 1 + assets/js/dist/_commons/search-display.min.js | 1 + assets/js/dist/_commons/sidebar.min.js | 1 + assets/js/dist/_commons/tooltip.min.js | 1 + assets/js/dist/_commons/topbar-switch.min.js | 1 + assets/js/dist/_commons/topbar-title.min.js | 1 + assets/js/dist/category-collapse.min.js | 1 + assets/js/dist/commons.js | 12 + assets/js/dist/countUp.min.js | 1 + assets/js/dist/pageviews.min.js | 1 + assets/js/dist/timeago.min.js | 1 + .../bootstrap-toc-1.0.1/bootstrap-toc.min.css | 4 + .../bootstrap-toc-1.0.1/bootstrap-toc.min.js | 5 + assets/lib/jquery-3.4.1.min.js | 2 + assets/lib/jquery.disqusloader.min.js | 8 + assets/lib/simple-jekyll-search-1.7.1.min.js | 6 + build.sh | 106 ++ feed.xml | 58 + index.html | 11 + init.sh | 56 + pv.sh | 21 + robots.txt | 13 + run.sh | 106 ++ search.json | 14 + sitemap.xml | 77 + tabs/about.md | 35 + tabs/archives.md | 60 + tabs/categories.md | 82 + tabs/tags.md | 27 + 103 files changed, 4640 insertions(+) create mode 100644 404.html create mode 100644 Gemfile create mode 100644 LICENSE create mode 100644 _config.yml create mode 100644 _data/label.yml create mode 100644 _includes/date-format.html create mode 100644 _includes/disqus.html create mode 100644 _includes/favicons.html create mode 100644 _includes/fixlinenos.html create mode 100644 _includes/footer.html create mode 100644 _includes/google-analytics.html create mode 100644 _includes/head.html create mode 100644 _includes/panel.html create mode 100644 _includes/search-results.html create mode 100644 _includes/search.html create mode 100644 _includes/sidebar.html create mode 100644 _includes/topbar.html create mode 100644 _layouts/category.html create mode 100644 _layouts/compress.html create mode 100644 _layouts/default.html create mode 100644 _layouts/home.html create mode 100644 _layouts/page.html create mode 100644 _layouts/post.html create mode 100644 _layouts/tag.html create mode 100755 _scripts/py/init_all.py create mode 100755 _scripts/py/pages_generator.py create mode 100755 _scripts/py/update_posts_lastmod.py create mode 100644 _scripts/py/utils/common.py create mode 100644 assets/css/_src/fonts.scss create mode 100644 assets/css/_src/main.scss create mode 100644 assets/css/_src/syntax.scss create mode 100644 assets/css/styles.scss create mode 100644 assets/data/proxy.json create mode 100644 assets/img/favicons/android-icon-144x144.png create mode 100644 assets/img/favicons/android-icon-192x192.png create mode 100644 assets/img/favicons/android-icon-36x36.png create mode 100644 assets/img/favicons/android-icon-48x48.png create mode 100644 assets/img/favicons/android-icon-72x72.png create mode 100644 assets/img/favicons/android-icon-96x96.png create mode 100644 assets/img/favicons/apple-icon-114x114.png create mode 100644 assets/img/favicons/apple-icon-120x120.png create mode 100644 assets/img/favicons/apple-icon-144x144.png create mode 100644 assets/img/favicons/apple-icon-152x152.png create mode 100644 assets/img/favicons/apple-icon-180x180.png create mode 100644 assets/img/favicons/apple-icon-57x57.png create mode 100644 assets/img/favicons/apple-icon-60x60.png create mode 100644 assets/img/favicons/apple-icon-72x72.png create mode 100644 assets/img/favicons/apple-icon-76x76.png create mode 100644 assets/img/favicons/apple-icon-precomposed.png create mode 100644 assets/img/favicons/apple-icon.png create mode 100644 assets/img/favicons/browserconfig.xml create mode 100644 assets/img/favicons/favicon-16x16.png create mode 100644 assets/img/favicons/favicon-32x32.png create mode 100644 assets/img/favicons/favicon-96x96.png create mode 100644 assets/img/favicons/favicon.ico create mode 100644 assets/img/favicons/manifest.json create mode 100644 assets/img/favicons/ms-icon-144x144.png create mode 100644 assets/img/favicons/ms-icon-150x150.png create mode 100644 assets/img/favicons/ms-icon-310x310.png create mode 100644 assets/img/favicons/ms-icon-70x70.png create mode 100644 assets/img/sample/devices-mockup.png create mode 100644 assets/img/sample/download-icons.png create mode 100644 assets/img/sample/mockup.png create mode 100644 assets/img/sample/profile.jpg create mode 100644 assets/img/sample/upload-image.png create mode 100644 assets/js/_src/_commons/back-to-top.js create mode 100644 assets/js/_src/_commons/search-display.js create mode 100644 assets/js/_src/_commons/sidebar.js create mode 100644 assets/js/_src/_commons/tooltip.js create mode 100644 assets/js/_src/_commons/topbar-switch.js create mode 100644 assets/js/_src/_commons/topbar-title.js create mode 100644 assets/js/_src/category-collapse.js create mode 100644 assets/js/_src/pageviews.js create mode 100644 assets/js/_src/timeago.js create mode 100644 assets/js/dist/_commons/back-to-top.min.js create mode 100644 assets/js/dist/_commons/search-display.min.js create mode 100644 assets/js/dist/_commons/sidebar.min.js create mode 100644 assets/js/dist/_commons/tooltip.min.js create mode 100644 assets/js/dist/_commons/topbar-switch.min.js create mode 100644 assets/js/dist/_commons/topbar-title.min.js create mode 100644 assets/js/dist/category-collapse.min.js create mode 100644 assets/js/dist/commons.js create mode 100644 assets/js/dist/countUp.min.js create mode 100644 assets/js/dist/pageviews.min.js create mode 100644 assets/js/dist/timeago.min.js create mode 100644 assets/lib/bootstrap-toc-1.0.1/bootstrap-toc.min.css create mode 100644 assets/lib/bootstrap-toc-1.0.1/bootstrap-toc.min.js create mode 100644 assets/lib/jquery-3.4.1.min.js create mode 100644 assets/lib/jquery.disqusloader.min.js create mode 100644 assets/lib/simple-jekyll-search-1.7.1.min.js create mode 100755 build.sh create mode 100644 feed.xml create mode 100644 index.html create mode 100755 init.sh create mode 100755 pv.sh create mode 100644 robots.txt create mode 100755 run.sh create mode 100644 search.json create mode 100644 sitemap.xml create mode 100644 tabs/about.md create mode 100644 tabs/archives.md create mode 100644 tabs/categories.md create mode 100644 tabs/tags.md diff --git a/404.html b/404.html new file mode 100644 index 0000000..bf20d63 --- /dev/null +++ b/404.html @@ -0,0 +1,24 @@ +--- +# The 404 page +# © 2017-2019 Cotes Chung +# MIT License +layout: page +title: "404: Page not found" + +permalink: /404.html + +redirect_from: # Same as site.blocklist +- /norobots/ +- /assets/ +- /tabs/ +- /categories/ +- /tags/ +- /posts/ + +dynamic_title: true +--- + +
+

Sorry, we've misplaced that URL or it's pointing to something that doesn't exist.

+

Head back Home to try finding it again, or search for it on the Archives page.

+
\ No newline at end of file diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..73267dd --- /dev/null +++ b/Gemfile @@ -0,0 +1,13 @@ +source 'https://rubygems.org' + +gem 'jekyll', '>=3.8.6' + +# Official Plugins +group :jekyll_plugins do + gem 'jekyll-paginate' + gem 'jekyll-redirect-from' + gem 'jekyll-seo-tag' +end + +# Windows does not include zoneinfo files, so bundle the tzinfo-data gem +gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..299d89f --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2019 Cotes Chung + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..7c3b7e6 --- /dev/null +++ b/_config.yml @@ -0,0 +1,166 @@ +# The Site Settings +# © 2017-2019 Cotes Chung +# MIT licensed + + +# jekyll-seo-tag settings › https://github.com/jekyll/jekyll-seo-tag/blob/master/docs/usage.md +#-------------------------- + +title: Chirpy + +description: 'A text-based Jekyll theme.' + +# Replace with your domain, e.g. "https://username.github.io" +url: 'https://www.example.com' + +author: Chirpy # change to your full name + +logo: /assets/img/sample/profile.jpg # Support network resources. + +github: + username: github_username # change to your github username + +twitter: + username: twitter_username # change to your twitter username + +social: + name: Chirpy # change to your full name + email: example@doamin.com # change to your email address + links: + - https://twitter.com/username # change to your twitter homepage + - https://github.com/username # change to your github homepage + # - https://www.facebook.com/username + # - https://www.linkedin.com/in/username + +google_site_verification: google_meta_tag_verification # change to your verification string + +#-------------------------- + +# Change to your Google Analytics ID +google_analytics: + id: 'UA-*********-*' + # Switch for Google Analytics pageviews. DO NOT enable it unless you know how to deploy the Google Analytics superProxy. + pv: false + +disqus: + shortname: 'disqus' # Change to your Disqus shortname. + comments: true # boolean type, the gobal switch of posts' comments. + +# The year your website was first run. +first_run: 2019 + +# boolean type, gobal switch for ToC in posts. +toc: true + + +# if your site type is Project Pages site, change below value to '/projectname' +baseurl: '' + +paginate: 10 + +markdown: kramdown + +highlighter: rouge + +kramdown: + input: GFM + syntax_highlighter: rouge + syntax_highlighter_opts: # Rouge Options › https://github.com/jneen/rouge#full-options + css_class: 'highlight' + # default_lang: console + span: + line_numbers: false + block: + line_numbers: true + start_line: 1 + +permalink: /posts/:title/ + +defaults: + - + scope: + path: "" # An empty string here means all files in the project + type: posts + values: + layout: post + comments: true # Enable comments in posts. + toc: true # Display TOC column in posts. + location: Post + breadcrumb: + - + label: Posts + url: / + - + scope: + path: _drafts + values: + comments: false + - + scope: + path: tags + values: + location: Tag + breadcrumb: + - + label: Home + url: / + - + label: Tags + url: /tabs/tags/ + - + scope: + path: categories + values: + location: Category + breadcrumb: + - + label: Home + url: / + - + label: Categories + url: /tabs/categories/ + - + scope: + path: tabs + values: + layout: page + dynamic_title: true # hide title in mobile screens. + breadcrumb: + - + label: Home + url: / + +timezone: Asia/Shanghai + +sass: + sass_dir: /assets/css + style: compressed + +compress_html: + clippings: all + comments: [""] + endings: [html, head, body, dt, dd, rt, rp, optgroup, option, colgroup, caption, thead, tbody, tfoot, tr, td, th] + profile: false + blanklines: false + ignore: + envs: [] + +exclude: + - vendor/ # Avoid Jekyll mistakenly read the vender directory in Travis-CI's VM . + - Gemfile.lock + - Gemfile + - run.sh + - build.sh + - init.sh + - pv.sh + +sitemap_exclude: # Sitemap will exclude the following items. + - /norobots/ + - /assets/ + - /tabs/ + - /categories/ + - /tags/ + - /posts/ + - /404.html + - /redirects.json + - /search.json diff --git a/_data/label.yml b/_data/label.yml new file mode 100644 index 0000000..a53c2d9 --- /dev/null +++ b/_data/label.yml @@ -0,0 +1,17 @@ +# The label text of site. +# © 2017-2019 Cotes Chung +# MIT Licensed + +tabs: + - { name: "Home" } + - { name: "Categories", path: tabs, url: categories } + - { name: "Tags", path: tabs, url: tags } + - { name: "Archives", path: tabs, url: archives } + - { name: "About", path: tabs, url: about } + +panel: + lastmod: "Recent Update" + trending_tags: "Trending Tags" + toc: "Contents" + +search_hint: "Search" # text show on search bar \ No newline at end of file diff --git a/_includes/date-format.html b/_includes/date-format.html new file mode 100644 index 0000000..9c83b37 --- /dev/null +++ b/_includes/date-format.html @@ -0,0 +1,8 @@ + + +{% assign TOOLTIP_DATE = "%a, %b %e, %Y, %l:%M %p %z" %} +{% assign POST_DATE = "%b %e, %Y" %} \ No newline at end of file diff --git a/_includes/disqus.html b/_includes/disqus.html new file mode 100644 index 0000000..b97c809 --- /dev/null +++ b/_includes/disqus.html @@ -0,0 +1,24 @@ + + +
+

Comments powered by Disqus.

+
+ + + \ No newline at end of file diff --git a/_includes/favicons.html b/_includes/favicons.html new file mode 100644 index 0000000..e21aece --- /dev/null +++ b/_includes/favicons.html @@ -0,0 +1,34 @@ + + +{% capture icon_url %}{{ site.baseurl }}/assets/img/favicons{% endcapture %} + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_includes/fixlinenos.html b/_includes/fixlinenos.html new file mode 100644 index 0000000..2f88865 --- /dev/null +++ b/_includes/fixlinenos.html @@ -0,0 +1,9 @@ + +{% if _content contains '
' %}
+  {% assign _content = _content | replace: '
', '' %} +{% endif %} \ No newline at end of file diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000..659f6df --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,24 @@ + + + diff --git a/_includes/google-analytics.html b/_includes/google-analytics.html new file mode 100644 index 0000000..983746b --- /dev/null +++ b/_includes/google-analytics.html @@ -0,0 +1,14 @@ + + diff --git a/_includes/head.html b/_includes/head.html new file mode 100644 index 0000000..b81ce0b --- /dev/null +++ b/_includes/head.html @@ -0,0 +1,53 @@ + + + + + {%- if page.layout == "home" -%} + {{- site.title -}} + {%- else -%} + {{ page.title }} | {{ site.title }} + {%- endif -%} + + + + + {% seo title=false %} + + {% include favicons.html %} + + + + + + + + + + + + + + + + + + {% if jekyll.environment == 'production' %} + {% include google-analytics.html %} + {% endif %} + + \ No newline at end of file diff --git a/_includes/panel.html b/_includes/panel.html new file mode 100644 index 0000000..2550816 --- /dev/null +++ b/_includes/panel.html @@ -0,0 +1,72 @@ + + +
+ + {% assign lastmod_list = "" | split: "" %} + + {% for post in site.posts %} + {% if post.date >= post.seo.date_modified or post.seo.date_modified == nil %} + {% continue %} + {% endif%} + {% capture item %} + {{ post.seo.date_modified }}::{{ post.title }}::{{ post.url }} + {% endcapture %} + {% assign lastmod_list = lastmod_list | push: item %} + {% endfor %} + + {% if lastmod_list.size > 0 %} +
+

+ {{ site.data.label.panel.lastmod }} +

+
    + {% assign MAX_SIZE = 5 %} + {% assign sum = 0 %} + {% assign sorted_posts = lastmod_list | sort | reverse %} + {% for post in sorted_posts %} + {% assign meta = post | split: "::" %} +
  • {{ meta[1] }}
  • + {% assign sum = sum | plus: 1 %} + {% if sum >= MAX_SIZE %} + {% break %} + {% endif %} + {% endfor %} +
+
+ {% endif %} + +
+

+ {{ site.data.label.panel.trending_tags }} +

+
+ {% capture tags_array %} + {% for tag in site.tags %} + {{ tag[1] | size }}:{{ tag[0] | replace: ' ', '-' }} + {% endfor %} + {% endcapture %} + + {% assign MAX = 10 %} + {% assign count = 0 %} + {% assign trends = tags_array | split: " " | sort | reverse %} + +
+ + {% for trend in trends %} + {% assign count = count | plus: 1 %} + {% assign tag = trend | split: ":" | last %} + + {% if count >= MAX %} + {% break %} + {% endif %} + {% endfor %} +
+ +
+
+ +
\ No newline at end of file diff --git a/_includes/search-results.html b/_includes/search-results.html new file mode 100644 index 0000000..d9a87f6 --- /dev/null +++ b/_includes/search-results.html @@ -0,0 +1,15 @@ + +
+
+
+

Search Results

+
+
    +
    +
    +
    +
    \ No newline at end of file diff --git a/_includes/search.html b/_includes/search.html new file mode 100644 index 0000000..04ee7c3 --- /dev/null +++ b/_includes/search.html @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/_includes/sidebar.html b/_includes/sidebar.html new file mode 100644 index 0000000..6d609b1 --- /dev/null +++ b/_includes/sidebar.html @@ -0,0 +1,65 @@ + + + + +
    + + + + + + + {% assign email = site.social.email | split: '@' %} + + + + + + +
    \ No newline at end of file diff --git a/_includes/topbar.html b/_includes/topbar.html new file mode 100644 index 0000000..a730ba4 --- /dev/null +++ b/_includes/topbar.html @@ -0,0 +1,49 @@ + +
    + +
    + + + {% for item in page.breadcrumb %} + {% if item.url %} + + + {{ item.label }} + + + {% else %} + {{ item.label }} + {% endif %} + {% endfor %} + + {% unless page.layout == "home" %} + {{ page.title }} + {% endunless %} + + + + + +
    + {% if page.location %} + {{- page.location -}} + {% elsif page.layout == "home" %} + {{- site.title -}} + {% else %} + {{- page.title -}} + {% endif %} +
    + + + + + + + Cancel +
    + +
    \ No newline at end of file diff --git a/_layouts/category.html b/_layouts/category.html new file mode 100644 index 0000000..c633a65 --- /dev/null +++ b/_layouts/category.html @@ -0,0 +1,26 @@ +--- +layout: page +# The Category layout +# © 2017-2019 Cotes Chung +# MIT Licensed +--- + +{% include date-format.html %} + +
    +

    + + {{ page.title }} + {{ site.categories[page.category] | size }} +

    + +
      + {% for post in site.categories[page.category] %} +
    • + {{ post.title }} + + {{ post.date | date: POST_DATE }} +
    • + {% endfor %} +
    +
    \ No newline at end of file diff --git a/_layouts/compress.html b/_layouts/compress.html new file mode 100644 index 0000000..bb34487 --- /dev/null +++ b/_layouts/compress.html @@ -0,0 +1,10 @@ +--- +# Jekyll layout that compresses HTML +# v3.1.0 +# http://jch.penibelst.de/ +# © 2014–2015 Anatol Broder +# MIT License +--- + +{% capture _LINE_FEED %} +{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment or site.compress_html.ignore.envs == "all" %}{{ content }}{% else %}{% capture _content %}{{ content }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "
    " %}{% endif %}{% unless _pre_before contains "" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " ;; ;" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %}
    Step Bytes
    raw {{ content | size }}{% if _profile_endings %}
    endings {{ _profile_endings }}{% endif %}{% if _profile_startings %}
    startings {{ _profile_startings }}{% endif %}{% if _profile_comments %}
    comments {{ _profile_comments }}{% endif %}{% if _profile_collapse %}
    collapse {{ _profile_collapse }}{% endif %}{% if _profile_clippings %}
    clippings {{ _profile_clippings }}{% endif %}
    {% endif %}{% endif %} diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..1cf913e --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,44 @@ +--- +layout: compress +# Default layout +# © 2017-2019 Cotes Chung +# MIT Licensed +--- + + + + + {% include head.html %} + + + +
    + {% include topbar.html %} +
    +
    + + {% capture _content %} + {{ content }} + {% endcapture %} + + {% include fixlinenos.html %} + {{ _content }} + +
    + {% include footer.html %} +
    + {% include search-results.html %} +
    + +
    + + {% include search.html %} + + + + + + + \ No newline at end of file diff --git a/_layouts/home.html b/_layouts/home.html new file mode 100644 index 0000000..03d7d96 --- /dev/null +++ b/_layouts/home.html @@ -0,0 +1,128 @@ +--- +layout: page +# The Home page layout +# © 2017-2019 Cotes Chung +# MIT Licensed +--- + +{% include date-format.html %} + +
    + {% for post in paginator.posts %} +
    +

    + {{ post.title }} +

    +
    +

    + {{ post.content | strip_html | truncate: 200 }} +

    +
    + + +
    + {% endfor %} +
    + +{% if paginator.total_pages > 0 %} +
      + + {% if paginator.previous_page %} +
    • + + + +
    • + {% else %} +
    • + +
    • + {% endif %} + + + + {% assign left_ellipsis = false %} + {% assign right_ellipsis = false %} + + {% for i in (1..paginator.total_pages) %} + + {% assign pre = paginator.page | minus: 1 %} + {% assign next = paginator.page | plus: 1 %} + {% assign pre_less = pre | minus: 1 %} + {% assign next_more = next | plus: 1 %} + {% assign show = false %} + + {% if paginator.page == 1 %} + {% if i <= 3 or i == paginator.total_pages %} + {% assign show = true %} + {% endif %} + {% elsif paginator.page == paginator.total_pages %} + {% if i == 1 or i >= pre_less %} + {% assign show = true %} + {% endif %} + {% else %} + {% if i == 1 or i == paginator.total_pages%} + {% assign show = true %} + {% elsif i >= pre and i <= next %} + {% assign show = true %} + {% endif %} + {% endif %} + + {% if show %} + +
    • + {{ i }} +
    • + {% else %} + + {% if i < pre and left_ellipsis == false %} +
    • + ... +
    • + {% assign left_ellipsis = true %} + {% elsif i > next and right_ellipsis == false %} +
    • + ... +
    • + {% assign right_ellipsis = true %} + {% endif %} + {% endif %} + + {% endfor %} + + + {% if paginator.next_page %} +
    • + + + +
    • + {% else %} +
    • + +
    • + {% endif %} + +
    +{% endif %} + + + +{% if site.google_analytics.pv %} + + +{% endif %} diff --git a/_layouts/page.html b/_layouts/page.html new file mode 100644 index 0000000..660c96e --- /dev/null +++ b/_layouts/page.html @@ -0,0 +1,29 @@ +--- +layout: default +# The page layout +# © 2017-2019 Cotes Chung +# MIT License +--- + +
    +
    + + {% if page.dynamic_title %} + +

    {{ page.title }}

    +
    + {{ content }} +
    + + {% else %} + + {{ content }} + + {% endif %} + +
    +
    + +
    + {% include panel.html %} +
    \ No newline at end of file diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 0000000..83e4230 --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,117 @@ +--- +layout: default +# The posts' layout +# © 2017-2019 Cotes Chung +# MIT Licensed +--- + +{% include date-format.html %} + +
    +
    +
    +

    {{ page.title }}

    + + +
    + {% if page.image %} + + {% endif %} + {{ content }} +
    + +
    + + {% if page.tags.size > 0 %} +
    + {% for tag in page.tags %} + {%- if forloop.last != true -%} {%- endif -%} + {% endfor %} +
    + {% endif %} + +
    + +
    + +
    + {% if page.previous.url %} + + {% else %} + + {% endif %} + + OLDER POST + + + {% if page.next.url %} + + {% else %} + + {% endif %} + NEWER POST + + +
    + + {% if site.disqus.comments and page.comments %} + {% include disqus.html %} + {% else %} +
    + {% endif %} + +
    +
    + +
    + {% include panel.html %} + {% if site.toc and page.toc %} +
    +

    + {{ site.data.label.panel.toc }} +

    + +
    + + + {% endif %} +
    + + + +{% if site.google_analytics.pv %} + + +{% endif %} diff --git a/_layouts/tag.html b/_layouts/tag.html new file mode 100644 index 0000000..45993da --- /dev/null +++ b/_layouts/tag.html @@ -0,0 +1,25 @@ +--- +layout: page +# The layout for Tag page +# © 2017-2019 Cotes Chung +# MIT Licensed +--- + +{% include date-format.html %} + +
    +

    + + {{ page.title }} + {{ site.tags[page.tag] | size }} +

    +
      + {% for post in site.tags[page.tag] %} +
    • + {{ post.title }} + + {{ post.date | date: POST_DATE }} +
    • + {% endfor %} +
    +
    \ No newline at end of file diff --git a/_scripts/py/init_all.py b/_scripts/py/init_all.py new file mode 100755 index 0000000..1fb4544 --- /dev/null +++ b/_scripts/py/init_all.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +Automatic invokes all initial scripts for project. +© 2018-2019 Cotes Chung +Licensed under MIT +""" + +import update_posts_lastmod +import pages_generator + + +update_posts_lastmod + +pages_generator diff --git a/_scripts/py/pages_generator.py b/_scripts/py/pages_generator.py new file mode 100755 index 0000000..11baacb --- /dev/null +++ b/_scripts/py/pages_generator.py @@ -0,0 +1,190 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +''' +Generates HTML pages for Categories and Tags in posts. + +Dependencies: + - git + - ruamel.yaml + +© 2018-2019 Cotes Chung +MIT License +''' + + +import os +import glob +import shutil +import sys +import subprocess + +from ruamel.yaml import YAML +from utils.common import get_yaml +from utils.common import check_py_version + + +DRAFTS_DIR = '_drafts' +POSTS_DIR = ['_posts'] + +CATEGORIES_DIR = 'categories' +CATEGORY_LAYOUT = 'category' + +TAG_DIR = 'tags' +TAG_LAYOUT = 'tag' + +LEVEL = 3 # Tree level for current script file. + + +def help(): + print("Usage: " + " python pages_generator.py [Option]\n\n" + "Options:\n" + " -d, --drafts Enable drafts\n" + " -v, --verbose Print verbose logs\n") + + +def get_path(dir): + path = os.path.abspath(__file__) + count = LEVEL + r_index = len(path) + while r_index > 0: + r_index -= 1 + if (path[r_index] == '/' or path[r_index] == '\\'): + count -= 1 + if count == 0: + return path[:r_index + 1] + dir + + +def get_categories(): + all_categories = [] + yaml = YAML() + + for dir in POSTS_DIR: + path = get_path(dir) + for file in glob.glob(os.path.join(path, '*.md')): + meta = yaml.load(get_yaml(file)[0]) + + if 'category' in meta: + if type(meta['category']) == list: + err_msg = ( + "[Error] File {} 'category' type" + " can not be LIST!").format(file) + raise Exception(err_msg) + else: + if meta['category'] not in all_categories: + all_categories.append(meta['category']) + else: + if 'categories' in meta: + if type(meta['categories']) == str: + error_msg = ( + "[Error] File {} 'categories' type" + " can not be STR!").format(file) + raise Exception(error_msg) + + for ctg in meta['categories']: + if ctg not in all_categories: + all_categories.append(ctg) + else: + err_msg = ( + "[Error] File:{} at least " + "have one category.").format(file) + print(err_msg) + + return all_categories + + +def generate_category_pages(is_verbose): + categories = get_categories() + path = get_path(CATEGORIES_DIR) + + if os.path.exists(path): + shutil.rmtree(path) + + os.makedirs(path) + + for category in categories: + new_page = path + '/' + category.replace(' ', '-').lower() + '.html' + with open(new_page, 'w+', encoding='utf-8') as html: + html.write("---\n") + html.write("layout: {}\n".format(CATEGORY_LAYOUT)) + html.write("title: {}\n".format(category)) + html.write("category: {}\n".format(category)) + html.write("---") + + if is_verbose: + print("[INFO] Created page: " + new_page) + + change = subprocess.getoutput("git status categories -s") + if change: + print("[INFO] Succeed! {} category-pages created." + .format(len(categories))) + + +def get_all_tags(): + all_tags = [] + yaml = YAML() + + for dir in POSTS_DIR: + path = get_path(dir) + for file in glob.glob(os.path.join(path, '*.md')): + meta = yaml.load(get_yaml(file)[0]) + + if 'tags' in meta: + for tag in meta['tags']: + if tag not in all_tags: + all_tags.append(tag) + else: + raise Exception("Didn't find 'tags' in \ + post '{}' !".format(file)) + + return all_tags + + +def generate_tag_pages(is_verbose): + all_tags = get_all_tags() + tag_path = get_path(TAG_DIR) + + if os.path.exists(tag_path): + shutil.rmtree(tag_path) + + os.makedirs(tag_path) + + for tag in all_tags: + tag_page = tag_path + '/' + tag.replace(' ', '-').lower() + '.html' + with open(tag_page, 'w+', encoding='utf-8') as html: + html.write("---\n") + html.write("layout: {}\n".format(TAG_LAYOUT)) + html.write("title: {}\n".format(tag)) + html.write("tag: {}\n".format(tag)) + html.write("---") + + if is_verbose: + print("[INFO] Created page: " + tag_page) + + change = subprocess.getoutput("git status tags -s") + if change: + print("[INFO] Succeed! {} tag-pages created.".format(len(all_tags))) + + +def main(): + check_py_version() + + is_verbose = False + + if len(sys.argv) > 1: + for arg in sys.argv: + if arg != sys.argv[0]: + if arg == '-d' or arg == '--drafts': + POSTS_DIR.insert(0, DRAFTS_DIR) + elif arg == '-v' or arg == '--verbose': + is_verbose = True + else: + help() + return + + generate_category_pages(is_verbose) + generate_tag_pages(is_verbose) + + +main() diff --git a/_scripts/py/update_posts_lastmod.py b/_scripts/py/update_posts_lastmod.py new file mode 100755 index 0000000..fb5db8b --- /dev/null +++ b/_scripts/py/update_posts_lastmod.py @@ -0,0 +1,121 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +""" +Update (or create if not existed) field 'seo.date_modified' +in posts' Front Matter by their latest git commit date. + +Dependencies: + - git + - ruamel.yaml + +© 2018-2019 Cotes Chung +Licensed under MIT +""" + +import sys +import glob +import os +import subprocess +import shutil + +from ruamel.yaml import YAML +from utils.common import get_yaml +from utils.common import check_py_version + + +POSTS_PATH = "_posts" + + +def help(): + print("Usage: " + " python update_posts_lastmod.py [option]\n" + "Options:\n" + " -v, --verbose Print verbose logs\n") + + +def update_lastmod(verbose): + count = 0 + yaml = YAML() + + for post in glob.glob(os.path.join(POSTS_PATH, "*.md")): + git_log_count = subprocess.getoutput( + "git log --pretty=%ad \"{}\" | wc -l".format(post)) + + if git_log_count == "1": + continue + + git_lastmod = subprocess.getoutput( + "git log -1 --pretty=%ad --date=iso \"{}\"".format(post)) + + if not git_lastmod: + continue + + lates_commit = subprocess.check_output( + ['git', 'log', '-1', '--pretty=%B', post]).decode('utf-8') + + if "[Automation]" in lates_commit and "Lastmod" in lates_commit: + continue + + frontmatter, line_num = get_yaml(post) + meta = yaml.load(frontmatter) + + if 'seo' in meta: + if ('date_modified' in meta['seo'] and + meta['seo']['date_modified'] == git_lastmod): + continue + else: + meta['seo']['date_modified'] = git_lastmod + else: + meta.insert(line_num, 'seo', dict(date_modified=git_lastmod)) + + output = 'new.md' + if os.path.isfile(output): + os.remove(output) + + with open(output, 'w', encoding='utf-8') as new, \ + open(post, 'r', encoding='utf-8') as old: + new.write("---\n") + yaml.dump(meta, new) + new.write("---\n") + line_num += 2 + + lines = old.readlines() + + for line in lines: + if line_num > 0: + line_num -= 1 + continue + else: + new.write(line) + + shutil.move(output, post) + count += 1 + + if verbose: + print("[INFO] update 'lastmod' for:" + post) + + if count > 0: + print("[INFO] Success to update lastmod for {} post(s).".format(count)) + + +def main(): + check_py_version() + + verbose = False + + if len(sys.argv) > 1: + for arg in sys.argv: + if arg == sys.argv[0]: + continue + else: + if arg == '-v' or arg == '--verbose': + verbose = True + else: + help() + return + + update_lastmod(verbose) + + +main() diff --git a/_scripts/py/utils/common.py b/_scripts/py/utils/common.py new file mode 100644 index 0000000..2b5d701 --- /dev/null +++ b/_scripts/py/utils/common.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +''' +Common functions to other scripts. + +© 2018-2019 Cotes Chung +MIT License +''' + +import sys + + +def get_yaml(path): + """ + Return the Yaml block of a post and the linenumbers of it. + """ + end = False + yaml = "" + num = 0 + + with open(path, 'r', encoding='utf-8') as f: + for line in f.readlines(): + if line.strip() == '---': + if end: + break + else: + end = True + continue + else: + num += 1 + + yaml += line + + return yaml, num + + +def check_py_version(): + if not sys.version_info.major == 3 and sys.version_info.minor >= 5: + print("WARNING: This script requires Python 3.5 or higher, " + "however you are using Python {}.{}." + .format(sys.version_info.major, sys.version_info.minor)) + sys.exit(1) diff --git a/assets/css/_src/fonts.scss b/assets/css/_src/fonts.scss new file mode 100644 index 0000000..afda8aa --- /dev/null +++ b/assets/css/_src/fonts.scss @@ -0,0 +1,312 @@ +/* + * The field 'font-display' is added for Google-fonts. + * + * See https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600,700,900|Oswald|Lato + * + */ +/* latin-ext */ +@font-face { + font-family: 'Lato'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v14/S6uyw4BMUTPHjxAwXjeu.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Lato'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v14/S6uyw4BMUTPHjx4wXg.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic */ +@font-face { + font-family: 'Oswald'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Oswald Regular'), local('Oswald-Regular'), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* vietnamese */ +@font-face { + font-family: 'Oswald'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Oswald Regular'), local('Oswald-Regular'), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Oswald'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Oswald Regular'), local('Oswald-Regular'), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Oswald'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Oswald Regular'), local('Oswald-Regular'), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752GT8G.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lqDY.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lqDY.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lqDY.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lqDY.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lqDY.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhduz8A.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxduz8A.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxduz8A.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBduz8A.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBduz8A.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhduz8A.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwkxduz8A.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmxduz8A.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlBduz8A.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBduz8A.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmhduz8A.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwkxduz8A.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmxduz8A.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlBduz8A.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmBduz8A.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmRduz8A.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Source Sans Pro'; + font-style: normal; + font-weight: 900; + font-display: swap; + src: local('Source Sans Pro Black'), local('SourceSansPro-Black'), url(https://fonts.gstatic.com/s/sourcesanspro/v11/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlxdu.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} \ No newline at end of file diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss new file mode 100644 index 0000000..ddebfe6 --- /dev/null +++ b/assets/css/_src/main.scss @@ -0,0 +1,1518 @@ + +/*! +* The main styles. +* © 2018-2019 Cotes Chung +* MIT Licensed +*/ + +html, body { + height: 100%; +} + +/* Solved jumping scrollbar */ +html { + overflow-y: scroll; +} + +body { + line-height: 1.75rem; + background: #fafafa; + color: #212529; + -webkit-font-smoothing: antialiased; + font-family: 'Source Sans Pro', 'Microsoft Yahei', sans-serif; +} + +/*--- sidebar layout ---*/ + +#sidebar { + padding-left: 0; + padding-right: 0; + position: fixed; + top: 0; + left: 0; + height: 100%; + overflow-y: auto; + width: 260px; + background: rgb(35, 37, 46); + z-index: 99; + transition: transform 0.4s ease; + -webkit-transition: transform 0.4s ease; +} + +#sidebar a { + color: rgba(255, 255, 255, 0.5); + transition: color 0.35s ease-in-out; +} + +#sidebar .nav-item { + height: 20%; + padding: 0 2rem; +} + +#sidebar .nav-link { + border-radius: 0; + font-size: .95rem; + font-weight: 600; + letter-spacing: 1px; +} + +#sidebar .nav-item:hover .nav-link { + color: #f8f9facf; +} + +#sidebar .nav-item.active .nav-link { + color: #fcfcfc; +} + +#sidebar ul { + height: 16.5rem; + display: -webkit-box; + display: -ms-flexbox; +} + +.cursor { + background: #fcfcfc; + position: relative; + display: none; + top: 0; + left: 98.5%; + width: 3px; + height: 10%; + -webkit-transition: top 0.5s ease; + -moz-transition: top 0.5s ease; + transition: top 0.5s ease; +} + +#sidebar ul>li.active:nth-child(1)~.cursor, +#sidebar ul>li.nav-item:nth-child(1):hover~.cursor { + top: -95%; + display: block; +} + +#sidebar ul>li.active:nth-child(2)~.cursor, +#sidebar ul>li.nav-item:nth-child(2):hover~.cursor { + top: -75%; + display: block; +} + +#sidebar ul>li.active:nth-child(3)~.cursor, +#sidebar ul>li.nav-item:nth-child(3):hover~.cursor { + top: -55%; + display: block; +} + +#sidebar ul>li.active:nth-child(4)~.cursor, +#sidebar ul>li.nav-item:nth-child(4):hover~.cursor { + top: -35%; + display: block; +} + +#sidebar ul>li.active:nth-child(5)~.cursor, +#sidebar ul>li.nav-item:nth-child(5):hover~.cursor { + top: -15%; + display: block; +} + +#nav-wrap { + width: 100%; + flex-grow: 1; +} + +#profile-wrap { + padding-top: 2rem; + padding-bottom: 1rem; +} + +#profile { + width: 6rem; + height: 6rem; + border-radius: 50%; + border: 2px solid #b6b6b6; + overflow: hidden; + 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; +} + +#profile:hover { + border-color: #fff; +} + +#profile img { + width: 100%; + height: 100%; + display: block; + background-size: cover; + background-repeat: no-repeat; + -webkit-transition: all .5s !important; + -moz-transition: all .5s !important; + transition: all .5s !important; +} + +#profile img:hover { + -ms-transform: scale(1.2); + -moz-transform: scale(1.2); + -webkit-transform: scale(1.2); + transform: scale(1.2); +} + +#site-title a { + color: #b6b6b6; + font-weight: 900; + font-size: 1.5rem; + letter-spacing: .5px; +} + +#site-title a:hover { + color: #fff; + text-decoration: none; +} + +#site-subtitle { + font-size: 95%; + text-align: center; + color: #828282; + line-height: 1.2rem; + word-spacing: 1px; + padding: .6rem 1.5rem 2rem 1.5rem; +} + +.sidebar-expand { + box-shadow: 4px 0 8px 0 rgba(0, 0, 0, 0.2), 6px 0 20px 0 rgba(0, 0, 0, 0.19) !important; +} + +#search-result-wrap { + display: none; + position: fixed; + top: 3rem; + height: 100%; + width: calc(100% - 260px); + overflow: auto; +} + +#search-result-wrap>div.row>div { + min-height: calc(100vh - 3rem - 2rem); +} + +#search-result-wrap .post-content { + margin-top: 2rem; +} + +.contact { + font-size: 1.2rem; + padding: 2rem 2.5rem; + flex-shrink: 0; + -webkit-flex-shrink: 0; + -ms-flex-shrink: 0; + /*box-shadow: inset 0 0 0.25em 0 rgba(0, 0, 0, 0.22);*/ +} + +#sidebar .contact a:hover { + color: #fff; +} + +/*--- top-bar ---*/ + +#topbar { + height: 3rem; + position: fixed; + top: 0; + left: 260px; /* same as sidebar width */ + right: 0; + transition: top 0.2s ease-in-out; + z-index: 1; + border-bottom: 1px solid rgba(0, 0, 0, 0.07); + box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.05); +} + +#topbar i.fas { // icons + color: #999; +} + +#breadcrumb { + font-size: 1rem; + color: gray; + padding-left: 1rem; +} + +#breadcrumb span:not(:last-child)::after { + content: "›"; + padding: 0 .3rem; +} + +#sidebar-trigger, +#search-trigger { + margin: 0 1rem; + display: none; +} + +#search-wrap i { + position: relative; + top: 1rem; + left: .5rem; + z-index: 2; + font-size: .9rem; + color: #c2c6cc!important; +} + +#search-input { + position: relative; + top: -.86rem; + background: #f5f5f5; + border-color: #e9ecef; + border-radius: 0.9rem; + padding: .18rem .75rem .18rem 2rem; + color: #797878; +} + +#search-input:focus { + box-shadow: none; + background: center; +} + +#topbar-title { + display: none; + font-size: 1.1rem; + font-weight: 600; + font-family: sans-serif; + color: rgb(78, 78, 78); + text-align: center; + width: 70%; + overflow: hidden; + text-overflow: ellipsis; + word-break: keep-all; + white-space: nowrap; +} + +#search-wrap+a { + color: #2a408e; + display: none; +} + +#mask { + display: none; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + height: 100%; + width: 100%; + background: #c1c3c5; + opacity: 0.5; + z-index: 1; +} + +.sidebar-expand~#mask { + display: block!important; +} + +/*--- main wrap ---*/ + +#main-wrap { + position: relative; + min-height: 100%; + padding-bottom: 6rem; /* equals to or greatter than footer's height */ + padding-left: 0; + padding-right: 0; + margin-left: 260px; + transition: transform 0.4s ease; + -webkit-transition: transform 0.4s ease; +} + +#main>div.row>div { + margin-top: 3rem; /* same as the height of topbar */ +} + +#main>div.row>div:first-child { + min-height: calc(100vh - 3rem - 6rem); /* 3rem for topbar, 6rem for footer */ +} + +#topbar.row, +#main>.row, +#search-result-wrap>.row { + margin-left: 0; + margin-right: 0; +} + +footer { + position: absolute; + bottom: 0; + height: 6rem; /* see the height of #main-wrap */ + padding: 1rem; + font-size: 0.8rem; + color: #7a7b7d; + background: #f3f3f3; +} + +footer>div.d-flex { + line-height: 1.2rem; + width: 90%; +} + +footer a:link, +footer a:hover { + text-decoration: none; +} + +footer>.d-flex>div { + width: 350px; +} + +footer .copyright a, +footer .license a { + font-weight: 600; + color: inherit; +} + + +/*--- Panels ---*/ +.panel-group { + position: -webkit-sticky; /* Safari */ + position: sticky; + top: 2rem; + transition: top 0.2s ease-in-out; + padding-right: 1.5rem; + margin-top: 3rem; + margin-bottom: 6rem; + color: #6c757d; +} + +.panel-group.topbar-down { + top: 6rem; +} + +.panel-group>div { + padding-left: 1rem; + border-left: 1px solid rgba(158, 158, 158, 0.17); +} + +.panel-group>div:not(:first-child) { + margin-top: 4rem; +} + +.panel-group h3 { + padding-top: .5rem; + padding-bottom: .5rem; + margin-top: 0; + margin-bottom: 0; + letter-spacing: -0.02em; + font-size: 1rem; + font-family: 'Oswald', sans-serif; +} + +.panel-group .post-content { + font-size: .9rem; +} + +#panel-tags>div.post-content>div { + max-width: 80%; +} + +#panel-tags .post-tag { + display: inline-block; + line-height: 1rem; + font-size: 0.85rem; + background: none; + border: 1px solid #ced4da; + border-radius: .8rem; + padding: .25rem .5rem; + margin-bottom: .2rem; +} + +#panel-tags .post-tag:hover { + background-color: #2a408e; + border-color: #2a408e; + color: #fff; + transition: none; +} + +#panel-update ul>li { + height: 1.8rem; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 1; + -webkit-box-orient: vertical; + list-style: none; +} + +#panel-update ul>li::before { + background: #999; + width: 4px; + height: 4px; + border-radius: 50%; + display: inline-block; + content: ""; + position: relative; + bottom: .2rem; + margin-right: .4rem; +} + +#panel-update ul a { + color: #6c757d; +} + +/*--- button back-to-top ---*/ + +#back-to-top { + display: none; + z-index: 1; + cursor: pointer; + position: fixed; + background: #fff; + color: #686868; + height: 2.6em; + width: 2.7em; + border-radius: 50%; + border: 1px solid #f1f1f1; + transition: 0.2s ease-out; + -webkit-transition: 0.2s ease-out; +} + +#back-to-top:hover { + transform: translate3d(0, -5px, 0); + -webkit-transform: translate3d(0, -5px, 0); +} + +/*--- Typography ---*/ + +h1 { + font-size: 1.8rem; + font-weight: 400; +} + +h2 { + font-size: 1.35rem; + font-weight: 400; +} + +h3 { + font-size: 1.25rem; +} + +h4 { + font-size: 1.15rem; +} + +h5 { + font-size: 1.1rem; +} + +h2, h3, h4 { + line-height: 1.2; + margin-bottom: 1rem; +} + +blockquote { + border-left: 5px solid #eee; + padding-left: 1rem; + color: #9a9a9a; +} + +.post-content blockquote a { + color: #2a408e; +} + +kbd { + margin: 0 .3rem; +} + +h2, h3, h4, sup { + padding-top: 4rem; + margin-top: -2.5rem; +} + +div.footnotes>ol { + padding-inline-start: 2rem; + margin-top: .5rem; +} + +div.footnotes>ol>li>p { + padding-left: .2em; +} + +div.footnotes>ol>li:not(:last-child) { + margin-bottom: -.8rem; +} + +div.footnotes>ol>li:target>p { + background-color: lightcyan; + width: fit-content; + -webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */ + transition: background-color 1.5s ease-in-out; +} + +a.footnote { + margin: 0 .2em; + -webkit-transition: background-color 1.5s ease-in-out; /* Safari prior 6.1 */ + transition: background-color 1.5s ease-in-out; +} + +sup:target>a.footnote { + background-color: lightcyan; + padding: 0 2px; + outline: thin dotted; +} + +a.reversefootnote { + font-size: .6rem; + position: absolute; + line-height: 1; + padding-top: .5em; + margin-left: .5em; + border-bottom-style: none !important; +} + +.post-content a { + color: #2a408e; + border-bottom: 1px dotted #c2c6cc; +} + +#search-results a { + font-size: 1.1rem; + line-height: 2.5rem; +} + +p>a, span>a, +.post-preview a, +.categories a, +#tags a, +#page-category a, +#page-tag a, +#archives a, +#search-results a { + color: #2a408e; +} + +.categories a, +.panel-group a, +#archives a, +#page-tag a, +#page-category a, +#search-results a { + border-bottom: none; +} + +.post h1 { + margin-top: 3rem; +} + +#breadcrumb a:hover, +#search-results a:hover, +.post-preview a:hover, +.post-meta a:hover, +.post-content a:hover, +.post a:hover code, +footer a:hover, +#post-wrap .post-content a:hover, +#page .post-content a:hover, +#panel-update a:hover { + color: #d2603a; + border-bottom: 1px solid #d2603a; + text-decoration: none; +} + +.post em { /* MarkDown italic */ + padding-right: .2rem; +} + +/*--- Begin of Markdown table style ---*/ + +div.post-content>table, +div.post-content li>table { + min-width: 40%; + border-collapse: collapse; + border-spacing: 0; + margin-bottom: 1.5rem; +} + +table thead { + border-bottom: solid 2px rgba(210, 215, 217, 0.75); +} + +table thead+tbody tr { + border-bottom: solid 1px rgba(210, 215, 217, 0.75); +} + +table thead+tbody tr:nth-child(2n + 1) { + background-color: #f8f9fa; +} + +table thead th, +table tbody td { + padding: .35rem .8rem; + font-size: 95%; +} + + +/*--- Home page ---*/ + +#post-list { + margin-top: 1rem; + padding-right: .5rem; +} + +.pagination { + font-size: 1rem; +} + +.pagination a:hover { + text-decoration: none; +} + +.post-preview { + padding-top: 1.5rem; + padding-bottom: 1rem; + border-bottom: 1px solid rgba(158, 158, 158, 0.17); +} + +.post-preview>h1 { + font-size: 1.4rem; + margin: 0; +} + +.post-preview i.far { + /* fontawesome icons */ + font-size: 86%; +} + +.post-preview .post-content { + margin-top: .6rem; + margin-bottom: .6rem; + color: dimgray; +} + +/* Make preview shorter in Home page*/ +.post-preview .post-content>p { + margin: 0; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; +} + +.page-item .page-link { + color: #555555; + width: 2.5rem; + height: 2.5rem; + padding: 0; + text-align: center; + display: -webkit-box; + display: flex; + -webkit-box-pack: center; + justify-content: center; + -webkit-box-align: center; + align-items: center; + border-radius: 50%; + border: 1px solid #f1f1f1; + font-family: 'Lato', sans-serif; +} + +.page-item.active .page-link { + background-color: #2a408e; + box-shadow: 0 0 8px 0 #4b92d2 !important; + color: #f8f8f8; +} + +.page-item.disabled .page-link { + color: rgba(108, 117, 125, 0.57); + border-color: #f1f1f1; +} + +.page-item.disabled { + cursor: not-allowed; +} + +.page-item:first-child .page-link, +.page-item:last-child .page-link { + border-radius: 50%; +} + +.page-item:not(:last-child) { + margin-right: 0.6rem; +} + +/*--- post ---*/ + +.post-meta { + font-size: 0.85rem; + word-spacing: 1px; +} + +.post-meta a { + color: #2a408e; + border-bottom: 1px dotted #c2c6cc; +} + +.post-meta a:not(:last-child) { + margin-right: 2px; +} + +.post-content { + line-height: 1.8; + font-size: 1rem; + margin-top: 2rem; + overflow-wrap: break-word; + word-wrap: break-word; +} + +#post-list .post-meta i:not(:first-child) { // post-meta icons on HOME + margin-left: 1.5rem; +} + +.post-tail { + margin-top: 4rem; + border-bottom: 2px solid #f2f2f2; + font-size: 0.85rem; +} + +.post-tag { + background: rgba(0, 0, 0, 0.075); + border-radius: .34rem; + padding: .15rem .4rem; + margin: 0 .1rem; + color: #818182; + line-height: 1.6rem; +} + +.tag:hover, +.post-tag:hover { + background: rgb(222, 226, 230); + transition: background 0.35s ease-in-out; +} + +.post-tag:hover { + border-bottom: none; + text-decoration: none; + color: #d2603a; +} + +.post-pager { + margin: 1rem 0 2rem; +} + +.post-pager .btn, +.post-pager .btn.disabled { + color: #2a408e; + border-color: #2a408e; +} + +.post-pager .btn:hover { + background: #2a408e; + color: #fff; +} + +.post-pager a.btn.disabled { + pointer-events: auto; + cursor: not-allowed; + background: none; + color: gray; + border-color: gray; +} + +.post img { + margin-top: .5rem; + margin-bottom: 1.5rem; + max-width: 100%; + height: auto; + filter: drop-shadow(2px 4px 6px rgba(0,0,0,0.08)); +} + +#post-panel .panel-group { + position: static; +} + +#toc-wrap { + border-left: 1px solid rgba(158, 158, 158, 0.17); + position: -webkit-sticky; + position: sticky; + top: 2rem; + transition: top 0.2s ease-in-out; +} + +#toc-wrap.topbar-down { + top: 6rem; +} + +#toc-wrap>h3 { + font-size: 1rem; + font-family: 'Oswald', sans-serif; + color: gray; +} + +#toc li>a { + padding-top: 0; +} + +/* sharing */ +#sharing a>i{ + font-size: 1.2em; +} + +#sharing .fab.fa-facebook-square { + color: #3b549f; +} + +#sharing .fab.fa-google-plus-g { + color: #d42a2a; +} + +/*--- Tab Categories ---*/ + +.categories { + margin-bottom: 2rem; +} + +.categories .card-header { + padding-right: 12px; +} + +.categories .card-header>span>i:first-child, +.categories .list-group-item>i { + color: gray; +} + +.categories .list-group-item { + border-left: none; + border-right: none; + padding-left: 2rem; +} + +.categories .collapsing .list-group-item:first-child, +.categories .collapse .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.categories i.far, +.categories i.fas { // fontawesome icons + font-size: 86%; +} + +.category-trigger { + width: 1.7rem; + height: 1.7rem; + border-radius: 50%; + text-align: center; + color: #6c757d!important; +} + +@media (hover: hover) { // only works on desktop + .category-trigger:hover { + background-color: #e9ecef; + } +} + +.category-trigger>i.fas.fa-angle-up { + position: relative; + bottom: 8%; + transition: 300ms ease all; +} + +.disabled { + color: rgb(206, 196, 196); + pointer-events: auto; + cursor: not-allowed; +} + +.hide-border-bottom { + border-bottom: none!important; +} + + +/*--- Tab Tags and Tag-Page ---*/ + +.tag { + border-radius: 0.55em; + padding: 4px 8px 5px; + margin-right: .8rem; + line-height: 3rem; + letter-spacing: 0; + border: 1px solid #c5c6c7 !important; + box-shadow: 0 0 3px 0 #e9ecef; +} + +.tag span { + margin-left: 0.6em; + font-size: 0.7em; + font-family: 'Oswald', sans-serif; +} + +a.tag:hover { + text-decoration: none; +} + +/*--- Tab Archives --*/ + +#archives { + letter-spacing: 0.03rem; +} + +#archives li { + font-size: 1.1rem; + line-height: 3rem; +} + +#archives li:nth-child(odd) { + background-color: #fff; + background-image: linear-gradient(to left, #fff, #fbfbfb, #fbfbfb, #fbfbfb, #fff); +} + +#archives span.lead { + font-size: 1.5rem; + font-family: 'Oswald', sans-serif; + position: relative; + left: 5px; +} + +#archives span.lead:not(:first-child) { + position: relative; + left: 3px; +} + +#archives span.lead:not(:first-child)::after { + left: 65px; +} + +#archives span.lead::after { /* Year dot */ + content: ""; + display: block; + position: relative; + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + border-radius: 50%; + width: 10px; + height: 10px; + top: -26px; + left: 63px; + border: 2px solid; + background-color: #ffffff; + border-color: #9e9e9e; +} + +#archives .date { + display: inline-block; +} + +#archives .date.month { + width: 1.4rem; + text-align: center; + font-family: 'Oswald', sans-serif; + // background: yellowgreen; +} + +#archives .date.day { + font-size: 85%; + font-family: sans-serif; + text-align: center; + margin-right: -2px; + width: 1.2rem; + position: relative; + left: -.15rem; + // background: aquamarine; +} + +#archives ul>li>div>a { +/* post title in Archvies */ + margin-left: 2.5rem; + position: relative; + top: .1rem; +} + +#archives .date.month~a::before { + /* A dot for Month and Day */ + content: ""; + display: inline-block; + position: relative; + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + border-radius: 50%; + width: 6px; + height: 6px; + float: left; + top: 20px; + left: 68px; + background-color: #9e9e9e; +} + +#archives ul>li::after { + /* timeline for date */ + content: ""; + height: 39px; + top: -19px; + left: 72px; + display: inline-block; + float: left; + position: relative; + background-color: #ffffff; + border: 1px dashed silver; +} + +#archives ul>li:first-child::before { + content: ""; + width: 2px; + height: 44px; + top: -24px; + left: 72px; + display: inline-block; + float: left; + position: relative; + background-color: #ffffff; + border: 1px dashed silver; +} + +#archives ul:not(:last-child)>li:last-child::after { + height: 50px; +} + +#archives ul:last-child>li:last-child::after { + display: none; +} + + +/*--- Page Category and Tag ---*/ + +#page-category ul>li, +#page-tag ul>li { + line-height: 1.5rem; + padding: .6rem 0; +} + +#page-category ul>li::before, +#page-tag ul>li::before { + background: #999; + width: 6px; + height: 6px; + border-radius: 50%; + display: block; + content: ""; + position: relative; + top: .6rem; + margin-right: .5rem; +} + +#page-tag ul>li>a, +#page-category ul>li>a, { /* post's title */ + font-size: 1.1rem; +} + +#page-category ul>li>span:last-child, +#page-tag ul>li>span:last-child { /* post's date */ + white-space: nowrap; +} + +#page-tag h1>i { // tag icon + font-size: 1.2rem; +} + +#page-category h1>i { + font-size: 1.25rem; +} + +#page-category a:hover, +#page-tag a:hover, +#panel-update a:hover { + margin-bottom: -1px; // Avoid jumping +} + +.dash { + margin: 0 .5rem .6rem .5rem; + border-bottom: 2px dotted silver; +} + + +/* --- Effects classes --- */ + +.hidden { + display: none!important; +} + +.shown { + display: block!important; +} + +.no-scroll { + position: fixed; + width: 100%; +} + +.flex-grow-1 { + -ms-flex-positive: 1!important; + flex-grow: 1!important; +} + +.btn-box-shadow { + box-shadow: 0 0 8px 0 #eaeaea!important; +} + +.topbar-up { + top: -3rem !important; /* same as topbar height. */ +} + +.flip { + -ms-transform: rotate(180deg); /* IE 9 */ + -webkit-transform: rotate(180deg); /* Safari 3-8 */ + transform: rotate(180deg); +} + +.no-text-decoration { + text-decoration: none; +} + +div.tooltip-inner { /* Overrided BS4 Tooltip */ + font-size: .7rem; + max-width: 220px; +} + + +/*--- Responsive Design ---*/ + +@media all and (max-width: 576px) { + + #main>div.row>div:first-child { + min-height: calc(100vh - 3rem - 10rem); /* topbar is 3rem and footer is 10rem */ + } + + #main-wrap { + padding-bottom: 10rem; /* footer height */ + } + + #post-wrap h1 { + margin-top: 2.2rem; + font-size: 1.55rem; + } + + #post-list .post-meta>span i:not(:first-child) { + margin-left: 1rem; + } + + .post-content { + font-size: 1.08rem; + } + + /* table text in small screens */ + div>table, p~table { + width: 100%; + table-layout: fixed; + word-wrap: break-word; + } + + #archives { + margin-top: -1rem; + } + + #archives ul { + letter-spacing: 0; + } + + #archives li>div { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + + #page-tag ul>li>a, + #page-category ul>li>a { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + + /* footer and #main-wrap expand vertical */ + footer { + height: 10rem; + } + + footer>div.d-flex { + flex-wrap: wrap; + justify-content: left!important; + -ms-flex-pack: distribute!important; + justify-content: space-around!important; + } + +} + +@media all and (max-width: 768px) { + .post img { + max-width: calc(100% + 1rem); + } +} + +@media all and (min-width: 768px) { + .post .post-meta>div:not(:first-child)::before { + content: "\2022"; + color: rgba(158, 158, 158, 0.8); + font-weight: bold; + padding-left: .5rem; + padding-right: .3rem; + } + + .post .post-meta.flex-column { + -webkit-box-orient: horizontal!important; + -webkit-box-direction: normal!important; + -ms-flex-direction: row!important; + flex-direction: row!important; + } +} + +@media all and (min-width: 831px) { + /* button 'back-to-Top' position */ + #back-to-top { + bottom: 9.2rem; + right: 1.2rem; + } + + .topbar-up { + box-shadow: none !important; + } + + #topbar-title { + text-align: left; + } + +} + +/* iPad 9.7" horizontal */ +@media all and (min-width: 992px) and (max-width: 1024px) { + #main-wrap .col-lg-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 96%; + flex: 0 0 96%; + max-width: 96%; + } +} + + +@media all and (min-width: 768px) and (max-width: 831px) { + .post img { + max-width: calc(100% + 2rem); + } +} + + +/* Hide SideBar and TOC */ +@media all and (max-width: 831px) { + + .sidebar-expand { + transform: translateX(0) !important; + } + + .sidebar-expand~#main-wrap { + transform: translateX(260px) !important; + } + + #sidebar { + transform: translateX(-260px); /* hide */ + -webkit-transform: translateX(-260px); + } + + #sidebar .cursor { + -webkit-transition: none; + -moz-transition: none; + transition: none; + } + + #main-wrap { + margin-left: 0; + } + + #search-result-wrap { + width: 100% + } + + #page h1.dynamic-title { + display: none; + } + + #page h1.dynamic-title ~ .post-content { + margin-top: 3rem; + } + + #breadcrumb, + #search-wrap { + display: none; + } + + #topbar { + position: -webkit-sticky; + position: sticky; + left: 0; + } + + .topbar-up { + top: 0 !important; + } + + #main>div.row>div { + margin-top: 0; + } + + .post img { + position: relative; + left: 50%; + -webkit-transform: translateX(-50%); + -ms-transform: translateX(-50%); + transform: translateX(-50%); + } + + #topbar-title, + #sidebar-trigger, + #search-trigger { + display: block; + } + + #search-wrap.shown { + padding-left: 1rem; + } + + #search-wrap.shown~a { + padding-right: 1rem; + } + + #search-input { + margin-left: 0; + width: 95%; + } + + #search-result-wrap .post-content { + letter-spacing: 0; + } + + #tags { + -webkit-box-pack: center!important; + -ms-flex-pack: center!important; + justify-content: center!important; + } + + sup { + padding-top: 3.4rem; + } + + div.footnotes>ol>li { + padding-top: 3.5rem; + margin-top: -4.3rem; + } + + div.footnotes>ol>li:first-child { + margin-top: -3.5rem; + } +} + +/* Compact icons in sidebar & TOC hidden */ +@media all and (min-width: 832px) and (max-width: 1200px) { + + #sidebar { + width: 210px; + } + + #topbar { + left: 210px; + } + + #search-result-wrap { + width: calc(100% - 210px); + } + + #site-title { + font-size: 1.3rem; + margin-left: 0!important; + } + + #site-subtitle { + font-size: 90%; + padding-left: 1rem; + padding-right: 1rem; + } + + .contact a { + padding: 0 0.6rem; + } + + #main-wrap { + margin-left: 210px; + } + + #breadcrumb { + width: 65%; + overflow: hidden; + text-overflow: ellipsis; + word-break: keep-all; + white-space: nowrap; + } + +} + +/* Pannel hidden */ +@media all and (max-width: 1200px) { + #post-list { + padding-right: 0; + } + + #panel-wrap, #post-panel { + display: none; + } + + .pagination { + justify-content: center; + } + + #topbar-main { + padding: 0; + } + + footer>div.d-flex { + width: 95%; + } + +} + + +/*--- Large screens ---*/ + +@media all and (min-width: 1200px) { + + #main>div.row .col-xl-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 75%; + flex: 0 0 75%; + max-width: 75%; + padding-left: 3.5rem; + } + + #back-to-top { + bottom: 9rem; + right: 4.3rem; + } + + #search-input { + width: 15rem; + -webkit-transition: all .3s ease-in-out; + transition: all .3s ease-in-out; + } + + #search-input:focus { + width: 20rem; + } + +} + +@media all and (min-width: 1441px) { + #topbar-main { + max-width: 73%; + } + + #main>div.row .col-xl-8 { + max-width: 60%; + } + + #main-wrap .col-xl-3 { + max-width: 18%; + } + + footer>div.d-flex { + width: 70%; + } +} diff --git a/assets/css/_src/syntax.scss b/assets/css/_src/syntax.scss new file mode 100644 index 0000000..cc1ace6 --- /dev/null +++ b/assets/css/_src/syntax.scss @@ -0,0 +1,157 @@ +/*! +* The syntax highlight. +* © 2018-2019 Cotes Chung +* MIT Licensed +*/ + +.highlight .hll { background-color: #ffc; } +.highlight .c { color: #999; } /* Comment */ +.highlight .err { color: #a00; background-color: #faa } /* Error */ +.highlight .k { color: #069; } /* Keyword */ +.highlight .o { color: #555 } /* Operator */ +.highlight .cm { color: #09f; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #099 } /* Comment.Preproc */ +.highlight .c1 { color: #999; } /* Comment.Single */ +.highlight .cs { color: #999; } /* Comment.Special */ +.highlight .gd { background-color: #fcc; border: 1px solid #c00 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #f00 } /* Generic.Error */ +.highlight .gh { color: #030; } /* Generic.Heading */ +.highlight .gi { background-color: #cfc; border: 1px solid #0c0 } /* Generic.Inserted */ +.highlight .go { color: #aaa } /* Generic.Output */ +.highlight .gp { color: #009; } /* Generic.Prompt */ +.highlight .gs { } /* Generic.Strong */ +.highlight .gu { color: #030; } /* Generic.Subheading */ +.highlight .gt { color: #9c6 } /* Generic.Traceback */ +.highlight .kc { color: #069; } /* Keyword.Constant */ +.highlight .kd { color: #069; } /* Keyword.Declaration */ +.highlight .kn { color: #069; } /* Keyword.Namespace */ +.highlight .kp { color: #069 } /* Keyword.Pseudo */ +.highlight .kr { color: #069; } /* Keyword.Reserved */ +.highlight .kt { color: #078; } /* Keyword.Type */ +.highlight .m { color: #f60 } /* Literal.Number */ +.highlight .s { color: #d44950 } /* Literal.String */ +.highlight .na { color: #4f9fcf } /* Name.Attribute */ +.highlight .nb { color: #366 } /* Name.Builtin */ +.highlight .nc { color: #0a8; } /* Name.Class */ +.highlight .no { color: #360 } /* Name.Constant */ +.highlight .nd { color: #99f } /* Name.Decorator */ +.highlight .ni { color: #999; } /* Name.Entity */ +.highlight .ne { color: #c00; } /* Name.Exception */ +.highlight .nf { color: #c0f } /* Name.Function */ +.highlight .nl { color: #99f } /* Name.Label */ +.highlight .nn { color: #0cf; } /* Name.Namespace */ +.highlight .nt { color: #2f6f9f; } /* Name.Tag */ +.highlight .nv { color: #033 } /* Name.Variable */ +.highlight .ow { color: #000; } /* Operator.Word */ +.highlight .w { color: #bbb } /* Text.Whitespace */ +.highlight .mf { color: #f60 } /* Literal.Number.Float */ +.highlight .mh { color: #f60 } /* Literal.Number.Hex */ +.highlight .mi { color: #f60 } /* Literal.Number.Integer */ +.highlight .mo { color: #f60 } /* Literal.Number.Oct */ +.highlight .sb { color: #c30 } /* Literal.String.Backtick */ +.highlight .sc { color: #c30 } /* Literal.String.Char */ +.highlight .sd { color: #c30; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #c30 } /* Literal.String.Double */ +.highlight .se { color: #c30; } /* Literal.String.Escape */ +.highlight .sh { color: #c30 } /* Literal.String.Heredoc */ +.highlight .si { color: #a00 } /* Literal.String.Interpol */ +.highlight .sx { color: #c30 } /* Literal.String.Other */ +.highlight .sr { color: #3aa } /* Literal.String.Regex */ +.highlight .s1 { color: #c30 } /* Literal.String.Single */ +.highlight .ss { color: #fc3 } /* Literal.String.Symbol */ +.highlight .bp { color: #366 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #033 } /* Name.Variable.Class */ +.highlight .vg { color: #033 } /* Name.Variable.Global */ +.highlight .vi { color: #033 } /* Name.Variable.Instance */ +.highlight .il { color: #f60 } /* Literal.Number.Integer.Long */ + +/*-- Codes Snippet --*/ + +div.highlight, +figure.highlight, +.highlighter-rouge { + background: #f7f7f7; +} + +.highlight { + overflow: auto; + -moz-box-shadow: inset 0 0 2px #e9ecef; + -webkit-box-shadow: inset 0 0 2px #e9ecef; + box-shadow: inset 0 0 2px #e9ecef; +} + +.highlight .lineno { + padding: .8rem .5rem; + min-width: 2rem; + text-align: right; + color: rgba(140, 134, 126, 0.67); + background: rgb(234, 236, 242); + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + -o-user-select: none; + user-select: none; +} +.highlight table { + padding: 0; + border: 0; +} + +.highlight td { + padding: 0; + border: 0; +} + +.highlight pre { + margin-bottom: 0; + font-size: .85rem; + line-height: 1.4rem; + word-wrap: normal; /* Fixed Safari overflow-x */ +} + +.highlight table td pre { + overflow: visible; /* Fixed iOS safari overflow-x */ + word-break: normal; /* Fixed iOS safari linenos code break */ +} + +/* Override BS Inline-code style */ +.highlighter-rouge { + color: black; + margin-bottom: 1.2em; +} + +code { + -webkit-hyphens: none; + -ms-hyphens: none; + -moz-hyphens: none; + hyphens: none; +} + +code.highlighter-rouge { + padding: 2px 4px; + margin: 0 .3rem; + border-radius: 4px; + border: 1px solid #e9ecef; +} + +td.rouge-code { + padding-left: 1rem; + padding-right: 1rem; +} + +/* code snippet radius */ +.highlighter-rouge, +.highlight { + border-radius: 5px; +} + + +/* Hide line numbers for code snippets without specific language */ +div[class^='highlighter-rouge'] pre.lineno { + display: none; +} +div[class^='highlighter-rouge'] td.rouge-code { + padding: .8rem 1rem; +} diff --git a/assets/css/styles.scss b/assets/css/styles.scss new file mode 100644 index 0000000..354a8b1 --- /dev/null +++ b/assets/css/styles.scss @@ -0,0 +1,9 @@ +--- +# Aggregation of CSS files. +# © 2018-2019 Cotes Chung +# MIT License +--- + +@import "_src/main"; +@import "_src/syntax"; +@import "_src/fonts"; \ No newline at end of file diff --git a/assets/data/proxy.json b/assets/data/proxy.json new file mode 100644 index 0000000..d84ebdd --- /dev/null +++ b/assets/data/proxy.json @@ -0,0 +1 @@ +{"proxyUrl":"https://your-gae.appspot.com/query?id=the_secrt_id"} \ No newline at end of file diff --git a/assets/img/favicons/android-icon-144x144.png b/assets/img/favicons/android-icon-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..782cf3a9437428c4609ab98f4a6a8e272209e956 GIT binary patch literal 15762 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 SQW}97Kq?9v^0l&N;r{~zum?y0 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/android-icon-192x192.png b/assets/img/favicons/android-icon-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..db2d8e67a4c5823d5a151cf0c03e2f7cfb7b47ab GIT binary patch literal 21277 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¥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 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/android-icon-36x36.png b/assets/img/favicons/android-icon-36x36.png new file mode 100644 index 0000000000000000000000000000000000000000..0b560f448539c1399d87ff87b8a15910dcb058c3 GIT binary patch literal 2928 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 QHDCw8!N$d!Y3Y~vZ}B%Wj{pDw literal 0 HcmV?d00001 diff --git a/assets/img/favicons/android-icon-48x48.png b/assets/img/favicons/android-icon-48x48.png new file mode 100644 index 0000000000000000000000000000000000000000..7b01aa734ab27f8f0dd69f20d33366d7d0604d74 GIT binary patch literal 3978 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 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/android-icon-72x72.png b/assets/img/favicons/android-icon-72x72.png new file mode 100644 index 0000000000000000000000000000000000000000..a841bb8066e4b90478fe43d30a09301184eff41c GIT binary patch literal 6302 zcmZ{I2Q*y4`}Wm)3klJp_p-}sYnAAh)k`Egi;c3%3PQAm2thVltWH*m76j2HdY6!F zg6KksXd#I5-~7&Z&iDKN=X~d$xpQXbnfINU`#kS^&pa_R(PyCLqy+$g!O%d*f>;~; zE7X+4xAk^|KCvSAyotC80ClN!XD$@PHc60$z7|k3&i#Yf;BzyuKmfpf5desO1OTVR zuILQ_2nGSbrZWIQUjP8Re{QQej5t8)YNW3NT>g6sJId0CJv9CXc0t7YKRyAyA#Zg6 zxW;0rbJHqx=38!fDEFs~#i-_2t*_b+-v~GR7)ElE_R2Pkky! z7LO$Ti}cWt9bG+;B5xmgWH`vo{oF@R)72n;NJ;3z8QjF`lfe4^1&2|+v|YWhZqtwk`22C`|nLpjf|72KMSbuxJ0@Jg3gFYXluh7M5T99I!rzS*>t`+;fGwF5hxIS|LefEw_z!3fz0VK?_rP@~ zWs=1PcttI6;}fKMAov?=DQda(SAi5C>oEv)oq17=nZ%FE1`u^1oaec4>wZ4dY?Yf3Kv{M%a+Ql}&x@*Z1J68njRNeDwBXDILm z@S%(x41XHfQc4cG`j+b0hw)6Nkm4Bjn$|z&l5UPl=+d3!oPWr=iT-$@TcKOJ8@)Ix zI47pu5IwM)^HC{g8(v|8Pk&o;r!4(cRzR*eeTD>c*^-hO2fvf4&{JPUkRCbhMB2SG z=NrfP_10HKHA-#qjMRU&%fxrgp0En9d^YT=&G`X6KEhJX)uhi*VL0Q#9;;vkD?Xhu zg65cdm(Xn@6TMWCH<5#E_lQfkIL@0pVekFI zjn>|C=z}022yGp$ZZ^unlx{lw>3s`+3wEH(c|ML_rt^Md{v42Vu;`gO>THy zbRk5tra&5XtBdQnxD;h6h^3bI92erCe{LX@(C7NnqN2UYnS(MDX>M(_>k9Un z)ze|d#vUakMAcb%;q=7Vii?Y5htfn@llqjy_Jx{!%VN-EmjJ!-8~rp8=g zV6aXv#?6=p$D6^ex#IWwl4M#pJ_m1oM%?L&?6_U;PP4YQmOw2iCFUd#;lY)=SwFbalSRYZVQAuDI@yPehp1kNMg{b|Otd0`FfMrj=J#y1k2~&=Fv%|0>19!vj%NJZfrc zx^Q-PU$t9oK34x)ka84Qzn{eCXAfxiCZFHO<{0{QDhZHC_7l@Vtv zH?lPO_%e}sO%$Xg; zsJm_?!_fZ2!^4x1?as=YR*44B30{<+UnUld1@mzaU^6qXh3)mRBmW+4*N6Y{`?0-! zl?6*i#W+~3o74-Uuahz|o|5XWsIJZs%@19Evu~22Bfzg3@+&==OQ}C8G4XRy6OVUK!8xr7~Ipd>`hY>+{wx5W|E%w`r=~Y&u?wE ze(ihxEK`sjVEW|VUDK)jIkJfRpI%x2P?`_b#^G>8ayuKdhAzfXy=-m0?bmT=)3QG- zNfaFzVTp0b`r6<*VkFxkq@Ti#jiX~vLEZiHEu=sw&G2hiRF}`p8$+9_Tl~Sn!S(kK z@1E>ubxBoMSG(~c8|+Zt-f8Sk5$2gvb|0yyDM(}J=%_Ubhf!6vwOR4;l>bh?cV&;X z(4p;~q0kj8}`4g}=+>0#h8G|t`9r#s4XwwAYpNVz1gsD zKhfl4F0ZJmk$FpdVs51KrO}(6jEs!PELpoduDbJ-L`J|kM=|-jyvHa>X-elp z9IzUi&z>}}LZKPP@Bxzi{P}aOwf)&`zAP500HSsXYPHxp~?SFAg ztqWMuo4>y$O_aT~v~-!86^O(A<4Z%~V|ht-Ml*ABtoQ8E(#k+8d+wN(L|g)K(~`C| zLfni6r3zttuvDUR(1TM<3a=WJ@_U8)?TcHcrc6|f+|$e=-r3ZzZ9ttxbk2 z#g2Jg=jMJ{Q$XG9k%J1w{-=FG#%*f-q zJ<~Y-=~KrReMN%*b|axabk7y=nH9-4E>175txX*tAGawChXLmwh-v9U+DQRD-`?bz zAErkX%<3Rk@Jg~CUC#qk(^S~`@2NndB1WW}=LB+;(3!SQ53DUJ(qWfp2NuLI{<@H% z=NaB8Yq-vBU{zG(}C@2^P1vL=Ed2-#W1Dm>pgsoNz)paW;DQ?CQ z!Bm()lkdoUM>xK-(~&4V0d@xrw#vT6;#b#YBr%A|q;n>v@8GeSIOM z66na>%BM+NIb7xt7CUIz{%Y6l_Ru{BqQY`oo!^m4NJ@ecX~ZmPY027lZ+p49>s&g2 z9gG}iBPQPg%rdUDXbT$jebi;^bG1E@N>A^p>ypnlUFYTX2o2>R1QW@#+OnQ+1p6}= zlzMn{5=q_R;qew=FC!wPC!XoXMn}N7J7_%gM>TpPV#%SBg`A0L^l| zFCMf$j(_`>gC&3{`sJ~)F&+j6hT5j)=F7>0b~0nlZXc~;qmnDRemzVzg!b7mtO5Bz zz-!+eXHbIgtQ*c@-fPr5zh-N@TS+c^v=%nu-E(7HRB9E{$v z`lMznG+&ixdV6`u(`?iho}9fOsT3kaHQqmA^_OH9GD)+J&cA3U_qUA<Of-|cGe(2yUM?L-Kg#hr`^EAIfz?R)+PLx1VY>)c`cpd9?*FF#PX)dTk(z@<4{ca>^uSx!`qam9bKM9O>}lty^;qV z>>+O;q6&*exP#= zbVx=)M0HMAUIXpyL8*s*$Y-U@2T#!skz~yij>Eajh8ysu#K#E{)MAtu*IuL)6ok&7 zSJDs)Q$IPGSo>!4ZX@P8x11L2I{6&o=TGr3{fF+$uxFXLL>f|f3pSjXed7MkX4-$1 z|8AMKIN`^*N5d>bPdT8TxbU-IVeC)GYWwe-HiOjkhy7*0o0uA0j$DleHS-kWbn(_d zw=~}6Jj|O@_ZFu!lE`+lcqi)3zIWu${y09o=6rQjH>-N#T()Zi-ltw>b`aBfp!fJ7 zJ=WHqcRK#`d3;WAMZQ)16*DpNA{ev#$;-R3ttR1t9J2@1o0LW)Wp$`=s?33p*-?LI zK5lhE)a-3|skwsWv*}HLef?cPWflg7H?x}n{b(@^`THyLZT_hw5y{Hs&cpRw>?mLwiNv&~O@ z|Ng@HYqHMwUi>}X+559LONOhV_zQK5P`VJIyOuu1yd%2RVsCDqB*~j$^MdQ{CN+wr z^p;CaRc=bfkBHZSBC2hvAK140)b7@B{7fNaSjVfv2;K$$&~>uOUCrl9F{}2@!rij0 z+drjHOTQ>=`EXjcoOS^Ly>2I~cgf%Btj`Q`L-5L=>Aw7V#VaX@l?z5jnM(CHODQ9N zm=62FzxQZRXZ+c_BAEwxS9k?4P&p{np(E-xvyrc5ndroX**|Y0Q(i8Pj@p5ZR;mpE zVjt-ftAS-2xNU{o4kqevTF|AbCn}8P@J49hdlJMksNfC-+W`zEAw%b(ZqwC%Zwb+m zG$qW7cZkjS5YXp#xBStjnK;g(_b2@_O``|64$8icb4?WB_mIimx3|+hzOgP_JruD< zr-AcV_U9$sJsXJ$N2z@A9ev>xmb4z03RoINQOPrLSQWe$GohI5we@03b)Wp+dqyu^ z$t{QHt7+$?CRbz-K21FzYfLS++K!UZ1ZI!E_03dX^EQn_n|8QtI@RK=c@@nbQ59Ah zm59BXv^U74{=k_UN)BV7TJjWAOcK?{Xs@SOo8~rqs_*=`wY1D^^7#%&h4h1ydW8lL z$0mtzq)ZnOx@yQT0j>_6B5P zeNGp@c<>8&!6o&SaN}=oG{kyqk4g$;73zD&HN5w*p_>uXiGC(^+L)RL4)BXCm=kot5fN(^oaM zZf-S4cG7^;pVXRU9=SE)15ll}L z@mw=%D%7SV;`nKA0lDkcPYkrg6{wZr6^e^sge_N8e(0`#LC0$4_(H@MB|g0gFyJ@7 zs{QRz*XD`$s=Dj5G^D1+dO321)N6LWty>Aoa8r)LcL&{T=y6a52#2u zJ20!7=)?q%z5L#M`rf+1XnpQr!uCcg6aHc0Q!Vk9`Rj3BoJWM6(=cnOUzP}~xTNz{ zv^D%NW|}XOGFwcT){!THv0osq>;544lJZ-LW&Z}g)LMsVF z-|Z?Lr>N#?@$DQH-xqORRaaQBUkrW^W1uH1-s&BN_04MP=ntDHCXvStf7TbD-eC5EuQhyP?)vroQHpiZgntYS?ll5Y2e*N}O zIiP2H5)+qp_S5Zhs=wT0WB22w1s+vh z_$ub3y}8UFFN=j|o7GYk;Cs@{6^MwoSiHR`au#>qs5uzS*$>u@e@XcQ1g4iOqc*A}Gkad@?nOt0^%f{`=d&;~KuwH|6!!$I=b> zGaKF)sD@jfeJ7}jQch;x@Ez>Qrhrk;C1`Ac^qyCc+szitO{K@@|K;o%G{fbu^yq|J zx<6;Ec)R@=^u}BPYYDW(<^>osda9h}IBE%#lp4#Hx?A|CUpXndQ}FOvW5bKm4At+f z>{x$H=x!56;_EHdm1UF55{4CeFDvI&k4Fr%Vps?xI;_^|>O0|=z zgG1{=lye-$exk>SPRyXcK2F5;?M}J31L0lp&pM`+ou(qMvvZ0a)A3gWGyCr;%{D@- zv;wGh`3q?$P01j%x$87Mj~{!5mlYTf7uA=(I2jR4w<4biz1RqBoppt5?})IBnJEhQ z>PiY&jY*w6c;2&dV7d?zBl9RvET8m5VbS-b*Hn~}xjXX)dY7zGi@Hy1@nLty@n;`~ zNUDqQvC$lbmPQWh&hH7iCl2|fVo?sAT^14xSM&EGxE8E`kaI>WML+0fc?N;Ijr2!p zRG#LiDRr&IF?2SUyf!m_cey-m@5~#?TJ`R7SWDdO5!x8163uy{c>Gv5Fz0cBSO$f~ zarTX#<7*hv$RmBa&bALRllp~XMiRrBrd_}F2?29GJa;00voJF~jmFCFB*k1gQ}~T+ zId?6j=70MBeREmAfVlyq9+XNDJL{?fs+-HyG)Vizjd2+%8#mFOXPxwqGW{hVW4$uA zIdMDw@A(AzMU=z2G2_aL;6CxDSQw*w3*+vBK| zSCRyQpdb))K?BqOGr_=G~ekSI?t3;h#2<&vh#m1 zwkUUu*FVTq6+bl*a{a#`2$U}p6XuTu{YwSq>{z1iBLR?>R(i4ePvVfxe+^k%7y=$BA0%=6vc7&8AGD{ehs!;b8`>{O z_WynuSruiZtGhf{$=yu_)Ow}iw}0*cZIQqm>TAPCak zEc_qe`DVWN`_Fu{bN9}3@45HfIOqI+=b0z^xt0nE;X^_Y2t=Z$3eyE@i+=@z2mJre z@D&Ft96JR~1rVqB5V)xtc>=ZSe~NOylPn0tY^w%S z(D$3&&Gip5nM&Gk_ntO*#{1c4p!txH%2w>zFJ{sR1d26+mE6_>G5|GFWsevfAhM)l z;Med=93)R(!_Aa^e0-7TYpfO*Ui97_7@QfUKA zro;Pk#PVsLm(EmFR0evMgXPxEsYqfHcTI$e@J7V#yX>3o<9vsKx+dO%A1~8h?_Voj zY51=+cRXeBpgUlrpe1syU-x#dCfHhtA6_CZR$Kn)dhWmnql!Eb-M>GU2>oz$Ik;xzKKPx?BHg05JWV{5%R#N zs9omvj-_j;#Hla1E%*+w-RM42Ui@k;4$sB!!P)>*gH^z(5$yI$qHf><(Q3Nt28$OE zPA1A|5DoeXimbrRbh_J}UNCb|pW>3?;KA~PP9JNRm6pWtmV;*y%^~x9@0NW~KqF3Y6vsa}9?p2PO^re1ecu#6MwmpP_KNk9FiiR6=>$Y(W~?)F{~sNR-c zX+n;BFSvfKb_)7ct9W~*KJC3fYaT>K25DruDs_Pb`a*vS1es-AP$gL6^=zw&OWAJ z6yYu)iheAD&P7c{*f1OY3mJl&yVLFIM8}mbPSy@@Qy5HNMC)(UN0b1|ksh1`5~xar zLI<$C1HF7|L$}hQ9%gqO5qGj3#H2iQ?~JZe6L(l|>X-mua|-1`gID4}rTi0wqaa@( zMTetsp~zwcH+{mQUB0CVU*KU05zT(IX(-L4oCBKn)`7!pC=b|{3E?vIZaf2pEiE}{ z^b<519o20GW1-NPC>~`hop1;U4BXt=DXyS({+wE6 z{AGN6Tv0UpDXcEyRdb;JsXs-396P0Q1ZYCI)`bpU#lG`-z8HO4;-G72*gILS7u{{e zN=eYv)bw|6ucW3X(OEQh!yiWh6=h*W)!=e38U`%-`>OlD)x%i4yu3bIcHzA=HYVEG z$GfGypdFQXsY>I6O(-G?39n^2l7pXC$Va=(#nFi+_(^N|`ikxD?iTBoC$3RKiNU?@ zQN62iv_g?FF@!$*i$g!FjQec_qf`m~$S(rlOF*za8t2_&EkKd+sGu+7hrxGHxQqcz z)-G%Pb%To(#>vyw)irc!RE4k9A`ccZKCbKNreb9TL9ZyL!0I*SPksZh*f%$6=yG$J|_7O^pCLYIC9@m}#@p`TFLfS8l!P z%i>kvAAALrC5^tJp^(qci=Ko>&v>XFrw@!RE)G|lHrpeSi)pH?3^*ayMh1H1IE!xG z;Y2i)*hiiGWZ}#BQ&Ur7=DrKwNzeFOQ-IUo+TP~k<;DF~W557$ZO4dyS@5CbZ#@}T z7~z(O3uq=A)!Vv%!=-jx&$JT^zViBgD4wuNj)PUMAG5x0o5pM0;~IKx9NHc8AX`#O zijh1CUuML~-PCt7o?7fN zN2_i^nZxh*rW#zlO?^ih=Nh~RGX$=3_k&cXD~*a8P4?cOp9Y(YA?M5PPPFfedl^H6 z%vmXoEV9-ILsISg+*KFGF5f;@ARiPZUaj^&Ue|2dYub)dE`k+}VTrbn%Ev%*b8}m6 zueMtbI*E8pn^HbIO~2DBEiWqr0>Q(F56dbmZTjD_u_pHyQk{sIE0F(lt-Y_Sq{y~Q zTc96Lco{Ro8ze^j%1?TDtv@+a!n0&*X2$<}!Xv2?JcR>ga-7^GRhwVqdZYyOy#Rzv z)KyBcYv=9ozW69VU1ePAG+jMaU0scFv=GgndQC*Vg-ACoAt51o7_U6#ZOY5bJEfM) zz6m!p{lMRTQ+L%?)7sh^u={zM;W?4>+|THH99!YIM3cuYSm)ZM6W0!kBpm>&=%^!4@cixjz$ zO$Z+b1NWIJ?O!J>BBJT!;^J}^e5cv#ek=aF>-F0Lgc0@k)x+xin>CImI6l-w{QF?i0`TuecpC16LL9VPNm%4T}LR(hMLfl zil3>s6N~9315R(4H>2WdEY;Z5RCfxOUQ7uO1lx8n zz-{!{XLt6gu`ykw<=cK6zk_f1m*=5(=L(OkSrk1zg{rEm0IblM;K8#5zH+Au4*GMFoD|4FAQE`fOW8*?OF#oBo=~d&_==O2{*SB1dLINR6=8o*-sAG z*6&8c!u6j#MIbWz-VXeUsm7uxK%-*-fB`T%mVarxrXwJ zilVBjc)-QMX09}N#$S+s04+UG;-=0t;Q34cyoF{JO%R>IvbGV`<%T{lodDCP}{L zow`Dd3{5!GdtfL3(51SX&!FlhoK+OSjF}lV7Z=_`znk~xT))o3-73)Nvhs2+25wf@ z2YDRH{cp8Oh2+l}aj`ItBZ0t~UmpD#aBy|yZz2c?2#ATVj5>JD9~3qcdV36hI0+_L z@;0q*yK-C~%I+&6fiV?EOqdP!Qz6fJ_g(?O`>;mxwMt`0 zrWY3hg5WFl@j5Xa6{3ojC?X>Ana8NE*xvm5>I$GEe1zo<4QY(G2X9O~heY(@a1vDk zuHwvp=6hNbnrrOZntFET19;wZ2rt#^Mvp)0K}#DyxNC~r+CrWSUMJ6vj&?jSG*K{` zS!A#k%;Yg3ha#1JWA@2M39^+S;+QiVE&CFXuTv zQs*a6o`|1L>SYSqk=DM5vlmwP_7)Mc8(s@1;#+QB!tfcI`LmTccmVKrJSa3mY;Qvp zo-O6ew~^yXnzwQI)7bTa=>yCNcN`sHaE*V`j4yx)^VX07{e*C%B~34ouC z7jk#j@%%#|>qHrY{r0;MO;$><$vDu`WIOcmpCTZl8*Gf^*R1v?hTh9aOGJ>-lKT62 zDG+%ynxscnE&yPIBqGenkJl+1Ed1~TKz8kgV;r))yuAfNZ-e&Q zu91?Gl6b;}m|D*btrE@b9)Vu^u78ErF6SFS25IC%q$f%=S5x$~R)EV}n_IdS1vZY< z0mD=G_K*O-h|QXso&AA1U&?>k8gQEUis^+oeZA-#oY(1}T&`7n-5H#moi#9jRpiFm zo~79X5P|&lQNed_zFbB|25i!YMwjcWn}=K?TCcV$L>Lmu%1-gGkaG`lmVw*2#ayuAKKlF-G7+{KG6j@AV4I)(WAU$$e5bgd*X9K8=> zPySX{Im-m$t0^n{8URFnPc6w!)_+-wu&^+BY&QU!-=M^l(KyBp&X$M2yLn!IiULrs z2tE1p=evPFfN{&d$Gbn@&ygP_2p}B?z!-mrY@9MWBLr#xaq-PfE>iO5rY1iie7@>s z2;6A|xTGs>WbHTi9IKJPiSJO@N3v91$1Tw;M{LvH?RsWrW^f}TH69?3jkDq}Z*I=E z5hREJGs6)-Qn+mDjexNIIp0Ea!e+c!O;}7US%cld*?H|Bt{2Ag6&AA4f2Rs~G2@(O zBdErb#3}j}aNiJ207LM}*kCMw+l7~%-3D2hcfu-^UP7rWi#FYLR6VR6x9tNu30xez zGaX1PWJ{c+8Uf@Vd%l&Gm2q5pB|xSS`CI-8L!#%|jGgDA|AzZok_u&FZ)_*uS~@#r zbhzP9^A^9u^>{il*$l1HP~06p`$;#8UwZeBStq0V5>ZYB8{4FWaJGl>f`FYhxGu?B zz<60Sa>OZ6z*&-gRfYo`7SS0&pphq?85tR=7;XSine3THPrDHSDHj9pFz4o~A9S_B z6=9azqz`?t3&-pWe5NQJJIyH_yA^cw^pxQ62Z3ih1vNEfT~JPb{@w-`pPgT|`P|L# zjc^5zWXc%e!Gp&w-3sK+xQpP~{t+Vvf;d$luXczY{Z}n`J0Hs`5jI^V7B4qhauQln1dymXORMV29`BJ>7m>3-4#!3GgMIY#dpp==3R zQr$0n9=yH&&~;_K@u?^+z0+XE31N)0XmfvEC3V<2{4-@46-D6EY!H(rneH4>`QMs* z!y)b5$^Dg|c(`daJKyL)pO&N0vmWEYMnz~opBKG*i$blHa@xcaZ0!jnD*nTu7kJVj z9&8_M$yprpj zTn7Ip#f>Yg9XrI9re~<*Xe`HB>Pgy@jP@NoeH@B)EW`GCuh@F~Z|J(?ijo;$M$f!s zyH#7wig;M>hA=dsh1g+92@7^LSEBnq-OW2?sDmxyIFcH?P&8F8`ULXzAZwKZJ^_ud z@%hX?;&-)CGcmey_5+vj?@$ND! zaea12`#!kLTs5GpB^=^#q8b@2fq0sO&%Wu%%v!4z+vSZ(1KZ{tlXO?A0RI1t3Zkw;-DC}+@_7N>N|D|audHHf){B< z$y&D6rbpW%t6qt{@j?l9ad0h7HCnrA#-1EM87y_X2C@MtjUnaguOGEJdZ9GEhVhU0 zV5+zhx@KBJdFRb#2(iEw5Bzj;zTgH&;j99kF-R=Rfo?2sxb4MpgN()_^X`msnk}L< z`45knK@1CR?>4f;j)rJU-JB6%CVeTL;qv?+uqQ1UHdb}=9qiSWSX4l_cb-Lha9&5*e==Pn&nE`L+Nj{nl1L+{ePwgIK){B(DYW6 zDP5RP-YqJWl&oM~zh%iDmWjbhXDaFiLx0DA+-|CT@hNi&vsJ~lUo{^LFXT3D4>qKB zSs>6V%aeB!Ra0T_mN?bp`l7^-1|=7|YoRmcKj?*ntktdPA24=Zyz?kbdlh!D{PT;$ z7LsiynQEX`oqY)X$j+!oP}uJtMIL4<`!VL~u{O#fi?vzEW}=aMynn|KG;s`WI6rmM zsLb=ED{=Q2!g-PdQRfWeKZt%o<=%{w&kbcOTHb~5_&eF%=o*MjF&8@ z@_ybdKeN~5xC|Z$JXz}mH5J;l(7z50d#8mEnw$P27c`Z0?#vaPkoVxeN)CwAmidms zPYD(@Cy?p=Tl{1obqB3YSuFD$3j38d-xVtA%Cx%y>LynWFbZip6ruWpBx(L6nmOtH ziu8UISA6T;I^*0W*AU_KHc6;@I8b@?kVoKo1m#3YPrRUvf#w6gTsAdHKA&>w50O{V z59kGaJJ-8567Ci&MqK>PJLTjOK4^=@pEywqI0k@0+Q`P#Q|>HUp~gai^uxPEbY4}s zxEjqgtHw)&-puCmZxr(iL<>TPCC5}M@zQCcQi@mQ+L8&6^V7q~L(JwqcDb+3^;37_ zIgE)XPNW@WEFg>9BRT}L3a+HvcOEJwYW;?%K0JOk_p zuZ)n)-+-rgikA_->Tbmv?2lnQ<@&r4c-ne2; zM!s&;G8X)kA&2lz4(E`N!B)md!?q zk7y0@!zyOcG}CL(Gm<&9&%fv~#s(Vah4 zy^LQL4oQsaifkMuQHS8zw^ytzg18r?AGz-& za4!ViQqXC!QCKzv&DkU6TTUHfC}WbY7x4H$6ckDTk1JTr>GjlC=;DgBX_T z0mG=v>zh!{0Nuw=K=wg|V*a$v*oYW@>$2=-f)?k`Xu2X_7 zf*WQUa?hk|GTmO!?^7cCCa^3U49v`XC~cojzCRf>53&BtSUqm0o-vv_zu~^sXmH>{|4`lnEvQ=ATk9wWn{$1-;JC`B%eO^binj`!Jl_bMKJXpq|3&itq1gY=bGst zPJaTHm39v^`fc3k4HcFslVq2OY){#Qjx`3vb>40WoS5p9ayUP0i|sp%NPV9U^<;rV zjBlMcPhZa^fVEWCm{Y1RYi{Hqi=QCAn|+{f90HnM1z6#3RGl^!1V5-Os8n$~*$7n% zg4A)q7YgO~9OjxDszyOlY1Wf66P`t_H)7d5a1nWp(O^N3ShmgLt_qJYxpx{*r}y-u z_wjA(I9lsko?N*stH1rCU{|P17{JW*5bu5iq~!xAUgUiH4m(`u#u>oYWK=mM^}R&6 zm^OHrd9pLKKUqwYfJO?*BIS!D(de2lLHmN1XkeW2}VqU-*7fv zE7%wo$Mn3yM=>*s`L}YFcKJ~`n5yo}IvMJb0EH4~Y;!y$ezPs5NeidHxd!2S8Kr36 zw12RdS3M`yJo_c3_sM!nN=jZ_AEiYSOMLiGtUDrmc>#(BEdIj39J{oSbg_}4M^=#Q z3y}`uQEOs>gu`H0Wo_5g;ptk*3^jUTevpp!d)hJwEAP!7COH}8sWXM*@pkJS%x~ z7L{eL$j48I@g^_82k(X=kOchHP3+htsvq8E*h)GZ6F)W?9f6z|9fI5CqaNXe<@OiX zy5K9IZSs$fTqcye-hO{$l#5U$_=@R|CBn`mm{-lf6VC&~W`&;%X3FZn`Yp}Z1%<}l zpd&9gmD{M75nyb&8>!p_Anr9dMLbF&J22yV`|R2t6f)d9aCNz9}(`ckfGb#W( ziZ%^&eLIBc+z>b?qlq;BaH9EZVnL!-_~qH+uD03WZhoNc1)w=PmdI5w7s`J}e-@cWATaG(PRmDqFVxV_4h~3=G~9r1uKO90=-aJf(zl-MyGgsp z?*%CvGOp9x8S5Mv^*52)^`%vfoZor5rM~_xd0hU;yrEt6^s%r>qnHVmLVryIn{o&d z?>+u>p)gN{#HTh9kYBNC zZG6)-o|xc>>N-w9KZhstWpx%mMw4p%4IycUz8`g?f^fD%M!<3r%bMg=a&0Tt_YR`L zf?wp^1un2lem)M$a(i~rNxmdghPR^^=t-NOcP4v9DZ$fQ+#;#?>4u4jo#ZDeXcLxD zopyiIhP3oMi&ok1$S(9=9$;zDP-vTntk|ZL3k2;pvaw6>-XUJ?qzmC(0GK|>k@-|W0MQ?O zKVjh03pTH(FT89ly%3Vt9tfZU2|@)Vc%kCFP+@&RsHC8fq>val6eNM-;Db9-Y!;>k}y|mZx;m8 zOH%SVAnFMcD7|au|6ely(J3iuk8rTF_W}t>2$F$3UIQ}J|25D5kuh|z@v{FXGEvD4 z0Yqs3OGMMb1>xoIh5-F%Rs3#9JGnXot^YNTramAA5)cs;mJopo3W!-Xbo~3ChU~xQ z(Q^nufS`(sDTT5-K$pRPb-{JjK(-Ff2w?mCE=VtDS37=NOCJYoSEMKZ|GgM~32}s# zjgWwtjkN^SQrK2lK)^~s+{#8oT-a6!3bhvF14i%x>*EI})d3nnYEQLb)ruD3{{y1o BWf=ef literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon-114x114.png b/assets/img/favicons/apple-icon-114x114.png new file mode 100644 index 0000000000000000000000000000000000000000..59ea4a178bcbeea6dbfa928d59bb9d22869cccc5 GIT binary patch literal 11500 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 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon-120x120.png b/assets/img/favicons/apple-icon-120x120.png new file mode 100644 index 0000000000000000000000000000000000000000..b44e035d906d90530e78da0c422b2f6c0af3ec2e GIT binary patch literal 12426 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 SQW}97Kq?9v^0l&N;r{~zum?y0 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon-152x152.png b/assets/img/favicons/apple-icon-152x152.png new file mode 100644 index 0000000000000000000000000000000000000000..4bdb9384ad1d29210db64c26a55d29b43f4fd5ea GIT binary patch literal 17139 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 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon-57x57.png b/assets/img/favicons/apple-icon-57x57.png new file mode 100644 index 0000000000000000000000000000000000000000..0874717aca744a1a453b5a59a8e2f4387d6746ac GIT binary patch literal 4797 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 N=xXZ2D>RT1{{g)POalM_ literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon-72x72.png b/assets/img/favicons/apple-icon-72x72.png new file mode 100644 index 0000000000000000000000000000000000000000..a841bb8066e4b90478fe43d30a09301184eff41c GIT binary patch literal 6302 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 F{{id>WH0~# literal 0 HcmV?d00001 diff --git a/assets/img/favicons/apple-icon.png b/assets/img/favicons/apple-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8eb50f63a684d0f2baa8692af1acb301c7bdb979 GIT binary patch literal 21851 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 F{{id>WH0~# literal 0 HcmV?d00001 diff --git a/assets/img/favicons/browserconfig.xml b/assets/img/favicons/browserconfig.xml new file mode 100644 index 0000000..3b62259 --- /dev/null +++ b/assets/img/favicons/browserconfig.xml @@ -0,0 +1,17 @@ +--- +# A part of the Favicons +# © 2019 Cotes Chung +# MIT License +layout: compress +--- + + + + + + + + #ffffff + + + \ No newline at end of file diff --git a/assets/img/favicons/favicon-16x16.png b/assets/img/favicons/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..5033c246cc1dbf3b98d568ab3057a7819156457f GIT binary patch literal 1545 zcmaJ{aAwv%(tm+w2j@Ath< zutHh7G%7v{0I(F37F9yY44)-rc(2J|R6()WT%afbps$(sTo(a#lBcp%0(!qocmNeP zF0E7musH>Qz()W)g{HtX0A2)upS1v>?Eu8My9QOc(C=}DTwOdjGfkyZA#CoK2V^o? zrBcPj#4s3)wzjtD=;-!%!4WNJwC@SoUqQhV-K7c;-7)O$i$bBmh!GJHf4#yqmM>qPl#~=7 zA5WvvplY+(>~_0QC|t2(MPg!Na&j_`-BmsUAhzs zg(MP5YHF(A-{ANAySlodrMbB|l1^nZ>69hZL>5b<(ZDFSpe$IXP_WWhGo#n=SG5*Z zd{b)OfM%y|qA z6b5>fTaL-?EfRP`<11QN^6>C*Q&Uq~T3TLSUPnjA#Kc5lVIiB%RwxuwsZ=Bq_4oJJ z*Vn_TiN#`>Oa}XNh^T9EBO?$E2h`_P(``S*0 z+ecI?!=LK^m$o`GLa-`DC|*J`x} zwYt(|P^&b!L2oi?^?HMP>gvSzH?B=WgMLvI!tI-085{0d`WY;?-?sXt%48(e;G`0nl}-8xA~j*wbrn<83N*ABZ$eeE|JYvv;FA*A5w zXFu$jIQ{5jIhJ-PKvdT$o$ogk=u|b>ak}(S&w2f|d&y<{G}W4^3q0-#p(Gr^<1!IGU9Ayd4xQPk(3!2cjh&Mz$P{LX*f1nN z1If}t7V!LuS!*>AmN4XcPtpq72oQ;6&tdTle5zjX zq^ZP!$!a&k@;MGCVRxB1CS9EscR4+rzX!t+35|L~7FS@vMTm}X;&Zuru265t7V=G5 b2!abTp+_dnk3(+hhYr zivs|p9Pv1JD61camjpHgW4@nZpBLH|63;?zafa7uOZnrZ~K_tY<0S68aud3eK5@_Z~9Nv!(W&EeG zAC9sFK-At5XYJ`b(BMOj_IRX}KHjw)#BU)D?WnsrPd~V|glNqR8&#)jwtF_`Ys;%W z;N-LvG*(ODNy=&^WqRq(Hnt%rBK&v1$rMt)pm3UV(SF2FHnpRY~&ffhw>RVd)f=R^Y6}V1NR$fD23)wsw@I zZ z?Csp52~(5nNdd04Q;E_1pM})Tt`o?&!7{sPe0Z2Sw7Tt+e5RtQq#!rgPmvM$Xmz2N z9|Ip$QzE5ZB%VuEG!f-uvd05Ja`s=MFf;_c8VHb zpTI0aI5ERu_5HG6M)fzRi)0CU* zO|fX_awi|uIDG$Q$`-q>u`!07)4!NqtqTe}C{rBQrhqOR94;_0@Zsd74S_&lJiR9u zNug+rW4ye*C!rH?tF5ghIVEMdwSHI2q0}hQzb}37!>s&Ta_>2Xn_ByKEPA~#Ldd;|Y;2W6|Dj$VLm9pBFCH%E+amm&HkvExwYyy}g}@t0z^4tk0ZuFi^B55;bDxyK}f)^BJy`hLE%> zHoLnUo75YWZS#YkV{yOHwc8gslTWAiPz3pMPTEb%9Kp-W&EG%o)vL%GQ;5B3@`^Sj3w1Z@T)cR(d*b`k+Z|jkw*;{3O%C`x%t4FnpLYyKx%?H5mAX}i6^llv zJBnGi8bmRfOwoZq){gp>()ZFYc&Fct&R4Lr9vjJv%5U+oqwg(*2I!B#?F-0$j}ufb z(=G49`4sqIr5T|orkqo>Vl@&8SGt(-T(x~Erecb|M5AV{*W=5(XPL|0okcFb98!l< z{`sTVoCU`IIa{v)SQ~a4S`RNhV;=whD~m3D+VV~&jfBn|xf9ZY?t8cS`ell<*#7)7qD>(3O)c_1dvEL|oo|L5<~9~0cuYMZtbj=#*VaQ)D>ar*YxU42iaIs-8~ z^9NlU6T&$;`kDr6Dpr;3hgUGE%Xx#p?)E9ek=IAILs#h2n^=pboT8Qlk;}ao^!_m+ z`b2V__}BfJm4~iF9{wMDr(#VnWh|tw&)3>6K?6Z6S=Pb8wy|UaH)!jH{PU*h%i_5a za&lK_mlowS4_>=JZ%V67-FhYfNZ{SKgF`gB3ehRAo$~VMS^1>xcjpT`6=*88;ynH0 zrM(NYkJDd{k3Ic(A>bqP_3RdG;?9V`=IZs+$4BxuY8F>g2p!bqW32n|T|v^Dx+mxf z!7?B#irAQTTJ#K?)0_EyP7I9PySLWXWqA;rYIzVjI1@l{8jAEzOVmxaHSC^~pJ!X> zIB1cS{HImqIzGr_l)m)Pb;_G)ZRn{hf8VgEc3(_G55_`nY0F(XqwI8F_KrBudz{%| zUSy=Lsgcc_zvYiLDKuy&h~i|h6;IH)QnhhAAEmM@M@6ssW>CscNP1K%uS_@BY2TTe zmpIv1==>o~gr^VspBDb6J&C`fv%a`F(7E0xAY0EDY1+ZW9;DJB*rUd&>0USJlFsVrsFp3HcSB_ zU6Xe9M%5QbEUj^Mq$yQU1MGh(6k2-YKfhnL8k)Mn+&`PKKwiXn?H+#8PciI#8KFc5 z8B3y(p#)42NQ@x@ZHPd5njo+yrdU%8eFOrFK*(0M$^4Ii8XHOpWBz{uv0tJM64)Ph zpvQ(W5{Wc2aHJB$$pm6Jg%qW3Ze(GEHpHkyEm4LDGee|_x*O75J%YiA!x|eWCMFtD z4rwSL+9;M5{`lewWC-Agj-C^TUf17z(%kMZA_Pd%~N2r?x+ zf&q{i6B$6uftcf;`TU3Rp@cFb4w0#P4KWB&`V1jZsAL8+jtoAn$~Z12{A{bY%inwm zo)86)X67i28Nvi<5yIsi{x8XV=Ho$0CIf_x&9~K-Z=jO*XC*IpM-WDdCPUjdrp7R$ zW5bQZhzS%@Yz*D_zc0oZgC>WBnj$SiNf-nX6^240Ly+i@P%|_t%oKqjSr|bIBWQib Sf<>)R2jFPuf@`!1&iprlV>}=L literal 0 HcmV?d00001 diff --git a/assets/img/favicons/favicon-96x96.png b/assets/img/favicons/favicon-96x96.png new file mode 100644 index 0000000000000000000000000000000000000000..a9004f855a7d477a1fa4d20343aa0f124a3a10b7 GIT binary patch literal 9203 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 BWf=ef literal 0 HcmV?d00001 diff --git a/assets/img/favicons/favicon.ico b/assets/img/favicons/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..b02d8bfd4636bf6008853e9963331f2923a7a20c GIT binary patch literal 1150 zcmZ{jZAepL6vrQ(+r>8A)i%c%x*5%B3QBKorgLqr&FP#{7Eysr3%8apmAS~AMWxHq zTwyMS@PlNef`f=gFS?b1U;L0oeGvRsl7#k2Gd!I;H5}?Qe)l}j|D6B1&pj|gBJfAk z1fMce8AV7uAtVJs36&Kc10k4;C}20H&qR%?;UpAhRy~$ zN6X&aci7%{U91c~5+eWoYa7fF)HxpbM8$~s8u6~A*OCl*e~MxM&YFo{$+@w|RAsO$ z3L~+9@UGdyVss1+h!B3kd8fC$dH}37&le5VRZfyjSXmX8u-eTI(mm-UVXq>)_>kxK zCCe1p3?G;FWuNrtwUoqJJQp^zglVQ`2Qj(rY32g=v_7K=(xm1I0lmYZOTS9^qU~X| zTO3#vFZu+Jrl)y49#9l}PAW}oE-fvU(li~Jn3%Y!O{G#1g+j5dv9Ynv<#PQp<>v#R z&j+K?2t7SLe*=NQRC{}SIhrFR5=mGOilRs`7$kLdb>-vZGGeSkf_Xti1~_T1nH0OEGL+a@O`L8sG!OeO=f*&KR5-VJ;{AK*Ja=j7yw^?LmV ze@90Lv0AN#V`F2pqobpMy&yF;6>@WP!Rz(H$jHd|*49=lbAN$A5awqNB9Vv*EW6!) z(BW{rR4SE!ghC<2$Hy<@%)a6`n3w{b2@|$lEEbE&(Xp|ySCW#F?uf=ngkvtw|tLCub2GBxYh5B&c!F#0NG7>^;*>ohj*vycQvW7f>i i`4E~&LPqe)40FhWbd@|jAy-+8Ema literal 0 HcmV?d00001 diff --git a/assets/img/favicons/manifest.json b/assets/img/favicons/manifest.json new file mode 100644 index 0000000..b53302e --- /dev/null +++ b/assets/img/favicons/manifest.json @@ -0,0 +1,48 @@ +--- +# A part of the Favicons +# © 2019 Cotes Chung +# MIT License +layout: compress +--- + +{ + "name": "App", + "icons": [ + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-36x36.png", + "sizes": "36x36", + "type": "image\/png", + "density": "0.75" + }, + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-48x48.png", + "sizes": "48x48", + "type": "image\/png", + "density": "1.0" + }, + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-72x72.png", + "sizes": "72x72", + "type": "image\/png", + "density": "1.5" + }, + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-96x96.png", + "sizes": "96x96", + "type": "image\/png", + "density": "2.0" + }, + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-144x144.png", + "sizes": "144x144", + "type": "image\/png", + "density": "3.0" + }, + { + "src": "{{ site.baseurl }}\/assets\/img\/favicons\/android-icon-192x192.png", + "sizes": "192x192", + "type": "image\/png", + "density": "4.0" + } + ] +} \ No newline at end of file diff --git a/assets/img/favicons/ms-icon-144x144.png b/assets/img/favicons/ms-icon-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..782cf3a9437428c4609ab98f4a6a8e272209e956 GIT binary patch literal 15762 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 SQW}97Kq?9v^0l&N;r{~zum?y0 literal 0 HcmV?d00001 diff --git a/assets/img/favicons/ms-icon-150x150.png b/assets/img/favicons/ms-icon-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..2b56368f4f8564eb6b76be25c7ef854eb49762b7 GIT binary patch literal 16765 zcmZ{M1yEZ-+b#}8iWMs!+=CRC;_jqCaWBQ)-KDs@OQ1Lu_u_>XDee?^rv&&Uhz-xFH4Ot1enn|();02YLoQ5(SoHsojTwo|1++X0WzWd=Y&GyT=w{! zyW+&0Vkh?ZV`(CTqoXmZbafD^UnP__GUTe9*|@QlPkNnFmaDh{KX^FPim*<@R98su z(_`hHSNGIy>T`|R&3hj&WyFA?{EPCUo<{P5HH0OGzosfEX%;3~^w8)?xB@6~xHu>= zV}JaSTc+56{x7-;N{d}F6a<1m1&yS}g2W-K44_p|Q2_n?PJao*2gW!3U`&iwoO?z` zQ8n~Its7n3hi<4nUZN{kX3qZj6L%Rp>p0$W3rCaPV|+wzG=kP4)^Wr(1J zY$_d?gm2qOd{21JTKCEmg&&jFb~z6n(G;O7s0V=^KT)F>aVapL7B8wJP!iuSvGzKg z{vGRh^oC+d7(;7(W^Y^XTbMW$1trjMyg_*0jp6Tyq23ld)^P+KbYJ9FlmJsagnp0) zat<jl3)1V#EBNWUQgv6Cy+K$R+4ZeSIe3&DRK;qv7I4Xh}|jp+IU+KNL;Bh`q*903=8_hTKZ(rE7K1B2ewdkvnHwq26~3^ikv?I~XmgnYQ)szFg` zU}P=oz@zroni%V>yvV^oQ7RPAQFE?Gzw-uGi~%r8kR7N2b-gY>#=++YeqwGf?s$VC zQ8o)j{C0Z{ariGJUwtY2f%LrQ`*2T;b06FX+;d4^CP7&#OCo-KgnN>6O{!-r(j&L` zqCrDGBSDGwS!FDs$Ds6}#e3c*eHh6$M%=b*Rd)-$B0m`lSb3%s=RPUYR}MldP5Y`7 z&KLW>Jrec}YR}BhzLu&|?ostQB60!=3a1H~0Zn7U^dUV=posG5reLNb^p`g~{FEF> z&$z9aMqkz{p)af;zuLJ#i{L-hxNUg%rn@T~y3~UD3W0#D2xn&*5Is6v8 zjutxx?)nK*+hz7CTTRE8-jR4IP?_EGFGqf|dON-TO|Z1IH2xEs5ocKnvv2drf&qmi zKQ~6ld#S_oFMn>*EU?OE4z&GXpLo!_uX}Lr8=!_rt)NS)^E>F@$jCtx7>=ef=@#kb z!9)x&NmvQ9_hs*`$goMGegXZ5Y&tG9+I0-HoMiWJ)?K_M^C`4jzFTZL2^}zDAbY)T zwS23aC`Vh@p~8|wh{qCWp<8iCKv?RGdB?i~p9 zX-`5|;f^Ap%2X-~+zT{&p9rmiQ{WD5xZuWQ4o-)rZI_>hRzaa~M#$cIsNI8lAr2pe zu~+umPk$a%JUcrr$yKjdcOSJ!j)-qmKqrwW;YDdd?A=Jr$RH>)9B6Cvu^YwP$4BVm zsw6IQ1gBfJ3s-D>YrdC#fS)a(witX8m5OgQ2#!sFe#k6qBW@+jm)a1be^HTQ^&MCn z#KuGwRJ$IJCGA z+TiByJ4PdM*+>m{M>nUrt~_)I5{n#3208z{>O^w=ojOKXD8k|N;`^9 zF;w|J6PE`2Jy5e>MGP#oDAVFmzd=tt`l1b)KH&M6g3e?Nb@k2|pF|3@r3^pJt-}Yv z8NNvzJfQC?BdE7s9s*+uPsPBoTyS&O4yi&&N^d0#aY{=|wLW~%(AAaK)g}4$i6{FY z(}tmvx#lQIrCgpCZ_t$U@8jda$w_H#ZM+U^8lCQI(_Z(D^xml;k$b2s^UlW0Xa?`# z*n&oIewQPSBmU3Wd?)lk6XG`n1nSz_!xNd@m6er+t*!hy>T#op5US5Df97T_%pW;V9c z`uaoxmt8dj17!dLopRI<+0>j4T;EPzH9VrU9f}w5t7UFFW~ecSLb-&6mGtyTBVLmi zb#;j>tAZrK$RC4zAUBWD_5pCL^@(uq^x&8ibqeAcis+~uJTf%eZkdOdcY1bK3IZXB z+y1$}u4-gN30x^K26$0Om0HoRf?tl>J@X>=ymTwgh*82#jI-zq)fjCCQd3gYK75ez z^78tSN}nwMQBQBN!-K=Xz@TL2K>y$!rZ5T&qdSE6)r{sl6?s!>P@;ZznW2)zwu@EUZL@(gvj9Ur_e-ZHkH^eFBo4fd*FF<+7%x zl*7Z%het=1)z!3#a&-YO{FRMEEh^ zEfMk&MC0-avYxuz+p}~VEjPU=hU3VKYinyalulKp*%vVf0BmJuVaXJ5p`V+ZyS}}h zo}QL4GBSFu=?JQ=JQM-pW!r1mDB!R-@>=Sn{Q+@dtaG?EL%T_PmgqXVEOb-S)3?1S z>UC@-KEG0)De3IY2@gkM9p4&BqybJAr%`_oe^iTb2X}EGRU@xl9jF#=LY%iZ7d65R z@k4a%j-04xttzXiVAKbO5(q(}98zFmAvFpL3NaZOEn&rdcJ_Ukn4PP@e6U?@PhEd`z7vL>4;(LlK z`zE;GpsNGH@$(bG!or%!5lD`XMhAxP!ZRl?j{=zW)(#Hk#l<0og@uMwS9$#$mQNuj z#B4Q3Wmp3l&O2E=gJTI}NNW{Pqj$7h@lL00dwA$!b*wS%?Scx5iWo@@ zKAK*u=je$b!kCMV5NzjRa*sN@<(B!uNezfrDsbn79EKBzb5**{p9y~a_%S;-r>>=y zf<@_-C(D&-?&z3MEF0foF-}O~cdecm@a$#h;6SNBpR9*DaPNTo0AWu3j1e)Q8Lgij zr4zi~c4h-|e(>7Mwer18&flqSoE-D+w)yw9c^8CmS2HnKEVACU$`F z_RtqH0q2r&w^dZk0i6h=3{H!;_bSoMxv@=I@V?@ZT5Egz7SW3+)jH=tW2{lYC{#kB z=*)IQo?|YFLPz8I@F@9}%xM;!4r~9qTxfS=d3t&>i}MhcPgC5;A36A|i5q zcV`vSUuJDeEaOf&-jE>{AUZHGV7u6WJnSTcyX*P+ooA2lgLC(J7>DCH+c$8)GfaJF z%8wuk+J=)@@HPtwbsC#qxOLWUp=8AFkZHX|FRt;6`H5Oa%qvypTVd=0a2Di-eul?} zy$9x8(|M`Tzv=j!PEA7tPm47EZ2~MPdU*SItt*=$-#2M5KOnEm=Z*^uhI?;eK^H^F zw$*txX$GVqt4>`YK(wJ6hK7@m>o5L!Ub`d|UOS1w*4%A-6LgEnMEbo%-RHdU)r^uj-1iM=E{_->QJb{NDq7p?OD zZ1jaJlFSDoqIzzI5iK-X<4=jb2#=a44Gj$)A2)P%l0p7NG2~HE#1m-+v?a+x1b`X# zFrD5#NV}#_YdBnLV0AxRGsu^tJ=Ai`K59P+H|aFp z%41eytY;mUka`=`!>jD_FsE(wV|neiMZHDd$%zw4`b9TagqR4q5J6$#iM|lj#ZE770FnL;C4f7a0|fwnu<5nLI*Gpl^;PROww|;sw*vED z7I|2+@(oZlo0^*HZ06Z-Pglq5&4wd~w-i=)^9_mW!|{6>GL(=&ir z-rU^iyUjstmztu0^5kR{{OeQ7UDuhPzQ?MYt_Bu1_SIGl$K?o3{Q0b=s?+&~IDk9n z!trvn5_WcMis|eYKeFEGdmoenRj+a5m^WRYj*bohX-*&`0IcF$aYTH)JBt^7*hxOS z6n5x}gdvDwSxuW1(WQNHXfpB}BC*Oi^W76-;^07)u~Yy?UN_#iduRXnc*p4ZkJ0_& zl)ns6yPjbWzPsG{o3+n}wfrxzD*^9o#;;$$B2Te__~QnipB@2_%W;_$0NB-LJ3A?_ zZ9#FdnLf~ZuBr_PLxzYCFLZ2kAmZWqu4jteW2KM7{{qAPWJy|En|bX0BwVuz*I1P~icnP>5Q^Hr69quP@C0VDgDk>_B zPnMeX{ch$m%0?%1h1#~`gznewx`%-m9}IeBj3b-c)<3N$G)07 z;U|DZ07tW2aCU&4ssF0 zK&k5J$Xa=}5q?h7mc#V7!(jFHDOzwwPV<`Yj=Ge*yCbL~F_iyLbl@lXwwC{%C! zF*c^a-gT`3SPP#6t44NiRe6c=3>^l!gt=;>vXPi&+fIgAajb@>2^=c2|Qf7EWf z(wc}$;Tib!cz3m67Jo5r^qd4tVot<7u~z_j{x|8GT3Re!c3k`{`)(Fmetah~QUbUR zFdCFE_rogzFHeKp7u$J=#<$0dE6(F=z85h@J6{}pX@DeH?eMtz>fjdx0PGh5ZTog* z`+UyeOt zco?6^6UolY%d7s34mLbillo+5XR+Sx$77XDDP3eufX|yyqf4ShRWR{I1 zGXc=}-=qN?t=)`mav{bRG+IrnAm?xSoMtE(gsiPqPt!e6tqDQ<_N&-dHMOU*VD?~s`}?-r2~Bk2^=08G+&#cH~REY%m3D@QipK{R{& zWs%7YY41<`BVS7WxS{;ON8G+EVX|Ry$gtKsR77E`NwUv2HV21?TcZs5!UxS2X7$8+ zEw+W_<){E}u(mdt$`jEYZ2_2li`{Y>#?Wf=He_Xdl z@{1dV`tEQ*Q>rWhVgSaZ>9ObNFc4KqAv6P^S>|m@#Ge2oKrivU1(aUcKm<0CQZ|z- z8xRfHzN}agpz4N(WPaBgO#yJ+Fl`S+1Bh&b5QQ5R@pl zvCg7CCqFOZQ3NsRi6jH?{$GApStB5gIzBY=4}kv_6@Z88y6G~4$!*2*kT9OLA#X`Z zGXXLJ5c=Q0f7_->o;raN(ZWqO_$P_wy*piymf^P3ib`h=IFpz>|70Px%`K9=}H%SB|hx$2Yjj;^Ejpmvq0 z^(aRTlcK0pq`WKP+FBqcEiEneq_oL^3(EPN3*-s_&)+zK3MIi78rUzO`k)3OWYy`_ zTmSnZIwr>J;ZM4N<3=yBM9GZxKkZzq@sIvOAQ14>p?N}&A1$5s}c0{Rr4OrsTQTrVDqcm`me<#$XP-4eunZwOjgF|r4+ z^sj~XLWjp$>myK2eoapYM>>8d&~_Z9OV4R){~=pv1l-2Ffd_e`<&U?G%7VG{gfU+- z=>Q|(AM&yi+6)`fx=dRp+R zn{&Edw9*6;R+yr^rzc>-mWwzCfQ%2dhChJ9^8n=R7~s?bU@J@E73$!3q&KXb?nD*= zBr$vExdfm!nV6VN0CY!&Se@Q{;WLYs0(I_*oNcD**%ww<+s@twiG8iDbx^9UX=&j- z?Yc7*ao!n84mW{mb7daq?>kKlhvJXB8Q3nXRDKq!tM2IN7`+nKZFgk?_>QgwQr<-Y zC8WCq5Jx)z57`XHU^l+l`p(0{qo%Gd4iF)3%L!wkEdQfgD}avhJvO7<9%HF3DJnvs z%KqB`XpvxM44GpQ$e(@;4)dW{l7FxP1RNj~N)8SV?j884v#6s1^ZG7W`Hw4mfUbBZ zuH5B+4M+~N&d0pHdZ%p}|HtKZ`tXQ|mvL~cSZj^YLDCcbk~sQ((P~5WD(Lb>D31Ga zGlJ645b&Rr`BtTXikYSl7&@z~UrdM>i{{{hkaX%zkpWPlp@;`0O^TZd;E`CZBDHPi z0R_@!FW2J|fY~pHdvLLtH&JLDUDtTnVlXfuHKmHx?K>}IfHKv3H7Nv`1U@a7v=5y$~3jfEB!F$qUfZM*k;oz+&`>85w{cf?siN;$bx8 z*?l)UG2u^?%ketj=o>3YpsM)!s+|Zm%BSsNyV#yNIfh^s^Z^1<*U;dyd<;RwzWm|f zpWJcQ?W5(bOf9B)9>APx3aH&w7HuxGAxzt4%h4pdYMuJvPdo~sM5;tN^JNtj^Jpm$ z5FW>i??hLls{ToO_HAK66ut=h2ln-e1D7NlR)w%WR~#=ohKMbULrF#k>$cA70b>qi z#(JG42kRslpmAXx<0g8t66&=BWIejK<`u2hc_4liQr@14?r%m0>r)Ofq6babKQi`D z=dAeMtuD@{>yvS`EC6F}pcdylIVgk`kPiT;);n%W0FFi*P>j5e z^w!5vMbF_yuM4rA4ocH4?Vu|*7{NyXE|{5?gZcqc@(}-Wj}6q?vt-ca4d6}D3}aX; z)6yF-Qf@)G#|{kz$;BKo2bVCV@0 zFkY?qE$#~`Uy>Z{kn*&U;a?TN)cB_rS|4_^0g_!DNsKfH$eEfWOVX{~Vc{zVB7jXz zPO5BO+-JDBySZJ|zWl8PIAf1MjvQ_GC*9v7psk(VSY>*pw}4U2t*8_=^4eIIIh9$+ z^L%3hAXm}=IRtpmznM0dwau@~;aY?LPAne^An=cDzN^(U|8xLik^xwOA9iZ+qc-+s z(%!!UV)W14izVUKX?5JJINYPs1OY@*OG}CtZ`40O!1kPOe`A9Ru$Ii6C!|8x)(rpg zPzukDpl%)3Tk-+$Ge#r2rs=+fHqvfkgzaSm;}^==VgfGLNE zhd02lQu)y*%7FprRG7jFU;?+d?f_vN*p3&Q{HLZ)+mF~O{O?Tw*lBn~-b^VN7K%Ls zjlA2%8Ylo5G{77F8MB(2GZjVg_zx|?+rZM>d zK};aVt;~Jge!AEzR&hu=TJjF{phKK9{HT4AM7PF!OcsYlA1I7Ix5tHzjaRJ@5%F#> z7Z+|JkJFO!a)u+bs;^)F{5`7O<9OcU01A$Di=Vn9R^K~;xPkL?FaV^BhF4$^mdI3b zd3i*6zJFH!3v935?dUgRl+@N^xQQ=ErqaLlSh~OF%7T!Lc;ok6ywO!qyKocN=n)do zbOH;q^DAT;7KI!}mnOhZSw=eXTt*SC*xE9UqYx2fzUBe+`|Zi{KmBfJXGaSJ;|58z z85lxfCN{bSw@q`VDmWc4aOU~{wLa~Bv_I{6c@6^H4>7^Gt0~Z>*}PjvxyDtqJV*T{ zE_xUaE~)3YNEmq?|NZHl>mP3AWWek&B}M`AaS}Q%u^cWzoyK9L!j;L|YWIF0uw>25 zX#NETK!e3O&fqxzzLp@>2)`Yu-8n-0=2q-{ud_&f>9Ozov*8-qtgi_nQUBDwkQGYR@rsBEi&Z?ips(+c!7{p**wjm?p~1<%fs4tUHj z5g|`=u3UJ^1~TV&ZzE5M6)_MJx7`}_HsAIpm?4Hqu{y_g+;rnd?_QwGMF(PBzvuUo zwspNUX`sjeK(VOrGw;?&LQrOH>0?I##T5J{;EaRlUkY8kDhN%7pAr7IYK9`uCDGL#XsKA;B^PoGeFjVIoc7CZ>va8Ky2i?Vt2s;zv1-v^LXycyTXk4)~g0I)OR~&sJ zJ&&0&Nu85Fv*#!I&(f|riY<4Yq*VWVa)Fqb{78L<%htUB-Zf5V4y*-i81cOo#7|Bt zyiBOlI7_Y?E@(B?`llGGCx&AeG!I+Lq9iL|d$|5v12zLkfdSg~AdvygLXl$F=#wwv zPa-m__R21aj1Pn831$ls!rE3LhV0?`G@!kz&xrn#tG}>|-hYrPq;f4h;|i#P4oU6c z)EPnoXh5n!J(=9_Rza0O&LD(>DTB%lF)vzZU#5&twi*T=jZQr)s_Yz-O^9VNB{6X; zaTCukq7|;z8-`+*M^M>R6!}mXl zFHRTB>A&?K>r*@M>u2#%4Nseb8ZWN8g$snP0*F<-NBOlO%hI%!P<33+^YjQC^|@SV zR%qqHiZ2_O$$8C)qXYs1b&|A_@MK1o>PhVcnv5*wmEVA-&noW{pcHtVYt&x$(fIGB z&AHDrBK1+K;U`hML7=(b0J!8D?_Dhuu33U^dmM9mM_il>eYW)*{iCt;e1S{*`76Rn zjv5}(mW|He0it_{vX(^YvRI$aX9t8H-ij+i(l=_4VDr5%lQ0qNd(sVhs*e@6&#t{q zkg)aD^H*=!-)u^PWW0{n?EUZZ_4u0_lgpBrMH}xyqD!uZi_y{HSGxq-c~;q$)^9Bs zbNerZQ<6V}HKJdT{`_&%T2N2Q8?QUs@T@T!W=}dR zX6idDyOT9WGa~=JHOxkO@uaI)-XCpHOIKEVaZ390D#=Nzm6CGq%vd-V1$E;TK`%6SS)s=1e`UKGMUi1=6F?Z(ZlacE6OEB z+P7POEfm{+=7=-CkwH?BG?`?qveNY;Z+7PlN3*_>^S0K9VB$*kzA0pVW8x(LZcqEi zR`8+j1V`myi_(^1R%mw1bl!a8<#has-=0;n(Rz!hT_)kZh7GUd8=bTE(-PK*01+@7 zU7B5}H0GFQl;CF4xM2=k3;s$O@>3N z?}afchWL(EF_ctIqv*mTb0Y-`Pg}%=RVynw3VHG9LSLap$Gu89{c>}8_LyhJm}~B2 zjit^lRnSHIm|ldQM$98MUJ;+->~BFMQhDF7rFI`6Lw3YxSSfl{+Q@Nszh_74@fJkU zjVp$4M4m^Okv4cai#U)pST~>+fG~i=TooM|?I3CKxukI!HGFEN$objy6kUNe``e_x z)S$Lii3m0}oq2}9qq)L(peeVK6OaC3Ww-XPs@d&QRSun}VRDgN?f?&0)g|>>vbpe@ z!u<0_A_`do`>tyt{HF{t`YWn3VtoxER88NHuLYP456_HEtO=T1@-OF7V@U#zh1G~StJ@n{ ztg8JVCw6x<4P>h)XX^|Mv_F1(TIf!Q+G{nfvmf|s+`AN0&d^t8A;(}&{22|=dRVz+ z#y`xdf&r_}o>q>V zPyQdD$GmceKX-ayDbJ!KaQ^x&>a*S1Ze&G@EY>)hY<1H3TK(~Wk6^s-(03hVts+xA zjIJfUoa>AGW|8beN8EWn-kGZxD`WNdz19|c{eLomuSKJChR^kqRE3ljJqC*JI%5sqK-b&aZhk~~xc!L47Pxl9 zo|%6)!OB)v*qW2l4!i673Y!o5Ix7?Hr8xlld{RVKEIM^bOF){ z7oS$-rqLMt-t5BFC|k(+aR|1h5I2bGxxYa1deB?mha$14j%T70lOT1e8I%J*{o3~a z=8jKQk!Y|fMd!d((D@}-)c~HS%^Dkb|AcId&!9tYj(^4Q!(>j9LXEwS9E5+YwE0R$ z=i?tCp{w0!#j(#iY8qioG8@*Y1+xtgKRaC&#a z>WWYAM;xlYk|-*nkywUnW%<2QvkhaySR_tzGD2$_LT!B+8E^WIniyDyFxonxs7k&o zrYHnGo8nGG4a~zL z-xjmQ2Bw%s3eA$f6w_Uz`71dsnF3^hA1yY^$t!OvFB7AxZe4v~bN7u3C`gckCgpNF zWOz#ww$V%Y+k?WG|HQnTQ9-*j4PJ6XqhN^eiG!fHrcOklSF3Y0zf0yx}V*e%hHaRg;H+Bl50~cm-O9hWDANzljBIlBT;5hGu z+CFKqBc+a1+!kX{J37q-Twaj_nlbfvqT3 z{;nJLljU&x9Ra7^8T%V_6JnHf1Ls$xNoJeb&$|r}(=oA%@^rjwSGazsPYX;FtEOsh ztWrAtatr-Uut^R>cY6LwbZE^M9l5Dx@Y9~)u~8|lf?p~WJ#VivQWzgyFW;!M!D+x^ zcU{HD8hK_`9NnCVXkm3am;k+v&wqF8chKo(NH2nxRU&mdDIv;XN{!c;V^qxG46&rO zocE`XxY+L#aa9oyy(_ji>B*DqgHM-`Iyl?~Tx(>ZIx;N;T9{@X)I(y#;TLj7dkK%@ zXQCp%;&)SwmlUdfVUIKU{qk*TXhel8;rpqPQnE1QXitd}N@l&nzXfXk6SRVip&BUE z?>L1WvFI#XX=76Q-lo?)C|D)qRe=JSci{ET$NT+h!fC~ve)XtaoAF!l+eIRu=VE=s ziwlokoocR87|N~XoA|0@V5phnX2f(zq{x`TR2Mvvf2WSus`Oo(&wo3i2iSjs(^}+ zDST+PBW}O8^346w*k4m?!^M#XNMmMWYxp#ju`KnMwZPi#1Zw7sOin3UMfo5~5}9XP zNE%U`y%X6P&DqoSA(8%uYqA!6Srz3`D_AKCu>;~(*I`$8T#4$@xV`wnlB345FB5Cx zqn5IpnKPYys{ur2hmY0&GgE9VPexCoJIdy z<&}Hf^l$%&O8i!?fZ~XCTBY|brEbSCM?+t3eN-@fDc(~)g2E%LIrmAv%rF>bG2=i9~a z%#l)*Q%Jf5-IK+Ur4GXrgjfGAkyx+o5!`s!ID%2DdnAG6n`-k=~Hji=wIIp#FDGj0hi&V-8s#U7b+s#IK zF)uXt?~+SYoW}4lGJ?2BU8&{J9DU_C_Np222=j?wi;@IC)%0oy$p$*WO~Jpd_?lzc z#Qv;cP=CP=vZDM!w)ZkHWeM!NhN!2=%x{!92y@@Ae~t=oslELAH}*4*KuzbFpmHGpNUO zsbYSMTr5i3aQy9g=AL-|DKmwo5=PEz9ToP%W7|7GOCVg*oL-HXXlg7fs{R@I%l-19 z-h2CAZI@KEslt`quO;X4)|Sulk#dYw(lAwd#$w|R8PCwV?XfmyMrk& z5nL%=;#HtW#n?@O+g7|ix~G1@A01UxqwbfF&(FEoo||eqxLQ&Qxg~nnsrg2GS1PNx z(~kZ5}bTuzwsW&f9m%BNGO-$zEu6bOXEk>M}I9+k}7>1U5tsDXul8}e|e<0gW_bQwz# zu5f5N?YFElGAlHu;S{*n@-T|SFC-lI z&Kp(tLpD5CFEqXQcTcdMZ6X8LFl%Dd6_`g=vDi!cS9j)3Q(}#^PN+Yw9KvjWdR+L6 z((G+jm&{my;KZ{2rtAj39Mxgx*;UmT1?*e;;kG2xE9r@b#@{?Y$jMGc%yCy4iLKxW zBCFxqW$Fg8ed9mRre58`IpVOyPBGh3g;{y8FV^vrqTnSuum7eERtxE|Rpf*^NbThI zDkOMsSo_|MFjaQvH4O^>{xvocz9=hvJO|I7mYKj|Jv(+(^Ok)7l=H*H?zF#6AopS@q}LpnBS(1@kvAe^!4vhN00^+h(*0d zddC2|l##eb(yTCEdFi6eY`W^desdol7avz+X0PnFN)IzyZr&2>B~@2u2@R%IQE%uX zLii@moSJdQUpckSk!KEHW)iJ#NcxWJ>rxD6vdfKmKu_E9D`Yv8NMoH~?`Q%p<{t@8 zrOYKcDS~k{mV;z|6~2alR)AfWpY|#DeH!1cC8m3HFX$Q?TFV~qKO#RUO7XU)-6Zr{ zYV8J3_KH2BZ&2cXsOa$&H*Tjy{_TQpfD5cBeOvdi+vOk<6WGWxEuhbJKU@}yV`pSz z`&OI?(w0(sgP7<@r6LnWkUBxdWX(seF{jqOd-+1BKTLzGXr*Z=L+t@d6{}=+-I@?s zX^Kd`4j?{c&eA=Q5>cH#cms7Wn-#O_lH?-6Ym2x_&|-c-x#@)5V~Duj+}*jgeLr}R zmZtk*O1uZ``=*d!M5&zALScKavrkEDMK0}HPSv6ECqo6TUM4a{nmE9nhiK9;{0vVA zbK=9?Ur*r=BrU+6$1nOdJG>QhD}+tmi^&GaML5=hP1}iN?u;YV+tR1#sl+I`=?3wx zW5_p(e?vwqpj-T}^Y*@ctQ6fh$x<}^v68Uo#an@;fyEPqr#kp5!mi&$2&o;;qDJB^ z?UqN!C{Kmjs7M4$zhc3v4Tpf+fk1hRj#ntxg_Xznh4%i(SJRk08xi~s^SkZraoIyn zTn4ejaw#yQ&U6DRGAw=6%;a#)LAd#g$l+AZb5HXw6@kt<< ze;cWE;zr`P7z9`*+B(D$`J5j1X7eLVSG5JlM(cG-dCAP{g~U#MrqOy28I=C3HxQ0t zs!3Z8<1j2tNjVnUaI%#q(_PW9oD*3Z+44B``0nOh6|dHs^iiH4y1^z?CYdC^O-NPSX^dHddv{|CCZe6~{gitDEn5 zvU1qF^>{fJBQPxp?Z zS=I-50#QqNCjBXlVN*#fss39_%;LRf%7uP@y219RZX3UWY3#|h$l6mG9J#;?%TMTW z$)?5y95gvRk2unpm@~a#C8dEu9xVNN={aphNk93&9b3TI2#3}D&JeqJLyfDriG29E zlMpMcrn11~ten%QW<855*ZJTx`6Zq1G@ZV=`bUz&lIbCI667xdXx zCLQmm3*#PeTWj<(73iMd4ph8%TRjo$dEP%cyZ?S9x?8Sbnu_?X!1qld?IRdtk@I2d zU1KirEk*AUzYH&SIB}c-ZOH0y_`=03=dHt0Q4dQ{@-+k)k2wOyQO~6pUoAaRHrCuB z?j;vd)pFsLCNWY{3Rlmq^haF8&L-0^EQKo2gji$NAEK#(qLxo3mA|7dVb0BU%qmNL zZmTPJOF7?v%6iXR%@%KZt=XpZAcd=)si=sb&1gzj%lI-_$-7exm3^_IFkJhT_}J2W ztSoyA@f9lRVVN9yysbN0bk}f7*EiF5ewL@xPrA4sF^Thub4tJumoM+EM!MFwC=e3; zyuNm85_dvsT){C~dZz#0DU3YS;nKl%!fZ4(sZuM+{~Mo;=0m(PuubafZQ>eWv`89$ zmGI;q6Uhn2j0CQOCxP*kjyd%PGT3n9!$kU8W&bit2QkTVvJ#)< z3(1gxG#j(3`eX+Mynm3~u#pXhRKn zwj@Pr%%?lG*KUJNKXx;}UXqLx2n{wt`_rsmL{~_rLBKCtcom;?E%@BBwO+i}-kL{x z?1FYJDtrRdl({r_Quu3T;Is{Sjd_d`uC`01r4czxGt{>*g&2!V!6maGtte6ObDf+a z)sg!&VqzYFdbz~ko@uYknjL^S6JSz=;^)%bWg!sQpjnO>7YOye_rT*jd62r5nc(eU z96T;ft!}rZaC1?-iam3h

    ZI|Bd*tFUw#S_lL?B^_k;b6EmFhW%P93s=&oDT5A(G zkR6tE`<0Ooq#txPHO69{_$z=gdXyX+J#h;M==L?1vIW`FFGWh1QbT_ndu{V+t)n+0@^_ zx<6v#8028DYrwYbtYV?njcfE1{F4-2?xbP(;p5^joHDv?n{I8-I2h_-naCDr#7^DW z;x`EtKwQcthMA1%7!fkK#7%^~0q?r33EdM&b)1Jx#=~U9&!99nmy%WTAcR4)!wW7OseJg@j>_Y$Wz<5r2bFsaW$4IE^8Z}G|R9(qFjGx{t*Fwhxk|NVZS zhkG1u7`}7`9KK4m1Y^Pne0>{S1*T8P5(IKsYN#KvWhGt^0zC?eKD9F(MvAu3bb|!B%`P?H}~}2Lfp4F_~xUgqr^53Mt#L1#eKDA z8CN0RmQwvgPQnnPoB~9F^`%XU) zh)N^|R8Kr^C)zf7YbMYt;PoMg|H5?gZRW}G!h#R+Zwb1#T0^ZR?nV?qPD0Vw@bnT3 z`ZZ;Nm&8ProTn4Eq1YrWDHC5DEi4wBK^<&=t>L-H}xRm)>)$8UQt`-0FclRPq ze|9kMx2e}fCz{FQzPYyl^4XJTccY+_|?W<$lx&d1KrCO`#r$-@SI$HvJ; zrOwGq^$GaypCAW^hldBd^}p7@18B|e;B2)Legd2jj`-ghwLZDonFt4-PF`9?sz$;% G_Y!X-O9WUpkC9rCf)wO5(R%6458a>XS( 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 bLR`=iT+sG$!zVXEYk*OdSCgxgH4pt?wlGhM literal 0 HcmV?d00001 diff --git a/assets/img/favicons/ms-icon-70x70.png b/assets/img/favicons/ms-icon-70x70.png new file mode 100644 index 0000000000000000000000000000000000000000..685290b73da29a8b08bf4cb90d0c47caed57d593 GIT binary patch literal 6105 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 UNs8z7Bntq29b@gAWN*rY8mf0Hhk~FAM+xVmJVB zFZVtk_M5LW#?Ju&Tqiv(BUS7r-hV!pmR8ulp^>qGfUupNgRY)|jg8|ARW)ntw>CDm z#U&L3gCp?jnwr{1OH1qN={bCSf(H*sxw-i7-@lLT6cv}Pu5I}H2gSuFK`W~X3Ge?N zn~aW$i;a!<^z_ci%x?PDCNHO4TvCplniUWb2@DKLOV21Nh2rDmpPr)c?(T4KaL&)q zu@iB#f_PZWIiI}XV$F((}IzDY|YDFTakB*Ka-^E}R;Ns$UI

    @`!6-+HY2j`)@!LX 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

    + {{pre_year}} +
      + {% assign last_day = "" %} + {% assign last_month = "" %} + {% endif %} +{% endfor %} + \ No newline at end of file diff --git a/tabs/categories.md b/tabs/categories.md new file mode 100644 index 0000000..1132acc --- /dev/null +++ b/tabs/categories.md @@ -0,0 +1,82 @@ +--- +title: Categories + +# All the Categories of posts +# © 2017-2019 Cotes Chung +# MIT License +--- + +{% assign sort_categories = site.categories | sort %} + +{% for category in sort_categories %} + {% assign category_name = category | first %} + {% assign posts_of_category = category | last %} + {% assign first_post = posts_of_category[0] %} + + {% if category_name == first_post.categories[0] %} + {% assign sub_categories = "" %} + {% for post in posts_of_category %} + {% if post.categories.size > 1 %} + {% assign sub_categories = sub_categories | append: post.categories[1] | append: "|" %} + {% endif %} + {% endfor %} + + {% assign sub_categories = sub_categories | split: "|" | uniq | sort %} + {% assign sub_categories_size = sub_categories | size %} + +
      + +
      + + {% if sub_categories_size > 0 %} + + {% else %} + + {% endif %} + {{ category_name }} + + {% assign top_posts_size = site.categories[category_name] | size %} + + {% if sub_categories_size > 0 %} + {{ sub_categories_size }} + {% if sub_categories_size > 1 %}categories{% else %}category{% endif %}, + {% endif %} + {{ top_posts_size }} + post{% if top_posts_size > 1 %}s{% endif %} + + + + + + {% if sub_categories_size > 0%} + + {% else %} + + {% endif %} + + +
      + + + {% if sub_categories_size > 0 %} +
      +
        + {% for sub_category in sub_categories %} +
      • +  {{ sub_category }} + {% assign posts_size = site.categories[sub_category] | size %} + {{ posts_size }} + post{% if posts_size > 1 %}s{% endif %} + +
      • + {% endfor %} +
      +
      + {% endif %} + +
      + + {% endif %} +{% endfor %} + + diff --git a/tabs/tags.md b/tabs/tags.md new file mode 100644 index 0000000..f5d337f --- /dev/null +++ b/tabs/tags.md @@ -0,0 +1,27 @@ +--- +title: Tags + +# All the Tags of posts. +# © 2017-2019 Cotes Chung +# MIT License +--- + +{%comment%} + 'site.tags' looks like a Map, e.g. site.tags.MyTag.[ Post0, Post1, ... ] + Print the {{ site.tags }} will help you to understand it. +{%endcomment%} +
      +{% assign tags = "" | split: "" %} +{% for t in site.tags %} + {% assign tags = tags | push: t[0] %} +{% endfor %} + +{% assign sorted_tags = tags | sort_natural %} + +{% for t in sorted_tags %} + +{% endfor %} + +
      From daaad546bbcb15d2452ce6b60318ef46186f4d6d Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 20:38:58 +0800 Subject: [PATCH 005/896] Import the tutorial. --- _posts/2019-08-08-text-and-typography.md | 157 +++++++++++++++++++++ _posts/2019-08-08-write-a-new-post.md | 108 ++++++++++++++ _posts/2019-08-09-getting-started.md | 95 +++++++++++++ _posts/2019-08-11-customize-the-favicon.md | 28 ++++ 4 files changed, 388 insertions(+) create mode 100644 _posts/2019-08-08-text-and-typography.md create mode 100644 _posts/2019-08-08-write-a-new-post.md create mode 100644 _posts/2019-08-09-getting-started.md create mode 100644 _posts/2019-08-11-customize-the-favicon.md diff --git a/_posts/2019-08-08-text-and-typography.md b/_posts/2019-08-08-text-and-typography.md new file mode 100644 index 0000000..21e59b8 --- /dev/null +++ b/_posts/2019-08-08-text-and-typography.md @@ -0,0 +1,157 @@ +--- +title: "Text and Typography" +date: 2019-08-08 11:33:00 +0800 +categories: [Blogging, Demo] +tags: [typography] +--- + +This Jekyll template totally compatible with Markdown syntax. Now, let's take a look for the text and typography in this theme. + +## Titles + +*** +# H1 + +

      H2

      + +

      H3

      + +#### H4 + +*** + +## Paragraph + +I wandered lonely as a cloud + +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. + +## Block Quote + +> This line to shows the Block Quote. + +## Tables + +|Company|Contact|Country| +|:---|:--|---:| +|Alfreds Futterkiste | Maria Anders | Germany +|Island Trading | Helen Bennett | UK +|Magazzini Alimentari Riuniti | Giovanni Rovelli | Italy + +## Link + +[http://127.0.0.1:4000](http://127.0.0.1:4000) + + +## Footnote + +Click the hook will locate the footnote[^footnote]. + + +## Image + +![Desktop View](/assets/img/sample/mockup.png) + + +## Inline code + +This is an example of `Inline Code`. + + +## Code Snippet + +### Common + +``` +This is a common code snippet, without syntax highlight and line number. +``` + +### Specific Languages + +#### Console + +```console +$ date +Sun Nov 3 15:11:12 CST 2019 +``` + + +#### Terminal + +```terminal +$ env |grep SHELL +SHELL=/usr/local/bin/bash +PYENV_SHELL=bash +``` + +#### Ruby + +```ruby +def sum_eq_n?(arr, n) + return true if arr.empty? && n == 0 + arr.product(arr).reject { |a,b| a == b }.any? { |a,b| a + b == n } +end +``` + +#### Shell + +```shell +if [ $? -ne 0 ]; then + echo "The command was not successful."; + #do the needful / exit +fi; +``` + +#### Liquid + +{% raw %} +```liquid +{% if product.title contains 'Pack' %} + This product's title contains the word Pack. +{% endif %} +``` +{% endraw %} + +#### HTML + +```html +
      + Contact + + + Search +
      +``` + +**Horizontal Scrolling** + +```html +
      +
      +
      + +

      This is a very long long long long long long long long long long long long long long long long long long long long long line.

      + +
      +
      +
      +``` + + +## Reverse Footnote + +[^footnote]: The footnote source. diff --git a/_posts/2019-08-08-write-a-new-post.md b/_posts/2019-08-08-write-a-new-post.md new file mode 100644 index 0000000..c717482 --- /dev/null +++ b/_posts/2019-08-08-write-a-new-post.md @@ -0,0 +1,108 @@ +--- +title: "Write a new Post" +date: 2019-08-08 14:10:00 +0800 +categories: [Blogging, Tutorial] +tags: [writting] +--- + +## Naming and Path + +Create a new file name with the format `YYYY-MM-DD-title.md` then put it into `_post` of the root directory. + +## Front Matter + +Basically, you need to fill the [Front Matter](https://jekyllrb.com/docs/front-matter/) as below at the top of the post: + +```yaml +--- +title: TITLE +date: YYYY-MM-DD HH:MM:SS +/-TTTT +categories: [TOP_CATEGORIE, SUB_CATEGORIE] +tags: [TAG] +--- +``` + +> **Note**: The posts' ***layout*** has been set to `post` by default, so there is no need to add the variable ***layout*** in Front Matter block. + +### Categories and Tags + +The pages for all the categories and tags are placed in the `categoreis` and `tags` respectively. + +Let's say there is a post with title `The Beautify Rose`, it's Front Matter as follow: + +```yaml +--- +title: "The Beautify Rose" +categories: [Plant] +tags: [flower] +--- +``` + +> **Note**: `categories` is designed to contain up to two elements. + + +## Table of Contents + +By default, the **T**able **o**f **C**ontents (TOC) is displayed on the right panel of the post. If you want to turn it off globally, go to `_config.yml` and set the variable `toc` to `false`. If you want to turn off TOC for specific post, add the following to post's [Front Matter](https://jekyllrb.com/docs/front-matter/): + +```yaml +--- +toc: false +--- +``` + + +## Comments + +Similar to TOC, the [Disqus](https://disqus.com/) comments is loaded by default in each post, and the global switch is defined by variable `comments` in file `_config.yml` . If you want to close the comment for specific post, add the following to the **Front Matter** of the post: + +```yaml +--- +comments: false +--- +``` + + +## Code Block + +Markdown symbols ``` can easily create a code block as following examples. + +``` +This is a common code snippet, without syntax highlight and line number. +``` + +## Specific Language + +Using ```Language you will get code snippets with line Numbers and syntax highlight. + +> **Note**: The Jekyll style `{% raw %}{%{% endraw %} highlight LANGUAGE {% raw %}%}{% endraw %}` or `{% raw %}{%{% endraw %} highlight LANGUAGE linenos {% raw %}%}{% endraw %}` are not allowed to be used in this theme ! + +```yaml +# Yaml code snippet +items: + - part_no: A4786 + descrip: Water Bucket (Filled) + price: 1.47 + quantity: 4 +``` + +#### Liquid codes + +If you want to display the **Liquid** snippet, surround the liquid code with `{% raw %}{%{% endraw %} raw {%raw%}%}{%endraw%}` and `{% raw %}{%{% endraw %} endraw {%raw%}%}{%endraw%}` . + +{% raw %} +```liquid +{% if product.title contains 'Pack' %} + This product's title contains the word Pack. +{% endif %} +``` +{% endraw %} + +## Learn More +For more knowledge about Jekyll posts, visit the [Jekyll Docs: Posts](https://jekyllrb.com/docs/posts/). + +## See Also + +* [Getting Started]({{ site.baseurl }}/posts/getting-started/) +* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) +* [Customize the Favicon]({{ site.baseurl }}/posts/customize-the-favicon/) diff --git a/_posts/2019-08-09-getting-started.md b/_posts/2019-08-09-getting-started.md new file mode 100644 index 0000000..de14932 --- /dev/null +++ b/_posts/2019-08-09-getting-started.md @@ -0,0 +1,95 @@ +--- +title: Getting Started +date: 2019-08-09 20:55:00 +0800 +categories: [Blogging, Tutorial] +tags: [usage] +--- + + +## Basic Environment + +First of all, follow the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the basic environment (Ruby, RubyGem, Bundler and Jekyll) installation. + +In addition, the [python](https://www.python.org/downloads/) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. + +## Configuration + +Customize the variables in file `_config.yml` as needed. + +## Atom Feed + +The Atom feed url of your site will be: + +``` +/feed.xml +``` + +The `site_url` was defined by variable **url** in `_config.yml`. + +## Install Jekyll Plugins + +In the root direcoty of the project, run the following command: + +```terminal +$ bundle install +``` + +`bundle` will install all dependent Jekyll Plugins declared in `Gemfile` that stored in the root automatically. + +## Run Locally + +You may want to preview the site before publishing. Run the script in the root directory: + +```terminal +$ bash run.sh +``` +>**Note**: Because the *Recent Update* required the latest git-log date of posts, make sure the changes of `_posts` have been committed before running this command. + +Open the brower and visit [http://127.0.0.1:4000](http://127.0.0.1:4000) + +## Deploying to GitHub Pages + +### Option 1: Build locally + +For security reasons, GitHub Pages runs on `safe` mode, which means the third-party Jekyll plugins or custom scripts will not work. If you want to use any another third-party Jekyll plugins, **your have to build locally rather than on GitHub Pages**. + +**1**. On GitHub website, create a new blank repository named `.github.io`. + +**2**. Build your site by: + +```console +$ bash build.sh -d /path/to/.github.io/ +``` + +The build results will be stored in the root directory of `.github.io` and don't forget to push the changes of `.github.io` to branch `master` on GitHub. + +**3**. Go to GitHub website and enable GitHub Pages service for the new repository `.github.io`. + +**4**. Visit `https://.github.io` and enjoy. + + +### Option 2: Build by GitHub Pages + +By deploying your site in this way, you can push the source code to GitHub repository directly. + +> **Note**: If you want to add any third-party Jekyll plugins or custom scripts to your project, please refer to [*Option 1: Build locally*](#option-1-build-locally). + +**1**. Rename your repository as `.github.io`. + +**2**. Commit the changes of your repository before running the initialization script: + +```console +$ bash init.sh +``` + +It will automatically generates the *Latest Modified Date* and *Categories / Tags* page for the posts. + +**3**. Push the changes to `origin/master` then go to GitHub website and enable GitHub Pages service for the repository `.github.io`. + +**4**. Visit `https://.github.io` and enjoy. + +## See Also + +* [Write a new post]({{ site.baseurl }}/posts/write-a-new-post/) +* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) +* [Customize the Favicon]({{ site.baseurl }}/posts/customize-the-favicon/) diff --git a/_posts/2019-08-11-customize-the-favicon.md b/_posts/2019-08-11-customize-the-favicon.md new file mode 100644 index 0000000..fc20760 --- /dev/null +++ b/_posts/2019-08-11-customize-the-favicon.md @@ -0,0 +1,28 @@ +--- +title: "Customize the Favicon" +date: 2019-08-11 00:34:00 +0800 +categories: [Blogging, Tutorial] +tags: [favicon] +toc: false +--- + +The image files of [Favicons](https://www.favicon-generator.org/about/) are placed in `assets/img/favicons`. You may need to replace them with your own. So let's see how to customize these Favicons. + +Whit a square image (PNG, JPG or GIF) in hand, open the site [*Favicon & App Icon Generator*](https://www.favicon-generator.org/) and upload your original image. + +![upload-image]({{ site.baseurl }}/assets/img/sample/upload-image.png) + +Wait a moment for the website to generate icons of various sizes automatically. + +![download-icons]({{ site.baseurl }}/assets/img/sample/download-icons.png) + +Download the generated package and extract to override the files in directory `assets/img/favicons`. + +At last, rebuild the site so that the icon becomes your custom edition. + +## See Also + +* [Getting Started]({{ site.baseurl }}/posts/getting-started/) +* [Write a new post]({{ site.baseurl }}/posts/write-a-new-post/) +* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) + From e7c689e25551958d47b0678e6d583131d7798a19 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 22:14:06 +0800 Subject: [PATCH 006/896] Beautified the timeline on Archive page. --- assets/css/_src/main.scss | 66 +++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 34 deletions(-) diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss index ddebfe6..cb6c943 100644 --- a/assets/css/_src/main.scss +++ b/assets/css/_src/main.scss @@ -221,7 +221,7 @@ body { left: 260px; /* same as sidebar width */ right: 0; transition: top 0.2s ease-in-out; - z-index: 1; + z-index: 99; border-bottom: 1px solid rgba(0, 0, 0, 0.07); box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.05); } @@ -965,16 +965,16 @@ a.tag:hover { font-size: 1.5rem; font-family: 'Oswald', sans-serif; position: relative; - left: 5px; + left: 8px; } #archives span.lead:not(:first-child) { position: relative; - left: 3px; + left: 4px; } #archives span.lead:not(:first-child)::after { - left: 65px; + left: 67px; } #archives span.lead::after { /* Year dot */ @@ -984,13 +984,15 @@ a.tag:hover { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; - width: 10px; - height: 10px; + width: 12px; + height: 12px; top: -26px; left: 63px; - border: 2px solid; + border: 3px solid; background-color: #ffffff; - border-color: #9e9e9e; + border-color: #c2c6cc; + box-shadow: 0 0 2px 0 #c2c6cc; + z-index: 1; } #archives .date { @@ -1001,7 +1003,6 @@ a.tag:hover { width: 1.4rem; text-align: center; font-family: 'Oswald', sans-serif; - // background: yellowgreen; } #archives .date.day { @@ -1012,7 +1013,6 @@ a.tag:hover { width: 1.2rem; position: relative; left: -.15rem; - // background: aquamarine; } #archives ul>li>div>a { @@ -1022,7 +1022,7 @@ a.tag:hover { top: .1rem; } -#archives .date.month~a::before { +#archives .date.month ~ a::before { /* A dot for Month and Day */ content: ""; display: inline-block; @@ -1030,42 +1030,40 @@ a.tag:hover { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; - width: 6px; - height: 6px; + width: 8px; + height: 8px; float: left; - top: 20px; - left: 68px; - background-color: #9e9e9e; + top: 1.35rem; + left: 69px; + background-color: #c2c6cc; + box-shadow: 0 0 3px 0 #c2c6cc; + z-index: 1; } -#archives ul>li::after { - /* timeline for date */ +/* timeline for date */ +#archives ul>li::after, +#archives ul>li:first-child::before { content: ""; - height: 39px; - top: -19px; - left: 72px; + width: 4px; + left: 75px; display: inline-block; float: left; position: relative; - background-color: #ffffff; - border: 1px dashed silver; + background-color: rgba(0, 0, 0, 0.075); +} + +#archives ul>li::after { + height: 2.8rem; + top: -1.3rem; } #archives ul>li:first-child::before { - content: ""; - width: 2px; - height: 44px; - top: -24px; - left: 72px; - display: inline-block; - float: left; - position: relative; - background-color: #ffffff; - border: 1px dashed silver; + height: 3.06rem; + top: -1.61rem; } #archives ul:not(:last-child)>li:last-child::after { - height: 50px; + height: 3.4rem; } #archives ul:last-child>li:last-child::after { From 5398007cc2071d5f44133a01f0bb306eb27c67c9 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 30 Sep 2019 23:02:23 +0800 Subject: [PATCH 007/896] Removed unused codes. --- tabs/archives.md | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/tabs/archives.md b/tabs/archives.md index d77e0d3..6111f53 100644 --- a/tabs/archives.md +++ b/tabs/archives.md @@ -20,28 +20,6 @@ title: Archives
      {% capture this_day %}{{ post.date | date: "%d" }}{% endcapture %} {% capture this_month %}{{ post.date | date: "%b" }}{% endcapture %} - - {% comment %} - {% if last_day and last_day == this_day %} - {% assign same_day = true %} - {% else %} - {% assign last_day = this_day %} - {% assign same_day = false %} - {% endif %} - - {% if last_month and last_month == this_month %} - {% assign same_month = true %} - {% else %} - {% assign last_month = this_month %} - {% assign same_month = false %} - {% endif %} - - {{ this_day }} - - {{ this_month }} - - {% endcomment %} - {{ this_day }} {{ this_month }} {{ post.title }} From 9913da88ccff8f1f22e7a8160dc72b7b53e2fe46 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 1 Oct 2019 02:53:15 +0800 Subject: [PATCH 008/896] Updated the tutorial. --- _posts/2019-08-09-getting-started.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/_posts/2019-08-09-getting-started.md b/_posts/2019-08-09-getting-started.md index de14932..b9cd532 100644 --- a/_posts/2019-08-09-getting-started.md +++ b/_posts/2019-08-09-getting-started.md @@ -10,7 +10,7 @@ tags: [usage] First of all, follow the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the basic environment (Ruby, RubyGem, Bundler and Jekyll) installation. -In addition, the [python](https://www.python.org/downloads/) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. +In addition, the [Python](https://www.python.org/downloads/) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. ## Configuration @@ -24,7 +24,7 @@ The Atom feed url of your site will be: /feed.xml ``` -The `site_url` was defined by variable **url** in `_config.yml`. +The `site_url` was defined by variable `url` in file `_config.yml`. ## Install Jekyll Plugins @@ -49,11 +49,11 @@ Open the brower and visit [http://127.0.0.1:4000](http://127.0.0.1:4000) ## Deploying to GitHub Pages -### Option 1: Build locally +### Option 1: Local Build For security reasons, GitHub Pages runs on `safe` mode, which means the third-party Jekyll plugins or custom scripts will not work. If you want to use any another third-party Jekyll plugins, **your have to build locally rather than on GitHub Pages**. -**1**. On GitHub website, create a new blank repository named `.github.io`. +**1**. On GitHub website, create a brand new repository with name `.github.io`, then clone it locally. **2**. Build your site by: @@ -68,7 +68,7 @@ The build results will be stored in the root directory of `.github.io` **4**. Visit `https://.github.io` and enjoy. -### Option 2: Build by GitHub Pages +### Option 2: Built by GitHub Pages By deploying your site in this way, you can push the source code to GitHub repository directly. From a76e41a5dcfba9bbdc52618423407fcda660a1fc Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 1 Oct 2019 03:38:36 +0800 Subject: [PATCH 009/896] Improved the assistant scripts. --- build.sh | 39 +++++++++++++++++++++------------------ run.sh | 13 ++++--------- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/build.sh b/build.sh index 8beb90a..adecf23 100755 --- a/build.sh +++ b/build.sh @@ -5,6 +5,9 @@ # Published under MIT License +CMD="JEKYLL_ENV=production bundle exec jekyll b" +DEST=$(realpath '_site') + help() { echo "Usage:" echo @@ -25,18 +28,14 @@ init() { fi if [[ -d _site ]]; then - rm -rf _site - fi - - if [[ -d ../.chirpy-cache ]]; then - rm -rf ../.chirpy-cache + jekyll clean fi - mkdir ../.chirpy-cache - cp -r * ../.chirpy-cache - cp -r .git ../.chirpy-cache + temp=$(mktemp -d) + cp -r * $temp + cp -r .git $temp + mv $temp .container - mv ../.chirpy-cache .container } @@ -49,9 +48,6 @@ check_unset() { } -CMD="JEKYLL_ENV=production bundle exec jekyll b" -DEST=`realpath "./_site"` - while [[ $# -gt 0 ]] do opt="$1" @@ -72,10 +68,7 @@ do ;; -d|--destination) check_unset $2 - if [[ -d $2 ]]; then - rm -rf $2 - fi - DEST=$2 + DEST=$(realpath $2) shift; shift; ;; @@ -90,6 +83,7 @@ do esac done + init cd .container @@ -97,10 +91,19 @@ cd .container echo "$ cd $(pwd)" python _scripts/py/init_all.py -CMD+=" -d $DEST" +CMD+=" -d ${DEST}" echo "\$ $CMD" eval $CMD +echo -e "\nBuild success, the site files placed in '${DEST}'." + +if [[ -d ${DEST}/.git ]]; then + + if [[ ! -z $(git -C $DEST status -s) ]]; then + git -C $DEST add . + git -C $DEST commit -m "[Automation] Update site files." -q + echo -e "\nPlease push the changes of '$(realpath $DEST)' to remote master branch.\n" + fi -echo "$(date) - Build success, the Site files placed in _site." +fi cd .. && rm -rf .container diff --git a/run.sh b/run.sh index dc29dc9..7ad890f 100755 --- a/run.sh +++ b/run.sh @@ -32,15 +32,10 @@ init() { rm -rf .container fi - if [[ -d ../.chirpy-cache ]]; then - rm -rf ../.chirpy-cache - fi - - mkdir ../.chirpy-cache - cp -r * ../.chirpy-cache - cp -r .git ../.chirpy-cache - - mv ../.chirpy-cache .container + temp=$(mktemp -d) + cp -r * $temp + cp -r .git $temp + mv $temp .container trap cleanup INT } From cf4a7f2e2f763167fe088258eee7950b056167c0 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 8 Oct 2019 19:58:17 +0800 Subject: [PATCH 010/896] Improved the TOC. Automatically hide TOC titles --- _layouts/post.html | 3 ++- assets/js/_src/toc.js | 13 +++++++++++++ assets/js/dist/toc.min.js | 1 + 3 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 assets/js/_src/toc.js create mode 100644 assets/js/dist/toc.min.js diff --git a/_layouts/post.html b/_layouts/post.html index 83e4230..7398f4e 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -100,12 +100,13 @@

      {{ page.title }}

      {% if site.toc and page.toc %}

      - {{ site.data.label.panel.toc }} + {{- site.data.label.panel.toc -}}

      + {% endif %}
      diff --git a/assets/js/_src/toc.js b/assets/js/_src/toc.js new file mode 100644 index 0000000..513e99a --- /dev/null +++ b/assets/js/_src/toc.js @@ -0,0 +1,13 @@ +/* + * Hide the empty ToC in posts. + * + * © 2019 Cotes Chung + * MIT Licensed + */ + +$(function() { + // Hide ToC title if there is no head + if ($("#toc-wrap>nav#toc>ul>li").length == 0) { + $("#toc-wrap>h3").addClass("hidden"); + } +}); \ No newline at end of file diff --git a/assets/js/dist/toc.min.js b/assets/js/dist/toc.min.js new file mode 100644 index 0000000..c158e79 --- /dev/null +++ b/assets/js/dist/toc.min.js @@ -0,0 +1 @@ +$(function(){if($("#toc-wrap>nav#toc>ul>li").length==0){$("#toc-wrap>h3").addClass("hidden")}}); \ No newline at end of file From 574be381c6925cbd878bf77cca0151e7619f4f40 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 8 Oct 2019 22:33:31 +0800 Subject: [PATCH 011/896] Beautified the style for code snippets. --- assets/css/_src/syntax.scss | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/assets/css/_src/syntax.scss b/assets/css/_src/syntax.scss index cc1ace6..bbb82f0 100644 --- a/assets/css/_src/syntax.scss +++ b/assets/css/_src/syntax.scss @@ -76,17 +76,18 @@ figure.highlight, .highlight { overflow: auto; - -moz-box-shadow: inset 0 0 2px #e9ecef; - -webkit-box-shadow: inset 0 0 2px #e9ecef; - box-shadow: inset 0 0 2px #e9ecef; + -moz-box-shadow: inset 0 0 2px #c2c6cc; + -webkit-box-shadow: inset 0 0 2px #c2c6cc; + box-shadow: inset 0 0 2px #c2c6cc; } .highlight .lineno { - padding: .8rem .5rem; - min-width: 2rem; + margin: .8rem 0rem; + padding: 0 .5rem; + min-width: 2.2rem; text-align: right; - color: rgba(140, 134, 126, 0.67); - background: rgb(234, 236, 242); + color: #c2c6cc; + border-right: 1px solid #e9ecef; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; From baef16224cd08668aa612a2a2abc1ccc4fa3f1c2 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Fri, 11 Oct 2019 00:06:18 +0800 Subject: [PATCH 012/896] Update the tutorial. --- _posts/2019-08-11-customize-the-favicon.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/_posts/2019-08-11-customize-the-favicon.md b/_posts/2019-08-11-customize-the-favicon.md index fc20760..7fd4532 100644 --- a/_posts/2019-08-11-customize-the-favicon.md +++ b/_posts/2019-08-11-customize-the-favicon.md @@ -16,7 +16,12 @@ Wait a moment for the website to generate icons of various sizes automatically. ![download-icons]({{ site.baseurl }}/assets/img/sample/download-icons.png) -Download the generated package and extract to override the files in directory `assets/img/favicons`. +Download the generated package and extract the contents to cover all files in folder `assets/img/favicons`, but except the following two: + +- browserconfig.xml +- manifest.json + + At last, rebuild the site so that the icon becomes your custom edition. From c363d5158db7a82f0da7096c834a61a670dbf2b5 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sat, 12 Oct 2019 00:46:12 +0800 Subject: [PATCH 013/896] Update Docs. --- _posts/2019-08-09-getting-started.md | 66 +++++++++++----------- _posts/2019-08-11-customize-the-favicon.md | 15 ++--- tabs/about.md | 2 +- 3 files changed, 39 insertions(+), 44 deletions(-) diff --git a/_posts/2019-08-09-getting-started.md b/_posts/2019-08-09-getting-started.md index b9cd532..e8e5f4c 100644 --- a/_posts/2019-08-09-getting-started.md +++ b/_posts/2019-08-09-getting-started.md @@ -10,12 +10,25 @@ tags: [usage] First of all, follow the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the basic environment (Ruby, RubyGem, Bundler and Jekyll) installation. -In addition, the [Python](https://www.python.org/downloads/) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. +In addition, the [Python](https://www.python.org/downloads/)(version 3.5 or abover) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. + + +## Install Jekyll Plugins + +In the root direcoty of the project, run the following command: + +```terminal +$ bundle install +``` + +`bundle` will install all the dependent Jekyll Plugins listed in file `Gemfile` automatically. + ## Configuration Customize the variables in file `_config.yml` as needed. + ## Atom Feed The Atom feed url of your site will be: @@ -26,19 +39,10 @@ The Atom feed url of your site will be: The `site_url` was defined by variable `url` in file `_config.yml`. -## Install Jekyll Plugins - -In the root direcoty of the project, run the following command: - -```terminal -$ bundle install -``` - -`bundle` will install all dependent Jekyll Plugins declared in `Gemfile` that stored in the root automatically. ## Run Locally -You may want to preview the site before publishing. Run the script in the root directory: +You may want to preview the site before publishing, so just run the script in the root directory: ```terminal $ bash run.sh @@ -49,47 +53,43 @@ Open the brower and visit [http://127.0.0.1:4000](http://127.0.0.1:4000) ## Deploying to GitHub Pages -### Option 1: Local Build +Before the deployment begins, ensure the `url` in `_config.yml` has been set to `https://.github.io`. -For security reasons, GitHub Pages runs on `safe` mode, which means the third-party Jekyll plugins or custom scripts will not work. If you want to use any another third-party Jekyll plugins, **your have to build locally rather than on GitHub Pages**. +### Option 1: Built by GitHub Pages -**1**. On GitHub website, create a brand new repository with name `.github.io`, then clone it locally. +By deploying your site in this way, you can push the source code to GitHub repository directly. -**2**. Build your site by: +> **Note**: If you want to add any third-party Jekyll plugins or custom scripts to your project, please refer to [*Option 2: Build locally*](#option-2-build-locally). + +**1**. Rename your repository as `.github.io`. + +**2**. Commit the changes of your repository, then run the initialization script: ```console -$ bash build.sh -d /path/to/.github.io/ +$ bash init.sh ``` -The build results will be stored in the root directory of `.github.io` and don't forget to push the changes of `.github.io` to branch `master` on GitHub. +It will automatically generates the *Latest Modified Date* and *Categories / Tags* page for the posts. -**3**. Go to GitHub website and enable GitHub Pages service for the new repository `.github.io`. +**3**. Push the changes to `origin/master` then go to GitHub website and enable GitHub Pages service for the repository `.github.io`. **4**. Visit `https://.github.io` and enjoy. -### Option 2: Built by GitHub Pages +### Option 2: Build Locally -By deploying your site in this way, you can push the source code to GitHub repository directly. - -> **Note**: If you want to add any third-party Jekyll plugins or custom scripts to your project, please refer to [*Option 1: Build locally*](#option-1-build-locally). +For security reasons, GitHub Pages runs on `safe` mode, which means the third-party Jekyll plugins or custom scripts will not work. If you want to use any another third-party Jekyll plugins, **your have to build locally rather than on GitHub Pages**. -**1**. Rename your repository as `.github.io`. +**1**. On GitHub website, create a brand new repository with name `.github.io`, then clone it locally. -**2**. Commit the changes of your repository before running the initialization script: +**2**. Build your site by: ```console -$ bash init.sh +$ bash build.sh -d /path/to/.github.io/ ``` -It will automatically generates the *Latest Modified Date* and *Categories / Tags* page for the posts. +The build results will be stored in the root directory of `.github.io` and don't forget to push the changes of `.github.io` to branch `master` on GitHub. -**3**. Push the changes to `origin/master` then go to GitHub website and enable GitHub Pages service for the repository `.github.io`. +**3**. Go to GitHub website and enable GitHub Pages service for the new repository `.github.io`. **4**. Visit `https://.github.io` and enjoy. - -## See Also - -* [Write a new post]({{ site.baseurl }}/posts/write-a-new-post/) -* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) -* [Customize the Favicon]({{ site.baseurl }}/posts/customize-the-favicon/) diff --git a/_posts/2019-08-11-customize-the-favicon.md b/_posts/2019-08-11-customize-the-favicon.md index 7fd4532..20e0143 100644 --- a/_posts/2019-08-11-customize-the-favicon.md +++ b/_posts/2019-08-11-customize-the-favicon.md @@ -12,22 +12,17 @@ Whit a square image (PNG, JPG or GIF) in hand, open the site [*Favicon & App Ico ![upload-image]({{ site.baseurl }}/assets/img/sample/upload-image.png) -Wait a moment for the website to generate icons of various sizes automatically. +Click button Create Favicon and wait a moment for the website to generate the icons of various sizes automatically. ![download-icons]({{ site.baseurl }}/assets/img/sample/download-icons.png) -Download the generated package and extract the contents to cover all files in folder `assets/img/favicons`, but except the following two: +Download the generated package and extract, then remove the following two of them: - browserconfig.xml - manifest.json + +Now, copy the rest (`.PNG` and `.ICO`) to cover the original files in folder `assets/img/favicons`. +In the end, rebuild your site so that the icon becomes your custom edition. -At last, rebuild the site so that the icon becomes your custom edition. - -## See Also - -* [Getting Started]({{ site.baseurl }}/posts/getting-started/) -* [Write a new post]({{ site.baseurl }}/posts/write-a-new-post/) -* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) - diff --git a/tabs/about.md b/tabs/about.md index bcb7dba..13d923e 100644 --- a/tabs/about.md +++ b/tabs/about.md @@ -28,7 +28,7 @@ You can fork this project from the [Homepage](https://github.com/cotes2020/jekyl ## Usage -Follow the [tutorial posts]({{ site.baseurl }}/categories/tutorial/), it will help you build a site quickly. +Follow the [tutorial posts]({{ site.baseurl }}/categories/tutorial/), they will help you build a site quickly. ## License From 3c1cb935d2b69f6dcbc385d57023840a5760bb12 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sat, 12 Oct 2019 01:07:38 +0800 Subject: [PATCH 014/896] Improved the init tool. Remove the Python cache files. --- init.sh | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/init.sh b/init.sh index e95821a..b801e2a 100755 --- a/init.sh +++ b/init.sh @@ -1,6 +1,6 @@ #!/bin/bash # -# Initial the categories/tags pages and for posts. +# Initial the Categories/Tags pages and Lastmod for posts. # © 2019 Cotes Chung # Published under MIT License @@ -19,11 +19,13 @@ fi python _scripts/py/init_all.py +find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf + msg="Updated" if [[ ! -z $(git status categories -s) ]]; then git add categories/ - msg+=" Categories' pages" + msg+=" the Categories" CATEGORIES=true fi @@ -31,16 +33,20 @@ fi if [[ ! -z $(git status tags -s) ]]; then git add tags/ if [[ $CATEGORIES = true ]]; then - msg+=" and" + msg+="," + else + msg+=" the" fi - msg+=" Tags' pages" + msg+=" Tags" TAGS=true fi if [[ ! -z $(git status _posts -s) ]]; then git add _posts/ if [[ $CATEGORIES = true || $TAGS = true ]]; then - msg+=" and" + msg+="," + else + msg+=" the" fi msg+=" Lastmod" LASTMOD=true From 63f665525edf6d99499460e281ace0e0f130c85d Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sat, 12 Oct 2019 14:16:22 +0800 Subject: [PATCH 015/896] Add comment for Jekyll config. --- _config.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/_config.yml b/_config.yml index 7c3b7e6..3b27a88 100644 --- a/_config.yml +++ b/_config.yml @@ -36,10 +36,14 @@ google_site_verification: google_meta_tag_verification # change to your verifica #-------------------------- -# Change to your Google Analytics ID +# Change to your timezone › http://www.timezoneconverter.com/cgi-bin/findzone/findzone +timezone: Asia/Shanghai + google_analytics: + # Change to your Google Analytics ID id: 'UA-*********-*' - # Switch for Google Analytics pageviews. DO NOT enable it unless you know how to deploy the Google Analytics superProxy. + # The Google Analytics pageviews switch. + # DO NOT enable it unless you know how to deploy the Google Analytics superProxy. pv: false disqus: @@ -124,14 +128,12 @@ defaults: path: tabs values: layout: page - dynamic_title: true # hide title in mobile screens. + dynamic_title: true # Hide title in mobile screens. breadcrumb: - label: Home url: / -timezone: Asia/Shanghai - sass: sass_dir: /assets/css style: compressed @@ -146,7 +148,7 @@ compress_html: envs: [] exclude: - - vendor/ # Avoid Jekyll mistakenly read the vender directory in Travis-CI's VM . + - vendor/ # Avoid Jekyll mistakenly read the vender directory on Travis-CI's VM . - Gemfile.lock - Gemfile - run.sh From a589831812062c7f9cc7c2a6192d4c2c0e5b3927 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Wed, 16 Oct 2019 23:20:51 +0800 Subject: [PATCH 016/896] Improved the compatibility in Firefox. --- _includes/sidebar.html | 1 - assets/css/_src/main.scss | 72 +++++++++++++++++++++------------------ 2 files changed, 39 insertions(+), 34 deletions(-) diff --git a/_includes/sidebar.html b/_includes/sidebar.html index 6d609b1..fb1b89c 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -43,7 +43,6 @@ {% endfor %} -
    diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss index cb6c943..2094d91 100644 --- a/assets/css/_src/main.scss +++ b/assets/css/_src/main.scss @@ -1,4 +1,3 @@ - /*! * The main styles. * © 2018-2019 Cotes Chung @@ -7,6 +6,7 @@ html, body { height: 100%; + font-size: 16px; } /* Solved jumping scrollbar */ @@ -46,7 +46,6 @@ body { #sidebar .nav-item { height: 20%; - padding: 0 2rem; } #sidebar .nav-link { @@ -70,47 +69,53 @@ body { display: -ms-flexbox; } -.cursor { - background: #fcfcfc; - position: relative; - display: none; - top: 0; - left: 98.5%; - width: 3px; - height: 10%; - -webkit-transition: top 0.5s ease; - -moz-transition: top 0.5s ease; - transition: top 0.5s ease; +#sidebar ul > li.active:nth-child(1) ~ li:last-child::after, +#sidebar ul > li.nav-item:nth-child(1):hover ~ li:last-child::after { + top: calc(-400% + (26px / 2)); + visibility: visible; } -#sidebar ul>li.active:nth-child(1)~.cursor, -#sidebar ul>li.nav-item:nth-child(1):hover~.cursor { - top: -95%; - display: block; +#sidebar ul > li.active:nth-child(2) ~ li:last-child::after, +#sidebar ul > li.nav-item:nth-child(2):hover ~ li:last-child::after { + top: calc(-300% + (26px / 2)); + visibility: visible; } -#sidebar ul>li.active:nth-child(2)~.cursor, -#sidebar ul>li.nav-item:nth-child(2):hover~.cursor { - top: -75%; - display: block; +#sidebar ul > li.active:nth-child(3) ~ li:last-child::after, +#sidebar ul > li.nav-item:nth-child(3):hover ~ li:last-child::after { + top: calc(-200% + (26px / 2)); + visibility: visible; } -#sidebar ul>li.active:nth-child(3)~.cursor, -#sidebar ul>li.nav-item:nth-child(3):hover~.cursor { - top: -55%; - display: block; +#sidebar ul > li.active:nth-child(4) ~ li:last-child::after, +#sidebar ul > li.nav-item:nth-child(4):hover ~ li:last-child::after { + top: calc(-100% + (26px / 2)); + visibility: visible; } -#sidebar ul>li.active:nth-child(4)~.cursor, -#sidebar ul>li.nav-item:nth-child(4):hover~.cursor { - top: -35%; - display: block; +#sidebar ul > li.active:nth-child(5):last-child::after, +#sidebar ul > li.nav-item:nth-child(5):last-child:hover::after { + top: calc(26px / 2); + visibility: visible; } -#sidebar ul>li.active:nth-child(5)~.cursor, -#sidebar ul>li.nav-item:nth-child(5):hover~.cursor { - top: -15%; - display: block; +#sidebar ul > li:last-child > a { + margin-right: -3px; + max-width: calc(100% - 3px); +} + +#sidebar ul > li:last-child::after { + visibility: hidden; + content: ""; + position: relative; + width: 3px; + height: 26px; + background: #fcfcfc;; + pointer-events: none; + -webkit-transition: top .5s ease; + -moz-transition: top .5s ease; + -o-transition: top .5s ease; + transition: top .5s ease; } #nav-wrap { @@ -996,6 +1001,7 @@ a.tag:hover { } #archives .date { + white-space: nowrap; display: inline-block; } From 3e4b83a29798fb45eacfa52cff00dd5400e4f933 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Thu, 17 Oct 2019 03:23:38 +0800 Subject: [PATCH 017/896] Update tutorial. --- _posts/2019-08-08-write-a-new-post.md | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/_posts/2019-08-08-write-a-new-post.md b/_posts/2019-08-08-write-a-new-post.md index c717482..27716a9 100644 --- a/_posts/2019-08-08-write-a-new-post.md +++ b/_posts/2019-08-08-write-a-new-post.md @@ -1,5 +1,5 @@ --- -title: "Write a new Post" +title: "Write a New Post" date: 2019-08-08 14:10:00 +0800 categories: [Blogging, Tutorial] tags: [writting] @@ -24,22 +24,13 @@ tags: [TAG] > **Note**: The posts' ***layout*** has been set to `post` by default, so there is no need to add the variable ***layout*** in Front Matter block. -### Categories and Tags +- **The TimeZone of Date** -The pages for all the categories and tags are placed in the `categoreis` and `tags` respectively. + To ensure that the posts' release date matches the city you live in, please modify the value of `timezone` in the file `_config.yml`. A list of all available values can be found on [TimezoneConverter](http://www.timezoneconverter.com/cgi-bin/findzone/findzone) or [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). -Let's say there is a post with title `The Beautify Rose`, it's Front Matter as follow: - -```yaml ---- -title: "The Beautify Rose" -categories: [Plant] -tags: [flower] ---- -``` - -> **Note**: `categories` is designed to contain up to two elements. +- **Categories and Tags** + The `categories` of each post is designed to contain up to two elements, and the number of elements in `tag` can be zero or infinite. ## Table of Contents @@ -101,8 +92,3 @@ If you want to display the **Liquid** snippet, surround the liquid code with `{% ## Learn More For more knowledge about Jekyll posts, visit the [Jekyll Docs: Posts](https://jekyllrb.com/docs/posts/). -## See Also - -* [Getting Started]({{ site.baseurl }}/posts/getting-started/) -* [Text and Typography]({{ site.baseurl }}/posts/text-and-typography/) -* [Customize the Favicon]({{ site.baseurl }}/posts/customize-the-favicon/) From 4287b9e6129cf775d88f50056d6619d28409ee0f Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 21 Oct 2019 13:18:25 +0800 Subject: [PATCH 018/896] Renamed variable in Config. --- _config.yml | 2 +- _includes/sidebar.html | 12 ++++++------ assets/css/_src/main.scss | 8 ++++---- assets/img/sample/{profile.jpg => avatar.jpg} | Bin 4 files changed, 11 insertions(+), 11 deletions(-) rename assets/img/sample/{profile.jpg => avatar.jpg} (100%) diff --git a/_config.yml b/_config.yml index 3b27a88..59ee108 100644 --- a/_config.yml +++ b/_config.yml @@ -15,7 +15,7 @@ url: 'https://www.example.com' author: Chirpy # change to your full name -logo: /assets/img/sample/profile.jpg # Support network resources. +avatar: /assets/img/sample/avatar.jpg # Support network resources. github: username: github_username # change to your github username diff --git a/_includes/sidebar.html b/_includes/sidebar.html index fb1b89c..ad5a202 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -6,13 +6,13 @@ + + {% if page.layout == 'post' and site.toc and page.toc %} +

    {{- site.data.label.panel.toc -}}

    -{% endif %} + {% endif %} \ No newline at end of file diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss index f6213aa..1ffaef7 100644 --- a/assets/css/_src/main.scss +++ b/assets/css/_src/main.scss @@ -431,7 +431,7 @@ footer .license a { border: 1px solid #e9ecef; border-radius: .8rem; padding: .3rem .5rem; - margin-bottom: .3rem; + margin: 0 .35rem .5rem 0; } #access-tags .post-tag:hover { From 14342742ce1361365c001ac0e42f4147b41128a6 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sun, 3 Nov 2019 00:57:08 +0800 Subject: [PATCH 026/896] Update the About page. --- tabs/about.md | 28 +--------------------------- 1 file changed, 1 insertion(+), 27 deletions(-) diff --git a/tabs/about.md b/tabs/about.md index 13d923e..954edfc 100644 --- a/tabs/about.md +++ b/tabs/about.md @@ -6,30 +6,4 @@ title: About # MIT License --- -**Chirpy** is an responsive web design Jekyll theme developed using Bootstrap 4. - - -## Features - -* Last modified date -* Table of Contents -* Disqus Comments -* Syntax highlighting -* Two-level Categories -* Search -* HTML compress -* Atom feeds -* Google Analytics -* Pageviews (Advanced) - -## Homepage - -You can fork this project from the [Homepage](https://github.com/cotes2020/jekyll-theme-chirpy/). Any issues and suggestions are welcome! - -## Usage - -Follow the [tutorial posts]({{ site.baseurl }}/categories/tutorial/), they will help you build a site quickly. - -## License - -This project is published under the [MIT License](https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/LICENSE). \ No newline at end of file +> **Note**: Add Markdown syntax content in file `tabs/about.md` and it will show up on this page. \ No newline at end of file From 79b5f51eb5cbac7d19e0e83ba612f22b491da3ee Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sun, 3 Nov 2019 15:21:18 +0800 Subject: [PATCH 027/896] Hide line-number in console/terminal snippet. --- assets/css/_src/syntax.scss | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/assets/css/_src/syntax.scss b/assets/css/_src/syntax.scss index bbb82f0..d4a3224 100644 --- a/assets/css/_src/syntax.scss +++ b/assets/css/_src/syntax.scss @@ -148,11 +148,15 @@ td.rouge-code { border-radius: 5px; } - -/* Hide line numbers for code snippets without specific language */ -div[class^='highlighter-rouge'] pre.lineno { +/* Hide line numbers for defualt, console, and terminal code snippets */ +div[class^='highlighter-rouge'] pre.lineno, +div.language-console.highlighter-rouge pre.lineno, +div.language-terminal.highlighter-rouge pre.lineno { display: none; } -div[class^='highlighter-rouge'] td.rouge-code { + +div[class^='highlighter-rouge'] td.rouge-code, +div.language-console.highlighter-rouge td.rouge-code, +div.language-terminal.highlighter-rouge td.rouge-code { padding: .8rem 1rem; } From 342a28d6ed1f9485a5504a6c7343f57c665a90a2 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 4 Nov 2019 04:35:13 +0800 Subject: [PATCH 028/896] Truncate long title with ellipsis in Archives. Extended from mobile views to desktop views. --- assets/css/_src/main.scss | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss index 1ffaef7..fc26cd4 100644 --- a/assets/css/_src/main.scss +++ b/assets/css/_src/main.scss @@ -1011,6 +1011,12 @@ a.tag:hover { background-image: linear-gradient(to left, #fff, #fbfbfb, #fbfbfb, #fbfbfb, #fff); } +#archives li>div { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + #archives span.lead { font-size: 1.5rem; font-family: 'Oswald', sans-serif; @@ -1257,12 +1263,6 @@ div.tooltip-inner { /* Overrided BS4 Tooltip */ letter-spacing: 0; } - #archives li>div { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - #page-tag ul>li>a, #page-category ul>li>a { white-space: nowrap; From 513ac76f1fde28048141c309021eb26e87fbc471 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 5 Nov 2019 17:18:31 +0800 Subject: [PATCH 029/896] Added runtime sync monitor. --- _scripts/sh/sync_monitor.sh | 36 +++++++++++++++++++ run.sh | 71 +++++++++++++++++++++++-------------- 2 files changed, 81 insertions(+), 26 deletions(-) create mode 100644 _scripts/sh/sync_monitor.sh diff --git a/_scripts/sh/sync_monitor.sh b/_scripts/sh/sync_monitor.sh new file mode 100644 index 0000000..09d5e14 --- /dev/null +++ b/_scripts/sh/sync_monitor.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +# Files sync monitoer +# +# © 2019 Cotes Chung +# MIT Licensed + +# $1 -> the origin filen with absolute path. +# $2 -> the origin sync directory +# $3 -> the destination sync direcotry + +# Pass the system temp file +if [[ ! -f $1 ]]; then + exit 0 +fi + +src_dir=`dirname $(realpath $1)` + +dir_prefix="$(realpath $2)/" + +related_dir="${src_dir:${#dir_prefix}}" + + +dest="$(realpath $3)/${related_dir}" + +if [[ ! -d "$dest" ]]; then + mkdir -p "$dest" +fi + +if [[ -f "$1" ]]; then + cp $1 $dest +fi + +if [[ $related_dir == "_posts" ]]; then + python $3/_scripts/py/pages_generator.py +fi diff --git a/run.sh b/run.sh index 7ad890f..faba8f1 100755 --- a/run.sh +++ b/run.sh @@ -1,56 +1,77 @@ #!/bin/bash -# + # Run jekyll site at http://127.0.0.1:4000 +# +# Requirement: +# fswatch › http://emcrisostomo.github.io/fswatch/ +# # © 2019 Cotes Chung # Published under MIT License +WORK_DIR=$PWD +CONTAINER=.container +SYNC_TOOL=_scripts/sh/sync_monitor.sh + +cmd="bundle exec jekyll s" + help() { - echo "Usage:" - echo - echo " bash run.sh [options]" - echo - echo "Options:" - echo " -H, --host Host to bind to" - echo " -P, --port Port to listen on" - echo " -b, --baseurl The site relative url that start with slash, e.g. '/project'" - echo " -h, --help Print the help information" + echo "Usage:" + echo + echo " bash run.sh [options]" + echo + echo "Options:" + echo " -H, --host Host to bind to" + echo " -P, --port Port to listen on" + echo " -b, --baseurl The site relative url that start with slash, e.g. '/project'" + echo " -h, --help Print the help information" + echo " -t, --trace Show the full backtrace when an error occurs" + } cleanup() { - cd ../ - rm -rf .container + cd $WORK_DIR + rm -rf $CONTAINER + ps aux | grep fswatch | awk '{print $2}' | xargs kill -9 > /dev/null 2>&1 } init() { - set -eu - if [[ -d .container ]]; then - rm -rf .container + if [[ -d $CONTAINER ]]; then + rm -rf $CONTAINER fi temp=$(mktemp -d) cp -r * $temp cp -r .git $temp - mv $temp .container + mv $temp $CONTAINER trap cleanup INT } check_unset() { - if [[ -z ${1:+unset} ]] - then + if [[ -z ${1:+unset} ]]; then help exit 1 fi } -cmd="bundle exec jekyll s" +main() { + init + + cd $CONTAINER + python _scripts/py/init_all.py + fswatch -0 -e "\\$CONTAINER" -e "\.git" ${WORK_DIR} | xargs -0 -I {} bash ./${SYNC_TOOL} {} $WORK_DIR . & + + echo "\$ $cmd" + eval $cmd +} + while (( $# )) do @@ -80,6 +101,10 @@ do shift shift ;; + -t|--trace) + cmd+=" -t" + shift + ;; -h|--help) help exit 0 @@ -92,10 +117,4 @@ do esac done -init - -cd .container -python _scripts/py/init_all.py - -echo "\$ $cmd" -eval $cmd +main From 5204f0c60e90ae6a89d005706f81b24dadb44cc6 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Tue, 5 Nov 2019 22:14:02 +0800 Subject: [PATCH 030/896] Updated tutorial and README. --- README.md | 13 +++--- _posts/2019-08-09-getting-started.md | 62 +++++++++++++++++++++------- 2 files changed, 54 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 2b62625..9f40f6c 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ![devices-mockup](assets/img/sample/devices-mockup.png) -A Jekyll theme with responsive web design that focuses on text presentation. [Live Demo »](https://chirpy.cotes.info) +A Jekyll theme with responsive web design that focuses on text presentation. Hope you like it! [Live Demo »](https://chirpy.cotes.info) ## Features @@ -23,7 +23,7 @@ A Jekyll theme with responsive web design that focuses on text presentation. [Li ## Quick start -First of all, complete the installation of the following environment dependencies: +Complete the installation of the following environment dependencies: - [Ruby](https://www.ruby-lang.org/en/downloads/) - [RubyGem](https://rubygems.org/pages/download) @@ -31,10 +31,9 @@ First of all, complete the installation of the following environment dependencie - [Jekyll](https://jekyllrb.com/) - [Python](https://www.python.org/downloads/) - [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) +- [fswatch](http://emcrisostomo.github.io/fswatch/getting.html) -Clone the repository locally, but to prevent losing the latest features, consider using **Fork** instead of cloning. - -Install the Jekyll plugins: +Next, [**fork**](https://github.com/cotes2020/jekyll-theme-chirpy/fork) this project and rename as `.github.io`, then clone the replicated repository locally. Go to the root directory and install the Jekyll plugins: ``` $ bundle install @@ -48,7 +47,9 @@ $ bash run.sh Now, open your favorite brower and visit -Please refer to the [documentation](https://chirpy.cotes.info/posts/getting-started/) for more details. Hope you like it. +## Documentation + +For more details, please check the [tutorial](https://chirpy.cotes.info/posts/getting-started/). BTW, a copy of the tutorial is also available on the [Wiki](https://github.com/cotes2020/jekyll-theme-chirpy/wiki). ## License diff --git a/_posts/2019-08-09-getting-started.md b/_posts/2019-08-09-getting-started.md index e8e5f4c..045a763 100644 --- a/_posts/2019-08-09-getting-started.md +++ b/_posts/2019-08-09-getting-started.md @@ -2,20 +2,19 @@ title: Getting Started date: 2019-08-09 20:55:00 +0800 categories: [Blogging, Tutorial] -tags: [usage] +tags: [getting started] --- +## Preparation -## Basic Environment +First of all, follow the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the installtion of basic environment (Ruby, RubyGem, Bundler and Jekyll). In addition, to use the funny script tools, we also need to install [Python](https://www.python.org/downloads/)(version 3.5 or abover), [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) and [fswatch](http://emcrisostomo.github.io/fswatch/getting.html). -First of all, follow the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the basic environment (Ruby, RubyGem, Bundler and Jekyll) installation. +Next, [fork Chirpy](https://github.com/cotes2020/jekyll-theme-chirpy/fork) and then clone the replicated repository locally. -In addition, the [Python](https://www.python.org/downloads/)(version 3.5 or abover) and [ruamel.yaml](https://pypi.org/project/ruamel.yaml/) are also required. +## Install Jekyll plugins -## Install Jekyll Plugins - -In the root direcoty of the project, run the following command: +Go to root directory of the repository and run the following: ```terminal $ bundle install @@ -24,6 +23,39 @@ $ bundle install `bundle` will install all the dependent Jekyll Plugins listed in file `Gemfile` automatically. +## File structure + +The main files and related brief introductions are listed below. + +```sh +jekyll-theme-chirpy/ +├── _data +├── _includes +├── _layouts +├── _posts # posts stay here +├── _scripts +├── assets +├── tabs +│   └── about.md # the ABOUT page +├── .gitignore +├── .travis.yml # remove it +├── 404.html +├── Gemfile +├── LICENSE +├── README.md +├── _config.yml # configuration file +├── build.sh # script tool +├── run.sh # script tool +├── init.sh # script tool +├── pv.sh +├── feed.xml +├── index.html +├── robots.txt +├── search.json +└── sitemap.xml +``` + + ## Configuration Customize the variables in file `_config.yml` as needed. @@ -34,26 +66,26 @@ Customize the variables in file `_config.yml` as needed. The Atom feed url of your site will be: ``` -/feed.xml +/feed.xml ``` -The `site_url` was defined by variable `url` in file `_config.yml`. +The `SITE_URL` was defined by variable `url` in file `_config.yml`. -## Run Locally +## Run locally -You may want to preview the site before publishing, so just run the script in the root directory: +You may want to preview the site before publishing, so just run the script tool: ```terminal $ bash run.sh ``` ->**Note**: Because the *Recent Update* required the latest git-log date of posts, make sure the changes of `_posts` have been committed before running this command. +>**Note**: Because the *Recent Update* required the latest git-log date of posts, so make sure the changes of `_posts` have been committed before running this command. -Open the brower and visit [http://127.0.0.1:4000](http://127.0.0.1:4000) +Open a brower and visit ## Deploying to GitHub Pages -Before the deployment begins, ensure the `url` in `_config.yml` has been set to `https://.github.io`. +Before the deployment begins, rename your project as `.github.io` and ensure the `url` in `_config.yml` has been set to `https://.github.io`. ### Option 1: Built by GitHub Pages @@ -76,7 +108,7 @@ It will automatically generates the *Latest Modified Date* and *Categories / Tag **4**. Visit `https://.github.io` and enjoy. -### Option 2: Build Locally +### Option 2: Build locally For security reasons, GitHub Pages runs on `safe` mode, which means the third-party Jekyll plugins or custom scripts will not work. If you want to use any another third-party Jekyll plugins, **your have to build locally rather than on GitHub Pages**. From 9565429ee04a47521220ddc1fa3bedc7bb574023 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Wed, 6 Nov 2019 18:06:10 +0800 Subject: [PATCH 031/896] Optimized sidebar cursor effect on touch screens. --- assets/css/_src/main.scss | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/assets/css/_src/main.scss b/assets/css/_src/main.scss index fc26cd4..cb5168a 100644 --- a/assets/css/_src/main.scss +++ b/assets/css/_src/main.scss @@ -117,10 +117,15 @@ body { height: 26px; background: #fcfcfc;; pointer-events: none; - -webkit-transition: top .5s ease; - -moz-transition: top .5s ease; - -o-transition: top .5s ease; - transition: top .5s ease; +} + +@media (hover: hover) { + #sidebar ul>li:last-child::after { + -webkit-transition: top .5s ease; + -moz-transition: top .5s ease; + -o-transition: top .5s ease; + transition: top .5s ease; + } } #nav-wrap { @@ -897,7 +902,7 @@ table tbody td { padding-inline-start: 1.5rem; } -#related-posts ul > li::before { +#related-posts ul>li::before { background: #c2c9d4; width: 5px; height: 5px; @@ -1136,8 +1141,8 @@ a.tag:hover { padding: .6rem 0; } -#page-category ul > li::before, -#page-tag ul > li::before { +#page-category ul>li::before, +#page-tag ul>li::before { background: #999; width: 5px; height: 5px; From e2e4b71f817a050fff34e080f89803738ff8684e Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Wed, 6 Nov 2019 18:16:09 +0800 Subject: [PATCH 032/896] Added more comment details in Config. --- _config.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 59ee108..02d872e 100644 --- a/_config.yml +++ b/_config.yml @@ -13,7 +13,7 @@ description: 'A text-based Jekyll theme.' # Replace with your domain, e.g. "https://username.github.io" url: 'https://www.example.com' -author: Chirpy # change to your full name +author: your_full_name # change to your full name avatar: /assets/img/sample/avatar.jpg # Support network resources. @@ -24,11 +24,13 @@ twitter: username: twitter_username # change to your twitter username social: - name: Chirpy # change to your full name + name: your_full_name # it will shows as the copyright owner in Footer email: example@doamin.com # change to your email address links: + # The first element serves as the copyright owner's link - https://twitter.com/username # change to your twitter homepage - https://github.com/username # change to your github homepage + # Uncomment below to add more social links # - https://www.facebook.com/username # - https://www.linkedin.com/in/username From 2208b43baea9938645dab5a3efed8284fc1d2d8d Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 11 Nov 2019 23:02:38 +0800 Subject: [PATCH 033/896] Redesign sidebar for xlarge screens. Screen width greater than FHD. --- _data/label.yml | 10 +-- _includes/sidebar.html | 26 ++++--- assets/css/_src/main.scss | 156 +++++++++++++++++++++++++++++++++----- 3 files changed, 156 insertions(+), 36 deletions(-) diff --git a/_data/label.yml b/_data/label.yml index a53c2d9..d4305db 100644 --- a/_data/label.yml +++ b/_data/label.yml @@ -3,11 +3,11 @@ # MIT Licensed tabs: - - { name: "Home" } - - { name: "Categories", path: tabs, url: categories } - - { name: "Tags", path: tabs, url: tags } - - { name: "Archives", path: tabs, url: archives } - - { name: "About", path: tabs, url: about } + - { name: "Home", icon: 'fas fa-home' } + - { name: "Categories", path: tabs, url: categories, icon: 'fas fa-stream' } + - { name: "Tags", path: tabs, url: tags, icon: 'fas fa-tags' } + - { name: "Archives", path: tabs, url: archives, icon: 'fas fa-archive'} + - { name: "About", path: tabs, url: about, icon: 'fas fa-info'} panel: lastmod: "Recent Update" diff --git a/_includes/sidebar.html b/_includes/sidebar.html index ad5a202..b9ceaa1 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -5,8 +5,8 @@ --> {% if site.google_analytics.pv %} - + {% endif %} {% endif %} diff --git a/assets/js/dist/countUp.min.js b/assets/lib/countUp.min.js similarity index 98% rename from assets/js/dist/countUp.min.js rename to assets/lib/countUp.min.js index 341dc9f..cd2da4f 100644 --- a/assets/js/dist/countUp.min.js +++ b/assets/lib/countUp.min.js @@ -1 +1,2 @@ +/*! https://github.com/inorganik/countUp.js */ var CountUp=function(h,b,i,e,g,n){var m=this;m.version=function(){return"1.9.3"};m.options={useEasing:true,useGrouping:true,separator:",",decimal:".",easingFn:c,formattingFn:d,prefix:"",suffix:"",numerals:[]};if(n&&typeof n==="object"){for(var k in m.options){if(n.hasOwnProperty(k)&&n[k]!==null){m.options[k]=n[k]}}}if(m.options.separator===""){m.options.useGrouping=false}else{m.options.separator=""+m.options.separator}var a=0;var l=["webkit","moz","ms","o"];for(var j=0;j1?m.options.decimal+p[1]:"";if(m.options.useGrouping){q="";for(u=0,o=s.length;um.endVal);m.frameVal=m.startVal;m.initialized=true;return true}else{m.error="[CountUp] startVal ("+b+") or endVal ("+i+") is not a number";return false}};m.printValue=function(p){var o=m.options.formattingFn(p);if(m.d.tagName==="INPUT"){this.d.value=o}else{if(m.d.tagName==="text"||m.d.tagName==="tspan"){this.d.textContent=o}else{this.d.innerHTML=o}}};m.count=function(p){if(!m.startTime){m.startTime=p}m.timestamp=p;var o=p-m.startTime;m.remaining=m.duration-o;if(m.options.useEasing){if(m.countDown){m.frameVal=m.startVal-m.options.easingFn(o,0,m.startVal-m.endVal,m.duration)}else{m.frameVal=m.options.easingFn(o,m.startVal,m.endVal-m.startVal,m.duration)}}else{if(m.countDown){m.frameVal=m.startVal-((m.startVal-m.endVal)*(o/m.duration))}else{m.frameVal=m.startVal+(m.endVal-m.startVal)*(o/m.duration)}}if(m.countDown){m.frameVal=(m.frameValm.endVal)?m.endVal:m.frameVal}m.frameVal=Math.round(m.frameVal*m.dec)/m.dec;m.printValue(m.frameVal);if(om.endVal);m.rAF=requestAnimationFrame(m.count)};if(m.initialize()){m.printValue(m.startVal)}}; \ No newline at end of file From 7bdbd2aa4f19e2f68f51b2ca41ca0d4bf0450604 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Fri, 29 Nov 2019 20:16:25 +0800 Subject: [PATCH 061/896] Optimize the style of footnotes. --- assets/css/main.scss | 1 - 1 file changed, 1 deletion(-) diff --git a/assets/css/main.scss b/assets/css/main.scss index d75ee99..43258b3 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -556,7 +556,6 @@ h2, h3, h4, sup { } .footnotes ol { - padding-inline-start: 2rem; margin-top: .5rem; } From 3010e0b34eb9ebee9c5daa2e3e9bfb2319b203f8 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sat, 30 Nov 2019 00:31:20 +0800 Subject: [PATCH 062/896] Beautified the profile text responsive design. for screens >= 1650px wide --- assets/css/main.scss | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/assets/css/main.scss b/assets/css/main.scss index 43258b3..09e8a19 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -1224,12 +1224,12 @@ div.tooltip-inner { /* Overrided BS4 Tooltip */ } #site-title a { - letter-spacing: 1px; + text-transform: uppercase; } - #site-title, #site-subtitle { - text-align: left; - margin-left: 1.1rem; + .profile-text>div { + text-align: left !important; + margin-left: .8rem !important; } #site-subtitle { From ebbd818223fd3d36c2d208cf60365843c77a7824 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sat, 30 Nov 2019 22:31:50 +0800 Subject: [PATCH 063/896] Split the css importing. CRP optimization. --- _includes/head.html | 5 +++++ assets/css/{_typograph/fonts.scss => _fonts.scss} | 0 assets/css/main.scss | 5 +---- assets/css/post.scss | 1 - assets/css/{_typograph => }/syntax.scss | 2 ++ 5 files changed, 8 insertions(+), 5 deletions(-) rename assets/css/{_typograph/fonts.scss => _fonts.scss} (100%) rename assets/css/{_typograph => }/syntax.scss (99%) diff --git a/_includes/head.html b/_includes/head.html index 5928411..e8a7f34 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -71,6 +71,10 @@ {% endif %} + {% if page.title == 'About' and page.layout == 'page' %} + + {% endif %} + @@ -99,6 +103,7 @@ {% if page.layout == 'post' %} + {% if site.toc and page.toc %} diff --git a/assets/css/_typograph/fonts.scss b/assets/css/_fonts.scss similarity index 100% rename from assets/css/_typograph/fonts.scss rename to assets/css/_fonts.scss diff --git a/assets/css/main.scss b/assets/css/main.scss index 09e8a19..25fa00a 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -1,15 +1,12 @@ --- --- - /*! * The main styles. * © 2018-2019 Cotes Chung * MIT Licensed */ -@import "_typograph/syntax"; -@import "_typograph/fonts"; - +@import "_fonts"; html, body { height: 100%; diff --git a/assets/css/post.scss b/assets/css/post.scss index 4900b11..81fe0f2 100644 --- a/assets/css/post.scss +++ b/assets/css/post.scss @@ -1,6 +1,5 @@ --- --- - /*! Individual styles for Post © 2019 Cotes Chung diff --git a/assets/css/_typograph/syntax.scss b/assets/css/syntax.scss similarity index 99% rename from assets/css/_typograph/syntax.scss rename to assets/css/syntax.scss index b61ae44..2c51931 100644 --- a/assets/css/_typograph/syntax.scss +++ b/assets/css/syntax.scss @@ -1,3 +1,5 @@ +--- +--- /* * The syntax highlight. * © 2018-2019 Cotes Chung From 924cfa7426a78d32e7f22581058359874ace6642 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 2 Dec 2019 01:15:55 +0800 Subject: [PATCH 064/896] Move lozad. --- _includes/head.html | 4 ---- _includes/lozad.html | 7 +++++++ _layouts/post.html | 6 +----- 3 files changed, 8 insertions(+), 9 deletions(-) create mode 100644 _includes/lozad.html diff --git a/_includes/head.html b/_includes/head.html index e8a7f34..fb5bd34 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -75,10 +75,8 @@ {% endif %} - - @@ -89,8 +87,6 @@ - - {% if page.layout == 'home' or page.layout == 'post' %} diff --git a/_includes/lozad.html b/_includes/lozad.html new file mode 100644 index 0000000..179deb8 --- /dev/null +++ b/_includes/lozad.html @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/_layouts/post.html b/_layouts/post.html index cf4688b..a86d864 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -118,8 +118,4 @@

    {{ page.title }}

    - - +{% include lozad.html %} From 9992e1122836167511a2112baaf817c45bb509e6 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Thu, 5 Dec 2019 23:11:52 +0800 Subject: [PATCH 065/896] Change the ToC hiding rule. Adapt to bootstrap-toc plugins. --- assets/js/_src/toc.js | 5 +---- assets/js/dist/toc.min.js | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/assets/js/_src/toc.js b/assets/js/_src/toc.js index 5e64906..2d3d765 100644 --- a/assets/js/_src/toc.js +++ b/assets/js/_src/toc.js @@ -7,10 +7,7 @@ $(function() { if ($("#post-wrap .post-content h1").length == 0 - && $("#post-wrap .post-content h2").length == 0 - && $("#post-wrap .post-content h3").length == 0 - && $("#post-wrap .post-content h4").length == 0 - && $("#post-wrap .post-content h5").length == 0) { + && $("#post-wrap .post-content h2").length == 0) { $("#toc-wrap").addClass("hidden"); } }); \ No newline at end of file diff --git a/assets/js/dist/toc.min.js b/assets/js/dist/toc.min.js index d5dd257..56f77f2 100644 --- a/assets/js/dist/toc.min.js +++ b/assets/js/dist/toc.min.js @@ -1 +1 @@ -$(function(){if($("#post-wrap .post-content h1").length==0&&$("#post-wrap .post-content h2").length==0&&$("#post-wrap .post-content h3").length==0&&$("#post-wrap .post-content h4").length==0&&$("#post-wrap .post-content h5").length==0){$("#toc-wrap").addClass("hidden")}}); \ No newline at end of file +$(function(){if($("#post-wrap .post-content h1").length==0&&$("#post-wrap .post-content h2").length==0){$("#toc-wrap").addClass("hidden")}}); \ No newline at end of file From bbdad4ebd9b9ad7b2a2bcf0615d7a4b6887cc646 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Sun, 8 Dec 2019 00:15:09 +0800 Subject: [PATCH 066/896] Optimized the indentation of layout Category and Tag. --- _layouts/category.html | 2 +- _layouts/tag.html | 2 +- assets/css/category-tag.scss | 7 +++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/_layouts/category.html b/_layouts/category.html index c633a65..b2a1cb6 100644 --- a/_layouts/category.html +++ b/_layouts/category.html @@ -8,7 +8,7 @@ {% include date-format.html %}
    -

    +

    {{ page.title }} {{ site.categories[page.category] | size }} diff --git a/_layouts/tag.html b/_layouts/tag.html index 45993da..8e81ca8 100644 --- a/_layouts/tag.html +++ b/_layouts/tag.html @@ -8,7 +8,7 @@ {% include date-format.html %}
    -

    +

    {{ page.title }} {{ site.tags[page.tag] | size }} diff --git a/assets/css/category-tag.scss b/assets/css/category-tag.scss index 0ae01fe..303a88b 100644 --- a/assets/css/category-tag.scss +++ b/assets/css/category-tag.scss @@ -55,10 +55,17 @@ } @media all and (max-width: 576px) { + + #page-category ul>li::before, + #page-tag ul>li::before { + margin: 0 .5rem; + } + #page-tag ul>li>a, #page-category ul>li>a { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } + } \ No newline at end of file From 0f59cb5ddf85c76c9fc4adbead197c5c9f121d49 Mon Sep 17 00:00:00 2001 From: Cotes Chung <11371340+cotes2020@users.noreply.github.com> Date: Mon, 16 Dec 2019 00:15:58 +0800 Subject: [PATCH 067/896] Fix local jQuery loading. --- _includes/head.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_includes/head.html b/_includes/head.html index fb5bd34..272259d 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -77,8 +77,9 @@ + + +{% capture result_elem %} +
    + {title} + +

    {snippet}

    +
    +{% endcapture %} + + \ No newline at end of file diff --git a/_includes/search-results.html b/_includes/search-results.html index d9a87f6..d6d6157 100644 --- a/_includes/search-results.html +++ b/_includes/search-results.html @@ -3,13 +3,12 @@ © 2017-2019 Cotes Chung MIT License --> -
    -
    -
    -

    Search Results

    -
    -
      -
      +
      +
      +
      +

      Trending Tags

      + {% include trending-tags.html %}
      +
      \ No newline at end of file diff --git a/_includes/search.html b/_includes/search.html deleted file mode 100644 index 04ee7c3..0000000 --- a/_includes/search.html +++ /dev/null @@ -1,13 +0,0 @@ - - - \ No newline at end of file diff --git a/_includes/sidebar.html b/_includes/sidebar.html index eb52b06..c0e29aa 100644 --- a/_includes/sidebar.html +++ b/_includes/sidebar.html @@ -4,8 +4,8 @@ MIT License --> -