Szablon tale-zola

pull/1/head
Tomasz Karbownicki 2021-08-31 23:37:57 +02:00
rodzic 30d457c853
commit 7ad8b62600
37 zmienionych plików z 1926 dodań i 1 usunięć

@ -1 +0,0 @@
Subproject commit 297255d98722f37f05de579693a782e0b681cf82

Wyświetl plik

@ -0,0 +1,133 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
<aaranxu@outlook.com>.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
[https://www.contributor-covenant.org/version/2/0/code_of_conduct.html][v2.0].
Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available
at [https://www.contributor-covenant.org/translations][translations].
[homepage]: https://www.contributor-covenant.org
[v2.0]: https://www.contributor-covenant.org/version/2/0/code_of_conduct.html
[Mozilla CoC]: https://github.com/mozilla/diversity
[FAQ]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations

Wyświetl plik

@ -0,0 +1,21 @@
# Contributing
We'd love your help! Thanks for caring about the theme of Zola.
## Licensing
This repository is under the MIT license. You can find the full text of the [license](./LICENSE) in this repository.
## Code of Conduct
The AdiDoks theme has a [code of conduct](./CODE_OF_CONDUCT.md) that governs all sub-projects, including this one. Please respect it!
## Contribute to Doks
- Follow the [GitHub flow](https://guides.github.com/introduction/flow/).
- Follow the [Conventional Commits Specification](https://www.conventionalcommits.org/en/v1.0.0/)
## Create an issue
- [Bug report](https://github.com/aaranxu/adidoks/issues/new?template=bug-report---.md)
- [Feature request](https://github.com/aaranxu/adidoks/issues/new?template=feature-request---.md)

Wyświetl plik

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2021 Aaran Xu
Copyright (c) 2018 Chester How (original theme)
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.

Wyświetl plik

@ -0,0 +1,274 @@
# Tale-Zola Theme
Tala-Zola is a minimal [Zola](https://www.getzola.org) theme helping you to
build a light and seo-ready blog, and you can customise any information of the
blog without having to modify the codes of the template. Tala-Zola is a port of
the Jekyll theme [Tale](https://github.com/chesterhow/tale).
## Demo
[Live Preview](https://tale-zola.netlify.app/).
## Requirements
Before using the theme, you need to install the [Zola](https://www.getzola.org/documentation/getting-started/installation/) ≥ 0.13.0.
## Quick Start
```bash
git clone git@github.com:aaranxu/tale-zola.git
cd tale-zola
zola serve
# open http://127.0.0.1:1111/ in the browser
```
## Installation
Just earlier we showed you how to run the theme directly. Now we start to
install the theme in an existing site step by step.
### Step 1: Create a new zola site
```bash
zola init blog
```
### Step 2: Install Tale-Zola
Download this theme to your themes directory:
```bash
cd blog/themes
git clone git@github.com:aaranxu/tale-zola.git
```
Or install as a submodule:
```bash
cd blog
git init # if your project is a git repository already, ignore this command
git submodule add git@github.com:aaranxu/tale-zola.git themes/tale-zola
```
### Step 3: Configuration
Enable the theme in your `config.toml` in the site derectory:
```toml
theme = "tale-zola"
```
Or copy the `config.toml.example` from the theme directory to your project's
root directory:
```bash
cp themes/tale-zola/config.toml.example config.toml
```
### Step 4: Add new content
Add an `_index.md` file to your `content` directory with some lines as bellows.
```text
+++
sort_by = "date"
paginate_by = 5
+++
```
Add a blog article file with a filename `first-post.md` (or other filenames) and
input some content in it.
```text
+++
title = "First Post"
date = 2021-05-01T18:18:18+00:00
[taxonomies]
tags = ["Post"]
[extra]
author = "Your Name"
+++
This is my first post.
```
Or you can just copy the content from the theme directory to your project:
```bash
cp -r themes/tale-zola/content .
```
### Step 5: Run the project
Just run `zola serve` in the root path of the project:
```bash
zola serve
```
Tale-Zola will start the Zola development web server accessible by default at
`http://127.0.0.1:1111`. Saved changes will live reload in the browser.
## Customisation
You can customize your configurations, templates and content for yourself. Look
at the `config.toml`, `theme.toml` and templates files in this repo for an idea.
In most cases you only need to modify the content in the `config.toml` file to
custom your blog, including different expressions in your speaking language.
### Necessary Configurations
Add some information for your blog.
```toml
title = "You Blog Title"
description = "The description of your blog."
```
Set the tags for the site.
```toml
taxonomies = [
{name = "tags"},
]
```
Add menus and footer information for your blog.
```
# Menu items
[[extra.menu]]
name = "Posts"
url = "/"
[[extra.menu]]
name = "Tags"
url = "tags"
[[extra.menu]]
name = "About"
url = "about"
[extra.footer]
start_year = "2020" # start year of the site
end_year = "2021" # end year of the site
info = "The information on the footer."
```
#### Option Configurations
Add your name as the author name for the blog globally.
```toml
[extra]
author = "Your Name"
```
Use Google Analytics. Add your own Google Analytics ID.
```toml
[extra]
google_analytics = "UA—XXXXXXXX-X"
```
Whether to use Disqus globally and set to your disqus id name.
And you can enable the disqus on per post page with `extra.disqus` option
```toml
[extra]
disqus = false
disqus_id = ""
```
Code syntax highlighting. See also [syntax hightlighting](https://www.getzola.org/documentation/getting-started/configuration/#syntax-highlighting).
```toml
[markdown]
highlight_code = true
highlight_theme = "base16-ocean-light"
```
Use KaTeX to support the math notation
```toml
[extra]
katex = true
```
> Note: You can also add the `katex` option on per mardown file of the page or section.
Set date format in the site
```toml
[extra]
timeformat = "%B %e, %Y" # e.g. June 14, 2021, and this is the default format
```
SEO settings, like Open Graph + Twitter Cards
```toml
[extra.seo]
# this image will be used as fallback if a page has no image of its own
image = "tale.png"
image_height = 50
image_width = 50
og_locale = "en_US"
[extra.seo.twitter]
site = "twitter_accout"
creator = "twitter_accout"
[extra.seo.facebook]
admins = "facebook_accout"
publisher = "facebook_accout"
```
Change the words in your speaking language.
```toml
[extra.expressions]
home = "Home" # The homepage's name
pinned = "Pinned" # On the header of the post list
written_by = "Written by" # Like: Written by Aaran Xu
on = "on" # Like: on May 3, 2021
top = "Top" # Go to the top of the page in the post
tags = "Tags" # In the page of Tags
# disqus comments block
disqus_discussion = "Discussion and feedback"
# The contents of the 404 page
p404 = "404: Page not found"
p404_info = "Oops! We can't seem to find the page you are looking for."
p404_back_home_start = "Let's"
p404_back_home_with_link = "head back home"
p404_back_home_end = "."
```
### Custom CSS styles
Just add your own styles to `sass/_custom.scss` file.
## Reporting Issues
We use GitHub Issues as the official bug tracker for the **Tale-Zola**. Please
search [existing issues](https://github.com/aaranxu/tale-zola/issues). Its
possible someone has already reported the same problem.
If your problem or idea is not addressed yet, [open a new issue](https://github.com/aaranxu/tale-zola/issues/new).
## Contributing
We'd love your help! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) to learn
about the kinds of contributions we're looking for.
## License
Tale-Zola is distributed under the terms of the
[MIT license](LICENSE).

Wyświetl plik

@ -0,0 +1,117 @@
# The URL the site will be built for
base_url = "https://tale-zola.netlify.app"
# The basic information about the site
title = "Tala-Zola"
description = "Tala-Zola is a minimal Zola theme helping you to build a light blog, and you can customise any information of the blog without having to modify the codes of the template."
# Whether to automatically compile all Sass files in the sass directory
compile_sass = true
# Whether to generate a feed file for the site
generate_feed = true
# The filename to use for the feed. Used as the template filename, too.
# Defaults to "atom.xml", which has a built-in template that renders an Atom 1.0 feed.
# There is also a built-in template "rss.xml" that renders an RSS 2.0 feed.
# feed_filename = "atom.xml"
# Whether to build a search index to be used later on by a JavaScript library
build_search_index = false
# The taxonomies to be rendered for the site and their configuration.
taxonomies = [
{name = "tags", feed = true}, # each tag will have its own feed
]
[markdown]
# Whether to do syntax highlighting
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
highlight_code = true
highlight_theme = "base16-ocean-light"
[extra]
# Basic infomation
author = "Aaran Xu"
github = "https://github.com/aaranxu"
email = "aaranxu@outlook.com"
# Set date format in the site
timeformat = "%B %e, %Y" # e.g. June 14, 2021
# Whether to support KaTeX globally
katex = false
# Google Analytics
# If using this, add a value like "UA—XXXXXXXX-X"
google_analytics = ""
# Whether to use Disqus globally and set to your disqus id
# or you can enable the disqus on per post page with `extra.disqus` option
disqus = false
disqus_id = ""
## Open Graph + Twitter Cards
[extra.seo]
# this image will be used as fallback if a page has no image of its own
image = "tale.png"
image_height = 0
image_width = 0
og_locale = "en_US"
[extra.seo.twitter]
site = "aaranxu"
creator = "aaranxu"
[extra.seo.facebook]
admins = "ichunyun"
publisher = "ichunyun"
app_id = ""
# Webmaster verifications' tokens
[extra.seo.webmaster]
google = ""
bing = ""
alexa = ""
yandex = ""
baidu = ""
# Menu items
[[extra.menu]]
name = "Posts"
url = "/"
[[extra.menu]]
name = "Tags"
url = "tags"
[[extra.menu]]
name = "About"
url = "about"
[extra.footer]
start_year = "2020" # start year of the site
end_year = "2021" # end year of the site
info = "Made with <a href=\"https://www.getzola.org\">Zola</a> with <a href=\"https://github.com/aaranxu/tale-zola\">Tala-Zola</a> theme."
# The options below are used to refer to the expressions on the pages, and you
# can custom the contents as needed in your language.
[extra.expressions]
home = "Home" # The homepage's name
pinned = "Pinned" # On the header of the post list
written_by = "Written by" # Like: Written by Aaran Xu
on = "on" # Like: on May 3, 2021
top = "Top" # Go to the top of the page in the post
tags = "Tags" # In the page of Tags
# disqus comments block
disqus_discussion = "Discussion and feedback"
# The contents of the 404 page
p404 = "404: Page not found"
p404_info = "Oops! We can't seem to find the page you are looking for."
p404_back_home_start = "Let's"
p404_back_home_with_link = "head back home"
p404_back_home_end = "."

Wyświetl plik

@ -0,0 +1,120 @@
# The URL the site will be built for
base_url = "https://tale-zola.netlify.app"
# Use the Tale-Zola theme
theme = "tale-zola"
# The basic information about the site
title = "Tala-Zola"
description = "Tala-Zola is a minimal Zola theme helping you to build a light blog, and you can customise any information of the blog without having to modify the codes of the template."
# Whether to automatically compile all Sass files in the sass directory
compile_sass = true
# Whether to generate a feed file for the site
generate_feed = true
# The filename to use for the feed. Used as the template filename, too.
# Defaults to "atom.xml", which has a built-in template that renders an Atom 1.0 feed.
# There is also a built-in template "rss.xml" that renders an RSS 2.0 feed.
# feed_filename = "atom.xml"
# Whether to build a search index to be used later on by a JavaScript library
build_search_index = false
# The taxonomies to be rendered for the site and their configuration.
taxonomies = [
{name = "tags", feed = true}, # each tag will have its own feed
]
[markdown]
# Whether to do syntax highlighting
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
highlight_code = true
highlight_theme = "base16-ocean-light"
[extra]
# Basic infomation
author = "Aaran Xu"
github = "https://github.com/aaranxu"
email = "aaranxu@outlook.com"
# Set date format in the site
timeformat = "%B %e, %Y" # e.g. June 14, 2021
# Whether to support KaTeX globally
katex = false
# Google Analytics
# If using this, add a value like "UA—XXXXXXXX-X"
google_analytics = ""
# Whether to use Disqus globally and set to your disqus id
# or you can enable the disqus on per post page with `extra.disqus` option
disqus = false
disqus_id = ""
## Open Graph + Twitter Cards
[extra.seo]
# this image will be used as fallback if a page has no image of its own
image = "tale.png"
image_height = 0
image_width = 0
og_locale = "en_US"
[extra.seo.twitter]
site = "aaranxu"
creator = "aaranxu"
[extra.seo.facebook]
admins = "ichunyun"
publisher = "ichunyun"
app_id = ""
# Webmaster verifications' tokens
[extra.seo.webmaster]
google = ""
bing = ""
alexa = ""
yandex = ""
baidu = ""
# Menu items
[[extra.menu]]
name = "Posts"
url = "/"
[[extra.menu]]
name = "Tags"
url = "tags"
[[extra.menu]]
name = "About"
url = "about"
[extra.footer]
start_year = "2020" # start year of the site
end_year = "2021" # end year of the site
info = "Made with <a href=\"https://www.getzola.org\">Zola</a> with <a href=\"https://github.com/aaranxu/tale-zola\">Tala-Zola</a> theme."
# The options below are used to refer to the expressions on the pages, and you
# can custom the contents as needed in your language.
[extra.expressions]
home = "Home" # The homepage's name
pinned = "Pinned" # On the header of the post list
written_by = "Written by" # Like: Written by Aaran Xu
on = "on" # Like: on May 3, 2021
top = "Top" # Go to the top of the page in the post
tags = "Tags" # In the page of Tags
# disqus comments block
disqus_discussion = "Discussion and feedback"
# The contents of the 404 page
p404 = "404: Page not found"
p404_info = "Oops! We can't seem to find the page you are looking for."
p404_back_home_start = "Let's"
p404_back_home_with_link = "head back home"
p404_back_home_end = "."

Wyświetl plik

@ -0,0 +1,9 @@
[build]
publish = "public"
command = "zola build"
[build.environment]
ZOLA_VERSION = "0.13.0"
[context.deploy-preview]
command = "zola build --base-url $DEPLOY_PRIME_URL"

Wyświetl plik

@ -0,0 +1,26 @@
pre {
padding: 1rem;
overflow: auto;
}
// The line numbers already provide some kind of left/right padding
pre[data-linenos] {
padding: 1rem 0;
}
pre table td {
padding: 0;
}
// The line number cells
pre table td:nth-of-type(1) {
text-align: center;
user-select: none;
}
pre mark {
// If you want your highlights to take the full width.
display: block;
// The default background colour of a mark is bright yellow
background-color: rgba(254, 252, 232, 0.9);
}
pre table {
width: 100%;
border-collapse: collapse;
}

Wyświetl plik

@ -0,0 +1,12 @@
@import 'tale/variables';
@import 'tale/base';
@import 'tale/code';
@import 'tale/post';
@import 'tale/footnote';
@import 'tale/syntax';
@import 'tale/layout';
@import 'tale/pagination';
@import 'tale/catalogue';
@import 'tale/404';
@import 'tale/tags';
@import 'custom';

Wyświetl plik

@ -0,0 +1,22 @@
.notfound {
position: relative;
text-align: center;
margin: 4rem 0;
&-error {
font-size: 4rem;
margin: 1rem 0;
}
&-line {
border-top: 0.4rem solid $default-shade;
display: block;
margin: 0 auto 3rem;
width: 4rem;
}
&-message {
max-width: 25rem;
margin: 0 auto;
}
}

Wyświetl plik

@ -0,0 +1,66 @@
* {
@include box-sizing;
line-height: 1.5;
}
html,
body {
color: $default-color;
margin: 0;
padding: 0;
}
html {
font-family: $serif-primary;
font-size: 14px;
overflow-y: scroll;
@media (min-width: 600px) {
font-size: 16px;
}
}
body {
-webkit-text-size-adjust: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: $default-shade;
font-family: $sans-serif;
line-height: normal;
}
a {
color: $blue;
text-decoration: none;
}
blockquote {
border-left: .25rem solid $grey-2;
color: $grey-1;
margin: .8rem 0;
padding: .5rem 1rem;
p:last-child {
margin-bottom: 0;
}
@media (min-width: 600px) {
padding: 0 5rem 0 1.25rem;
}
}
img {
display: block;
margin: 0 0 1rem;
max-width: 100%;
}
td {
vertical-align: top;
}

Wyświetl plik

@ -0,0 +1,45 @@
.catalogue {
&-item {
border-bottom: 1px solid $grey-2;
color: $default-color;
display: block;
padding: 2rem 0;
&:hover .catalogue-line,
&:focus .catalogue-line {
width: 5rem;
}
&:last-child {
border: 0;
}
}
&-pinned {
color: $default-tint;
font-family: $serif-secondary;
letter-spacing: .5px;
}
&-time {
color: $default-tint;
font-family: $serif-secondary;
letter-spacing: .5px;
}
&-title {
color: $default-shade;
display: block;
font-family: $sans-serif;
font-size: 2rem;
font-weight: 700;
margin: .5rem 0;
}
&-line {
@include transition(all .3s ease-out);
border-top: .2rem solid $default-shade;
display: block;
width: 2rem;
}
}

Wyświetl plik

@ -0,0 +1,48 @@
pre,
code {
font-family: $monospaced;
}
code {
background-color: $grey-3;
border-radius: 3px;
color: $code-color;
font-size: 85%;
padding: .25em .5em;
}
pre {
margin: 0 0 1rem;
overflow: auto;
}
pre code {
background-color: transparent;
color: inherit;
font-size: 100%;
padding: 0;
font: $code-font;
}
.highlight {
background-color: $grey-3;
border-radius: 3px;
line-height: 1.4;
margin: 0 0 1rem;
padding: 1rem;
pre {
margin-bottom: 0;
overflow-x: auto;
}
.lineno {
color: $default-tint;
display: inline-block; // Ensures the null space also isn't selectable
padding: 0 .75rem 0 .25rem;
// Make sure numbers aren't selectable
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
}

Wyświetl plik

@ -0,0 +1,10 @@
.footnote-definition {
sup {
top: -.2.5em;
font-size: 0.75em;
display: inline;
}
p {
display: inline;
}
}

Wyświetl plik

@ -0,0 +1,92 @@
.container {
margin: 0 auto;
max-width: 800px;
width: 80%;
}
main,
footer,
.nav-container {
display: block;
margin: 0 auto;
max-width: 800px;
width: 80%;
}
.nav {
box-shadow: 0 2px 2px -2px $shadow-color;
overflow: auto;
&-container {
margin: 1rem auto;
position: relative;
text-align: center;
}
&-title {
@include transition(all .2s ease-out);
color: $default-color;
display: inline-block;
margin: 0;
padding-right: .2rem;
&:hover,
&:focus {
opacity: .6;
}
}
ul {
list-style-type: none;
margin: 1rem 0 0;
padding: 0;
text-align: center;
}
li {
@include transition(all .2s ease-out);
color: $default-color;
display: inline-block;
opacity: .6;
padding: 0 2rem 0 0;
&:last-child {
padding-right: 0;
}
&:hover,
&:focus {
opacity: 1;
}
}
a {
color: $default-color;
font-family: $sans-serif;
}
}
@media (min-width: 600px) {
.nav {
&-container {
text-align: left;
}
ul {
bottom: 0;
position: absolute;
right: 0;
}
}
}
footer {
font-family: $serif-secondary;
padding: 2rem 0;
text-align: center;
span {
color: $default-color;
font-size: .8rem;
}
}

Wyświetl plik

@ -0,0 +1,44 @@
.pagination {
border-top: .5px solid $grey-2;
font-family: $serif-secondary;
padding-top: 2rem;
position: relative;
text-align: center;
span {
color: $default-shade;
font-size: 1.1rem;
}
.top {
@include transition(all .3s ease-out);
color: $default-color;
font-family: $sans-serif;
font-size: 1.1rem;
opacity: .6;
&:hover {
opacity: 1;
}
}
.arrow {
@include transition(all .3s ease-out);
color: $default-color;
position: absolute;
&:hover,
&:focus {
opacity: .6;
text-decoration: none;
}
}
.left {
left: 0;
}
.right {
right: 0;
}
}

Wyświetl plik

@ -0,0 +1,68 @@
.post {
padding: 3rem 0;
&-info {
color: $default-tint;
font-family: $serif-secondary;
letter-spacing: 0.5px;
text-align: center;
span {
font-style: italic;
}
}
&-title {
color: $default-shade;
font-family: $sans-serif;
font-size: 4rem;
margin: 1rem 0;
text-align: center;
}
&-line {
border-top: 0.4rem solid $default-shade;
display: block;
margin: 0 auto 3rem;
width: 4rem;
}
p {
margin: 0 0 1rem;
text-align: justify;
}
a:hover {
text-decoration: underline;
}
img {
margin: 0 auto 0.5rem;
}
img + em {
color: $default-tint;
display: block;
font-family: $sans-serif;
font-size: 0.9rem;
font-style: normal;
text-align: center;
}
// CSS for making emoji inline
img.emoji {
display: inline-block;
left: 0;
transform: none;
width: 1rem;
height: 1rem;
vertical-align: text-top;
padding: 0;
margin: 0;
}
hr {
margin-top: 2em;
margin-bottom: 1.5em;
}
}

Wyświetl plik

@ -0,0 +1,65 @@
.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 */
.css .o,
.css .o + .nt,
.css .nt + .nt { color: #999; }

Wyświetl plik

@ -0,0 +1,92 @@
.tags {
&-header {
&-title {
color: $default-shade;
font-family: $sans-serif;
font-size: 4rem;
margin: 1rem 0;
text-align: center;
}
&-line {
border-top: 0.4rem solid $default-shade;
display: block;
margin: 0 auto 3rem;
width: 4rem;
}
}
&-clouds {
text-align: center;
font-family: $sans-serif;
a {
display: inline-block;
margin: 0 0.1rem 0.2rem;
padding: 0.2rem 0.5rem;
background: rgba(0, 0, 0, 0.05);
border-radius: 5px;
color: $default-color;
text-decoration: none;
&:hover,
&:active {
background: rgba(0, 0, 0, 0.1);
}
}
}
&-item {
&-icon {
height: 1rem;
}
&-label {
display: inline-block;
margin: 2rem 0 0.5rem;
a {
font-family: $sans-serif;
color: $default-color;
}
}
}
&-post {
display: flex;
justify-content: space-between;
padding: 5px 0;
&-title {
color: $default-color;
text-decoration: none;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
&-line {
@include transition(all 0.3s ease-out);
border-top: 0.1rem solid $default-shade;
display: block;
width: 0;
}
&-meta {
color: $default-tint;
text-align: right;
white-space: nowrap;
}
&:hover,
&:active {
.tags-post-line {
width: 3rem;
}
.tags-post-meta {
color: $default-shade;
}
}
}
}

Wyświetl plik

@ -0,0 +1,30 @@
// Colors
$default-color: #555 !default;
$default-shade: #353535 !default;
$default-tint: #aaa !default;
$grey-1: #979797 !default;
$grey-2: #e5e5e5 !default;
$grey-3: #f9f9f9 !default;
$white: #fff !default;
$blue: #4a9ae1 !default;
$shadow-color: rgba(0, 0, 0, .2) !default;
$code-color: #bf616a !default;
// Fonts
$serif-primary: 'Libre Baskerville', 'Times New Roman', Times, "Source Serif Pro", "Helvetica Neue", Helvetica, Arial, "Hiragino Sans GB", "Hiragino Sans GB W3", "Microsoft YaHei UI", "Microsoft YaHei", '微软雅黑', '思源黑体', SYHT, "WenQuanYi Micro Hei", serif !default;
$serif-secondary: Palatino, 'Palatino LT STD', 'Palatino Linotype', 'Book Antiqua', 'Georgia', serif !default;
$sans-serif: 'Helvetica Neue', 'Segoe UI', Helvetica, Arial, sans-serif !default;
$monospaced: Menlo, Monaco, monospace !default;
$code-font: 400 1.125rem/1.75 SFMono-Regular, Consolas, Liberation Mono,Menlo, monospace;
@mixin box-sizing($type: border-box) {
-webkit-box-sizing: $type;
-moz-box-sizing: $type;
box-sizing: $type;
}
@mixin transition($args...) {
-webkit-transition: $args;
-moz-transition: $args;
transition: $args;
}

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 182 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 1.1 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 578 B

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 753 B

Wyświetl plik

@ -0,0 +1,10 @@
/*
disqusLoader.js v1.0
A JavaScript plugin for lazy-loading Disqus comments widget.
-
By Osvaldas Valutis, www.osvaldas.info
Available for use under the MIT License
*/
(function(b,f,l){var r=function(a){a=a.getBoundingClientRect();return{top:a.top+f.body.scrollTop,left:a.left+f.body.scrollLeft}},t=function(a,c){var d=f.createElement("script");d.src=a;d.async=!0;d.setAttribute("data-timestamp",+new Date);d.addEventListener("load",function(){"function"===typeof c&&c()});(f.head||f.body).appendChild(d)};l=function(a,c){var d,e;return function(){var g=this,f=arguments,b=+new Date;d&&b<d+a?(clearTimeout(e),e=setTimeout(function(){d=b;c.apply(g,f)},a)):(d=b,c.apply(g,
f))}};var m=!1,n=!1,p=!1,k=!1,h="unloaded",e=!1,q=function(){if(!e||!f.body.contains(e)||"loaded"==e.disqusLoaderStatus)return!0;var a=b.pageYOffset,c=r(e).top;if(c-a>b.innerHeight*n||0<a-c-e.offsetHeight-b.innerHeight*n)return!0;(a=f.getElementById("disqus_thread"))&&a.removeAttribute("id");e.setAttribute("id","disqus_thread");e.disqusLoaderStatus="loaded";"loaded"==h?DISQUS.reset({reload:!0,config:p}):(b.disqus_config=p,"unloaded"==h&&(h="loading",t(k,function(){h="loaded"})))};b.addEventListener("scroll",
l(m,q));b.addEventListener("resize",l(m,q));b.disqusLoader=function(a,c){var d={laziness:1,throttle:250,scriptUrl:!1,disqusConfig:!1},b=c,g,h={};for(g in d)Object.prototype.hasOwnProperty.call(d,g)&&(h[g]=d[g]);for(g in b)Object.prototype.hasOwnProperty.call(b,g)&&(h[g]=b[g]);c=h;n=c.laziness+1;m=c.throttle;p=c.disqusConfig;k=!1===k?c.scriptUrl:k;e="string"===typeof a?f.querySelector(a):"number"===typeof a.length?a[0]:a;e.disqusLoaderStatus="unloaded";q()}})(window,document,0);

Wyświetl plik

@ -0,0 +1,37 @@
{% extends 'base.html' %}
{% block seo -%}
{{ super() }}
{%- set home = "404" -%}
{% set og_title = home -%}
{% if config.title -%}
{% set title = home ~ " | " ~ config.title -%}
{% else -%}
{% set title = home -%}
{% endif -%}
{% set web_type = "WebPage" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}
{% block content %}
<div class="notfound">
<h1 class="notfound-error">{{ config.extra.expressions.p404 | default(value="404: Page not found") }}</h1>
<div class="notfound-line"></div>
<p class="notfound-message">
{{ config.extra.expressions.p404_info | default(value="Oops! We can't seem to find the page you are looking for.") | safe }} {{ config.extra.expressions.p404_back_home_start | default(value="Let's") |
safe }}
<a href="{{ config.base_url | safe }}">{{ config.extra.expressions.p404_back_home_with_link | default(value="head back home") |
safe }}</a>{{ config.extra.expressions.p404_back_home_end | default(value=".") |
safe }}
</p>
<p></p>
</div>
{% endblock content %}

Wyświetl plik

@ -0,0 +1,80 @@
{% import 'macros.html' as macros %}
<!DOCTYPE html>
<html lang="{{ config.extra.language_code | default(value="en") }}">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
{% block seo %}
{%- set site_url = current_url | default(value=get_url(path="404.html")) -%}
{% set author = config.extra.author | default(value="") -%}
{% set description = config.description | default(value="") -%}
{% set image = config.extra.seo.image | default(value="") -%}
{% set image_height = config.extra.seo.image_height | default(value=0) -%}
{% set image_width = config.extra.seo.image_width | default(value=0) -%}
{% endblock seo %}
<link rel="stylesheet" href="{{ get_url(path="main.css") | safe }}">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Libre+Baskerville:400,400i,700">
<link rel="icon" type="image/png" sizes="32x32" href="{{ get_url(path="assets/favicon-32x32.png") | safe }}">
<link rel="icon" type="image/png" sizes="16x16" href="{{ get_url(path="assets/favicon-16x16.png") | safe }}">
<link rel="apple-touch-icon" sizes="180x180" href="{{ get_url(path="assets/apple-touch-icon.png") | safe }}">
{% if config.generate_feed %}
<link type="application/atom+xml" rel="alternate" href="{{ get_url(path=config.feed_filename | default(value="atom.xml")) | safe }}" title="{{ config.title | default(value="Tale-Zola") }}" />
{% endif %}
{% if config.extra.google_analytics %}
<script async src='https://www.google-analytics.com/analytics.js'></script>
<script>
window.ga = window.ga || function () { (ga.q = ga.q || []).push(arguments) }; ga.l = +new Date;
ga('create', '{{ config.extra.google_analytics }}', 'auto');
ga('send', 'pageview');
</script>
{% endif %}
{#{ macros::katex() }#}
{% include "partials/katex.html" %}
</head>
<body>
{% block header %}
<nav class="nav">
<div class="nav-container">
<a href="{{ config.base_url | safe }}">
<h2 class="nav-title">{{ config.title | default(value="Tale-Zola")}}</h2>
</a>
<ul>
{% if config.extra.menu %}
{% for menu in config.extra.menu %}
<li><a href="{{ get_url(path=menu.url) | safe }}">{{ menu.name }}</a></li>
{% endfor %}
{% else %}
<li><a href="{{ config.base_url | safe }}">Posts</a></li>
<li><a href="{{ get_url(path="tags") | safe }}">Tags</a></li>
<li><a href="{{ get_url(path="about") | safe }}">About</a></li>
{% endif %}
</ul>
</div>
</nav>
{% endblock header %}
<main>
{% block content %}{% endblock content %}
</main>
{% block footer %}
<footer>
<span>
{%- if config.extra.footer -%}
&copy; {{ macros::time() }} {{ config.extra.author | default(value="Aaran Xu")}}. {{ config.extra.footer.info | default(value="Made with Zola with Tala-Zola theme.") | safe }}
{%- else -%}
&copy; 2021 Aaran Xu. Made with <a href="https://www.getzola.org">Zola</a> using the <a
href="https://github.com/aaranxu/tale-zola">Tale-Zola</a> theme.
{%- endif -%}
</span>
</footer>
{% endblock footer %}
</body>
</html>

Wyświetl plik

@ -0,0 +1,41 @@
{% extends "base.html" %}
{% block seo -%}
{{ super() }}
{%- set home = config.extra.expressions.home | default(value="Home") -%}
{% set og_title = home -%}
{% if config.title -%}
{% set title = home ~ " | " ~ config.title -%}
{% else -%}
{% set title = home -%}
{% endif -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width) }}
{%- endblock seo %}
{% block content %}
{% if paginator.pages %}
<div class="catalogue">
{% for page in paginator.pages -%}
{{ macros::page(page=page) }}
{%- endfor %}
</div>
<div class="pagination">
{% if paginator.previous -%}
<a href="{{ paginator.previous | safe }}" class="left arrow">&#8592;</a>
{%- endif %}
{% if paginator.previous or paginator.next -%}
<span>{{ paginator.current_index }}</span>
{%- endif %}
{% if paginator.next -%}
<a href="{{ paginator.next | safe }}" class="right arrow">&#8594;</a>
{%- endif %}
</div>
{% endif %}
{% endblock content %}

Wyświetl plik

@ -0,0 +1,191 @@
{%- macro time() -%}
{%- if config.extra.footer.start_year -%}
{%- set start_year = config.extra.footer.start_year -%}
{%- else -%}
{%- set start_year = now() | date(format="%Y") -%}
{%- endif -%}
{%- if config.extra.footer.end_year -%}
{%- set end_year = config.extra.footer.end_year -%}
{%- else -%}
{%- set end_year = now() | date(format="%Y") -%}
{%- endif -%}
{%- if start_year == end_year -%}
{%- set year = start_year -%}
{%- else -%}
{%- set year = start_year ~ "-" ~ end_year -%}
{%- endif -%}
<time datetime="{{ now() }}">{{ year }}</time>
{%- endmacro -%}
{% macro page(page) -%}
<a href="{{ page.permalink | safe }}" class="catalogue-item">
<div>
<span class="catalogue-pinned">{{ config.extra.expressions.pinned | default(value="Pinned")}} &middot;</span>
<time datetime="{{ page.date }}" class="catalogue-time">{{ page.date | date(format=config.extra.timeformat |
default(value="%B %e, %Y")) }}</time>
<h1 class="catalogue-title">{{ page.title }}</h1>
<div class="catalogue-line"></div>
<p>
{%- if page.summary -%}
{{ page.summary | safe }}
{% else -%}
{{ page.content | striptags | truncate(length=280) | safe }}
{%- endif -%}
</p>
</div>
</a>
{%- endmacro %}
{% macro seo(
title="",
og_title="",
author="",
description="",
site_url="",
image="",
image_height="",
image_width="",
web_type="WebSite"
) -%}
{% if title %}
<title>{{ title }}</title>
{% endif %}
{% if og_title %}
<meta property="og:title" content="{{ og_title }}">
{% endif %}
{% if author %}
<meta name="author" content="{{ author }}">
{% endif %}
<meta property="og:locale" content="{{ config.extra.seo.og_locale | default(value="en-US") }}">
{% if description %}
<meta name="description" content="{{ description }}">
<meta property="og:description" content="{{ description }}">
{% endif %}
{% if site_url %}
<link rel="canonical" href="{{ site_url | safe }}">
<meta property="og:url" content="{{ site_url | safe }}">
{% endif %}
{% if config.title %}
<meta property="og:site_name" content="{{ config.title }}" />
{% endif %}
{% if image %}
<meta property="og:image" content="{{ get_url(path=image) | safe }}">
{% if image_height -%}
<meta property="og:image:height" content="{{ image_height }}">
{%- endif %}
{% if image_width -%}
<meta property="og:image:width" content="{{ image_width }}">
{%- endif %}
{% endif %}
{% if page.date %}
<meta property="og:type" content="article" />
<meta property="article:published_time" content="{{ page.date | date(format="%+") }}">
{% endif %}
{% if page.earlier %}
<link rel="prev" href="{{ page.earlier.permalink | safe }}">
{% elif paginator.previous %}
<link rel="prev" href="{{ paginator.previous | safe }}">
{% endif %}
{% if ppage.later %}
<link rel="next" href="{{ page.later.permalink | safe }}">
{% elif paginator.next %}
<link rel="next" href="{{ paginator.next | safe }}">
{% endif %}
{% if image %}
<meta name="twitter:card" content="summary_large_image"">
<meta property="twitter:image" content="{{ get_url(path=image) | safe }}">
{% else %}
<meta name="twitter:card" content="summary">
{% endif %}
{% if og_title %}
<meta property="twitter:title" content="{{ og_title }}">
{% endif %}
{% if config.extra.seo.twitter.site %}
<meta name="twitter:site" content="@{{ config.extra.seo.twitter.site }}">
{% if config.extra.seo.twitter_creator %}
<meta name="twitter:creator" content="@{{ config.extra.seo.twitter.creator }}">
{% endif %}
{% endif %}
{% if config.extra.seo.facebook %}
{% if config.extra.seo.facebook.admins %}
<meta property="fb:admins" content="{{ config.extra.seo.facebook.admins }}" />
{% endif %}
{% if config.extra.seo.facebook.publisher %}
<meta property="article:publisher" content="{{ config.extra.seo.facebook.publisher }}" />
{% endif %}
{% if config.extra.seo.facebook.app_id %}
<meta property="fb:app_id" content="{{ config.extra.seo.facebook.app_id }}" />
{% endif %}
{% endif %}
{% if config.extra.seo.webmaster %}
{% if config.extra.seo.webmaster.google %}
<meta name="google-site-verification" content="{{ config.extra.seo.webmaster.google }}" />
{% endif %}
{% if config.extra.seo.webmaster.bing %}
<meta name="msvalidate.01" content="{{ config.extra.seo.webmaster.bing }}" />
{% endif %}
{% if config.extra.seo.webmaster.alexa %}
<meta name="alexaVerifyID" content="{{ config.extra.seo.webmaster.alexa }}" />
{% endif %}
{% if config.extra.seo.webmaster.yandex %}
<meta name="yandex-verification" content="{{ config.extra.seo.webmaster.yandex }}" />
{% endif %}
{% if config.extra.seo.webmaster.baidu %}
<meta name="baidu-site-verification" content="{{ config.extra.seo.webmaster.baidu }}" />
{% endif %}
{% endif %}
<script type="application/ld+json">
{
"author": {
"@type":"Person",
"name":"{{ author }}",
},
"description": "{{description }}",
"url": "{{ site_url | safe }}",
"@context":"https://schema.org",
"@type": "{{ web_type }}",
"headline": "{{ og_title }}"
{% if page %}
{% if page.updated %}
"dateModified":"{{ page.updated | date(format="%+") }}",
{% endif %}
{% if page.date %}
"datePublished":"{{ page.date | date(format="%+") }}",
{% endif %}
"mainEntityOfPage":{
"@type":"WebPage",
"@id":"{{ site_url | safe }}"
},
{% endif %}
}
</script>
{%- endmacro %}

Wyświetl plik

@ -0,0 +1,73 @@
{% extends "base.html"%}
{% block seo -%}
{{ super() }}
{%- set og_title = page.title -%}
{% if config.title and page.title -%}
{% set title = page.title ~ " | " ~ config.title -%}
{% elif page.title -%}
{% set title = page.title -%}
{% elif config.title -%}
{% set title = config.title -%}
{% else -%}
{% set title = "" -%}
{% endif -%}
{% if page.extra.author -%}
{% set author = page.extra.author -%}
{% endif -%}
{% if page.description -%}
{% set description = page.description -%}
{% endif -%}
{% if page.extra.image -%}
{% set image = page.extra.image -%}
{% endif -%}
{% if page.extra.image_height -%}
{% set image_height = page.extra.image_height -%}
{% endif -%}
{% if page.extra.image_width -%}
{% set image_width = page.extra.image_width -%}
{% endif -%}
{% set web_type = "BlogPosting" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}
{% block content %}
<div class="post">
<div class="post-info">
{% if page.extra.author -%}
<span>{{ config.extra.expressions.written_by | default(value="Written by") }}</span> {{ page.extra.author }}<br>
{% elif config.extra.author -%}
<span>{{ config.extra.expressions.written_by | default(value="Written by") }}</span> {{ config.extra.author }}<br>
{%- endif %}
<span>{{ config.extra.expressions.on | default(value="on")}}&nbsp;</span><time datetime="{{ page.date }}">{{ page.date | date(format=config.extra.timeformat | default(value="%B %e, %Y"))}}</time>
</div>
<h1 class="post-title">{{ page.title }}</h1>
<div class="post-line"></div>
{{ page.content | safe }}
</div>
{% include "partials/disqus.html" %}
<div class="pagination">
{% if page.later -%}
<a href="{{ page.later.permalink | safe }}" class="left arrow">&#8592;</a>
{%- endif %}
<a href="#" class="top">Top</a>
{% if page.earlier -%}
<a href="{{ page.earlier.permalink | safe }}" class="right arrow">&#8594;</a>
{%- endif %}
</div>
{% endblock content %}

Wyświetl plik

@ -0,0 +1,13 @@
{% if page.extra.disqus or config.extra.disqus -%}
<script src="{{ get_url(path=" assets/js/disqusLoader.js") | safe }}"></script>
<div id="disqus_thread">
<h3>{{ config.extra.expressions.disqus_discussion | default(value="Discussion and feedback") }}</h3>
</div>
<div class="disqus"></div>
<script>
disqusLoader('.disqus', {
scriptUrl: 'https://{{ config.extra.disqus_id | default(value="") }}.disqus.com/embed.js'
});
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
{%- endif %}

Wyświetl plik

@ -0,0 +1,9 @@
{% if page.extra.katex or section.extra.katex or config.extra.katex %}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.css"
integrity="sha384-zB1R0rpPzHqg7Kpt0Aljp8JPLqbXI3bhnPWROx27a9N0Ll6ZP/+DiW/UqRcLbRjq" crossorigin="anonymous">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.js"
integrity="sha384-y23I5Q6l+B6vatafAwxRu/0oK/79VlbSz7Q9aiSZUvyWYIYsd+qj+o24G5ZU2zJz" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/auto-render.min.js"
integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous"
onload="renderMathInElement(document.body);"></script>
{% endif %}

Wyświetl plik

@ -0,0 +1,40 @@
{% extends "base.html" %}
{% block seo -%}
{{ super() }}
{% set og_title = section.title | default(value="About") -%}
{% if config.title and section.title -%}
{% set title = section.title ~ " | " ~ config.title -%}
{% elif section.title -%}
{% set title = section.title -%}
{% elif config.title -%}
{% set title = config.title -%}
{% else -%}
{% set title = "" -%}
{% endif -%}
{% if section.description -%}
{% set description = section.description -%}
{% endif -%}
{% set web_type = "WebPage" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}
{% block content %}
<div class="post">
<h1 class="post-title">{{ section.title }}</h1>
<div class="post-line"></div>
{{ section.content | safe }}
</div>
<div class="pagination">
<a href="#" class="top">Top</a>
</div>
{% endblock content %}

Wyświetl plik

@ -0,0 +1,63 @@
{% extends "base.html" %}
{% block seo -%}
{{ super() }}
{%- set tags = config.extra.expressions.tags | default(value="Tags") -%}
{% set og_title = tags -%}
{% if config.title -%}
{% set title = tags ~ " | " ~ config.title -%}
{% else -%}
{% set title = tags -%}
{% endif -%}
{% set web_type = "WebPage" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}
{% block content %}
<div class="tags">
<div class="tags-header">
<h2 class="tags-header-title">{{ config.extra.expressions.tags | default(value="Tags") }}</h2>
<div class="tags-header-line"></div>
</div>
<div class="tags-clouds">
{% for term in terms -%}
<a href="#{{ term.name }}">{{ term.name }}</a>
{%- endfor %}
</div>
{% for term in terms -%}
<div class="tags-item" id="{{ term.name }}">
<svg class="tags-item-icon" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path>
<line x1="7" y1="7" x2="7.01" y2="7"></line>
</svg>
<h2 class="tags-item-label"><a href="{{ term.permalink | safe }}">{{ term.name }}</a></h2>
{% for page in term.pages -%}
<a class="tags-post" href="{{ page.permalink | safe }}">
<div>
<span class="tags-post-title">{{ page.title }}</span>
<div class="tags-post-line"></div>
</div>
<span class="tags-post-meta">
<time datetime="{{ page.date }}">
{{ page.date | date(format=config.extra.timeformat |
default(value="%B %e, %Y")) }}
</time>
</span>
</a>
{% endfor -%}
</div>
{% endfor -%}
</div>
{% endblock content %}

Wyświetl plik

@ -0,0 +1,37 @@
{% extends "base.html" %}
{% block seo -%}
{{ super() }}
{%- set og_title = term.name -%}
{% if config.title -%}
{% set title = term.name ~ " | " ~ config.title -%}
{% else -%}
{% set title = term.name -%}
{% endif -%}
{% set web_type = "WebPage" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}
{% block content %}
<div class="tags">
<div class="tags-header">
<h2 class="tags-header-title">{{ term.name }}</h2>
<div class="tags-header-line"></div>
</div>
</div>
<div class="catalogue">
{% for page in term.pages -%}
{{ macros::page(page=page) }}
{%- endfor %}
</div>
{% endblock content %}

Wyświetl plik

@ -0,0 +1,17 @@
name = "tale-zola"
description = "Tala-Zola is a minimal Zola theme helping you to build a nice and seo-ready blog."
license = "MIT"
homepage = "https://github.com/aaranxu/tale-zola"
min_version = "0.13.0"
demo = "https://tale-zola.netlify.app/"
[extra]
[author]
name = "Aaran Xu"
homepage = "https://github.com/aaranxu"
[original]
author = "Chester How"
homepage = "https://chesterhow.github.io/tale/"
repo = "https://github.com/chesterhow/tale"