diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 6c31a49..109b1df 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -26,7 +26,7 @@ Please fill the template below - Device/Os: [e.g. Android 10] - Type: [e.g. Desktop/Mobile] - Browser and version [e.g. Chrome 86.0]: - - Hugo Version [ >=0.82.0 expected]: + - Hugo Version [ >=0.83.0 expected]: - Theme Version [e.g. v4.0, master, or commit-id ]: **Steps to reproduce the behavior:** diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE.md similarity index 92% rename from .github/PULL_REQUEST_TEMPLATE/pull_request_template.md rename to .github/PULL_REQUEST_TEMPLATE.md index ceb8eb4..00b856c 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -37,7 +37,8 @@ is closed automatically when this PR is merged. - [ ] This change adds/updates translations and I have used the [template present here](https://github.com/adityatelange/hugo-PaperMod/wiki/Translations#want-to-add-your-language-). - [ ] I have enabled [maintainer edits for this PR](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/allowing-changes-to-a-pull-request-branch-created-from-a-fork). +- [ ] I have verified that the code works as described/as intended. - [ ] This change adds a Social Icon which has a permissive license to use it. -- [ ] This change **does not** any CDN resources/links. +- [ ] This change **does not** include any CDN resources/links. - [ ] This change **does not** include any unrelated scripts such as bash and python scripts. - [ ] This change updates the overridden internal templates from HUGO's repository. diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5a7bc88..6d0d4c6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -26,7 +26,7 @@ jobs: - name: Setup hugo uses: peaceiris/actions-hugo@v2 with: - hugo-version: 'latest' + hugo-version: '0.83.0' - name: Build run: hugo --buildDrafts --gc --verbose --minify diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 31ad733..1ec9e57 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -30,7 +30,7 @@ jobs: - name: Setup hugo uses: peaceiris/actions-hugo@v2 with: - hugo-version: 'latest' + hugo-version: '0.83.0' - name: Build run: hugo --buildDrafts --gc --verbose --minify diff --git a/README.md b/README.md index e7c7cd2..ce755c7 100644 --- a/README.md +++ b/README.md @@ -4,16 +4,16 @@
> Hugo PaperMod is a theme based on [hugo-paper](https://github.com/nanxiaobei/hugo-paper). -> The goal of this project is to add more Features and customization to the og theme. +> The goal of this project is to add more features and customization to the og theme. -The [demo](https://adityatelange.github.io/hugo-PaperMod/) includes a lot of documentation about Installation, Features with few more stuff. Make sure you visit it, to get the awesome hands-on experience and get known about the features ... +The [demo](https://adityatelange.github.io/hugo-PaperMod/) includes a lot of documentation about Installation, Features with a few more stuff. Make sure you visit it, to get an awesome hands-on experience and get to know about the features ... **ExampleSite** can be found here: [exampleSite](https://github.com/adityatelange/hugo-PaperMod/tree/exampleSite). Demo is built up with [exampleSite](https://github.com/adityatelange/hugo-PaperMod/tree/exampleSite) as source. -[![Minimum Hugo Version](https://img.shields.io/static/v1?label=min-HUGO-version&message=0.82.0&color=blue&logo=hugo)](https://github.com/gohugoio/hugo/releases/tag/v0.82.0) +[![Minimum Hugo Version](https://img.shields.io/static/v1?label=min-HUGO-version&message=0.83.0&color=blue&logo=hugo)](https://github.com/gohugoio/hugo/releases/tag/v0.83.0) [![Build GH-Pages](https://github.com/adityatelange/hugo-PaperMod/workflows/Build%20GH-Pages/badge.svg)](https://github.com/adityatelange/hugo-PaperMod/deployments/activity_log?environment=github-pages) [![GitHub](https://img.shields.io/github/license/adityatelange/hugo-PaperMod)](https://github.com/adityatelange/hugo-PaperMod/blob/master/LICENSE) -[![hugo-papermod](https://img.shields.io/badge/Hugo--Themes-@PaperMod-blue)](https://themes.gohugo.io/hugo-papermod/) +[![hugo-papermod](https://img.shields.io/badge/Hugo--Themes-@PaperMod-blue)](https://themes.gohugo.io/themes/hugo-papermod/) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=adityatelange_hugo-PaperMod&metric=alert_status)](https://sonarcloud.io/dashboard?id=adityatelange_hugo-PaperMod) ![code-size](https://img.shields.io/github/languages/code-size/adityatelange/hugo-PaperMod) @@ -35,19 +35,19 @@ The [demo](https://adityatelange.github.io/hugo-PaperMod/) includes a lot of doc - Table of Content Generation (newer implementation). - Archive of posts. - Social Icons (home-info and profile-mode) -- Social-Media Share buttons on post. +- Social-Media Share buttons on posts. - Menu location indicator. - Multilingual support. (with language selector) - Taxonomies - Cover image for each post (with Responsive image support). - Light/Dark theme (automatic theme switch a/c to browser theme and theme-switch button). - SEO Friendly. -- Muliple Author support. +- Multiple Author support. - Search Page with Fuse.js - Other Posts suggestion below a post -- BreadCrumb Navigation +- Breadcrumb Navigation - Code Block Copy buttons -- No webpack, nodejs and other depedencies required to edit the theme. +- No webpack, nodejs and other dependencies are required to edit the theme. Read Wiki For More Details => **[PaperMod - Features](https://github.com/adityatelange/hugo-PaperMod/wiki/Features)** @@ -77,7 +77,7 @@ Release ChangeLog has info about stuff added: **[Releases](https://github.com/ad --- -## [LightHouse Report (100% ?)](https://lighthouse-dot-webdotdevsite.appspot.com//lh/html?url=https%3A%2F%2Fadityatelange.github.io%2Fhugo-PaperMod%2F) +## [Pagespeed Insights (100% ?)](https://pagespeed.web.dev/report?url=https://adityatelange.github.io/hugo-PaperMod/) --- @@ -86,4 +86,5 @@ Release ChangeLog has info about stuff added: **[Releases](https://github.com/ad - [**Highlight.js**](https://github.com/highlightjs/highlight.js) - [**Fuse.js**](https://github.com/krisk/fuse) - [**Feather Icons**](https://github.com/feathericons/feather) +- [**Simple Icons**](https://github.com/simple-icons/simple-icons) - **All Contributors and Supporters** diff --git a/assets/css/common/404.css b/assets/css/common/404.css index 41b2409..8a23430 100644 --- a/assets/css/common/404.css +++ b/assets/css/common/404.css @@ -7,5 +7,5 @@ justify-content: center; height: 80%; font-size: 160px; - font-weight: 700 + font-weight: 700; } diff --git a/assets/css/common/archive.css b/assets/css/common/archive.css index b4ae14c..7e7e245 100644 --- a/assets/css/common/archive.css +++ b/assets/css/common/archive.css @@ -1,44 +1,44 @@ .archive-posts { width: 100%; - font-size: 16px + font-size: 16px; } .archive-year { - margin-top: 40px + margin-top: 40px; } .archive-year:not(:last-of-type) { - border-bottom: 2px solid var(--border) + border-bottom: 2px solid var(--border); } .archive-month { display: flex; align-items: flex-start; - padding: 10px 0 + padding: 10px 0; } .archive-month-header { margin: 25px 0; - width: 200px + width: 200px; } .archive-month:not(:last-of-type) { - border-bottom: 1px solid var(--border) + border-bottom: 1px solid var(--border); } .archive-entry { position: relative; padding: 5px; - margin: 10px 0 + margin: 10px 0; } .archive-entry-title { margin: 5px 0; - font-weight: 400 + font-weight: 400; } .archive-count, .archive-meta { color: var(--secondary); - font-size: 14px + font-size: 14px; } diff --git a/assets/css/common/footer.css b/assets/css/common/footer.css index 65b4e2c..5addb1e 100644 --- a/assets/css/common/footer.css +++ b/assets/css/common/footer.css @@ -1,7 +1,7 @@ .footer, .top-link { font-size: 12px; - color: var(--secondary) + color: var(--secondary); } .footer { @@ -9,12 +9,12 @@ margin: auto; padding: calc((var(--footer-height) - var(--gap)) / 2) var(--gap); text-align: center; - line-height: 24px + line-height: 24px; } .footer span { margin-inline-start: 1px; - margin-inline-end: 1px + margin-inline-end: 1px; } .footer span:last-child { @@ -23,11 +23,11 @@ .footer a { color: inherit; - border-bottom: 1px solid var(--secondary) + border-bottom: 1px solid var(--secondary); } .footer a:hover { - border-bottom: 1px solid var(--primary) + border-bottom: 1px solid var(--primary); } .top-link { @@ -41,7 +41,7 @@ height: 42px; padding: 12px; border-radius: 64px; - transition: visibility .5s, opacity .8s linear + transition: visibility 0.5s, opacity 0.8s linear; } .top-link, @@ -51,10 +51,10 @@ .footer a:hover, .top-link:hover { - color: var(--primary) + color: var(--primary); } .top-link:focus, #theme-toggle:focus { - outline: 0 + outline: 0; } diff --git a/assets/css/common/header.css b/assets/css/common/header.css index beaf5bd..3cd070e 100644 --- a/assets/css/common/header.css +++ b/assets/css/common/header.css @@ -5,11 +5,11 @@ max-width: calc(var(--nav-width) + var(--gap) * 2); margin-inline-start: auto; margin-inline-end: auto; - line-height: var(--header-height) + line-height: var(--header-height); } .nav a { - display: block + display: block; } .logo, @@ -19,7 +19,7 @@ } .logo { - flex-wrap: inherit + flex-wrap: inherit; } .logo a { @@ -33,45 +33,45 @@ pointer-events: none; transform: translate(0, -10%); border-radius: 6px; - margin-inline-end: 8px + margin-inline-end: 8px; } #theme-toggle svg { height: 18px; } -button#theme-toggle { +button#theme-toggle { font-size: 26px; - margin: auto 4px + margin: auto 4px; } body.dark #moon { vertical-align: middle; - display: none + display: none; } body:not(.dark) #sun { - display: none + display: none; } #menu { list-style: none; word-break: keep-all; overflow-x: auto; - white-space: nowrap + white-space: nowrap; } -#menu li+li { - margin-inline-start: var(--gap) +#menu li + li { + margin-inline-start: var(--gap); } #menu a { - font-size: 16px + font-size: 16px; } #menu .active { font-weight: 500; - border-bottom: 2px solid currentColor + border-bottom: 2px solid currentColor; } .lang-switch li, @@ -83,7 +83,7 @@ body:not(.dark) #sun { .lang-switch { display: flex; - flex-wrap: inherit + flex-wrap: inherit; } .lang-switch a { @@ -93,5 +93,5 @@ body:not(.dark) #sun { } .logo-switches { - flex-wrap: inherit + flex-wrap: inherit; } diff --git a/assets/css/common/main.css b/assets/css/common/main.css index 82b6124..50022ac 100644 --- a/assets/css/common/main.css +++ b/assets/css/common/main.css @@ -3,15 +3,15 @@ min-height: calc(100vh - var(--header-height) - var(--footer-height)); max-width: calc(var(--main-width) + var(--gap) * 2); margin: auto; - padding: var(--gap) + padding: var(--gap); } .page-header h1 { - font-size: 40px + font-size: 40px; } .pagination { - display: flex + display: flex; } .pagination a { @@ -20,31 +20,32 @@ line-height: 36px; background: var(--primary); border-radius: calc(36px / 2); - padding: 0 16px + padding: 0 16px; } .pagination .next { - margin-inline-start: auto + margin-inline-start: auto; } .social-icons { - padding: 12px 0 + padding: 12px 0; } .social-icons a:not(:last-of-type) { - margin-inline-end: 12px + margin-inline-end: 12px; } .social-icons a svg { height: 26px; - width: 26px + width: 26px; } code { direction: ltr; } -div.highlight, pre { +div.highlight, +pre { position: relative; } @@ -58,6 +59,7 @@ div.highlight, pre { border-radius: var(--radius); padding: 0 5px; font-size: 14px; + user-select: none; } div.highlight:hover .copy-code, diff --git a/assets/css/common/post-entry.css b/assets/css/common/post-entry.css index 21ec6ab..885aa2a 100644 --- a/assets/css/common/post-entry.css +++ b/assets/css/common/post-entry.css @@ -4,33 +4,33 @@ flex-direction: column; justify-content: center; min-height: 320px; - margin: var(--gap) 0 calc(var(--gap) * 2) 0 + margin: var(--gap) 0 calc(var(--gap) * 2) 0; } .first-entry .entry-header { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; - -webkit-line-clamp: 3 + -webkit-line-clamp: 3; } .first-entry .entry-header h1 { font-size: 34px; - line-height: 1.3 + line-height: 1.3; } .first-entry .entry-content { margin: 14px 0; font-size: 16px; - -webkit-line-clamp: 3 + -webkit-line-clamp: 3; } .first-entry .entry-footer { - font-size: 14px + font-size: 14px; } .home-info .entry-content { - -webkit-line-clamp: unset + -webkit-line-clamp: unset; } .post-entry { @@ -39,20 +39,21 @@ padding: var(--gap); background: var(--entry); border-radius: var(--radius); - transition: transform .1s; + transition: transform 0.1s; border: 1px solid var(--border); } .post-entry:active { - transform: scale(.96) + transform: scale(0.96); } .tag-entry .entry-cover { - display: none + display: none; } .entry-header h2 { - font-size: 24px + font-size: 24px; + line-height: 1.3; } .entry-content { @@ -63,12 +64,12 @@ overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; - -webkit-line-clamp: 2 + -webkit-line-clamp: 2; } .entry-footer { color: var(--secondary); - font-size: 13px + font-size: 13px; } .entry-link { @@ -76,31 +77,28 @@ left: 0; right: 0; top: 0; - bottom: 0 + bottom: 0; } .entry-cover, .entry-isdraft { font-size: 14px; - color: var(--secondary) -} - -.entry-isdraft { - display: inline + color: var(--secondary); } .entry-cover { margin-bottom: var(--gap); - text-align: center + text-align: center; } .entry-cover img { border-radius: var(--radius); pointer-events: none; - width: 100% + width: 100%; + height: auto; } .entry-cover a { color: var(--secondary); - box-shadow: 0 1px 0 var(--primary) + box-shadow: 0 1px 0 var(--primary); } diff --git a/assets/css/common/post-single.css b/assets/css/common/post-single.css index 1d31b62..79ccbec 100644 --- a/assets/css/common/post-single.css +++ b/assets/css/common/post-single.css @@ -1,11 +1,11 @@ .page-header, .post-header { - margin: 24px auto var(--content-gap) auto + margin: 24px auto var(--content-gap) auto; } .post-title { margin-bottom: 2px; - font-size: 40px + font-size: 40px; } .post-description { @@ -18,14 +18,14 @@ color: var(--secondary); font-size: 14px; display: flex; - flex-wrap: wrap + flex-wrap: wrap; } .post-meta .i18n_list li { display: inline-flex; list-style: none; margin: auto 3px; - box-shadow: 0 1px 0 var(--secondary) + box-shadow: 0 1px 0 var(--secondary); } .breadcrumbs a { @@ -33,56 +33,56 @@ } .post-content { - color: var(--content) + color: var(--content); } .post-content h3, .post-content h4, .post-content h5, .post-content h6 { - margin: 24px 0 16px + margin: 24px 0 16px; } .post-content h1 { margin: 40px auto 32px; - font-size: 40px + font-size: 40px; } .post-content h2 { margin: 32px auto 24px; - font-size: 32px + font-size: 32px; } .post-content h3 { - font-size: 24px + font-size: 24px; } .post-content h4 { - font-size: 16px + font-size: 16px; } .post-content h5 { - font-size: 14px + font-size: 14px; } .post-content h6 { - font-size: 12px + font-size: 12px; } .post-content a, .toc a:hover { - box-shadow: 0 1px 0 + box-shadow: 0 1px 0; } .post-content a code { margin: auto 0; border-radius: 0; - box-shadow: 0 -1px 0 var(--primary) inset + box-shadow: 0 -1px 0 var(--primary) inset; } .post-content del { text-decoration: none; - background: linear-gradient(to right, var(--primary) 100%, transparent 0) 0 50%/1px 1px repeat-x + background: linear-gradient(to right, var(--primary) 100%, transparent 0) 0 50%/1px 1px repeat-x; } .post-content dl, @@ -90,46 +90,46 @@ .post-content p, .post-content figure, .post-content ul { - margin-bottom: var(--content-gap) + margin-bottom: var(--content-gap); } .post-content ol, .post-content ul { - padding-inline-start: 20px + padding-inline-start: 20px; } .post-content li { - margin-top: 5px + margin-top: 5px; } .post-content li p { - margin-bottom: 0 + margin-bottom: 0; } .post-content dl { display: flex; flex-wrap: wrap; - margin: 0 + margin: 0; } .post-content dt { width: 25%; - font-weight: 700 + font-weight: 700; } .post-content dd { width: 75%; margin-inline-start: 0; - padding-inline-start: 10px + padding-inline-start: 10px; } -.post-content dd~dd, -.post-content dt~dt { - margin-top: 10px +.post-content dd ~ dd, +.post-content dt ~ dt { + margin-top: 10px; } .post-content table { - margin-bottom: 32px + margin-bottom: 32px; } .post-content table th, @@ -137,81 +137,76 @@ min-width: 80px; padding: 12px 8px; line-height: 1.5; - border-bottom: 1px solid var(--border) + border-bottom: 1px solid var(--border); } .post-content table th { font-size: 14px; - text-align: start + text-align: start; } .post-content table:not(.highlighttable) td code:only-child { - margin: auto 0 + margin: auto 0; } .post-content .highlight table { - border-radius: var(--radius) + border-radius: var(--radius); } .post-content .highlight:not(table), .post-content pre { margin: 10px auto; background: var(--hljs-bg) !important; - border-radius: var(--radius) + border-radius: var(--radius); } -.post-content li>.highlight { - margin-inline-end: 0 +.post-content li > .highlight { + margin-inline-end: 0; } .post-content ul pre { - margin-inline-start: calc(var(--gap) * -2) + margin-inline-start: calc(var(--gap) * -2); } .post-content .highlight pre { - margin: 0 + margin: 0; } .post-content .highlighttable { - table-layout: fixed + table-layout: fixed; } .post-content .highlighttable td:first-child { - width: 40px + width: 40px; } .post-content .highlighttable td .linenodiv { - padding-inline-end: 0 !important + padding-inline-end: 0 !important; } .post-content .highlighttable td .highlight, .post-content .highlighttable td .linenodiv pre { - margin-bottom: 0 + margin-bottom: 0; } .post-content .highlighttable td .highlight pre code::-webkit-scrollbar { - display: none -} - -.post-content .highlight span { - background: 0 0 !important + display: none; } .post-content code { margin: auto 4px; padding: 4px 6px; - font-family: Menlo, Monaco, 'Courier New', Courier, monospace; - font-size: .78em; + font-size: 0.78em; line-height: 1.5; background: var(--code-bg); - border-radius: 2px + border-radius: 2px; } .post-content pre code { display: block; margin: auto 0; padding: 10px; - color: rgba(255, 255, 255, .8); + color: rgb(213, 213, 214); background: 0 0; border-radius: 0; overflow-x: auto; @@ -221,7 +216,7 @@ .post-content blockquote { margin: 20px 0; padding: 0 14px; - border-inline-start: 3px solid var(--primary) + border-inline-start: 3px solid var(--primary); } .post-content hr { @@ -229,33 +224,34 @@ height: 2px; background: var(--tertiary); border-top: 0; - border-bottom: 0 + border-bottom: 0; } .post-content iframe { - max-width: 100% + max-width: 100%; } .post-content img { - border-radius: 4px + border-radius: 4px; + margin: 1rem 0; } -.post-content img[src*='#center'] { - margin: auto +.post-content img[src*="#center"] { + margin: 1rem auto; } .post-content figure.align-center { text-align: center; } -.post-content figure>figcaption { +.post-content figure > figcaption { color: var(--primary); font-size: 16px; font-weight: bold; margin: 8px 0 16px; } -.post-content figure>figcaption>p { +.post-content figure > figcaption > p { color: var(--secondary); font-size: 14px; font-weight: normal; @@ -266,7 +262,7 @@ border: 1px solid var(--border); background: var(--code-bg); border-radius: var(--radius); - padding: .4em + padding: 0.4em; } .dark .toc { @@ -275,39 +271,39 @@ .toc details summary { cursor: zoom-in; - margin-inline-start: 20px + margin-inline-start: 20px; } .toc details[open] summary { - cursor: zoom-out + cursor: zoom-out; } .toc .details { display: inline; - font-weight: 500 + font-weight: 500; } .toc .inner { margin: 0 20px; - padding: 10px 20px + padding: 10px 20px; } .toc li ul { - margin-inline-start: var(--gap) + margin-inline-start: var(--gap); } .toc summary:focus { - outline: 0 + outline: 0; } .post-footer { - margin-top: 56px + margin-top: 56px; } .post-tags li { display: inline-block; margin-inline-end: 3px; - margin-bottom: 5px + margin-bottom: 5px; } .post-tags a, @@ -315,7 +311,7 @@ .paginav { border-radius: var(--radius); background: var(--code-bg); - border: 1px solid var(--border) + border: 1px solid var(--border); } .post-tags a { @@ -325,12 +321,12 @@ color: var(--secondary); font-size: 14px; line-height: 34px; - background: var(--code-bg) + background: var(--code-bg); } .post-tags a:hover, .paginav a:hover { - background: var(--border) + background: var(--border); } .share-buttons { @@ -338,26 +334,26 @@ padding-inline-start: var(--radius); display: flex; justify-content: center; - overflow-x: auto + overflow-x: auto; } .share-buttons a { - margin-top: 10px + margin-top: 10px; } .share-buttons a:not(:last-of-type) { - margin-inline-end: 12px + margin-inline-end: 12px; } .share-buttons a svg { height: 30px; width: 30px; fill: currentColor; - transition: transform .1s + transition: transform 0.1s; } .share-buttons svg:active { - transform: scale(.96) + transform: scale(0.96); } h1:hover .anchor, @@ -369,25 +365,26 @@ h6:hover .anchor { display: inline-flex; color: var(--secondary); margin-inline-start: 8px; - font-weight: 500 + font-weight: 500; + user-select: none; } .post-content :not(table) ::-webkit-scrollbar-thumb { border: 2px solid var(--hljs-bg); - background: rgba(255, 255, 255, 0.32) + background: rgb(113, 113, 117); } .post-content :not(table) ::-webkit-scrollbar-thumb:hover { - background: rgba(255, 255, 255, 0.56) + background: rgb(163, 163, 165); } .gist table::-webkit-scrollbar-thumb { border: 2px solid rgb(255, 255, 255); - background: rgba(0, 0, 0, 0.32) + background: rgb(173, 173, 173); } .gist table::-webkit-scrollbar-thumb:hover { - background: rgba(0, 0, 0, 0.56) + background: rgb(112, 112, 112); } .post-content table::-webkit-scrollbar-thumb { diff --git a/assets/css/common/profile-mode.css b/assets/css/common/profile-mode.css index d8614f1..e928e18 100644 --- a/assets/css/common/profile-mode.css +++ b/assets/css/common/profile-mode.css @@ -1,56 +1,53 @@ .buttons, .main .profile { - display: flex; - justify-content: center + display: flex; + justify-content: center; } .main .profile { - position: absolute; - left: 0; - right: 0; - align-items: center; - height: 80%; - text-align: center + align-items: center; + min-height: calc(100vh - var(--header-height) - var(--footer-height) - (var(--gap) * 2)); + text-align: center; } .profile .profile_inner h1 { - padding: 12px 0 + padding: 12px 0; } .profile .profile_inner span { - padding: 10px 0; - font-size: 18px + padding: 10px 0; + font-size: 18px; } .profile .profile_inner span a { - text-decoration: underline + text-decoration: underline; } .profile img { - display: inline-table; - border-radius: 50%; - pointer-events: none; - border: 3px #ffffff solid + display: inline-table; + border-radius: 50%; + pointer-events: none; + border: 3px #ffffff solid; } .buttons { - flex-wrap: wrap; - max-width: 400px; - margin: 0 auto + flex-wrap: wrap; + max-width: 400px; + margin: 0 auto; } .button { - background: var(--tertiary); - border-radius: var(--radius); - margin: 8px; - padding: 6px; - transition: transform .1s + background: var(--tertiary); + border-radius: var(--radius); + margin: 8px; + padding: 6px; + transition: transform 0.1s; } .button-inner { - padding: 0 8px + padding: 0 8px; } .button:active { - transform: scale(.96) + transform: scale(0.96); } diff --git a/assets/css/common/search.css b/assets/css/common/search.css index 2b9d4bc..38d5b6b 100644 --- a/assets/css/common/search.css +++ b/assets/css/common/search.css @@ -26,8 +26,8 @@ } #searchResults li:active { - transition: transform .1s; - transform: scale(.98); + transition: transform 0.1s; + transform: scale(0.98); } #searchResults a { @@ -40,6 +40,6 @@ } #searchResults .focus { - transform: scale(.98); - border: 2px solid var(--tertiary) + transform: scale(0.98); + border: 2px solid var(--tertiary); } diff --git a/assets/css/common/terms.css b/assets/css/common/terms.css index 7a68cc3..244614b 100644 --- a/assets/css/common/terms.css +++ b/assets/css/common/terms.css @@ -1,7 +1,7 @@ .terms-tags li { display: inline-block; margin: 10px; - font-weight: 500 + font-weight: 500; } .terms-tags a { @@ -9,10 +9,10 @@ padding: 3px 10px; background: var(--tertiary); border-radius: 6px; - transition: transform .1s + transition: transform 0.1s; } .terms-tags a:active { background: var(--tertiary); - transform: scale(.96) + transform: scale(0.96); } diff --git a/assets/css/core/reset.css b/assets/css/core/reset.css index ee8e77b..dfb1caa 100644 --- a/assets/css/core/reset.css +++ b/assets/css/core/reset.css @@ -1,7 +1,7 @@ *, ::after, ::before { - box-sizing: border-box + box-sizing: border-box; } html { @@ -18,7 +18,7 @@ h3, h4, h5, h6 { - color: var(--primary) + color: var(--primary); } body { @@ -26,7 +26,7 @@ body { font-size: 18px; line-height: 1.6; word-break: break-word; - background: var(--theme) + background: var(--theme); } article, @@ -40,7 +40,7 @@ main, nav, section, table { - display: block + display: block; } h1, @@ -49,7 +49,7 @@ h3, h4, h5, h6 { - line-height: 1.2 + line-height: 1.2; } h1, @@ -60,21 +60,21 @@ h5, h6, p { margin-top: 0; - margin-bottom: 0 + margin-bottom: 0; } ul { - padding: 0 + padding: 0; } a { - text-decoration: none + text-decoration: none; } body, figure, ul { - margin: 0 + margin: 0; } table { @@ -82,7 +82,7 @@ table { border-collapse: collapse; border-spacing: 0; overflow-x: auto; - word-break: keep-all + word-break: keep-all; } button, @@ -96,43 +96,43 @@ textarea { input, textarea { - outline: 0 + outline: 0; } button, input[type=button], input[type=submit] { - cursor: pointer + cursor: pointer; } input:-webkit-autofill, textarea:-webkit-autofill { - box-shadow: 0 0 0 50px var(--theme) inset + box-shadow: 0 0 0 50px var(--theme) inset; } img { display: block; - max-width: 100% + max-width: 100%; } ::-webkit-scrollbar-track { - background: 0 0 + background: 0 0; } .list:not(.dark)::-webkit-scrollbar-track { - background: var(--code-bg) + background: var(--code-bg); } ::-webkit-scrollbar-thumb { background: var(--tertiary); border: 5px solid var(--theme); - border-radius: var(--radius) + border-radius: var(--radius); } .list:not(.dark)::-webkit-scrollbar-thumb { - border: 5px solid var(--code-bg) + border: 5px solid var(--code-bg); } ::-webkit-scrollbar-thumb:hover { - background: var(--secondary) + background: var(--secondary); } diff --git a/assets/css/core/theme-vars.css b/assets/css/core/theme-vars.css index bda1f31..fd0c5ee 100644 --- a/assets/css/core/theme-vars.css +++ b/assets/css/core/theme-vars.css @@ -6,27 +6,27 @@ --header-height: 60px; --footer-height: 60px; --radius: 8px; - --theme: #fff; - --entry: #fff; - --primary: rgba(0, 0, 0, 0.88); - --secondary: rgba(0, 0, 0, 0.56); - --tertiary: rgba(0, 0, 0, 0.16); - --content: rgba(0, 0, 0, 0.88); - --hljs-bg: #1c1d21; - --code-bg: #f5f5f5; - --border: #eee; + --theme: rgb(255, 255, 255); + --entry: rgb(255, 255, 255); + --primary: rgb(30, 30, 30); + --secondary: rgb(108, 108, 108); + --tertiary: rgb(214, 214, 214); + --content: rgb(31, 31, 31); + --hljs-bg: rgb(28, 29, 33); + --code-bg: rgb(245, 245, 245); + --border: rgb(238, 238, 238); } .dark { - --theme: #1d1e20; - --entry: #2e2e33; - --primary: rgba(255, 255, 255, 0.84); - --secondary: rgba(255, 255, 255, 0.56); - --tertiary: rgba(255, 255, 255, 0.16); - --content: rgba(255, 255, 255, 0.74); - --hljs-bg: #2e2e33; - --code-bg: #37383e; - --border: #333; + --theme: rgb(29, 30, 32); + --entry: rgb(46, 46, 51); + --primary: rgb(218, 218, 219); + --secondary: rgb(155, 156, 157); + --tertiary: rgb(65, 66, 68); + --content: rgb(196, 196, 197); + --hljs-bg: rgb(46, 46, 51); + --code-bg: rgb(55, 56, 62); + --border: rgb(51, 51, 51); } .list { diff --git a/assets/css/core/zmedia.css b/assets/css/core/zmedia.css index 6f63a6d..1cc6c6e 100644 --- a/assets/css/core/zmedia.css +++ b/assets/css/core/zmedia.css @@ -22,6 +22,11 @@ .archive-year { margin-top: 20px; } + + /* footer */ + .footer { + padding: calc((var(--footer-height) - var(--gap) - 10px) / 2) var(--gap); + } } @media screen and (min-width: 768px) { diff --git a/assets/css/hljs/an-old-hope.min.css b/assets/css/hljs/an-old-hope.min.css index acf5824..b5dabdf 100644 --- a/assets/css/hljs/an-old-hope.min.css +++ b/assets/css/hljs/an-old-hope.min.css @@ -1,6 +1,6 @@ .hljs-comment, .hljs-quote { - color: #b6b18b + color: #b6b18b; } .hljs-deletion, @@ -11,7 +11,7 @@ .hljs-tag, .hljs-template-variable, .hljs-variable { - color: #eb3c54 + color: #eb3c54; } .hljs-built_in, @@ -22,28 +22,28 @@ .hljs-number, .hljs-params, .hljs-type { - color: #e7ce56 + color: #e7ce56; } .hljs-attribute { - color: #ee7c2b + color: #ee7c2b; } .hljs-addition, .hljs-bullet, .hljs-string, .hljs-symbol { - color: #4fb4d7 + color: #4fb4d7; } .hljs-section, .hljs-title { - color: #78bb65 + color: #78bb65; } .hljs-keyword, .hljs-selector-tag { - color: #b45ea4 + color: #b45ea4; } .hljs { @@ -51,13 +51,13 @@ overflow-x: auto; background: #1c1d21; color: #c0c5ce; - padding: .5em + padding: .5em; } .hljs-emphasis { - font-style: italic + font-style: italic; } .hljs-strong { - font-weight: 700 -} \ No newline at end of file + font-weight: 700; +} diff --git a/assets/js/fastsearch.js b/assets/js/fastsearch.js index 8d4700b..ea11022 100644 --- a/assets/js/fastsearch.js +++ b/assets/js/fastsearch.js @@ -26,7 +26,21 @@ window.onload = function () { 'content' ] }; - if (params.fuseOpts) options = params.fuseOpts; + if (params.fuseOpts) { + options = { + isCaseSensitive: params.fuseOpts.iscasesensitive ? params.fuseOpts.iscasesensitive : false, + includeScore: params.fuseOpts.includescore ? params.fuseOpts.includescore : false, + includeMatches: params.fuseOpts.includematches ? params.fuseOpts.includematches : false, + minMatchCharLength: params.fuseOpts.minmatchcharlength ? params.fuseOpts.minmatchcharlength : 1, + shouldSort: params.fuseOpts.shouldsort ? params.fuseOpts.shouldsort : true, + findAllMatches: params.fuseOpts.findallmatches ? params.fuseOpts.findallmatches : false, + keys: params.fuseOpts.keys ? params.fuseOpts.keys : ['title', 'permalink', 'summary', 'content'], + location: params.fuseOpts.location ? params.fuseOpts.location : 0, + threshold: params.fuseOpts.threshold ? params.fuseOpts.threshold : 0.4, + distance: params.fuseOpts.distance ? params.fuseOpts.distance : 100, + ignoreLocation: params.fuseOpts.ignorelocation ? params.fuseOpts.ignorelocation : true + } + } fuse = new Fuse(data, options); // build the index from the json file } } else { @@ -103,31 +117,31 @@ document.onkeydown = function (e) { } } else if (current_elem) ae = current_elem; - if (key === "ArrowDown" && resultsAvailable && inbox) { + if (key === "Escape") { + reset() + } else if (!resultsAvailable || !inbox) { + return + } else if (key === "ArrowDown") { e.preventDefault(); if (ae == sInput) { // if the currently focused element is the search input, focus the of first
  • activeToggle(resList.firstChild.lastChild); - } else if (ae.parentElement == last) { + } else if (ae.parentElement != last) { // if the currently focused element's parent is last, do nothing - } else { // otherwise select the next search result activeToggle(ae.parentElement.nextSibling.lastChild); } - } else if (key === "ArrowUp" && resultsAvailable && inbox) { + } else if (key === "ArrowUp") { e.preventDefault(); - if (ae == sInput) { - // if the currently focused element is input box, do nothing - } else if (ae.parentElement == first) { + if (ae.parentElement == first) { // if the currently focused element is first item, go to input box activeToggle(sInput); - } else { + } else if (ae != sInput) { + // if the currently focused element is input box, do nothing // otherwise select the previous search result activeToggle(ae.parentElement.previousSibling.lastChild); } - } else if (key === "ArrowRight" && resultsAvailable && inbox) { + } else if (key === "ArrowRight") { ae.click(); // click on active link - } else if (key === "Escape") { - reset() } } diff --git a/i18n/bn.yaml b/i18n/bn.yaml new file mode 100644 index 0000000..9fdafd1 --- /dev/null +++ b/i18n/bn.yaml @@ -0,0 +1,28 @@ +- id: prev_page + translation: "পূর্বের পাতা" + +- id: next_page + translation: "পরবর্তী পাতা" + +- id: read_time + translation: + one : "১ মিনিট" + other: "{{ .Count }} মিনিট" + +- id: toc + translation: "সূচিপত্র" + +- id: translations + translation: "অনুবাদসমূহ" + +- id: home + translation: "হোম" + +- id: edit_post + translation: "সম্পাদনা করুন" + +- id: code_copy + translation: "কপি করুন" + +- id: code_copied + translation: "কপি হয়েছে!" diff --git a/i18n/ckb.yaml b/i18n/ckb.yaml new file mode 100644 index 0000000..25789d1 --- /dev/null +++ b/i18n/ckb.yaml @@ -0,0 +1,25 @@ +- id: prev_page + translation: "پەڕەی پێشتر" + +- id: next_page + translation: "پەڕەی دواتر" + +- id: read_time + translation: + one : "1 خولەک" + other: "{{ .Count }} خولەک" + +- id: toc + translation: "پێڕست" + +- id: translations + translation: "وەرگێڕانەکان" + +- id: home + translation: "ماڵەوە" + +- id: code_copy + translation: "لەبەری بگرەوە" + +- id: code_copied + translation: "لەبەر گیرایەوە!" diff --git a/i18n/da.yaml b/i18n/da.yaml new file mode 100644 index 0000000..03b0abe --- /dev/null +++ b/i18n/da.yaml @@ -0,0 +1,28 @@ +- id: prev_page + translation: "Forrige Side" + +- id: next_page + translation: "Næste Side" + +- id: read_time + translation: + one: "1 min" + other: "{{ .Count }} min" + +- id: toc + translation: "Indholdsfortegnelse" + +- id: translations + translation: "Oversættelser" + +- id: home + translation: "Start" + +- id: edit_post + translation: "Rediger" + +- id: code_copy + translation: "kopier" + +- id: code_copied + translation: "kopieret!" diff --git a/i18n/de.yaml b/i18n/de.yaml index fcb5330..9a816e4 100644 --- a/i18n/de.yaml +++ b/i18n/de.yaml @@ -6,8 +6,8 @@ - id: read_time translation: - one: "1 min" - other: "{{ .Count }} min" + one: "1 Minute" + other: "{{ .Count }} Minuten" - id: toc translation: "Inhaltsverzeichnis" @@ -15,5 +15,14 @@ - id: translations translation: "Übersetzungen" +- id: home + translation: "Home" + - id: edit_post translation: "Bearbeiten" + +- id: code_copy + translation: "Kopieren" + +- id: code_copied + translation: "Kopiert!" diff --git a/i18n/en.yaml b/i18n/en.yaml index 24d11f9..4758d36 100644 --- a/i18n/en.yaml +++ b/i18n/en.yaml @@ -18,6 +18,9 @@ - id: home translation: "Home" +- id: edit_post + translation: "Edit" + - id: code_copy translation: "copy" diff --git a/i18n/es.yaml b/i18n/es.yaml index 38d2239..5e90ebb 100644 --- a/i18n/es.yaml +++ b/i18n/es.yaml @@ -14,3 +14,15 @@ - id: translations translation: "Traducciones" + +- id: home + translation: "Inicio" + +- id: edit_post + translation: "Editar" + +- id: code_copy + translation: "copiar" + +- id: code_copied + translation: "¡copiado!" \ No newline at end of file diff --git a/i18n/fa.yaml b/i18n/fa.yaml index 3cdd047..3fd5927 100644 --- a/i18n/fa.yaml +++ b/i18n/fa.yaml @@ -1,16 +1,28 @@ - id: prev_page - translation: "صفحهٔ قبل" + translation: "صفحه قبلی" - id: next_page - translation: "صفحهٔ بعد" + translation: "صفحه بعدی" - id: read_time translation: - one : "1 دقیقه" + one: "۱ دقیقه" other: "{{ .Count }} دقیقه" - id: toc translation: "فهرست مطالب" - id: translations - translation: "ترجمه‌ها" + translation: "ترجمه ها" + +- id: home + translation: "خانه" + +- id: edit_post + translation: "ویرایش" + +- id: code_copy + translation: "کپی" + +- id: code_copied + translation: "کپی شد!" \ No newline at end of file diff --git a/i18n/fr.yaml b/i18n/fr.yaml index a26a876..2e65211 100644 --- a/i18n/fr.yaml +++ b/i18n/fr.yaml @@ -3,3 +3,26 @@ - id: next_page translation: "Page Suivante" + +- id: read_time + translation: + one : "1 min" + other: "{{ .Count }} min" + +- id: toc + translation: "Table des Matières" + +- id: translations + translation: "Traductions" + +- id: home + translation: "Accueil" + +- id: edit_post + translation: "Modifier" + +- id: code_copy + translation: "copier" + +- id: code_copied + translation: "copié!" diff --git a/i18n/it.yaml b/i18n/it.yaml index e0200ea..58de606 100644 --- a/i18n/it.yaml +++ b/i18n/it.yaml @@ -14,3 +14,9 @@ - id: translations translation: "Traduzioni" + +- id: code_copy + translation: "copia" + +- id: code_copied + translation: "copiato!" diff --git a/i18n/ko.yaml b/i18n/ko.yaml index 129ad73..db0bcc7 100644 --- a/i18n/ko.yaml +++ b/i18n/ko.yaml @@ -3,3 +3,23 @@ - id: next_page translation: "다음 페이지" + +- id: read_time + translation: + one : "1 분" + other: "{{ .Count }} 분" + +- id: toc + translation: "목차" + +- id: translations + translation: "번역" + +- id: home + translation: "홈페이지" + +- id: code_copy + translation: "복사" + +- id: code_copied + translation: "복사완료!" diff --git a/i18n/ku.yaml b/i18n/ku.yaml new file mode 100644 index 0000000..b6d5e32 --- /dev/null +++ b/i18n/ku.yaml @@ -0,0 +1,25 @@ +- id: prev_page + translation: "Rêpela Berê" + +- id: next_page + translation: "Rûpela Bê" + +- id: read_time + translation: + one : "1 xulek" + other: "{{ .Count }} xulek" + +- id: toc + translation: "Pêrist" + +- id: translations + translation: "Wergêranan" + +- id: home + translation: "Xanî" + +- id: code_copy + translation: "Jê bigre" + +- id: code_copied + translation: "Hat jê girtin!" diff --git a/i18n/nl.yaml b/i18n/nl.yaml new file mode 100644 index 0000000..63a9931 --- /dev/null +++ b/i18n/nl.yaml @@ -0,0 +1,28 @@ +- id: prev_page + translation: "Vorige" + +- id: next_page + translation: "Volgende" + +- id: read_time + translation: + one: "1 min" + other: "{{ .Count }} min" + +- id: toc + translation: "Inhoudsopgave" + +- id: translations + translation: "Vertalingen" + +- id: home + translation: "Startpagina" + +- id: edit_post + translation: "Bewerk" + +- id: code_copy + translation: "kopieer" + +- id: code_copied + translation: "gekopieerd!" diff --git a/i18n/zh-tw.yaml b/i18n/zh-tw.yaml new file mode 100644 index 0000000..f6dee2d --- /dev/null +++ b/i18n/zh-tw.yaml @@ -0,0 +1,25 @@ +- id: prev_page + translation: "上一篇" + +- id: next_page + translation: "下一篇" + +- id: read_time + translation: + one : "1 分鐘" + other: "{{ .Count }} 分鐘" + +- id: toc + translation: "目錄" + +- id: translations + translation: "語言" + +- id: home + translation: "首頁" + +- id: code_copy + translation: "複製" + +- id: code_copied + translation: "已複製!" diff --git a/i18n/zh.yaml b/i18n/zh.yaml index cb84ce9..006528b 100644 --- a/i18n/zh.yaml +++ b/i18n/zh.yaml @@ -14,3 +14,12 @@ - id: translations translation: "语言" + +- id: home + translation: "主页" + +- id: code_copy + translation: "复制" + +- id: code_copied + translation: "已复制!" diff --git a/layouts/_default/archives.html b/layouts/_default/archives.html index f69b272..435d2a1 100644 --- a/layouts/_default/archives.html +++ b/layouts/_default/archives.html @@ -10,6 +10,11 @@ {{- $pages := where site.RegularPages "Type" "in" site.Params.mainSections }} + +{{- if .Site.Params.ShowAllPagesInArchive }} +{{- $pages = site.RegularPages }} +{{- end }} + {{- range $pages.GroupByPublishDate "2006" }} {{- if ne .Key "0001" }}
    @@ -25,6 +30,7 @@

    {{- .Title | markdownify }} + {{- if .Draft }}  [draft]{{- end }}

    {{- partial "post_meta.html" . -}} diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 86db932..6dfe741 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -17,7 +17,7 @@
    {{- block "main" . }}{{ end }}
    - {{ partialCached "footer.html" . .Layout .Kind -}} + {{ partialCached "footer.html" . .Layout .Kind (.Param "hideFooter") (.Param "ShowCodeCopyButtons") -}} diff --git a/layouts/_default/list.html b/layouts/_default/list.html index 0131412..0cc1ad9 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -10,12 +10,20 @@

    {{ .Title }}

    {{- if .Description }}
    - {{ .Description }} + {{ .Description | markdownify }}
    {{- end }} {{- end }} +{{- if .Content }} +
    + {{- if not (.Param "disableAnchoredHeadings") }} + {{- partial "anchored_headings.html" .Content -}} + {{- else }}{{ .Content }}{{ end }} +
    +{{- end }} + {{- $pages := union .RegularPages .Sections }} {{- if .IsHome }} @@ -46,7 +54,7 @@

    {{- .Title }} - {{- if .Draft }}
      [draft]
    {{ end -}} + {{- if .Draft }}  [draft]{{- end }}

    {{- if (ne (.Param "hideSummary") true) }} diff --git a/layouts/_default/search.html b/layouts/_default/search.html index e916da1..2349587 100644 --- a/layouts/_default/search.html +++ b/layouts/_default/search.html @@ -1,7 +1,7 @@ {{- define "main" }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html index c73680f..1d983fd 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -5,7 +5,7 @@ {{ partial "breadcrumbs.html" . }}

    {{ .Title }} - {{- if .Draft }}
      [draft]
    {{- end }} + {{- if .Draft }}  [draft]{{- end }}

    {{- if .Description }}
    @@ -17,6 +17,7 @@ {{- partial "post_meta.html" . -}} {{- partial "translation_list.html" . -}} {{- partial "edit_post.html" . -}} + {{- partial "post_canonical.html" . -}}
    {{- end }} @@ -25,9 +26,15 @@ {{- if (.Param "ShowToc") }} {{- partial "toc.html" . }} {{- end }} + + {{- if .Content }}
    + {{- if not (.Param "disableAnchoredHeadings") }} {{- partial "anchored_headings.html" .Content -}} + {{- else }}{{ .Content }}{{ end }}
    + {{- end }} +
    +{{- end }} diff --git a/layouts/shortcodes/collapse.html b/layouts/shortcodes/collapse.html index b92ad01..17d8d3b 100644 --- a/layouts/shortcodes/collapse.html +++ b/layouts/shortcodes/collapse.html @@ -1,12 +1,8 @@ -{{ if .Get "content" }} {{ if .Get "summary" }} {{ else }} {{ warnf "missing value for param 'summary': %s" .Position }} {{ end }} -{{ else }} -{{ errorf "missing value for param 'content': %s" .Position }} -{{ end }}

    {{ .Get "summary" | markdownify }} - {{ .Get "content" | markdownify }} + {{ .Inner | markdownify }}

    diff --git a/theme.toml b/theme.toml index d85ced9..b49887d 100644 --- a/theme.toml +++ b/theme.toml @@ -37,7 +37,7 @@ features = [ "scroll-to-top", "search" ] -min_version = "0.82.0" +min_version = "0.83.0" [author] name = "Aditya Telange"