Across the board style fixes and simplifications

Plus bump to v3
This commit is contained in:
daudix
2024-06-18 03:19:37 +03:00
parent 58f4e9975e
commit 52e9cbeda0
22 changed files with 332 additions and 311 deletions

View File

@ -47,7 +47,7 @@ It is highly recommended to switch from the `main` branch to the lates release:
```sh ```sh
cd themes/duckquill cd themes/duckquill
git checkout tags/v2.1.0 git checkout tags/v3.0.0
``` ```
To update the submodule, simply switch to a new tag: To update the submodule, simply switch to a new tag:
@ -57,7 +57,7 @@ To update the submodule, simply switch to a new tag:
```sh ```sh
git submodule update --remote --merge git submodule update --remote --merge
git tag --list git tag --list
git checkout tags/v2.1.0 git checkout tags/v3.0.0
``` ```
Then, enable it in your `config.toml`: Then, enable it in your `config.toml`:

View File

@ -47,7 +47,7 @@ git submodule add https://codeberg.org/daudix/duckquill.git themes/duckquill
```sh ```sh
cd themes/duckquill cd themes/duckquill
git checkout tags/v2.1.0 git checkout tags/v3.0.0
``` ```
Чтобы обновить субмодуль, просто переключитесь на новый тег: Чтобы обновить субмодуль, просто переключитесь на новый тег:
@ -57,7 +57,7 @@ git checkout tags/v2.1.0
```sh ```sh
git submodule update --remote --merge git submodule update --remote --merge
git tag --list git tag --list
git checkout tags/v2.1.0 git checkout tags/v3.0.0
``` ```
Затем включите её в файле `config.toml`: Затем включите её в файле `config.toml`:

View File

@ -6,14 +6,14 @@
transform: scale(0.95); transform: scale(0.95);
opacity: 0.6; opacity: 0.6;
transition: var(--transition-longer); transition: var(--transition-longer);
outline: 2px dashed var(--fg-muted-2); outline: 0.125rem dashed var(--fg-muted-2);
outline-offset: 1rem; outline-offset: 1rem;
border-radius: 1rem; border-radius: 1rem;
&:hover { &:hover {
transform: scale(1); transform: scale(1);
opacity: 1; opacity: 1;
outline: 2px dashed transparent; outline: 0.125rem dashed transparent;
outline-offset: 0; outline-offset: 0;
} }
} }
@ -34,8 +34,9 @@
right: 0; right: 0;
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: 999px; border-radius: 999px;
padding: 0.25rem 0.75rem; padding: 0.5rem 0.75rem;
font-weight: bold; font-weight: bold;
line-height: normal;
.icon { .icon {
vertical-align: -0.125em; vertical-align: -0.125em;

View File

@ -7,15 +7,15 @@
} }
.inline-button { .inline-button {
display: inline-block;
transition: var(--transition); transition: var(--transition);
cursor: pointer; cursor: pointer;
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: var(--rounded-corner); border-radius: var(--rounded-corner);
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
padding: 0.5rem 1rem; padding: 0.625rem 1rem;
color: var(--fg-color); color: var(--fg-color);
font-size: 0.9rem; font-size: 0.9rem;
line-height: normal;
text-decoration: none; text-decoration: none;
&:hover { &:hover {

View File

@ -2,63 +2,63 @@
pre, pre,
code, code,
kbd { kbd {
font-family: var(--font-monospace-code); font-family: var(--font-monospace-code);
} }
code:not(pre code) { code:not(pre code) {
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: var(--rounded-corner-small); border-radius: var(--rounded-corner-small);
background-color: var(--fg-muted-2); background-color: var(--fg-muted-2);
padding: 0.125rem 0.375rem; padding: 0.125rem 0.375rem;
color: var(--red-fg); color: var(--red-fg);
} }
pre { pre {
margin: 1rem 0 1rem; margin: 1rem 0 1rem;
box-shadow: var(--edge-highlight), var(--shadow); box-shadow: var(--edge-highlight), var(--shadow);
border-radius: var(--rounded-corner); border-radius: var(--rounded-corner);
padding: 1rem; padding: 1rem;
max-width: 100vw; max-width: 100vw;
overflow: auto; overflow: auto;
line-height: normal; line-height: normal;
table td { table td {
border: none; border: none;
padding: 0; padding: 0;
} }
// The line number cells // The line number cells
table td:nth-of-type(1) { table td:nth-of-type(1) {
user-select: none; user-select: none;
text-align: center; text-align: center;
} }
mark { mark {
display: block; display: block;
box-shadow: none; box-shadow: none;
border-radius: 0; // Unset code block border radius border-radius: 0; // Unset code block border radius
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
padding: 0; // Unset mark padding padding: 0; // Unset mark padding
color: var(--fg-color); // Unset mark color from primary color to text color color: var(--fg-color); // Unset mark color from primary color to text color
} }
table { table {
box-shadow: none; box-shadow: none;
border-radius: 0; border-radius: 0;
border-collapse: collapse; border-collapse: collapse;
width: 100%; width: 100%;
table-layout: auto; table-layout: auto;
overflow: auto; overflow: auto;
tr { tr {
&:nth-child(even) { &:nth-child(even) {
background-color: unset; background-color: unset;
} }
} }
} }
// The line numbers already provide some kind of left/right padding // The line numbers already provide some kind of left/right padding
&[data-linenos] { &[data-linenos] {
padding: 1rem 0; padding: 1rem 0;
} }
} }

View File

@ -1,11 +1,12 @@
section#comments { section#comments {
#qrcode { #qrcode {
float: right; float: right;
box-sizing: content-box;
margin: 3rem 0 0 1rem; margin: 3rem 0 0 1rem;
background-color: white; background-color: white;
padding: 12.5px; padding: 0.75rem;
width: 150px; width: 125px;
height: 150px; height: 125px;
body[dir="rtl"] & { body[dir="rtl"] & {
float: left; float: left;

View File

@ -8,7 +8,6 @@
button { button {
-webkit-backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur);
display: inline-flex;
position: absolute; position: absolute;
top: 0.5rem; top: 0.5rem;
right: 0.5rem; right: 0.5rem;
@ -20,6 +19,7 @@
border-radius: 50%; border-radius: 50%;
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
padding: 0.5rem; padding: 0.5rem;
line-height: 0;
body[dir="rtl"] & { body[dir="rtl"] & {
right: unset; right: unset;

View File

@ -40,11 +40,11 @@
padding: 0; padding: 0;
li { li {
display: inline-flex; line-height: 0;
list-style: none; list-style: none;
a { a {
display: inline-flex; display: block;
transition: var(--transition); transition: var(--transition);
border-radius: 999px; border-radius: 999px;
padding: 0.5rem; padding: 0.5rem;

View File

@ -44,6 +44,7 @@ body {
// and flash it with primary color when jumping to it // and flash it with primary color when jumping to it
:target:not(#main) { :target:not(#main) {
animation: var(--transition-long) 1s highlight-in-out; animation: var(--transition-long) 1s highlight-in-out;
transition: all var(--transition-longer), scroll-margin-top 0s;
scroll-margin-top: 20vh; scroll-margin-top: 20vh;
color: var(--primary-color); color: var(--primary-color);
text-shadow: var(--primary-color-alpha) 0 0 4px, var(--primary-color) 0 0 12px; text-shadow: var(--primary-color-alpha) 0 0 4px, var(--primary-color) 0 0 12px;

View File

@ -1,9 +1,9 @@
.icon { .icon {
-webkit-mask-size: cover; -webkit-mask-size: cover;
display: inline-block; display: inline-block;
mask-size: cover; mask-size: cover;
font-style: normal; font-style: normal;
font-variant: normal; font-variant: normal;
line-height: 1; line-height: 1;
text-rendering: auto; text-rendering: auto;
} }

View File

@ -1,7 +0,0 @@
#johnvertisement {
display: block;
margin: 1rem auto 0;
border: none;
width: min(728px, 100vw);
height: min(90px, 12.367vw);
}

View File

@ -11,23 +11,21 @@
max-width: min(var(--container-width), 90%); max-width: min(var(--container-width), 90%);
nav { nav {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
padding: 0.5rem; padding: 0.5rem;
ul { ul {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: center; justify-content: center;
align-items: center;
gap: 0.25rem; gap: 0.25rem;
margin: 0; margin: 0;
padding: 0; padding: 0;
} }
li { li {
display: inline-flex; display: flex;
line-height: normal;
list-style: none; list-style: none;
} }
@ -48,7 +46,7 @@
position: relative; position: relative;
transition: var(--transition); transition: var(--transition);
border-radius: 999px; border-radius: 999px;
padding: 0.325rem 0.75rem; padding: 0.5rem 0.75rem;
color: var(--fg-muted-4); color: var(--fg-muted-4);
text-decoration: none; text-decoration: none;
@ -107,11 +105,11 @@
&::after { &::after {
position: absolute; position: absolute;
top: 0; top: -0.25rem;
right: -0.5rem; right: -0.5rem;
background-color: var(--fg-muted-2); background-color: var(--fg-muted-2);
width: 1px; width: 1px;
height: 110%; height: calc(100% + 0.5rem);
content: ""; content: "";
body[dir="rtl"] & { body[dir="rtl"] & {
@ -132,7 +130,7 @@
#feed a, #feed a,
#dropdown summary { #dropdown summary {
padding: 0.325rem 0.625rem; padding: 0.5rem 0.625rem;
&:hover .icon { &:hover .icon {
background-color: var(--primary-color); background-color: var(--primary-color);
@ -208,6 +206,7 @@
padding: 0.25rem; padding: 0.25rem;
li { li {
display: flex;
width: 100%; width: 100%;
a { a {

View File

@ -7,9 +7,9 @@
// //
:where(html) { :where(html) {
line-height: 1.15; // 1 -webkit-text-size-adjust: 100%; // 2
-webkit-text-size-adjust: 100%; // 2 text-size-adjust: 100%; // 2
text-size-adjust: 100%; // 2 line-height: 1.15; // 1
} }
// Sections // Sections
@ -21,9 +21,9 @@
// //
:where(h1) { :where(h1) {
font-size: 2em; margin-block-start: 0.67em;
margin-block-end: 0.67em; margin-block-end: 0.67em;
margin-block-start: 0.67em; font-size: 2em;
} }
// Grouping content // Grouping content
@ -34,8 +34,8 @@
// //
:where(dl, ol, ul) :where(dl, ol, ul) { :where(dl, ol, ul) :where(dl, ol, ul) {
margin-block-end: 0; margin-block-start: 0;
margin-block-start: 0; margin-block-end: 0;
} }
// //
@ -44,9 +44,9 @@
// //
:where(hr) { :where(hr) {
box-sizing: content-box; // 1 box-sizing: content-box; // 1
color: inherit; // 2 height: 0; // 1
height: 0; // 1 color: inherit; // 2
} }
// Text-level semantics // Text-level semantics
@ -57,8 +57,8 @@
// //
:where(abbr[title]) { :where(abbr[title]) {
text-decoration: underline; text-decoration: underline;
text-decoration: underline dotted; text-decoration: underline dotted;
} }
// //
@ -66,7 +66,7 @@
// //
:where(b, strong) { :where(b, strong) {
font-weight: bolder; font-weight: bolder;
} }
// //
@ -75,8 +75,8 @@
// //
:where(code, kbd, pre, samp) { :where(code, kbd, pre, samp) {
font-family: monospace, monospace; // 1 font-size: 1em; // 2
font-size: 1em; // 2 font-family: monospace, monospace; // 1
} }
// //
@ -84,7 +84,7 @@
// //
:where(small) { :where(small) {
font-size: 80%; font-size: 80%;
} }
// Tabular data // Tabular data
@ -96,8 +96,8 @@
// //
:where(table) { :where(table) {
border-color: currentColor; // 1 border-color: currentColor; // 1
text-indent: 0; // 2 text-indent: 0; // 2
} }
// Forms // Forms
@ -108,7 +108,7 @@
// //
:where(button, input, select) { :where(button, input, select) {
margin: 0; margin: 0;
} }
// //
@ -116,7 +116,7 @@
// //
:where(button) { :where(button) {
text-transform: none; text-transform: none;
} }
// //
@ -124,7 +124,7 @@
// //
:where(button, input:is([type="button" i], [type="reset" i], [type="submit" i])) { :where(button, input:is([type="button" i], [type="reset" i], [type="submit" i])) {
-webkit-appearance: button; -webkit-appearance: button;
} }
// //
@ -132,7 +132,7 @@
// //
:where(progress) { :where(progress) {
vertical-align: baseline; vertical-align: baseline;
} }
// //
@ -140,7 +140,7 @@
// //
:where(select) { :where(select) {
text-transform: none; text-transform: none;
} }
// //
@ -148,7 +148,7 @@
// //
:where(textarea) { :where(textarea) {
margin: 0; margin: 0;
} }
// //
@ -157,8 +157,8 @@
// //
:where(input[type="search" i]) { :where(input[type="search" i]) {
-webkit-appearance: textfield; // 1 -webkit-appearance: textfield; // 1
outline-offset: -2px; // 2 outline-offset: -2px; // 2
} }
// //
@ -167,7 +167,7 @@
::-webkit-inner-spin-button, ::-webkit-inner-spin-button,
::-webkit-outer-spin-button { ::-webkit-outer-spin-button {
height: auto; height: auto;
} }
// //
@ -175,8 +175,8 @@
// //
::-webkit-input-placeholder { ::-webkit-input-placeholder {
color: inherit; opacity: 0.54;
opacity: 0.54; color: inherit;
} }
// //
@ -184,7 +184,7 @@
// //
::-webkit-search-decoration { ::-webkit-search-decoration {
-webkit-appearance: none; -webkit-appearance: none;
} }
// //
@ -193,8 +193,8 @@
// //
::-webkit-file-upload-button { ::-webkit-file-upload-button {
-webkit-appearance: button; // 1 -webkit-appearance: button; // 1
font: inherit; // 2 font: inherit; // 2
} }
// //
@ -202,8 +202,8 @@
// //
:where(button, input:is([type="button" i], [type="color" i], [type="reset" i], [type="submit" i]))::-moz-focus-inner { :where(button, input:is([type="button" i], [type="color" i], [type="reset" i], [type="submit" i]))::-moz-focus-inner {
border-style: none; border-style: none;
padding: 0; padding: 0;
} }
// //
@ -211,7 +211,7 @@
// //
:where(button, input:is([type="button" i], [type="color" i], [type="reset" i], [type="submit" i]))::-moz-focusring { :where(button, input:is([type="button" i], [type="color" i], [type="reset" i], [type="submit" i]))::-moz-focusring {
outline: 1px dotted ButtonText; outline: 1px dotted ButtonText;
} }
// //
@ -219,7 +219,7 @@
// //
:where(:-moz-ui-invalid) { :where(:-moz-ui-invalid) {
box-shadow: none; box-shadow: none;
} }
// Interactive // Interactive
@ -230,22 +230,22 @@
// //
:where(dialog) { :where(dialog) {
background-color: white; position: absolute;
border: solid; right: 0;
color: black; left: 0;
height: -moz-fit-content; margin: auto;
height: fit-content; border: solid;
left: 0; background-color: white;
margin: auto; padding: 1em;
padding: 1em; width: -moz-fit-content;
position: absolute; width: fit-content;
right: 0; height: -moz-fit-content;
width: -moz-fit-content; height: fit-content;
width: fit-content; color: black;
} }
:where(dialog:not([open])) { :where(dialog:not([open])) {
display: none; display: none;
} }
// //
@ -253,5 +253,5 @@
// //
:where(summary) { :where(summary) {
display: list-item; display: list-item;
} }

View File

@ -1,34 +1,34 @@
// TABLE // TABLE
table { table {
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: var(--rounded-corner); border-radius: var(--rounded-corner);
border-collapse: collapse; border-collapse: collapse;
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
width: 100%; width: 100%;
table-layout: fixed; table-layout: fixed;
overflow: hidden; overflow: hidden;
th { th {
font-weight: bold; font-weight: bold;
} }
th, th,
td { td {
padding: 0.5rem 1rem; padding: 0.5rem 1rem;
} }
tr { tr {
&:nth-child(even) { &:nth-child(even) {
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
} }
th { th {
background-color: var(--fg-muted-2); background-color: var(--fg-muted-2);
} }
} }
} }
td, td,
th { th {
padding: 0; padding: 0;
} }

View File

@ -1,12 +1,14 @@
.tags { .tags {
display: inline-block; display: inline-flex;
flex-wrap: wrap;
gap: 0.25rem;
padding: 0; padding: 0;
list-style: none; list-style: none;
li { li {
display: inline-block; display: flex;
transition: var(--transition); transition: var(--transition);
margin: 0 0.25rem 0.5rem 0; line-height: normal;
&:active { &:active {
transform: scale(var(--active)); transform: scale(var(--active));
@ -20,6 +22,7 @@
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
padding: 0.25rem 0.75rem; padding: 0.25rem 0.75rem;
color: var(--fg-color); color: var(--fg-color);
font-size: 0.8rem;
text-decoration: none; text-decoration: none;
&:hover { &:hover {

View File

@ -5,150 +5,150 @@ h3,
h4, h4,
h5, h5,
h6 { h6 {
text-wrap: balance; text-wrap: balance;
margin: 3rem 0 1rem; margin: 3rem 0 1rem;
font-weight: lighter; font-weight: lighter;
line-height: normal; line-height: normal;
font-family: var(--font-antique); font-family: var(--font-antique);
letter-spacing: -0.05em; letter-spacing: -0.05em;
} }
h1 { h1 {
font-size: 2.5rem; font-size: 2.5rem;
} }
h2 { h2 {
font-size: 2rem; font-size: 2rem;
} }
h3 { h3 {
font-size: 1.5rem; font-size: 1.5rem;
} }
small { small {
color: var(--fg-muted-5); color: var(--fg-muted-5);
font-size: 0.8rem; font-size: 0.8rem;
} }
abbr[title] { abbr[title] {
-webkit-text-decoration: underline dotted; -webkit-text-decoration: underline dotted;
cursor: help; cursor: help;
text-decoration: underline dotted; text-decoration: underline dotted;
} }
figcaption { figcaption {
color: var(--fg-muted-4); color: var(--fg-muted-4);
font-size: 0.8rem; font-size: 0.8rem;
text-align: center; text-align: center;
} }
blockquote { blockquote {
margin: 0; margin: 0;
border-left: 0.25rem solid var(--primary-color); border-left: 0.25rem solid var(--primary-color);
border-radius: 0.25rem; border-radius: 0.25rem;
padding: 0 0.75rem; padding: 0 0.75rem;
color: var(--fg-muted-5); color: var(--fg-muted-5);
body[dir="rtl"] & { body[dir="rtl"] & {
border-right: 0.25rem solid var(--primary-color); border-right: 0.25rem solid var(--primary-color);
border-left: unset; border-left: unset;
} }
} }
mark { mark {
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: var(--rounded-corner-small); border-radius: var(--rounded-corner-small);
background-color: var(--primary-color-alpha); background-color: var(--primary-color-alpha);
padding: 0.125rem 0.375rem; padding: 0.125rem 0.375rem;
color: var(--primary-color); color: var(--primary-color);
} }
kbd { kbd {
display: inline-block; display: inline-block;
transition: var(--transition); transition: var(--transition);
cursor: pointer; cursor: pointer;
box-shadow: inset 0 -2px 0 var(--fg-muted-2), 0 -1px 0 var(--fg-muted-3); box-shadow: inset 0 -2px 0 var(--fg-muted-2), 0 -1px 0 var(--fg-muted-3);
border-radius: var(--rounded-corner-small); border-radius: var(--rounded-corner-small);
background-color: var(--fg-muted-2); background-color: var(--fg-muted-2);
padding: 0.125rem 0.375rem; padding: 0.125rem 0.375rem;
font-size: 0.8rem; font-size: 0.8rem;
line-height: normal; line-height: normal;
// Small nice thingy, keys can be pressed! // Small nice thingy, keys can be pressed!
&:active { &:active {
transform: translateY(2px); transform: translateY(2px);
box-shadow: inset 0 1px 0 var(--fg-muted-2); box-shadow: inset 0 1px 0 var(--fg-muted-2);
background-color: var(--fg-muted-3); background-color: var(--fg-muted-3);
} }
} }
a { a {
color: var(--primary-color); color: var(--primary-color);
font-weight: bold; font-weight: bold;
&:hover { &:hover {
-webkit-text-decoration: underline wavy; -webkit-text-decoration: underline wavy;
text-decoration: underline wavy; text-decoration: underline wavy;
} }
} }
hr { hr {
margin: 2rem auto; margin: 2rem auto;
border: none; border: none;
border-top: 3px double var(--fg-muted-2); border-top: 3px double var(--fg-muted-2);
overflow: visible; overflow: visible;
color: var(--fg-muted-4); color: var(--fg-muted-4);
font-size: 1.5rem; font-size: 1.5rem;
text-align: center; text-align: center;
&::after { &::after {
position: relative; position: relative;
top: -1.5rem; top: -1.5rem;
background: var(--bg-color), var(--primary-color); background: var(--bg-color), var(--primary-color);
padding: 0 0.25rem; padding: 0 0.25rem;
content: "☙❧"; content: "☙❧";
// An ugly hack to fix mirroring in rtl // An ugly hack to fix mirroring in rtl
body[dir="rtl"] & { body[dir="rtl"] & {
content: "❧☙"; content: "❧☙";
} }
} }
} }
dt { dt {
font-weight: bold; font-weight: bold;
} }
dd { dd {
margin-bottom: 1rem; margin-bottom: 1rem;
} }
aside { aside {
float: right; float: right;
margin-inline-start: 1rem; margin-inline-start: 1rem;
box-shadow: var(--edge-highlight); box-shadow: var(--edge-highlight);
border-radius: var(--rounded-corner); border-radius: var(--rounded-corner);
background-color: var(--primary-color-alpha); background-color: var(--primary-color-alpha);
padding: 1rem; padding: 1rem;
width: 30%; width: 30%;
body[dir="rtl"] & { body[dir="rtl"] & {
float: left; float: left;
} }
@media only screen and (max-width: 720px) { @media only screen and (max-width: 720px) {
float: none; float: none;
margin-inline-start: 0; margin-inline-start: 0;
width: 100%; width: 100%;
} }
} }
details { details {
border-radius: var(--rounded-corner); border-radius: var(--rounded-corner);
background-color: var(--fg-muted-1); background-color: var(--fg-muted-1);
padding: 1rem; padding: 1rem;
&>summary { &>summary {
cursor: pointer; cursor: pointer;
} }
} }

View File

@ -76,7 +76,6 @@
} }
@media (prefers-reduced-motion) { @media (prefers-reduced-motion) {
*, *,
*::before, *::before,
*::after { *::after {

View File

@ -4,37 +4,37 @@ h3,
h4, h4,
h5, h5,
h6 { h6 {
&:hover .zola-anchor { &:hover .zola-anchor {
opacity: 1; opacity: 1;
} }
} }
.zola-anchor { .zola-anchor {
opacity: 0; opacity: 0;
transition: var(--transition); transition: var(--transition);
margin: 0 0.25em; margin: 0 0.25em;
&:hover .icon { &:hover .icon {
background-color: var(--primary-color); background-color: var(--primary-color);
} }
&:focus-visible { &:focus-visible {
opacity: 1; opacity: 1;
} }
.icon { .icon {
$icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M4 4C1.8 4 0 5.8 0 8s1.8 4 4 4v-2c-1.125 0-2-.875-2-2s.875-2 2-2h3c1.125 0 2 .875 2 2 0 .84-.496 1.535-1.207 1.84l.785 1.84A4 4 0 0 0 11 8c0-2.2-1.8-4-4-4zm8 2v2c1.125 0 2 .875 2 2s-.875 2-2 2H9c-1.125 0-2-.875-2-2 0-.828.484-1.516 1.184-1.828l-.817-1.828A4.01 4.01 0 0 0 5 10c0 2.2 1.8 4 4 4h3c2.2 0 4-1.8 4-4s-1.8-4-4-4'/%3E%3C/svg%3E"); $icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M4 4C1.8 4 0 5.8 0 8s1.8 4 4 4v-2c-1.125 0-2-.875-2-2s.875-2 2-2h3c1.125 0 2 .875 2 2 0 .84-.496 1.535-1.207 1.84l.785 1.84A4 4 0 0 0 11 8c0-2.2-1.8-4-4-4zm8 2v2c1.125 0 2 .875 2 2s-.875 2-2 2H9c-1.125 0-2-.875-2-2 0-.828.484-1.516 1.184-1.828l-.817-1.828A4.01 4.01 0 0 0 5 10c0 2.2 1.8 4 4 4h3c2.2 0 4-1.8 4-4s-1.8-4-4-4'/%3E%3C/svg%3E");
-webkit-mask-image: $icon; -webkit-mask-image: $icon;
-webkit-mask-size: cover; -webkit-mask-size: cover;
mask-image: $icon; mask-image: $icon;
mask-size: cover; mask-size: cover;
transition: var(--transition); transition: var(--transition);
background-color: var(--fg-muted-4); background-color: var(--fg-muted-4);
width: 1em; width: 1em;
height: 1em; height: 1em;
} }
} }
:target .zola-anchor .icon { :target .zola-anchor .icon {
background-color: var(--primary-color-alpha); background-color: var(--primary-color-alpha);
} }

View File

@ -1,5 +1,5 @@
/*! /*!
* Duckquill v2.1.0 (https://daudix.codeberg.page/duckquill) * Duckquill v3.0.0 (https://daudix.codeberg.page/duckquill)
* Copyright 2024 David "Daudix" Lapshin * Copyright 2024 David "Daudix" Lapshin
* Licensed under MIT (https://codeberg.org/daudix/duckquill/src/branch/main/LICENSE) * Licensed under MIT (https://codeberg.org/daudix/duckquill/src/branch/main/LICENSE)
*/ */
@ -19,7 +19,6 @@
@use "general"; @use "general";
@use "icon"; @use "icon";
@use "input"; @use "input";
@use "johnvertisement";
@use "media"; @use "media";
@use "nav"; @use "nav";
@use "not-found"; @use "not-found";

View File

@ -6,7 +6,7 @@
{{ section.description | markdown | safe }} {{ section.description | markdown | safe }}
<small> <small>
<a class="link-page" href="{{ get_url(path='tags', lang=lang) }}">{{ trans(key="filter_by_tag", lang=lang) }}</a> <a href="{{ get_url(path='tags', lang=lang) }}">{{ trans(key="filter_by_tag", lang=lang) }}</a>
<br /> <br />
{{ trans(key="newest_to_oldest", lang=lang) }} ↓ {{ trans(key="newest_to_oldest", lang=lang) }} ↓
</small> </small>
@ -14,7 +14,7 @@
<div id="article-list"> <div id="article-list">
{% for page in section.pages %} {% for page in section.pages %}
<article {% if page.draft %}class="draft"{% endif %}> <article {% if page.draft %}class="draft"{% endif %}>
<h3><a class="link-page" href="{{ page.permalink | safe }}">{{ page.title }}</a></h3> <h3><a href="{{ page.permalink | safe }}">{{ page.title }}</a></h3>
{%- if page.draft %} {%- if page.draft %}
<span class="draft-badge"> <span class="draft-badge">
<i class="icon"></i> <i class="icon"></i>
@ -32,7 +32,9 @@
{%- endif %} {%- endif %}
{%- if page.date %} {%- if page.date %}
<small> <small>
<time datetime="{{ page.date | date(format='%+') }}" pubdate>{{- page.date | date(format=config.extra.date_format) -}}</time> <time datetime="{{ page.date | date(format='%+') }}" pubdate>
{{- page.date | date(format=config.extra.date_format) -}}
</time>
{%- if page.authors %} {%- if page.authors %}
<span></span> <span></span>
<span>{{ trans(key="author", lang=lang) }}: {{ page.authors[0] }}</span> <span>{{ trans(key="author", lang=lang) }}: {{ page.authors[0] }}</span>

View File

@ -4,11 +4,9 @@
<h1>{{ trans(key="tags", lang=lang) }}</h1> <h1>{{ trans(key="tags", lang=lang) }}</h1>
<small>{{ terms | length }} {{ trans(key="tags_in_total", lang=lang) }}</small> <small>{{ terms | length }} {{ trans(key="tags_in_total", lang=lang) }}</small>
<br /> <br />
<small> <ul class="tags">
<ul class="tags"> {% for tag in terms %}
{% for tag in terms %} <li><a class="tag" href="{{ get_taxonomy_url(kind='tags', name=tag.name, lang=lang) }}">{{ tag.name }}</a></li>
<li><a class="tag" href="{{ get_taxonomy_url(kind='tags', name=tag.name, lang=lang) }}">{{ tag.name }}</a></li> {% endfor %}
{% endfor %} </ul>
</ul>
</small>
{% endblock content %} {% endblock content %}

View File

@ -2,30 +2,55 @@
{% block content %} {% block content %}
<h1>{{ trans(key="posts_with_tag", lang=lang) }} “{{ term.name }}”</h1> <h1>{{ trans(key="posts_with_tag", lang=lang) }} “{{ term.name }}”</h1>
<small> <small>
<a class="link-page" href="{{ get_url(path='tags', lang=lang) }}">{{ trans(key="see_all_tags", lang=lang) }}</a> <a href="{{ get_url(path='tags', lang=lang) }}">{{ trans(key="see_all_tags", lang=lang) }}</a>
<br /> <br />
{{ term.pages | length }} {{ trans(key="posts_in_total", lang=lang) }} {{ term.pages | length }} {{ trans(key="posts_in_total", lang=lang) }}
</small> </small>
<article>
<div id="article-list">
{% for page in term.pages %} {% for page in term.pages %}
<h3><a class="link-page" href="{{ page.permalink | safe }}">{{ page.title }}</a></h3> <article {% if page.draft %}class="draft"{% endif %}>
{%- if page.description %} <h3><a href="{{ page.permalink | safe }}">{{ page.title }}</a></h3>
<p>{{ page.description }}</p> {%- if page.draft %}
{%- endif %} <span class="draft-badge">
<small> <i class="icon"></i>
<time datetime='{{ page.date | date(format=' %+') }}' pubdate>{{- page.date | date(format=config.extra.date_format) -}}</time> {{ trans(key="drafted", lang=lang) }}
{%- if page.taxonomies %} </span>
{%- for name, taxon in page.taxonomies %}
<span></span>
<ul class="tags">
{%-for item in taxon %}
<li><a class="tag" href="{{ get_taxonomy_url(kind=name, name=item, lang=lang) }}">{{ item }}</a></li>
{%- endfor %}
</ul>
{%- endfor %}
{%- endif %} {%- endif %}
</small> {%- if page.extra.archive %}
<span class="archive-badge">
<i class="icon"></i>
{{ trans(key="archived", lang=lang) }}
</span>
{%- endif %}
{%- if page.description %}
{{ page.description | markdown | safe }}
{%- endif %}
{%- if page.date %}
<small>
<time datetime="{{ page.date | date(format='%+') }}" pubdate>
{{- page.date | date(format=config.extra.date_format) -}}
</time>
{%- if page.authors %}
<span></span>
<span>{{ trans(key="author", lang=lang) }}: {{ page.authors[0] }}</span>
{%- endif %}
{%- if page.taxonomies %}
{%- for name, taxon in page.taxonomies %}
<span></span>
<ul class="tags">
{%-for item in taxon %}
<li><a class="tag" href="{{ get_taxonomy_url(kind=name, name=item, lang=lang) }}">{{ item }}</a></li>
{%- endfor %}
</ul>
{%- endfor %}
{%- endif %}
</small>
{%- endif %}
</article>
<hr>
{% endfor %} {% endfor %}
</article> </div>
{% endblock content %} {% endblock content %}