mirror of
https://github.com/imfing/hextra.git
synced 2025-07-07 14:57:30 -04:00
Compare commits
8 Commits
v0.8.4
...
e6a983e5f0
Author | SHA1 | Date | |
---|---|---|---|
e6a983e5f0 | |||
97ea67198b | |||
94624bcac6 | |||
f1f84b1bf9 | |||
d367a443f1 | |||
27a70e4c12 | |||
aeb0cad979 | |||
fd38dd116f |
@ -1,4 +1,9 @@
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
scrollToActiveItem();
|
||||
enableCollapsibles();
|
||||
});
|
||||
|
||||
function enableCollapsibles() {
|
||||
const buttons = document.querySelectorAll(".hextra-sidebar-collapsible-button");
|
||||
buttons.forEach(function (button) {
|
||||
button.addEventListener("click", function (e) {
|
||||
@ -9,4 +14,23 @@ document.addEventListener("DOMContentLoaded", function () {
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function scrollToActiveItem() {
|
||||
const sidebarScrollbar = document.querySelector("aside.sidebar-container > .hextra-scrollbar");
|
||||
const activeItems = document.querySelectorAll(".sidebar-active-item");
|
||||
const visibleActiveItem = Array.from(activeItems).find(function (activeItem) {
|
||||
return activeItem.getBoundingClientRect().height > 0;
|
||||
});
|
||||
|
||||
if (!visibleActiveItem) {
|
||||
return;
|
||||
}
|
||||
|
||||
const yOffset = visibleActiveItem.clientHeight;
|
||||
const yDistance = visibleActiveItem.getBoundingClientRect().top - sidebarScrollbar.getBoundingClientRect().top;
|
||||
sidebarScrollbar.scrollTo({
|
||||
behavior: "instant",
|
||||
top: yDistance - yOffset
|
||||
});
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ Documentation > Guide > Foo Bar
|
||||
|
||||
### Hiding Breadcrumbs
|
||||
|
||||
You can hide breadcrumbs completely from a page by specfying `breadcrumbs: false` in its front matter:
|
||||
You can hide breadcrumbs completely from a page by specifying `breadcrumbs: false` in its front matter:
|
||||
|
||||
```yaml {filename="content/docs/guide/organize-files.md"}
|
||||
---
|
||||
|
@ -87,3 +87,30 @@ Card supports adding tags which could be useful to show extra status information
|
||||
{{</* card link="../callout" title="Card with yellow tag" tag="tag text" tagType="warning" */>}}
|
||||
{{</* /cards */>}}
|
||||
```
|
||||
|
||||
## Columns
|
||||
|
||||
You can specify the maximum number of columns for cards to span by passing the `cols` parameter to the `cards` shortcode. Note that columns will still be collapsed on smaller screens.
|
||||
|
||||
{{< cards cols="1" >}}
|
||||
{{< card link="/" title="Top Card" >}}
|
||||
{{< card link="/" title="Bottom Card" >}}
|
||||
{{< /cards >}}
|
||||
|
||||
{{< cards cols="2" >}}
|
||||
{{< card link="/" title="Left Card" >}}
|
||||
{{< card link="/" title="Right Card" >}}
|
||||
{{< /cards >}}
|
||||
|
||||
```
|
||||
{{</* cards cols="1" */>}}
|
||||
{{</* card link="/" title="Top Card" */>}}
|
||||
{{</* card link="/" title="Bottom Card" */>}}
|
||||
{{</* /cards */>}}
|
||||
|
||||
{{</* cards cols="2" */>}}
|
||||
{{</* card link="/" title="Left Card" */>}}
|
||||
{{</* card link="/" title="Right Card" */>}}
|
||||
{{</* /cards */>}}
|
||||
```
|
||||
|
||||
|
@ -13,6 +13,13 @@ Open source projects powered by Hextra
|
||||
|
||||
{{< cards >}}
|
||||
|
||||
{{< card
|
||||
link="https://github.com/welding-torch/installc"
|
||||
title="Install C"
|
||||
image="https://github.com/user-attachments/assets/c9a85327-c7e7-40f1-830a-b4190a5e47bd"
|
||||
imageStyle="object-fit:cover; aspect-ratio:16/9;"
|
||||
>}}
|
||||
|
||||
{{< card
|
||||
link="https://github.com/axivo/website"
|
||||
title="AXIVO Docs"
|
||||
|
@ -1,4 +1,26 @@
|
||||
{{- $lang := site.Language.LanguageCode | default `en` -}}
|
||||
{{ $default_chinese := "zh-CN" }}
|
||||
|
||||
{{ $sl := site.Language }}
|
||||
{{ $giscus_lang := $sl.Lang | default `en` }}
|
||||
|
||||
{{/*
|
||||
Special case for Chinese.
|
||||
Giscus uses the geophraphical language code for these.
|
||||
See: https://github.com/giscus/giscus/tree/main/locales
|
||||
*/}}
|
||||
{{ if eq $giscus_lang "zh" }}
|
||||
{{/* Create a code formatted for Giscus: zh-CN or zn-TW. */}}
|
||||
{{ $code := lower $sl.LanguageCode }}
|
||||
|
||||
{{ if (hasSuffix $code "-cn") }}
|
||||
{{ $giscus_lang = "zh-CN" }}
|
||||
{{ else if (hasSuffix $code "-tw") }}
|
||||
{{ $giscus_lang = "zh-TW" }}
|
||||
{{ else }}
|
||||
{{ $giscus_lang = $default_chinese }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
{{- with site.Params.comments.giscus -}}
|
||||
<script>
|
||||
@ -38,7 +60,7 @@
|
||||
"data-emit-metadata": "{{ (string .emitMetadata) | default 0 }}",
|
||||
"data-input-position": "{{ .inputPosition | default `top` }}",
|
||||
"data-theme": getGiscusTheme(),
|
||||
"data-lang": "{{ .lang | default $lang }}",
|
||||
"data-lang": "{{ .lang | default $giscus_lang }}",
|
||||
"crossorigin": "anonymous",
|
||||
"async": "",
|
||||
};
|
||||
|
@ -5,7 +5,7 @@ Renders the page using the RenderShortcode method on the Page object.
|
||||
|
||||
You must call this shortcode using the {{% %}} notation.
|
||||
|
||||
@param {string} (postional parameter 0) The path to the page, relative to the content directory.
|
||||
@param {string} (positional parameter 0) The path to the page, relative to the content directory.
|
||||
@returns template.HTML
|
||||
|
||||
@example {{% include "functions/_common/glob-patterns" %}}
|
||||
|
Reference in New Issue
Block a user