add support for tags
This commit is contained in:
parent
16d17f7ed7
commit
f653ed944f
6 changed files with 47 additions and 1 deletions
|
|
@ -33,3 +33,4 @@
|
|||
#let summary-card-details = html.elem.with("summary-card-details")
|
||||
|
||||
#let summary-card-list = html.elem.with("summary-card-list")
|
||||
#let tag-box = html.elem.with("tag-box")
|
||||
|
|
|
|||
|
|
@ -17,6 +17,8 @@
|
|||
description: none,
|
||||
/// Author of the site for metadata, default to document.author
|
||||
author: none,
|
||||
/// Tags describing the content of the page
|
||||
tags: (),
|
||||
/// Additional stylesheet for the page: must be a list of url
|
||||
stylesheets: (),
|
||||
/// List of related sites for metadata
|
||||
|
|
@ -38,6 +40,11 @@
|
|||
// Only set the Referer header for out request to the same origin
|
||||
html.meta(name: "referrer", content: "same-origin")
|
||||
|
||||
// Tags
|
||||
if tags.len() != 0 {
|
||||
html.meta(name: "keywords", content: tags.join(", "))
|
||||
}
|
||||
|
||||
if icon != none {
|
||||
html.link(rel: "icon", type: "image/png", href: icon)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,8 @@
|
|||
description: none,
|
||||
/// Author of the site for metadata, default to document.author
|
||||
author: none,
|
||||
/// Tags describing the content of the page
|
||||
tags: (),
|
||||
/// Additional stylesheet for the page: must be a list of url
|
||||
stylesheets: (),
|
||||
/// List of related sites for metadata
|
||||
|
|
@ -53,6 +55,7 @@
|
|||
site-name: site-name,
|
||||
description: description,
|
||||
author: author,
|
||||
tags: tags,
|
||||
stylesheets: stylesheets,
|
||||
me-links: me-links
|
||||
)
|
||||
|
|
|
|||
|
|
@ -51,6 +51,30 @@
|
|||
margin-top: auto;
|
||||
padding-top: 1em;
|
||||
}
|
||||
|
||||
tag-box {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-top: 0.3em;
|
||||
|
||||
.tag {
|
||||
max-width: ;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display:inline-block;
|
||||
white-space: nowrap;
|
||||
|
||||
background-color: var(--color-bg-highlight);
|
||||
margin: 0.1em;
|
||||
padding-top: 0.1em;
|
||||
padding-bottom: 0.1em;
|
||||
padding-left: 0.4em;
|
||||
padding-right: 0.4em;
|
||||
border-radius: 1em;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -68,6 +92,7 @@
|
|||
html.a(href: summ.template-args.url, summ.document-args.description)
|
||||
|
||||
chtml.summary-card-details(summ.document-args.date.display())
|
||||
chtml.tag-box(for tag in summ.template-args.tags { html.span(class: ("tag",), "#" + tag) })
|
||||
})
|
||||
})
|
||||
}
|
||||
|
|
@ -92,6 +117,8 @@
|
|||
description: none,
|
||||
/// The date of publication (or maybe update?) of the page.
|
||||
date: none,
|
||||
/// Tags associated to the content of the page
|
||||
tags: (),
|
||||
) = {
|
||||
assert(type(url) == str, message: "summary() must have an url")
|
||||
assert(type(title) == str or type(title) == content, message: "summary() must have title")
|
||||
|
|
@ -109,6 +136,7 @@
|
|||
),
|
||||
template-args: (
|
||||
url: url,
|
||||
tags: tags,
|
||||
),
|
||||
preview-image: preview-image,
|
||||
img-copyright: img-copyright,
|
||||
|
|
|
|||
|
|
@ -14,7 +14,8 @@
|
|||
--color-button-shadow: light-dark(#888, #000);
|
||||
--color-button-focus: light-dark(#000, #FFF);
|
||||
|
||||
--color-code-bg: light-dark(rgba(0, 0, 0, 0.05), rgba(255, 255, 255, 0.05));
|
||||
--color-bg-highlight: light-dark(rgba(0, 0, 0, 0.05), rgba(255, 255, 255, 0.05));
|
||||
--color-code-bg: var(--color-bg-highlight);
|
||||
|
||||
--color-bg-overlay: light-dark(rgba(255, 255, 255, 0.9), rgba(0, 0, 0, 0.9));
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue