mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-07 10:04:22 +00:00
Compare commits
251 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
75644ae046 | ||
![]() |
994ffe5ab5 | ||
![]() |
1dc016a6f8 | ||
![]() |
44e3b31c67 | ||
![]() |
0197b79427 | ||
![]() |
828e531b52 | ||
![]() |
23279d9710 | ||
![]() |
0caf473897 | ||
![]() |
8e68534b28 | ||
![]() |
0f07ccfd3f | ||
![]() |
77fad02da7 | ||
![]() |
7a9cb1b2ca | ||
![]() |
d82ed79989 | ||
![]() |
ff82ded064 | ||
![]() |
78167f2d03 | ||
![]() |
80f2084822 | ||
![]() |
a7d67e993f | ||
![]() |
317eab54f8 | ||
![]() |
cb90ef363b | ||
![]() |
f31309f863 | ||
![]() |
a76a692075 | ||
![]() |
f52f758962 | ||
![]() |
bcc3a7877e | ||
![]() |
7b52da5ce0 | ||
![]() |
e7403bd1a4 | ||
![]() |
2881eb4546 | ||
![]() |
c7cc2269ba | ||
![]() |
014158bc63 | ||
![]() |
8dcccb17ad | ||
![]() |
325a222386 | ||
![]() |
9b4f4229f7 | ||
![]() |
3b719bf145 | ||
![]() |
136d5d2e15 | ||
![]() |
1c10a00089 | ||
![]() |
a8d9401de3 | ||
![]() |
e77fa7dfbc | ||
![]() |
8d3c0cc4ce | ||
![]() |
87e04c8c4b | ||
![]() |
e1f4228c31 | ||
![]() |
4cb4bef579 | ||
![]() |
744a0f7248 | ||
![]() |
a1e48ade96 | ||
![]() |
9a2540cf04 | ||
![]() |
399f525a3f | ||
![]() |
f1c99b0ed7 | ||
![]() |
6e14e50dfd | ||
![]() |
a143f90a37 | ||
![]() |
e60b2ec4a1 | ||
![]() |
0250ef68dd | ||
![]() |
71c9c19480 | ||
![]() |
fe108c2621 | ||
![]() |
aa76036470 | ||
![]() |
1475782fa6 | ||
![]() |
aa201d561d | ||
![]() |
35a8776bae | ||
![]() |
1f000d4b23 | ||
![]() |
fa268f4541 | ||
![]() |
f9c8c85578 | ||
![]() |
f7274cd43d | ||
![]() |
b122c40148 | ||
![]() |
05fa3b795c | ||
![]() |
5f329f9271 | ||
![]() |
22f9b9ee68 | ||
![]() |
3713f73da6 | ||
![]() |
efa4933c77 | ||
![]() |
fc9be4cdcf | ||
![]() |
9060fe20fe | ||
![]() |
b4d60df133 | ||
![]() |
09d7904654 | ||
![]() |
a7d35b7b06 | ||
![]() |
f22cffcfc4 | ||
![]() |
b6ae910514 | ||
![]() |
4486dcc814 | ||
![]() |
1452109194 | ||
![]() |
512f39ed8a | ||
![]() |
39c6f922fe | ||
![]() |
e8ccd62987 | ||
![]() |
210237c42f | ||
![]() |
daa2295cea | ||
![]() |
e6d5c16f12 | ||
![]() |
e0dea81ef5 | ||
![]() |
2889f8e8b1 | ||
![]() |
ac6d3504be | ||
![]() |
fdaf7de75e | ||
![]() |
185b8b5f40 | ||
![]() |
603590e95b | ||
![]() |
9cf7825384 | ||
![]() |
d50814ab08 | ||
![]() |
97d77d0dfc | ||
![]() |
4ec4cf28de | ||
![]() |
89f869a55e | ||
![]() |
aaecdb93f8 | ||
![]() |
24ce0ed262 | ||
![]() |
70e2532434 | ||
![]() |
828e0266fc | ||
![]() |
21d7117ca1 | ||
![]() |
13d4be8086 | ||
![]() |
862f0bb95b | ||
![]() |
2d7e32369c | ||
![]() |
ac37e4269c | ||
![]() |
5287ab023a | ||
![]() |
92d1b20678 | ||
![]() |
7b08b0b0ac | ||
![]() |
7047b9c5f5 | ||
![]() |
6c9cb40f1e | ||
![]() |
74901ecbf5 | ||
![]() |
598018feb7 | ||
![]() |
ca6a2bed82 | ||
![]() |
41cabcffd0 | ||
![]() |
3424565e95 | ||
![]() |
7b037bae46 | ||
![]() |
6d257e1aca | ||
![]() |
a3c288fb1d | ||
![]() |
3d33aa41da | ||
![]() |
4ba0104dc8 | ||
![]() |
3ab1d6b123 | ||
![]() |
5cca744f10 | ||
![]() |
c56d35b153 | ||
![]() |
b9df91cad8 | ||
![]() |
d05204a61b | ||
![]() |
c5376ea8c6 | ||
![]() |
ccfb4a8f82 | ||
![]() |
b99a9168bd | ||
![]() |
26fe455cc3 | ||
![]() |
eb66a24177 | ||
![]() |
5610ed67e5 | ||
![]() |
73f14989d8 | ||
![]() |
dc4ca0e862 | ||
![]() |
40b47bc782 | ||
![]() |
1a1c998f3f | ||
![]() |
f5c44ab79f | ||
![]() |
3da6951801 | ||
![]() |
f80241548a | ||
![]() |
65793ef70e | ||
![]() |
754da19c7c | ||
![]() |
73dc16f469 | ||
![]() |
91be9969e4 | ||
![]() |
792d7417b5 | ||
![]() |
ee0a50c4c2 | ||
![]() |
13554854d9 | ||
![]() |
1bdfc42d9e | ||
![]() |
f0ddacabe9 | ||
![]() |
de76908ad9 | ||
![]() |
8f2b4d7a36 | ||
![]() |
1e137fa213 | ||
![]() |
3035caddce | ||
![]() |
a2fc2ddb4c | ||
![]() |
838e73c380 | ||
![]() |
d57a646a27 | ||
![]() |
e27d760123 | ||
![]() |
f74cd1a1e6 | ||
![]() |
c226700c6d | ||
![]() |
c3ca11b05d | ||
![]() |
164d86e5b0 | ||
![]() |
61e692f5ac | ||
![]() |
47d68f7710 | ||
![]() |
6dd6f3bc45 | ||
![]() |
b229d70fab | ||
![]() |
c4d8eb5eea | ||
![]() |
ac6ebc6b57 | ||
![]() |
2a2d564a13 | ||
![]() |
a29c903a95 | ||
![]() |
7b54eb5cdf | ||
![]() |
7e6d2b40a3 | ||
![]() |
b0f0418207 | ||
![]() |
98d7611236 | ||
![]() |
2119b05429 | ||
![]() |
dd15e0eb37 | ||
![]() |
9e1f79a3b5 | ||
![]() |
65be02a837 | ||
![]() |
2a3cab631d | ||
![]() |
e6605764bc | ||
![]() |
9fbccab1b5 | ||
![]() |
6f6908f30b | ||
![]() |
1cf5fad731 | ||
![]() |
75dc930abb | ||
![]() |
8d0adf5a28 | ||
![]() |
7a981950f5 | ||
![]() |
da1c738671 | ||
![]() |
8fbdd27e1c | ||
![]() |
631cd979b0 | ||
![]() |
de9c00a6ec | ||
![]() |
4de1b7dce7 | ||
![]() |
e0f464dc7d | ||
![]() |
5b91945824 | ||
![]() |
e7bdd81136 | ||
![]() |
dbd1b731bc | ||
![]() |
097f041765 | ||
![]() |
f283e329a7 | ||
![]() |
ffbc775446 | ||
![]() |
fedb652e1e | ||
![]() |
503a7f7410 | ||
![]() |
a693508e24 | ||
![]() |
3ba3f13005 | ||
![]() |
66f5904893 | ||
![]() |
27848998d5 | ||
![]() |
e2e9bb421f | ||
![]() |
5e32ac2a04 | ||
![]() |
efbaa6ce4f | ||
![]() |
60821fc0c3 | ||
![]() |
e25edd77b0 | ||
![]() |
2ac190723e | ||
![]() |
775a4a4b2a | ||
![]() |
84d6758b7a | ||
![]() |
1031fbd660 | ||
![]() |
80d43bed2d | ||
![]() |
094ba86f47 | ||
![]() |
244911614d | ||
![]() |
f9eedc7835 | ||
![]() |
cbfb33faf0 | ||
![]() |
2d9e89d40a | ||
![]() |
266b3978fc | ||
![]() |
d2bfd1c48f | ||
![]() |
633da32df5 | ||
![]() |
ea2c28f3fd | ||
![]() |
f66b519f51 | ||
![]() |
6bfb558f73 | ||
![]() |
f0a894091c | ||
![]() |
3bc14eb232 | ||
![]() |
e428666750 | ||
![]() |
2301ea8df6 | ||
![]() |
e9434b327a | ||
![]() |
3b1d5d838e | ||
![]() |
4e5ea23b66 | ||
![]() |
3ad19673a4 | ||
![]() |
bb58394a43 | ||
![]() |
f574888563 | ||
![]() |
7339c262b5 | ||
![]() |
51f9d204b9 | ||
![]() |
3d082a51a3 | ||
![]() |
db6b6238c5 | ||
![]() |
6011e5637a | ||
![]() |
855bf85be6 | ||
![]() |
ec37884f7a | ||
![]() |
057720bca8 | ||
![]() |
e3d607bd25 | ||
![]() |
a9e3a5ecbb | ||
![]() |
f9a3edbf30 | ||
![]() |
c199aa0902 | ||
![]() |
dfafdbb8af | ||
![]() |
c4d8507638 | ||
![]() |
44d5cfa4de | ||
![]() |
5aa3cfb80f | ||
![]() |
22b83dbcf9 | ||
![]() |
0a88ae04b9 | ||
![]() |
bf068977a6 | ||
![]() |
5dfc99efa0 | ||
![]() |
84f09f0dcb | ||
![]() |
65d9635f61 | ||
![]() |
452bd92029 | ||
![]() |
87fc26e289 |
1
.github/dependabot.yml
vendored
1
.github/dependabot.yml
vendored
@@ -7,3 +7,4 @@ updates:
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
versioning-strategy: increase
|
||||
|
72
.github/workflows/build.yml
vendored
72
.github/workflows/build.yml
vendored
@@ -1,5 +1,6 @@
|
||||
name: build
|
||||
name: Lint & build
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
tags:
|
||||
- v*
|
||||
@@ -7,22 +8,75 @@ on:
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
|
||||
env:
|
||||
CACHE_KEY: 'hugo-hinode'
|
||||
CACHE_PATH_POSIX: '/tmp/hugo_cache_runner'
|
||||
CACHE_PATH_WIN: '~\AppData\Local\hugo_cache'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
lint:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macos-latest, windows-latest, ubuntu-latest]
|
||||
node-version: [16.x, 18.x, 20.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
os: [ubuntu-latest]
|
||||
node-version: [20.x]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
- run: npm ci
|
||||
- run: npm run build
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Perform clean install of npm
|
||||
run: npm ci
|
||||
|
||||
- name: Lint the source files
|
||||
run: npm run lint
|
||||
|
||||
build:
|
||||
needs: lint
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macos-latest, windows-latest, ubuntu-latest]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
node-version: [16.x, 18.x, 20.x]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Perform clean install of npm
|
||||
run: npm ci
|
||||
|
||||
# Cache Hugo cachedir and resourcedir (configured in config/ci/hugo.toml) for each OS
|
||||
# No additional cache invalidation is needed, Hugo uses checksums itself
|
||||
- name: Use Hugo cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ${{ runner.os == 'Windows' && env.CACHE_PATH_WIN || env.CACHE_PATH_POSIX }}
|
||||
key: ${{ runner.os }}-${{ env.CACHE_KEY }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ env.CACHE_KEY }}
|
||||
|
||||
- name: Build main site
|
||||
run: npm run build:cache
|
||||
|
||||
# The example site is to be published to demo.gethinode.com
|
||||
- name: Build example site
|
||||
run: npm run build:example:ci
|
||||
|
28
.github/workflows/lint.yml
vendored
28
.github/workflows/lint.yml
vendored
@@ -1,28 +0,0 @@
|
||||
name: lint
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- v*
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [16.x, 18.x, 20.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
- run: npm ci --ignore-scripts
|
||||
- run: npm run lint
|
53
.github/workflows/npm-publish.yml
vendored
53
.github/workflows/npm-publish.yml
vendored
@@ -1,35 +1,40 @@
|
||||
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
|
||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
|
||||
|
||||
name: Node.js Package
|
||||
# This workflow will run tests using node and then publish a package to npmjs.org when a release is created
|
||||
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
|
||||
name: Publish package to npmjs
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
branches: [ main ]
|
||||
release:
|
||||
types: [created]
|
||||
types: [published]
|
||||
|
||||
env:
|
||||
REGISTRY_URL: 'https://registry.npmjs.org/'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
- run: npm ci
|
||||
- run: npm test
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node-version: [20.x]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
publish-npm:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup .npmrc file to publish to npm
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
registry-url: https://registry.npmjs.org/
|
||||
- run: npm ci
|
||||
- run: npm publish
|
||||
node-version: ${{ matrix.node-version }}
|
||||
registry-url: ${{ env.REGISTRY_URL }}
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Perform clean install of npm
|
||||
run: npm ci
|
||||
|
||||
- name: Publish package to npm
|
||||
run: npm publish
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
|
5
.gitignore
vendored
5
.gitignore
vendored
@@ -1,8 +1,7 @@
|
||||
/_vendor
|
||||
/public
|
||||
public/
|
||||
resources/
|
||||
node_modules/
|
||||
|
||||
.DS_store
|
||||
.hugo_build.lock
|
||||
hugo_stats.json
|
||||
.hugo_build.lock
|
@@ -1,7 +1,6 @@
|
||||
assets/scss/common/_variables.scss
|
||||
assets/scss/components/_syntax-dark.scss
|
||||
assets/scss/components/_syntax-light.scss
|
||||
assets/scss/hotfix
|
||||
assets/scss/vendor
|
||||
assets/scss/theme/fonts.scss
|
||||
assets/scss/app.scss
|
||||
|
49
README.md
49
README.md
@@ -56,54 +56,42 @@
|
||||
- [PageSpeed Insights][pagespeed]
|
||||
- [Mozilla Observatory][observatory]
|
||||
|
||||
Hinode is a clean documentation and blog theme for [Hugo][hugo], an open-source static site generator. Based on the [Bootstrap 5][bootstrap] framework, the rendered site is fast, secure, and responsive. Hinode uses [FlexSearch][flexsearch] to enable full text search across your site. Finally, the theme supports [Node Package Manager][npm] to automate the build process and to keep track of dependencies.
|
||||
|
||||
Additional features include:
|
||||
|
||||
- Flexible configuration of Hugo modules
|
||||
- Switching between light mode and dark mode
|
||||
- Support for multiple languages
|
||||
- Reusable Bootstrap components through configurable shortcodes and partials
|
||||
- Embedded comments through light-weight integration with GitHub via [utteranc.es][utterances]
|
||||
- Integrated sidebar navigation for content-heavy sections, such as documentation pages
|
||||
- Reponsive image handling for multiple screen sizes and resolutions
|
||||
- Optimized search results, scoring 100 points for SEO on [PageSpeed Insights][pagespeed]
|
||||
- Secure by default, scoring A+ on [Mozilla Observatory test][observatory]
|
||||
Hinode is a clean documentation and blog theme for [Hugo][hugo], an open-source static site generator. Based on the [Bootstrap 5][bootstrap] framework, the rendered site is fast, secure, and responsive. Hinode uses [FlexSearch][flexsearch] to enable full text search across your site. Finally, the theme supports [Node Package Manager][npm] (npm) to automate the build process and to keep track of dependencies.
|
||||
|
||||
Detailed information about Hinode is available on the [official website][website].
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Hinode requires Git, Node.js and npm for local development and testing. Download the Git binary from the [official website][git_download]. Next, download and install [Node.js][nodejs] (it includes npm) for your platform.
|
||||
Hinode is a [Hugo theme that uses modules][hugo_modules] to install and maintain various components. It can be installed using either Hugo or npm. If you would like to take advantage of automation, the npm approach is recommended. Refer to the [Hinode template][repository_template] for installation instructions with npm.
|
||||
|
||||
The installation instructions in this readme install Hinode as a regular Hugo theme. Hinode requires the following software to be installed on your local machine.
|
||||
|
||||
- [Go binary][golang_download]
|
||||
- [Hugo][nodejs] (extended version)
|
||||
|
||||
[Git][git_download] is recommended, but is not a strict requirement.
|
||||
|
||||
## Installation
|
||||
|
||||
Start a new Hinode project in three steps:
|
||||
|
||||
1. Create a new site
|
||||
|
||||
Hinode is available as a [template][repository_template], and a [main repository][repository]. The template [npm][npm] to link to the latest available version of Hinode. Unless you plan to customize a lot, it is recommended to use the template:
|
||||
1. **Create a new site**
|
||||
|
||||
```bash
|
||||
git clone https://github.com/gethinode/template.git my-hinode-site && cd my-hinode-site
|
||||
hugo new site my-hinode-site && cd my-hinode-site
|
||||
```
|
||||
|
||||
Use the main theme if you intend to customize the base code:
|
||||
1. **Initialize the module system**
|
||||
|
||||
```bash
|
||||
git clone https://github.com/gethinode/hinode.git my-hinode-site && cd my-hinode-site
|
||||
hugo mod init example.com/my-hinode-site
|
||||
echo "[[module.imports]]\npath = 'github.com/gethinode/hinode'" >> hugo.toml
|
||||
```
|
||||
|
||||
1. Install dependencies
|
||||
1. **Start a development server**
|
||||
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
1. Start development server
|
||||
|
||||
```bash
|
||||
npm run start
|
||||
hugo server
|
||||
```
|
||||
|
||||
## Configuration
|
||||
@@ -127,7 +115,7 @@ Hinode is inspired by the following themes:
|
||||
|
||||
## License
|
||||
|
||||
The `hinode` and `template` codebase is released under the [MIT license][license]. The documentation (including the "README" and `docs` codebase) is licensed under the Creative Commons [(CC BY-NC 4.0)][cc-by-nc-4.0] license.
|
||||
The `hinode`, `docs`, and `template` codebase is released under the [MIT license][license]. The documentation of Hinode is licensed under the Creative Commons [(CC BY-NC 4.0)][cc-by-nc-4.0] license. This includes all files within the repository's `/content` and `/exampleSite/content` folders and their children, as well as the "README" in the repository root. This applies to all public repositories maintained by `gethinode` on GitHub, including the `gethinode/hinode`, `gethinode/template`, and `gethinode/docs` repositories, unless specified otherwise.
|
||||
|
||||
<!-- MARKDOWN PUBLIC LINKS -->
|
||||
[blist]: https://github.com/apvarun/blist-hugo-theme
|
||||
@@ -137,6 +125,8 @@ The `hinode` and `template` codebase is released under the [MIT license][license
|
||||
[flexsearch]: https://github.com/nextapps-de/flexsearch
|
||||
[git_download]: https://git-scm.com
|
||||
[hugo]: https://gohugo.io
|
||||
[hugo_download]: https://gohugo.io/installation
|
||||
[hugo_modules]: https://gohugo.io/hugo-modules/
|
||||
[netlify]: https://www.netlify.com
|
||||
[nodejs]: https://nodejs.org
|
||||
[npm]: https://www.npmjs.com
|
||||
@@ -147,6 +137,7 @@ The `hinode` and `template` codebase is released under the [MIT license][license
|
||||
<!-- MARKDOWN MAINTAINED LINKS -->
|
||||
[contribute]: https://gethinode.com/contribute
|
||||
[getstarted]: https://gethinode.com/docs
|
||||
[golang_download]: https://go.dev/dl/
|
||||
[demo]: https://demo.gethinode.com/
|
||||
[license]: https://github.com/gethinode/hinode/blob/main/LICENSE
|
||||
[repository]: https://github.com/gethinode/hinode.git
|
||||
|
@@ -1,2 +1,16 @@
|
||||
+++
|
||||
+++
|
||||
---
|
||||
# author:
|
||||
title: {{ replace .Name "-" " " | title }}
|
||||
date: {{ .Date }}
|
||||
draft: true
|
||||
# layout:
|
||||
# description:
|
||||
# tags:
|
||||
# icon:
|
||||
# thumbnail:
|
||||
# url:
|
||||
# author:
|
||||
# authorURL:
|
||||
# origin:
|
||||
# originURL:
|
||||
---
|
||||
|
@@ -15,6 +15,7 @@ const addCopyButtons = (clipboard) => {
|
||||
const button = document.createElement('button')
|
||||
button.className = 'clipboard-button'
|
||||
button.setAttribute('data-toast-target', 'toast-copied-code-message')
|
||||
button.setAttribute('aria-label', '{{ T "copyToClipboard" }}')
|
||||
button.type = 'button'
|
||||
button.innerHTML = svgCopy
|
||||
button.addEventListener('click', () => {
|
||||
|
@@ -40,8 +40,7 @@
|
||||
})
|
||||
|
||||
for (let i = 0; i < activeSelectors.length; ++i) {
|
||||
activeSelectors[i].className = activeIcon.className
|
||||
activeSelectors[i].className = activeSelectors[i].className.replace('theme-icon', 'theme-icon-active')
|
||||
activeSelectors[i].innerHTML = activeIcon.innerHTML
|
||||
}
|
||||
|
||||
for (let i = 0; i < activeButtons.length; ++i) {
|
||||
|
@@ -1,8 +1,8 @@
|
||||
const navbar = document.querySelector('.navbar')
|
||||
const toggler = document.getElementById('main-nav-toggler')
|
||||
const togglers = document.querySelectorAll('.main-nav-toggler')
|
||||
const modeSelectors = document.querySelectorAll('.switch-mode-collapsed')
|
||||
|
||||
if (navbar !== null && toggler !== null) {
|
||||
if (navbar !== null && togglers !== null) {
|
||||
// set the navbar background color to opaque when scrolling past a breakpoint
|
||||
window.onscroll = () => {
|
||||
if (window.scrollY > 75) {
|
||||
@@ -13,14 +13,21 @@ if (navbar !== null && toggler !== null) {
|
||||
}
|
||||
|
||||
// set the navbar background color to opaque when expanded
|
||||
toggler.onclick = () => {
|
||||
navbar.classList.toggle('navbar-expanded')
|
||||
for (let i = 0; i < togglers.length; ++i) {
|
||||
togglers[i].onclick = () => {
|
||||
navbar.classList.toggle('navbar-expanded')
|
||||
}
|
||||
}
|
||||
|
||||
// invoke the navbar toggler for each mode switcher to collapse the main menu afterwards
|
||||
for (let i = 0; i < modeSelectors.length; ++i) {
|
||||
modeSelectors[i].onclick = () => {
|
||||
toggler.click()
|
||||
for (let j = 0; j < togglers.length; ++j) {
|
||||
const toggler = togglers[j]
|
||||
if (toggler.getAttribute('aria-expanded') === 'true') {
|
||||
toggler.click()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -8,6 +8,9 @@
|
||||
// Import Bootstrap configuration (mounted by core Bootstrap module)
|
||||
@import "bootstrap.scss";
|
||||
|
||||
// Include dark mode overrides
|
||||
@import "common/variables-dark.scss";
|
||||
|
||||
// Import Hinode theme styles
|
||||
@import "components/alert.scss";
|
||||
@import "components/blockquote.scss";
|
||||
@@ -18,6 +21,8 @@
|
||||
@import "components/clipboard.scss";
|
||||
@import "components/command.scss";
|
||||
@import "components/comments.scss";
|
||||
@import "components/feature.scss";
|
||||
@import "components/footer.scss";
|
||||
@import "components/navbar.scss";
|
||||
@import "components/img.scss";
|
||||
@import "components/pagination.scss";
|
||||
|
@@ -23,19 +23,3 @@ $btn-toggle: url("/icons/btn-toggle.svg") !de
|
||||
$btn-toggle-dark: url("/icons/btn-toggle-dark.svg") !default;
|
||||
|
||||
// scss-docs-end icons
|
||||
|
||||
.fa-wrapper {
|
||||
container: wrapper / inline-size;
|
||||
}
|
||||
|
||||
// define fallback size for browsers not supporting containers
|
||||
.fa-fluid {
|
||||
font-size: 5rem;
|
||||
}
|
||||
|
||||
// set size based on container width
|
||||
@container (min-width: 0) {
|
||||
.fa-wrapper .fa-fluid {
|
||||
font-size: 60cqi;
|
||||
}
|
||||
}
|
||||
|
101
assets/scss/common/_variables-dark.scss
Normal file
101
assets/scss/common/_variables-dark.scss
Normal file
@@ -0,0 +1,101 @@
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
--bs-primary: #{$primary-text-emphasis-dark};
|
||||
--bs-secondary: #{$secondary-text-emphasis-dark};
|
||||
--bs-primary-dark: #{$primary-bg-subtle-dark};
|
||||
--bs-primary-bg-subtle: #{$primary-bg-subtle-dark};
|
||||
--bg-primary-subtle: rgba(var(--bs-primary-rgb), var(--bs-link-opacity, 0.1));
|
||||
|
||||
.bg-primary-subtle {
|
||||
background-color: var(--bg-primary-subtle) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.accordion-button {
|
||||
background-color: var(--bg-primary-subtle);
|
||||
}
|
||||
|
||||
.form-check-input:checked {
|
||||
background-color: var(--bs-primary);
|
||||
border-color: var(--bs-primary); }
|
||||
|
||||
.form-check-input[type="checkbox"]:indeterminate {
|
||||
background-color: var(--bs-primary);
|
||||
border-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.form-range::-webkit-slider-thumb {
|
||||
background-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.form-range::-moz-range-thumb {
|
||||
background-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.alert-primary {
|
||||
--bs-alert-bg: var(--bg-primary-subtle);
|
||||
}
|
||||
|
||||
.btn-outline-primary {
|
||||
--bs-btn-color: var(--bs-primary);
|
||||
--bs-btn-border-color: var(--bs-primary);
|
||||
--bs-btn-hover-bg: var(--bs-primary);
|
||||
--bs-btn-hover-border-color: var(--bs-primary);
|
||||
--bs-btn-active-bg: var(--bs-primary);
|
||||
--bs-btn-active-border-color: var(--bs-primary);
|
||||
--bs-btn-disabled-color: var(--bs-primary);
|
||||
--bs-btn-disabled-border-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.btn-outline-secondary {
|
||||
--bs-btn-color: var(--bs-secondary);
|
||||
--bs-btn-border-color: var(--bs-secondary);
|
||||
--bs-btn-hover-bg: var(--bs-secondary);
|
||||
--bs-btn-hover-border-color: var(--bs-secondary);
|
||||
--bs-btn-active-bg: var(--bs-secondary);
|
||||
--bs-btn-active-border-color: var(--bs-secondary);
|
||||
--bs-btn-disabled-color: var(--bs-secondary);
|
||||
--bs-btn-disabled-border-color: var(--bs-secondary);
|
||||
}
|
||||
|
||||
.link-primary {
|
||||
color: var(--bs-primary) if($enable-important-utilities, !important, null);
|
||||
text-decoration-color: var(--bs-primary) if($enable-important-utilities, !important, null);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: var(--bs-primary-dark) if($enable-important-utilities, !important, null);
|
||||
text-decoration-color: var(--bs-primary-dark) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
|
||||
.pagination {
|
||||
--bs-pagination-color: var(--bs-body-bg);
|
||||
--bs-pagination-bg: var(--bs-primary);
|
||||
}
|
||||
|
||||
.progress,
|
||||
.progress-stacked {
|
||||
--bs-progress-bar-bg: var(--bs-primary);
|
||||
}
|
||||
|
||||
.list-group {
|
||||
--bs-list-group-active-bg: var(--bs-primary);
|
||||
--bs-list-group-active-border-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.clipboard-button:hover {
|
||||
color: var(--bs-primary); }
|
||||
|
||||
.clipboard-button:hover > svg {
|
||||
fill: var(--bs-primary);
|
||||
}
|
||||
|
||||
.toggler-icon {
|
||||
background-color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.heading:hover .anchor {
|
||||
color: var(--bs-primary);
|
||||
}
|
||||
}
|
||||
}
|
@@ -2,9 +2,6 @@
|
||||
$enable-negative-margins: true;
|
||||
$enable-important-utilities: true !default;
|
||||
|
||||
// Font awesome variables overrides for theme
|
||||
$fa-font-path: "../fonts";
|
||||
|
||||
// Remove the border from the focused navigation toggler
|
||||
$navbar-toggler-focus-width: 0 !default;
|
||||
|
||||
@@ -28,3 +25,11 @@ $btn-toggle-color: $black !default;
|
||||
$carousel-dark-indicator-active-bg: #ffffff !default;
|
||||
$carousel-dark-caption-color: #ffffff !default;
|
||||
$carousel-dark-control-icon-filter: invert(0) grayscale(100) !default;
|
||||
|
||||
// scss-docs-start color-mode
|
||||
$primary-text-emphasis-dark: mix(white, $primary, $dark-mode-tint) !default;
|
||||
$secondary-text-emphasis-dark: mix(white, $secondary, $dark-mode-tint) !default;
|
||||
$link-color-dark: mix(white, $primary, $dark-mode-tint) !default;
|
||||
$primary-bg-subtle-dark: mix(black, $primary, $dark-mode-shade) !default;
|
||||
$primary-border-subtle-dark: mix(black, $primary, $dark-mode-shade / 2) !default;
|
||||
// scss-docs-end color-mode
|
@@ -1,3 +1,18 @@
|
||||
.alert-no-decoration {
|
||||
--bs-alert-border-radius: none;
|
||||
.alert code {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
/* stylelint-disable declaration-block-no-redundant-longhand-properties */
|
||||
.alert a {
|
||||
color: inherit;
|
||||
|
||||
&:link,
|
||||
&:visited,
|
||||
&:hover,
|
||||
&:active {
|
||||
text-decoration-line: underline;
|
||||
text-decoration-style: dotted;
|
||||
text-decoration-color: var(--bs-body);
|
||||
}
|
||||
}
|
||||
/* stylelint-enable declaration-block-no-redundant-longhand-properties */
|
||||
|
@@ -8,6 +8,8 @@
|
||||
}
|
||||
|
||||
.btn-social {
|
||||
background-color: transparent;
|
||||
|
||||
--bs-btn-bg: transparent;
|
||||
--bs-btn-border-width: none;
|
||||
--bs-btn-color: var(--bs-secondary);
|
||||
@@ -23,5 +25,6 @@
|
||||
.btn-social:active,
|
||||
.btn-social.active,
|
||||
.open > .dropdown-toggle.btn-primary {
|
||||
background-color: transparent;
|
||||
color: var(--bs-primary) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
@@ -64,6 +64,18 @@
|
||||
}
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.card-zoom card-body-link,
|
||||
.card-body-link {
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $primary-bg-subtle-dark if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// stylelint-enable annotation-no-unknown
|
||||
|
||||
// make tag-link clickable on top of the stretched-link.
|
||||
|
3
assets/scss/components/_feature.scss
Normal file
3
assets/scss/components/_feature.scss
Normal file
@@ -0,0 +1,3 @@
|
||||
.feature {
|
||||
margin-top: 0.3 * $navbar-offset;
|
||||
}
|
30
assets/scss/components/_footer.scss
Normal file
30
assets/scss/components/_footer.scss
Normal file
@@ -0,0 +1,30 @@
|
||||
.footer {
|
||||
// background-color: $gray-800 if($enable-important-utilities, !important, null);
|
||||
color: var(--bs-secondary) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.link-bg-footer {
|
||||
color: var(--bs-secondary) if($enable-important-utilities, !important, null);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: var(--bs-tertiary-color) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.footer {
|
||||
color: $gray-500 if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.link-bg-footer {
|
||||
color: $gray-500 if($enable-important-utilities, !important, null);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $gray-400 if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -11,6 +11,22 @@
|
||||
background-color: var(--bs-body-bg);
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
margin: 0 .15rem;
|
||||
}
|
||||
|
||||
.navbar-contrast .nav-link.active, .navbar-contrast .nav-link.show, .navbar-contrast .nav-link:hover {
|
||||
border-bottom: solid 1px var(--bs-navbar-hover-color);
|
||||
margin-bottom: -1px;
|
||||
}
|
||||
|
||||
.navbar-contrast {
|
||||
--bs-navbar-color: white !important;
|
||||
--bs-navbar-hover-color: white !important;
|
||||
--bs-navbar-disabled-color: white !important;
|
||||
--bs-navbar-active-color: white !important;
|
||||
}
|
||||
|
||||
.navbar-expanded {
|
||||
box-shadow: $box-shadow-sm;
|
||||
}
|
||||
@@ -36,7 +52,6 @@
|
||||
.toggler-icon {
|
||||
width: 30px;
|
||||
height: 3px;
|
||||
background-color: $primary;
|
||||
display: block;
|
||||
transition: all 0.2s;
|
||||
}
|
||||
@@ -85,15 +100,21 @@
|
||||
background-color: #777;
|
||||
}
|
||||
|
||||
.emphasis {
|
||||
.emphasis-light {
|
||||
background-color: $black if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.emphasis {
|
||||
background-color: $white if($enable-important-utilities, !important, null);
|
||||
}
|
||||
.emphasis-dark {
|
||||
background-color: $white if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.emphasis, {
|
||||
background-color: $black if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
@include color-mode(dark) {
|
||||
.emphasis {
|
||||
background-color: $white if($enable-important-utilities, !important, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,6 @@
|
||||
.pagination {
|
||||
--bs-pagination-bg: var(--bs-primary-bg-subtle);
|
||||
--bs-pagination-color: var(--bs-body-color);
|
||||
--bs-pagination-border-color: none;
|
||||
--bs-pagination-hover-color: var(--bs-pagination-active-color);
|
||||
--bs-pagination-hover-bg: var(--bs-pagination-active-bg);
|
||||
|
@@ -69,24 +69,25 @@
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.sidebar-item {
|
||||
color: var(--bs-tertiary-color);
|
||||
color: var(--bs-body-color);
|
||||
margin-left: 0 !important;
|
||||
padding-left: 0.85rem !important;
|
||||
|
||||
&.active,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: var(--bs-secondary-color);
|
||||
color: white !important;
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-toggle {
|
||||
color: var(--bs-tertiary-color);
|
||||
color: var(--bs-body-color);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $secondary;
|
||||
background-color: tint-color($primary, 90%);
|
||||
color: white !important;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
&::before {
|
||||
@@ -105,8 +106,8 @@
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $secondary;
|
||||
background-color: tint-color($primary, 90%);
|
||||
color: white !important;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
&.active {
|
||||
|
@@ -6,9 +6,9 @@
|
||||
/* LineLink */ .chroma .lnlinks { outline: none; text-decoration: none; color: inherit }
|
||||
/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; }
|
||||
/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; }
|
||||
/* LineHighlight */ .chroma .hl { background-color: #b8b800 }
|
||||
/* LineHighlight */ .chroma .hl { background-color: #373700 }
|
||||
/* LineNumbersTable */ .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #64686c }
|
||||
/* LineNumbers */ .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #6e7681 }
|
||||
/* LineNumbers */ .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #999fa8 }
|
||||
/* Line */ .chroma .line { display: flex; }
|
||||
/* Keyword */ .chroma .k { color: #ff7b72 }
|
||||
/* KeywordConstant */ .chroma .kc { color: #79c0ff }
|
||||
@@ -18,8 +18,8 @@
|
||||
/* KeywordReserved */ .chroma .kr { color: #ff7b72 }
|
||||
/* KeywordType */ .chroma .kt { color: #ff7b72 }
|
||||
/* Name */ .chroma .n { }
|
||||
/* NameAttribute */ .chroma .na { }
|
||||
/* NameBuiltin */ .chroma .nb { }
|
||||
/* NameAttribute */ .chroma .na { color: #00cccc }
|
||||
/* NameBuiltin */ .chroma .nb { color: #00a2d8 }
|
||||
/* NameBuiltinPseudo */ .chroma .bp { }
|
||||
/* NameClass */ .chroma .nc { color: #f0883e; font-weight: bold }
|
||||
/* NameConstant */ .chroma .no { color: #79c0ff; font-weight: bold }
|
||||
@@ -64,23 +64,23 @@
|
||||
/* Operator */ .chroma .o { color: #ff7b72; font-weight: bold }
|
||||
/* OperatorWord */ .chroma .ow { color: #ff7b72; font-weight: bold }
|
||||
/* Punctuation */ .chroma .p { }
|
||||
/* Comment */ .chroma .c { color: #8b949e; font-style: italic }
|
||||
/* CommentHashbang */ .chroma .ch { color: #8b949e; font-style: italic }
|
||||
/* CommentMultiline */ .chroma .cm { color: #8b949e; font-style: italic }
|
||||
/* CommentSingle */ .chroma .c1 { color: #8b949e; font-style: italic }
|
||||
/* CommentSpecial */ .chroma .cs { color: #8b949e; font-weight: bold; font-style: italic }
|
||||
/* CommentPreproc */ .chroma .cp { color: #8b949e; font-weight: bold; font-style: italic }
|
||||
/* CommentPreprocFile */ .chroma .cpf { color: #8b949e; font-weight: bold; font-style: italic }
|
||||
/* Comment */ .chroma .c { color: #979fa8; font-style: italic }
|
||||
/* CommentHashbang */ .chroma .ch { color: #979fa8; font-style: italic }
|
||||
/* CommentMultiline */ .chroma .cm { color: #979fa8; font-style: italic }
|
||||
/* CommentSingle */ .chroma .c1 { color: #979fa8; font-style: italic }
|
||||
/* CommentSpecial */ .chroma .cs { color: #979fa8; font-weight: bold; font-style: italic }
|
||||
/* CommentPreproc */ .chroma .cp { color: #979fa8; font-weight: bold; font-style: italic }
|
||||
/* CommentPreprocFile */ .chroma .cpf { color: #979fa8; font-weight: bold; font-style: italic }
|
||||
/* Generic */ .chroma .g { }
|
||||
/* GenericDeleted */ .chroma .gd { color: #ffa198; background-color: #490202 }
|
||||
/* GenericEmph */ .chroma .ge { font-style: italic }
|
||||
/* GenericError */ .chroma .gr { color: #ffa198 }
|
||||
/* GenericHeading */ .chroma .gh { color: #79c0ff; font-weight: bold }
|
||||
/* GenericInserted */ .chroma .gi { color: #56d364; background-color: #0f5323 }
|
||||
/* GenericOutput */ .chroma .go { color: #8b949e }
|
||||
/* GenericPrompt */ .chroma .gp { color: #8b949e }
|
||||
/* GenericOutput */ .chroma .go { color: #979fa8 }
|
||||
/* GenericPrompt */ .chroma .gp { color: #979fa8 }
|
||||
/* GenericStrong */ .chroma .gs { font-weight: bold }
|
||||
/* GenericSubheading */ .chroma .gu { color: #79c0ff }
|
||||
/* GenericTraceback */ .chroma .gt { color: #ff7b72 }
|
||||
/* GenericUnderline */ .chroma .gl { text-decoration: underline }
|
||||
/* TextWhitespace */ .chroma .w { color: #6e7681 }
|
||||
/* TextWhitespace */ .chroma .w { color: #999fa8 }
|
||||
|
@@ -19,7 +19,7 @@
|
||||
/* KeywordType */ .chroma .kt { color: #445588; font-weight: bold }
|
||||
/* Name */ .chroma .n { }
|
||||
/* NameAttribute */ .chroma .na { color: #008080 }
|
||||
/* NameBuiltin */ .chroma .nb { color: #0086b3 }
|
||||
/* NameBuiltin */ .chroma .nb { color: #006b8f }
|
||||
/* NameBuiltinPseudo */ .chroma .bp { color: #999999 }
|
||||
/* NameClass */ .chroma .nc { color: #445588; font-weight: bold }
|
||||
/* NameConstant */ .chroma .no { color: #008080 }
|
||||
@@ -54,20 +54,20 @@
|
||||
/* LiteralStringRegex */ .chroma .sr { color: #009926 }
|
||||
/* LiteralStringSingle */ .chroma .s1 { color: #dd1144 }
|
||||
/* LiteralStringSymbol */ .chroma .ss { color: #990073 }
|
||||
/* LiteralNumber */ .chroma .m { color: #009999 }
|
||||
/* LiteralNumberBin */ .chroma .mb { color: #009999 }
|
||||
/* LiteralNumberFloat */ .chroma .mf { color: #009999 }
|
||||
/* LiteralNumberHex */ .chroma .mh { color: #009999 }
|
||||
/* LiteralNumberInteger */ .chroma .mi { color: #009999 }
|
||||
/* LiteralNumberIntegerLong */ .chroma .il { color: #009999 }
|
||||
/* LiteralNumberOct */ .chroma .mo { color: #009999 }
|
||||
/* LiteralNumber */ .chroma .m { color: #007a7a }
|
||||
/* LiteralNumberBin */ .chroma .mb { color: #007a7a }
|
||||
/* LiteralNumberFloat */ .chroma .mf { color: #007a7a }
|
||||
/* LiteralNumberHex */ .chroma .mh { color: #007a7a }
|
||||
/* LiteralNumberInteger */ .chroma .mi { color: #007a7a }
|
||||
/* LiteralNumberIntegerLong */ .chroma .il { color: #007a7a }
|
||||
/* LiteralNumberOct */ .chroma .mo { color: #007a7a }
|
||||
/* Operator */ .chroma .o { color: #000000; font-weight: bold }
|
||||
/* OperatorWord */ .chroma .ow { color: #000000; font-weight: bold }
|
||||
/* Punctuation */ .chroma .p { }
|
||||
/* Comment */ .chroma .c { color: #999988; font-style: italic }
|
||||
/* CommentHashbang */ .chroma .ch { color: #999988; font-style: italic }
|
||||
/* CommentMultiline */ .chroma .cm { color: #999988; font-style: italic }
|
||||
/* CommentSingle */ .chroma .c1 { color: #999988; font-style: italic }
|
||||
/* Comment */ .chroma .c { color: #6d6d5d; font-style: italic }
|
||||
/* CommentHashbang */ .chroma .ch { color: #6d6d5d; font-style: italic }
|
||||
/* CommentMultiline */ .chroma .cm { color: #6d6d5d; font-style: italic }
|
||||
/* CommentSingle */ .chroma .c1 { color: #6d6d5d; font-style: italic }
|
||||
/* CommentSpecial */ .chroma .cs { color: #999999; font-weight: bold; font-style: italic }
|
||||
/* CommentPreproc */ .chroma .cp { color: #999999; font-weight: bold; font-style: italic }
|
||||
/* CommentPreprocFile */ .chroma .cpf { color: #999999; font-weight: bold; font-style: italic }
|
||||
|
@@ -1,5 +1,5 @@
|
||||
// stylelint-disable annotation-no-unknown
|
||||
@import "components/syntax-light";
|
||||
@import "syntax-light";
|
||||
|
||||
.bg,
|
||||
.chroma,
|
||||
@@ -8,18 +8,22 @@
|
||||
background-color: transparent if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.chroma {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.chroma code {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.syntax-highlight {
|
||||
background-color: var(--bs-light) if($enable-important-utilities, !important, null);
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.preview-background {
|
||||
background-color: var(--bs-dark-bg-subtle) if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
[data-bs-theme="dark"] {
|
||||
@import "components/syntax-dark"; // stylelint-disable-line no-invalid-position-at-import-rule
|
||||
@import "syntax-dark"; // stylelint-disable-line no-invalid-position-at-import-rule
|
||||
|
||||
.bg,
|
||||
.chroma,
|
||||
|
@@ -14,11 +14,7 @@ $semi-circle-border: 0.2rem;
|
||||
.timeline-#{$state} {
|
||||
--timeline-highlight: var(--#{$prefix}#{$state});
|
||||
}
|
||||
|
||||
.timeline-bg-#{$state} {
|
||||
--timeline-connector-bg: var(--#{$prefix}#{$state}-bg-subtle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// scss-docs-end timeline
|
||||
|
||||
@@ -27,10 +23,16 @@ $semi-circle-border: 0.2rem;
|
||||
}
|
||||
|
||||
.timeline-sm {
|
||||
--timeline-icon-radius: calc(#{$semi-circle-radius} / 2);
|
||||
--timeline-icon-radius: calc(#{$semi-circle-radius} / 2.4);
|
||||
--timeline-offset: 25%
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(sm) {
|
||||
.timeline-sm {
|
||||
--timeline-icon-radius: calc(#{$semi-circle-radius} / 2);
|
||||
}
|
||||
}
|
||||
|
||||
.timeline::before, .timeline-sm::before {
|
||||
content: "";
|
||||
width: 2 * $semi-circle-border;
|
||||
|
@@ -48,6 +48,10 @@
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
#toc-collapse {
|
||||
border-color: var(--bs-secondary-color) !important;
|
||||
}
|
||||
|
||||
.toc-button {
|
||||
--bs-btn-hover-color: var(--bs-primary);
|
||||
--bs-btn-hover-bg: var(--bs-body-bg);
|
||||
@@ -65,3 +69,24 @@
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
[data-bs-theme="dark"] {
|
||||
.toc-button {
|
||||
--bs-btn-color: var(--bs-body-color);
|
||||
--bs-btn-border-color: var(--bs-body-color);
|
||||
}
|
||||
|
||||
#toc-collapse {
|
||||
border-color: var(--bs-body-color) !important;
|
||||
}
|
||||
|
||||
.toc nav a {
|
||||
color: var(--bs-body-color);
|
||||
|
||||
&:hover {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -6,12 +6,13 @@ enableGitInfo = true
|
||||
# toml-docs-end main
|
||||
|
||||
# additional settings
|
||||
googleAnalytics = "G-T85PPZ36GN"
|
||||
baseURL = "https://demo.gethinode.com/"
|
||||
# googleAnalytics = "G-xxxxxxxxxx"
|
||||
baseURL = "https://example.com/"
|
||||
canonifyURLs = false
|
||||
enableEmoji = true
|
||||
enableRobotsTXT = true
|
||||
enableInlineShortcodes = true
|
||||
summaryLength = 20
|
||||
|
||||
# prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API.
|
||||
# See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456
|
||||
@@ -24,7 +25,7 @@ timeout = "180s"
|
||||
# toml-docs-start language
|
||||
languageCode = "en-us"
|
||||
defaultContentLanguage = "en"
|
||||
defaultContentLanguageInSubdir = true
|
||||
defaultContentLanguageInSubdir = false
|
||||
# toml-docs-end language
|
||||
|
||||
# toml-docs-start redirect
|
||||
@@ -93,6 +94,9 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[[module.mounts]]
|
||||
source = "assets"
|
||||
target = "assets"
|
||||
[[module.mounts]]
|
||||
source = "content"
|
||||
target = "content"
|
||||
[[module.mounts]]
|
||||
source = "i18n"
|
||||
target = "i18n"
|
||||
|
@@ -1,31 +1,15 @@
|
||||
# toml-docs-start lang-main
|
||||
[en]
|
||||
languageName = "English"
|
||||
contentDir = "content/en"
|
||||
contentDir = "content"
|
||||
weight = 1
|
||||
# toml-docs-end lang-main
|
||||
# toml-docs-start lang-param
|
||||
[en.params.head]
|
||||
tagline = "A Hugo Theme"
|
||||
[en.params.feature]
|
||||
link = "about"
|
||||
caption = "About"
|
||||
[en.params.social]
|
||||
title = "Follow me"
|
||||
caption = "I work on everything coding and tweet developer memes"
|
||||
[en.params.footer]
|
||||
license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
socialTitle = "Follow me"
|
||||
socialCaption = "I work on everything coding and tweet developer memes"
|
||||
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
# toml-docs-end lang-param
|
||||
|
||||
[nl]
|
||||
languageName = "Nederlands"
|
||||
contentDir = "content/nl"
|
||||
weight = 2
|
||||
[nl.params.head]
|
||||
tagline = "Een Hugo Thema"
|
||||
[nl.params.feature]
|
||||
link = "over-mij"
|
||||
caption = "Over mij"
|
||||
[nl.params.footer]
|
||||
license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
socialTitle = "Volg mij"
|
||||
socialCaption = "Ik doe aan programmeren en tweet memes"
|
@@ -1,34 +1,12 @@
|
||||
[[main]]
|
||||
name = "About"
|
||||
pageRef = "/about/"
|
||||
name = "Home"
|
||||
pageRef = "/"
|
||||
weight = 10
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
pageRef = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Projects"
|
||||
pageRef = "/projects/"
|
||||
weight = 30
|
||||
|
||||
[[main]]
|
||||
name = "Sample project"
|
||||
pageRef = "/projects/sample-project/"
|
||||
parent = "Projects"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
name = "Another project"
|
||||
pageRef = "/projects/another-project/"
|
||||
parent = "Projects"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Tags"
|
||||
pageRef = "/tags/"
|
||||
weight = 40
|
||||
pageRef = "/tags"
|
||||
weight = 20
|
||||
|
||||
[[social]]
|
||||
name = "LinkedIn"
|
||||
|
@@ -5,6 +5,7 @@
|
||||
enableDarkMode = true
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
endorse = true
|
||||
[main.externalLinks]
|
||||
cue = false
|
||||
tab = false
|
||||
@@ -37,8 +38,7 @@
|
||||
|
||||
# toml-docs-start home
|
||||
[home]
|
||||
sections = ["blog", "projects"]
|
||||
featurePhoto = "/img/sunrise.jpg" # source: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
# sections = ["posts"]
|
||||
fullCover = false
|
||||
centerHeadline = false
|
||||
style = ""
|
||||
@@ -78,7 +78,7 @@
|
||||
[[sharing.providers]]
|
||||
name = "Twitter"
|
||||
url = "https://twitter.com/home?status={url}"
|
||||
icon = "fab twitter"
|
||||
icon = "fab x-twitter"
|
||||
weight = 20
|
||||
|
||||
[[sharing.providers]]
|
||||
@@ -102,37 +102,21 @@
|
||||
# toml-docs-end sharing
|
||||
|
||||
# toml-docs-start sections
|
||||
[sections]
|
||||
[sections.blog]
|
||||
title = "Blog"
|
||||
sort = "date"
|
||||
reverse = true
|
||||
nested = true
|
||||
cols = 3
|
||||
color = ""
|
||||
padding = "0"
|
||||
header = "full"
|
||||
footer = "none"
|
||||
orientation = "stacked"
|
||||
style = "border-0 card-zoom"
|
||||
homepage = 3
|
||||
separator = true
|
||||
[sections.projects]
|
||||
title = "Projects"
|
||||
layout = "card"
|
||||
sort = "title"
|
||||
reverse = false
|
||||
nested = true
|
||||
cols = 1
|
||||
background = "body-tertiary"
|
||||
color = "body"
|
||||
padding = "3"
|
||||
header = "none"
|
||||
footer = "tags"
|
||||
orientation = "horizontal"
|
||||
style = "border-1 card-emphasize"
|
||||
homepage = 3
|
||||
separator = false
|
||||
# [sections]
|
||||
# [sections.posts]
|
||||
# title = "Posts"
|
||||
# sort = "date"
|
||||
# reverse = true
|
||||
# nested = true
|
||||
# cols = 3
|
||||
# color = ""
|
||||
# padding = "0"
|
||||
# header = "full"
|
||||
# footer = "none"
|
||||
# orientation = "stacked"
|
||||
# style = "border-0 card-zoom"
|
||||
# homepage = 3
|
||||
# separator = true
|
||||
# toml-docs-end sections
|
||||
|
||||
[favicon]
|
||||
@@ -151,6 +135,8 @@
|
||||
dark = "#212529"
|
||||
# toml-docs-end theme-colors
|
||||
themeOpacity = "10"
|
||||
darkModeShade = "20%"
|
||||
darkModeTint = "40%"
|
||||
# toml-docs-start font
|
||||
themeFont = "Inter"
|
||||
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
|
||||
@@ -196,11 +182,4 @@
|
||||
#theme = ""
|
||||
|
||||
[links]
|
||||
bs_badge_heading = "https://getbootstrap.com/docs/5.2/components/badge/#headings"
|
||||
hinode_docs = "https://gethinode.com/docs"
|
||||
hugo_imaging = "https://gohugo.io/content-management/image-processing/#imaging-configuration"
|
||||
mozilla_image = "https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images"
|
||||
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
|
||||
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
|
||||
utterances = "https://utteranc.es"
|
||||
|
||||
hinode = "https://gethinode.com"
|
||||
|
22
config/ci/hugo.toml
Normal file
22
config/ci/hugo.toml
Normal file
@@ -0,0 +1,22 @@
|
||||
# cachedir default on POSIX: '/tmp/hugo_cache_runner'
|
||||
# cachedir default on Windows: '~\AppData\Local\hugo_cache'
|
||||
|
||||
[caches]
|
||||
[caches.assets]
|
||||
dir = ':cacheDir/resources/_gen' # map to cacheDir instead of resourceDir to utilize GitHub action/cache
|
||||
maxAge = -1
|
||||
[caches.getcsv]
|
||||
dir = ':cacheDir/:project'
|
||||
maxAge = -1
|
||||
[caches.getjson]
|
||||
dir = ':cacheDir/:project'
|
||||
maxAge = -1
|
||||
[caches.getresource]
|
||||
dir = ':cacheDir/:project'
|
||||
maxAge = -1
|
||||
[caches.images]
|
||||
dir = ':cacheDir/resources/_gen' # map to cacheDir instead of resourceDir to utilize GitHub action/cache
|
||||
maxAge = -1
|
||||
[caches.modules]
|
||||
dir = ':cacheDir/modules'
|
||||
maxAge = -1
|
13
content/_index.md
Normal file
13
content/_index.md
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
title: Welcome to Hinode!
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
---
|
||||
|
||||
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
|
||||
|
||||
{{< button href="https://gethinode.com/docs" icon="fas book-open" order="first" >}}Get Started{{< /button>}}
|
@@ -1,6 +0,0 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Welcome to Hinode!
|
||||
---
|
||||
|
||||
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
|
@@ -1,6 +0,0 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Welkom bij Hinode!
|
||||
---
|
||||
|
||||
Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.
|
@@ -1,291 +0,0 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Bootstrap elementen
|
||||
slug: bootstrap-elementen
|
||||
date: 2023-02-17
|
||||
description: Gebruik shortcodes om eenvoudig Bootstrap elementen toe te voegen.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
thumbnail: img/boots.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@nate_dumlao">Nathan Dumlao</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/QLPWQvHvmII">Unsplash</a>
|
||||
---
|
||||
|
||||
Hinode beschikt over meerdere shortcodes om eenvoudig Bootstrap elementen toe te voegen aan je website. De [officiële documentatie]({{< param "links.hinode_docs" >}}) bevat meer details.
|
||||
|
||||
## Accordion
|
||||
|
||||
De volgende shortcode toont een accordion met drie elementen, waarvan de eerste is uitgeklapt.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* accordion */>}}
|
||||
{{</* accordion-item header="Accordion Item #1" show="true" */>}}
|
||||
Dit is de inhoud van het eerste element met ondersteuning voor HTML. De waarde <code>show</code>
|
||||
voor het argument <code>class</code> geeft aan dat het element uitgeklapt moet worden.
|
||||
{{</* /accordion-item */>}}
|
||||
{{</* accordion-item header="Accordion Item #2" */>}}
|
||||
Dit is de inhoud van het tweede element. Het ondersteunt ook HTML.
|
||||
{{</* /accordion-item */>}}
|
||||
{{</* accordion-item header="Accordion Item #3" */>}}
|
||||
Dit is de inhoud van het derde element.
|
||||
{{</* /accordion-item */>}}
|
||||
{{</* /accordion */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Alert
|
||||
|
||||
De volgende shortcode toont een waarschuwing.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* alert color="danger" dismissible="true" */>}}
|
||||
Een eenvoudige waarschuwing
|
||||
{{</* /alert */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Badge
|
||||
|
||||
Gebruik HTML code om een label toe te voegen aan een titel. De Bootstrap [documentatie]({{< param "links.bs_badge_heading" >}}) beschrijft meer opties.
|
||||
|
||||
{{< example >}}
|
||||
<h1>Voorbeeldtekst met grootte één <span class="badge bg-secondary">Nieuw</span></h1>
|
||||
<h2>Voorbeeldtekst met grootte twee <span class="badge bg-secondary">Nieuw</span></h2>
|
||||
<h3>Voorbeeldtekst met grootte drie <span class="badge bg-secondary">Nieuw</span></h3>
|
||||
<h4>Voorbeeldtekst met grootte vier <span class="badge bg-secondary">Nieuw</span></h4>
|
||||
<h5>Voorbeeldtekst met grootte vijf <span class="badge bg-secondary">Nieuw</span></h5>
|
||||
<h6>Voorbeeldtekst met grootte zes <span class="badge bg-secondary">Nieuw</span></h6>
|
||||
{{< /example >}}
|
||||
|
||||
## Breadcrumb
|
||||
|
||||
De volgende shortcode toont het navigatiepad voor de blog pagina.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* breadcrumb path="blog" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Button
|
||||
|
||||
De volgende shortcode toont een knop met een label en een aanwijzing.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button color="secondary" tooltip="Toon je ongelezen berichten" href="#!" badge="99+" */>}}
|
||||
Inbox
|
||||
{{</* /button */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Button group
|
||||
|
||||
De volgende shortcode toont een groep van drie knoppen.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button-group aria-label="Basic example" */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Links{{</* /button */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Midden{{</* /button */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Rechts{{</* /button */>}}
|
||||
{{</* /button-group */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Card
|
||||
|
||||
De volgende shortcode toont een kaart dat linkt naar de [over mij]({{< ref "about" >}}) pagina. De kaart bevat een titel.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* card path="about" padding="3" class="w-50" color="body-tertiary" header="publication" footer="none" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Carousel
|
||||
|
||||
De volgende shortcode toont een carousel met drie pagina's, in een verhouding van 16x9 voor een breedte van 67% op grotere schermen.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* carousel ratio="16x9" class="col-sm-12 col-lg-8 mx-auto" */>}}
|
||||
{{</* img src="img/coffee.jpg" caption="pagina 1" */>}}
|
||||
{{</* img src="img/phone.jpg" caption="pagina 2" */>}}
|
||||
{{</* img src="img/dunes.jpg" caption="pagina 3" */>}}
|
||||
{{</* /carousel */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Collapse
|
||||
|
||||
De volgende shortcode toont een knop die een informatiepaneel toont of verbergt.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button collapse="collapse-1" */>}}
|
||||
Trigger panel
|
||||
{{</* /button */>}}
|
||||
|
||||
{{</* collapse id="collapse-1" class="p-3 border rounded" */>}}
|
||||
Dit is een voorbeeldtekst. Het informatiepaneel is <i>standaard verborgen </i> maar wordt getoond als
|
||||
de gebruiker op de bijbehorende knop drukt.
|
||||
{{</* /collapse */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Command prompt
|
||||
|
||||
De volgende shortcode toont een prompt voor bash.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
Voeg `user` en `host` om de gebruikerscontext op te geven. Als aanvulling, `(out)` definieert een outputregel en `\` is een markering die aangeeft dat de regel doorgaat op de volgende regel.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command user="user" host="localhost" */>}}
|
||||
export MY_VAR=123
|
||||
echo "hello"
|
||||
(out)hello
|
||||
echo one \
|
||||
two \
|
||||
three
|
||||
(out)one two three
|
||||
echo "goodbye"
|
||||
(out)goodbye
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Docs
|
||||
|
||||
Gebruik de volgende shortcode om de inhoud van een `toml` of `scss` bestand te tonen.
|
||||
|
||||
{{< docs name="theme-colors" file="config/_default/params.toml" >}}
|
||||
|
||||
## Icon
|
||||
|
||||
De volgende shortcodes tonen drie verschillende iconen:
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* fa square-check */>}}
|
||||
{{</* fab linkedin */>}}
|
||||
{{</* fas circle-check */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Image
|
||||
|
||||
De volgende shortcode toont een plaatje met afgeronde hoeken en een 21x9 verhouding.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="img/flowers.jpg" ratio="21x9" caption="Onderschrift" class="rounded" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Nav
|
||||
|
||||
De volgende shortcode toont een groep met verticale tabbladen.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* nav type="pills" vertical="true" */>}}
|
||||
{{</* nav-item header="Nav Item #1" show="true" */>}}
|
||||
Dit is de inhoud van het eerste element met ondersteuning voor HTML. De waarde <code>show</code>
|
||||
voor het argument <code>class</code> geeft aan dat het element uitgeklapt moet worden.
|
||||
{{</* /nav-item */>}}
|
||||
{{</* nav-item header="Nav Item #2" */>}}
|
||||
Dit is de inhoud van het tweede element. Het ondersteunt ook HTML.
|
||||
{{</* /nav-item */>}}
|
||||
{{</* nav-item header="Nav Item #3" */>}}
|
||||
Dit is de inhoud van het derde element.
|
||||
{{</* /nav-item */>}}
|
||||
{{</* /nav */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Navbar
|
||||
|
||||
De volgende shortcode toont een navigatiemenu.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* navbar path="about" color="primary" size="md" search="false" menus="sample" title="Brand" mode="false" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Release
|
||||
|
||||
De volgende shortcode toont een knop voor een nieuwe release.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* release version="v0.14.1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Spinner
|
||||
|
||||
De volgende shortcode toont een ronddraaiende cirkel.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* spinner color="info" class="text-center" */>}}
|
||||
Loading...
|
||||
{{</* /spinner */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Timeline
|
||||
|
||||
De volgende shortcode toont een tijdslijn met het bestand `data/timeline-nl.yml` als input.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* timeline data="timeline-nl" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Toast
|
||||
|
||||
De volgende shortcode toont een knop die een bericht laat verschijnen op het scherm.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button toast="toast-example-1" */>}}
|
||||
Toon bericht 1
|
||||
{{</* /button */>}}
|
||||
|
||||
{{</* button toast="toast-example-2" */>}}
|
||||
Toon bericht 2
|
||||
{{</* /button */>}}
|
||||
|
||||
{{</* toast id="toast-example-1" header="Eerste titel" */>}}
|
||||
Dit is het eerste bericht.
|
||||
{{</* /toast */>}}
|
||||
|
||||
{{</* toast id="toast-example-2" header="Tweede titel" */>}}
|
||||
Dit is het tweede bericht.
|
||||
{{</* /toast */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Tooltip
|
||||
|
||||
De volgende shortcode toont een uitleg voor een gekleurde link.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* tooltip color="primary" title="Tooltip" href="#!" */>}}Tooltip{{</* /tooltip */>}} demonstratie
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
@@ -1,37 +0,0 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Componenten
|
||||
slug: componenten
|
||||
date: 2023-07-21
|
||||
description: Gebruik shortcodes om voorgedefiniëerde componenten toe te voegen die gebruikmaken van externe libraries.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
thumbnail: img/puzzle.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@ryoji__iwata">Ryoji Iwata</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/5siQcvSxCP8">Unsplash</a>
|
||||
modules: ["katex", "leaflet"]
|
||||
---
|
||||
|
||||
Hinode biedt meerdere shortcodes aan bovenop de gebruikelijke [Bootstrap elementen]({{< relref "bootstrap-elements" >}}). Zie de [officiële documentatie]({{< param "links.hinode_docs" >}}) voor meer details.
|
||||
|
||||
## Formule (KaTeX)
|
||||
|
||||
De volgende markdown code genereert twee wiskundige formules met behulp van KaTeX.
|
||||
|
||||
{{< example lang="markdown" >}}
|
||||
Dit is een inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formule
|
||||
|
||||
Dit is geen inline formule:
|
||||
|
||||
$$x = a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a_3 + a_4}}}$$
|
||||
$$\forall x \in X, \quad \exists y \leq \epsilon$$
|
||||
{{< /example >}}
|
||||
|
||||
## Map
|
||||
|
||||
De volgende shortcode toont een interactieve kaart van Amsterdam.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* map lat=52.377 long=4.90 zoom=13 popup="Amsterdam CS" popup-lat=52.378062 popup-long=4.900562 */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
78
exampleSite/config/_default/hugo.toml
Normal file
78
exampleSite/config/_default/hugo.toml
Normal file
@@ -0,0 +1,78 @@
|
||||
title = "Hinode"
|
||||
copyright = "Copyright © 2023 Mark Dumay."
|
||||
paginate = 9
|
||||
enableGitInfo = true
|
||||
|
||||
# additional settings
|
||||
googleAnalytics = "G-T85PPZ36GN"
|
||||
baseURL = "https://demo.gethinode.com/"
|
||||
canonifyURLs = false
|
||||
enableEmoji = true
|
||||
enableRobotsTXT = true
|
||||
enableInlineShortcodes = true
|
||||
|
||||
# prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API.
|
||||
# See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456
|
||||
ignoreErrors = ["error-remote-getjson"]
|
||||
|
||||
timeout = "180s"
|
||||
|
||||
languageCode = "en-us"
|
||||
defaultContentLanguage = "en"
|
||||
defaultContentLanguageInSubdir = true
|
||||
|
||||
[outputFormats.REDIR]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_redirects"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
|
||||
[mediaTypes."text/netlify"]
|
||||
delimiter = ""
|
||||
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "REDIR"]
|
||||
|
||||
[build]
|
||||
writeStats = true
|
||||
|
||||
[taxonomies]
|
||||
tag = 'tags'
|
||||
|
||||
[privacy]
|
||||
[privacy.vimeo]
|
||||
disabled = false
|
||||
simple = true
|
||||
|
||||
[privacy.twitter]
|
||||
disabled = false
|
||||
enableDNT = true
|
||||
simple = true
|
||||
|
||||
[privacy.instagram]
|
||||
disabled = false
|
||||
simple = true
|
||||
|
||||
[privacy.youtube]
|
||||
disabled = false
|
||||
privacyEnhanced = true
|
||||
|
||||
[services]
|
||||
[services.instagram]
|
||||
disableInlineCSS = true
|
||||
[services.twitter]
|
||||
disableInlineCSS = true
|
||||
|
||||
[outputFormats]
|
||||
[outputFormats.XML]
|
||||
isPlainText = false
|
||||
mediaType = "application/xml"
|
||||
isHtml = false
|
||||
noUgly = true
|
||||
permalinkable = false
|
||||
name = "xml"
|
||||
|
||||
[module]
|
||||
replacements = 'github.com/gethinode/hinode -> ../..'
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/hinode"
|
53
exampleSite/config/_default/languages.toml
Normal file
53
exampleSite/config/_default/languages.toml
Normal file
@@ -0,0 +1,53 @@
|
||||
# toml-docs-start lang-main
|
||||
[en]
|
||||
languageName = "English"
|
||||
contentDir = "content/en"
|
||||
weight = 1
|
||||
# toml-docs-end lang-main
|
||||
# toml-docs-start lang-param
|
||||
[en.params.head]
|
||||
tagline = "A Hugo Theme"
|
||||
[en.params.social]
|
||||
title = "Follow me"
|
||||
caption = "I work on everything coding and tweet developer memes"
|
||||
[en.params.footer]
|
||||
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
# toml-docs-end lang-param
|
||||
[en.params.sections.blog]
|
||||
reference = "More Posts"
|
||||
[en.params.sections.projects]
|
||||
reference = "More Projects"
|
||||
|
||||
[nl]
|
||||
languageName = "Nederlands"
|
||||
contentDir = "content/nl"
|
||||
weight = 2
|
||||
[nl.params.head]
|
||||
tagline = "Een Hugo Thema"
|
||||
[nl.params.social]
|
||||
title = "Volg mij"
|
||||
caption = "Ik doe aan programmeren en tweet memes"
|
||||
[nl.params.footer]
|
||||
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
[nl.params.sections.blog]
|
||||
reference = "Meer artikelen"
|
||||
[nl.params.sections.projects]
|
||||
title = "Projecten"
|
||||
reference = "Meer projecten"
|
||||
|
||||
[fr]
|
||||
languageName = "Français"
|
||||
contentDir = "content/fr"
|
||||
weight = 2
|
||||
[fr.params.head]
|
||||
tagline = "Un thème Hugo"
|
||||
[fr.params.social]
|
||||
title = "Suivez-moi"
|
||||
caption = "Je code et je tweet des mèmes de développeurs."
|
||||
[fr.params.footer]
|
||||
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
||||
[fr.params.sections.blog]
|
||||
reference = "Plus d'articles"
|
||||
[fr.params.sections.projects]
|
||||
title = "Projets"
|
||||
reference = "Plus de projets"
|
35
exampleSite/config/_default/markup.toml
Normal file
35
exampleSite/config/_default/markup.toml
Normal file
@@ -0,0 +1,35 @@
|
||||
defaultMarkdownHandler = "goldmark"
|
||||
|
||||
[highlight]
|
||||
anchorLineNos = false
|
||||
codeFences = true
|
||||
guessSyntax = true
|
||||
hl_Lines = ""
|
||||
lineAnchors = ""
|
||||
lineNoStart = 1
|
||||
lineNos = false
|
||||
lineNumbersInTable = false
|
||||
noClasses = false
|
||||
tabWidth = 2
|
||||
## Update the 'create:syntax' command in package.json to modify the style
|
||||
## The first two lines have been modified to remove the background color
|
||||
# style = "monokailight"
|
||||
|
||||
[goldmark]
|
||||
[goldmark.extensions]
|
||||
definitionList = true
|
||||
footnote = true
|
||||
linkify = true
|
||||
strikethrough = true
|
||||
table = true
|
||||
taskList = true
|
||||
typographer = true
|
||||
[goldmark.parser]
|
||||
autoHeadingID = true
|
||||
autoHeadingIDType = 'github'
|
||||
[goldmark.parser.attribute]
|
||||
block = true
|
||||
[goldmark.renderer]
|
||||
hardWraps = false
|
||||
unsafe = true
|
||||
xhtml = false
|
73
exampleSite/config/_default/menus/menus.en.toml
Normal file
73
exampleSite/config/_default/menus/menus.en.toml
Normal file
@@ -0,0 +1,73 @@
|
||||
[[main]]
|
||||
name = "About"
|
||||
pageRef = "/about/"
|
||||
weight = 10
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
pageRef = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Projects"
|
||||
pageRef = "/projects/"
|
||||
weight = 30
|
||||
|
||||
[[main]]
|
||||
name = "Sample project"
|
||||
pageRef = "/projects/sample-project/"
|
||||
parent = "Projects"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
name = "Another project"
|
||||
pageRef = "/projects/another-project/"
|
||||
parent = "Projects"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Tags"
|
||||
pageRef = "/tags/"
|
||||
weight = 40
|
||||
|
||||
[[social]]
|
||||
name = "LinkedIn"
|
||||
pre = "fab linkedin"
|
||||
url = "https://linkedin.com/"
|
||||
weight = 10
|
||||
|
||||
[[social]]
|
||||
name = "GitHub"
|
||||
pre = "fab fa-github"
|
||||
url = "https://github.com/"
|
||||
weight = 20
|
||||
|
||||
[[social]]
|
||||
name = "Medium"
|
||||
pre = "fab medium"
|
||||
url = "https://medium.com/"
|
||||
weight = 30
|
||||
|
||||
# toml-docs-start sample-navigation
|
||||
[[sample]]
|
||||
name = "Blog"
|
||||
pageRef = "/blog/"
|
||||
weight = 10
|
||||
|
||||
[[sample]]
|
||||
name = "Projects"
|
||||
pageRef = "/projects/"
|
||||
weight = 20
|
||||
|
||||
[[sample]]
|
||||
name = "Sample project"
|
||||
pageRef = "/projects/sample-project/"
|
||||
parent = "Projects"
|
||||
weight = 1
|
||||
|
||||
[[sample]]
|
||||
name = "Another project"
|
||||
pageRef = "/projects/another-project/"
|
||||
parent = "Projects"
|
||||
weight = 2
|
||||
# toml-docs-end sample-navigation
|
73
exampleSite/config/_default/menus/menus.fr.toml
Normal file
73
exampleSite/config/_default/menus/menus.fr.toml
Normal file
@@ -0,0 +1,73 @@
|
||||
[[main]]
|
||||
name = "À propos"
|
||||
pageRef = "/a-propos/"
|
||||
weight = 10
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
pageRef = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Projets"
|
||||
pageRef = "/projets/"
|
||||
weight = 30
|
||||
|
||||
[[main]]
|
||||
name = "Exemple de projet"
|
||||
pageRef = "/projets/exemple-de-projet/"
|
||||
parent = "Projets"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
name = "Autre projet"
|
||||
pageRef = "/projets/autre-projet/"
|
||||
parent = "Projets"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Tags"
|
||||
pageRef = "/tags/"
|
||||
weight = 40
|
||||
|
||||
[[social]]
|
||||
name = "LinkedIn"
|
||||
pre = "fab linkedin"
|
||||
url = "https://linkedin.com/"
|
||||
weight = 10
|
||||
|
||||
[[social]]
|
||||
name = "GitHub"
|
||||
pre = "fab fa-github"
|
||||
url = "https://github.com/"
|
||||
weight = 20
|
||||
|
||||
[[social]]
|
||||
name = "Medium"
|
||||
pre = "fab medium"
|
||||
url = "https://medium.com/"
|
||||
weight = 30
|
||||
|
||||
# toml-docs-start sample-navigation
|
||||
[[sample]]
|
||||
name = "Blog"
|
||||
pageRef = "/blog/"
|
||||
weight = 10
|
||||
|
||||
[[sample]]
|
||||
name = "Projets"
|
||||
pageRef = "/projets/"
|
||||
weight = 20
|
||||
|
||||
[[sample]]
|
||||
name = "Exemple de projet"
|
||||
pageRef = "/projets/exemple-de-projet/"
|
||||
parent = "Projets"
|
||||
weight = 1
|
||||
|
||||
[[sample]]
|
||||
name = "Autre projet"
|
||||
pageRef = "/projets/autre-projet/"
|
||||
parent = "Projets"
|
||||
weight = 2
|
||||
# toml-docs-end sample-navigation
|
185
exampleSite/config/_default/params.toml
Normal file
185
exampleSite/config/_default/params.toml
Normal file
@@ -0,0 +1,185 @@
|
||||
[main]
|
||||
separator = "-"
|
||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||
enableDarkMode = true
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
[main.externalLinks]
|
||||
cue = true
|
||||
tab = true
|
||||
|
||||
[modules]
|
||||
core = ["bootstrap", "flexsearch", "fontawesome"]
|
||||
optional = ["leaflet", "katex"]
|
||||
excludeSCSS = ["bootstrap"]
|
||||
disableTemplate = ["katex"]
|
||||
[modules.fontawesome]
|
||||
inline = true
|
||||
debug = true
|
||||
skipMissing = false
|
||||
|
||||
[debugging]
|
||||
showJS = false
|
||||
showSCSS = false
|
||||
|
||||
[docs]
|
||||
basePath = "/" # TODO: replace
|
||||
github = "https://github.com/gethinode/hinode"
|
||||
release = "https://github.com/gethinode/hinode/releases/tag/"
|
||||
checkVersion = false
|
||||
|
||||
[home]
|
||||
sections = ["blog", "projects"]
|
||||
fullCover = false
|
||||
centerHeadline = false
|
||||
style = ""
|
||||
|
||||
[navigation]
|
||||
anchor = true
|
||||
logo = "/img/logo_icon.svg"
|
||||
color = "body"
|
||||
fixed = true
|
||||
offset = "3.8em"
|
||||
search = true
|
||||
breadcrumb = true
|
||||
toc = true
|
||||
sidebar = true
|
||||
|
||||
[messages]
|
||||
placement = "bottom-right"
|
||||
|
||||
[sharing]
|
||||
enabled = true
|
||||
sort = "weight"
|
||||
reverse = false
|
||||
webshare = true
|
||||
|
||||
[[sharing.providers]]
|
||||
name = "LinkedIn"
|
||||
url = "https://www.linkedin.com/sharing/share-offsite/?url={url}"
|
||||
icon = "fab linkedin"
|
||||
weight = 10
|
||||
|
||||
[[sharing.providers]]
|
||||
name = "Twitter"
|
||||
url = "https://twitter.com/home?status={url}"
|
||||
icon = "fab x-twitter"
|
||||
weight = 20
|
||||
|
||||
[[sharing.providers]]
|
||||
name = "Facebook"
|
||||
url = "https://www.facebook.com/sharer.php?u={url}"
|
||||
icon = "fab facebook"
|
||||
weight = 30
|
||||
|
||||
[[sharing.providers]]
|
||||
name = "WhatsApp"
|
||||
url = "whatsapp://send?text={title}%20{url}"
|
||||
icon = "fab whatsapp"
|
||||
weight = 40
|
||||
|
||||
[[sharing.providers]]
|
||||
name = "email"
|
||||
url = "{url}"
|
||||
icon = "fas link"
|
||||
weight = 50
|
||||
clipboard = true
|
||||
|
||||
[sections]
|
||||
[sections.blog]
|
||||
title = "Blog"
|
||||
sort = "date"
|
||||
reverse = true
|
||||
cols = 3
|
||||
color = ""
|
||||
padding = "0"
|
||||
header = "full"
|
||||
footer = "none"
|
||||
orientation = "stacked"
|
||||
style = "border-0 card-zoom"
|
||||
homepage = 3
|
||||
separator = true
|
||||
[sections.projects]
|
||||
title = "Projects"
|
||||
layout = "card"
|
||||
sort = "title"
|
||||
reverse = false
|
||||
nested = true
|
||||
cols = 1
|
||||
background = "body-tertiary"
|
||||
color = "body"
|
||||
padding = "3"
|
||||
header = "none"
|
||||
footer = "tags"
|
||||
orientation = "horizontal"
|
||||
style = "border-1 card-emphasize"
|
||||
homepage = 3
|
||||
separator = false
|
||||
|
||||
[favicon]
|
||||
logo = "img/favicon.png"
|
||||
sizes = [16, 32, 48]
|
||||
|
||||
# toml-docs-start theme-colors
|
||||
[style]
|
||||
primary = "#d43900"
|
||||
secondary = "#6c757d"
|
||||
success = "#198754"
|
||||
info = "#0dcaf0"
|
||||
warning = "#ffc107"
|
||||
danger = "#dc3545"
|
||||
light = "#f8f9fa"
|
||||
dark = "#212529"
|
||||
themeOpacity = "10"
|
||||
darkModeShade = "20%"
|
||||
darkModeTint = "40%"
|
||||
themeFont = "Inter"
|
||||
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
|
||||
themeFontPath = "/fonts" # local path
|
||||
purge = true
|
||||
# toml-docs-end theme-colors
|
||||
|
||||
[schema]
|
||||
type = "Organization"
|
||||
name = "Hinode"
|
||||
locale = "en-US"
|
||||
# twitter = "https://twitter.com/gethinode"
|
||||
# linkedIn = ""
|
||||
github = "https://github.com/gethinode/hinode"
|
||||
section = "blog"
|
||||
[author]
|
||||
name = "Mark Dumay"
|
||||
# twitter = "https://twitter.com/markdumay"
|
||||
linkedin = "https://www.linkedin.com/in/markdumay/"
|
||||
github = "https://github.com/markdumay"
|
||||
[logo]
|
||||
url = "img/logo512x512.png"
|
||||
width = 512
|
||||
height = 512
|
||||
[image]
|
||||
url = "img/logo1280x640.png"
|
||||
width = 1280
|
||||
height = 640
|
||||
|
||||
[opengraph]
|
||||
images = ["logo.png"]
|
||||
locale = "en_US"
|
||||
|
||||
[comments]
|
||||
enabled = false
|
||||
repo = "" # Replace with your repository.
|
||||
#issueTerm = "pathname" # pathname, url, title, og:title
|
||||
#label = "comment"
|
||||
# By default, light and dark mode correspond to github-light and github-dark, respectively.
|
||||
# Optional values: github-light, github-dark, preferred-color-scheme, github-dark-orange, icy-dark, dark-blue, photon-dark.
|
||||
#theme = ""
|
||||
|
||||
[links]
|
||||
bs_badge_heading = "https://getbootstrap.com/docs/5.3/components/badge/#headings"
|
||||
hinode_docs = "https://gethinode.com"
|
||||
hugo_imaging = "https://gohugo.io/content-management/image-processing/#imaging-configuration"
|
||||
mozilla_image = "https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images"
|
||||
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
|
||||
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
|
||||
utterances = "https://utteranc.es"
|
||||
hinode = "https://gethinode.com"
|
43
exampleSite/config/_default/server.toml
Normal file
43
exampleSite/config/_default/server.toml
Normal file
@@ -0,0 +1,43 @@
|
||||
# toml-docs-start server-config
|
||||
[[headers]]
|
||||
for = '/**'
|
||||
[headers.values]
|
||||
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
||||
X-Content-Type-Options = "nosniff"
|
||||
X-XSS-Protection = "1; mode=block"
|
||||
Content-Security-Policy = """\
|
||||
default-src 'self'; \
|
||||
script-src 'self' \
|
||||
https://utteranc.es/client.js https://*.google-analytics.com https://*.googletagmanager.com; \
|
||||
style-src 'self' https://utteranc.es https://fonts.googleapis.com https://www.youtube.com; \
|
||||
object-src 'none'; \
|
||||
base-uri 'self'; \
|
||||
connect-src 'self'
|
||||
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
|
||||
font-src 'self' https://fonts.gstatic.com; \
|
||||
frame-src 'self' https://utteranc.es https://www.youtube-nocookie.com https://www.youtube.com; \
|
||||
img-src 'self' data: https://i.vimeocdn.com https://i.ytimg.com https://*.google-analytics.com https://*.googletagmanager.com https://tile.openstreetmap.org; \
|
||||
manifest-src 'self'; \
|
||||
media-src 'self' \
|
||||
"""
|
||||
X-Frame-Options = "SAMEORIGIN"
|
||||
Referrer-Policy = "strict-origin"
|
||||
Permissions-Policy = """\
|
||||
geolocation=(), \
|
||||
midi=(), \
|
||||
sync-xhr=(), \
|
||||
microphone=(), \
|
||||
camera=(), \
|
||||
magnetometer=(), \
|
||||
gyroscope=(), \
|
||||
fullscreen=(), \
|
||||
payment=() \
|
||||
"""
|
||||
cache-control = """\
|
||||
max-age=0, \
|
||||
no-cache, \
|
||||
no-store, \
|
||||
must-revalidate \
|
||||
"""
|
||||
Access-Control-Allow-Origin = "*"
|
||||
# toml-docs-end server-config
|
14
exampleSite/content/en/_index.md
Normal file
14
exampleSite/content/en/_index.md
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Welcome to Hinode!
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
---
|
||||
|
||||
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
|
||||
|
||||
{{< button href="about" >}}About{{< /button>}}
|
@@ -1,12 +1,15 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Bootstrap elements
|
||||
date: 2023-05-20
|
||||
date: 2023-08-12
|
||||
description: Use shortcodes to add common Bootstrap elements with ease.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
thumbnail: img/boots.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@nate_dumlao">Nathan Dumlao</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/QLPWQvHvmII">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/boots.jpg
|
||||
author: Nathan Dumlao
|
||||
authorURL: https://unsplash.com/@nate_dumlao
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/QLPWQvHvmII
|
||||
---
|
||||
|
||||
Hinode provides several shortcodes that wrap common Bootstrap components. Refer to the [official documentation]({{< param "links.hinode_docs" >}}) for more details.
|
||||
@@ -170,6 +173,28 @@ Use the `docs` shortcode to display the content of a `js`, `scss` or `toml` file
|
||||
|
||||
{{< docs name="theme-colors" file="config/_default/params.toml" >}}
|
||||
|
||||
## Example
|
||||
|
||||
Use the `example` shortcode to display a code example and to render a preview of the same input.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## File
|
||||
|
||||
Use the `file` shortcode to print and highlight the full content of a given input file.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* file path="./config/_default/languages.toml" id="file-collapse-1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Icon
|
||||
|
||||
As an example, the following shortcodes show a square check, a brand logo, and a circle check.
|
||||
@@ -192,6 +217,31 @@ As an example, the following shortcode displays an image with rounded corners an
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Link
|
||||
|
||||
As an example, the following shortcodes render links in different formats.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
|
||||
- {{</* link hinode >}}Named link with default settings{{< /link */>}}
|
||||
- {{</* link name=hinode cue=false tab=false >}}Named link opening in current tab w/o icon{{< /link */>}}
|
||||
- {{</* link name=hinode cue=true tab=true >}}Named link opening in new tab with icon{{< /link */>}}
|
||||
- {{</* link hinode /*/>}}
|
||||
- {{</* link href="https://developer.mozilla.org" >}}External link{{< /link */>}}
|
||||
- {{</* link "./projects/another-project" >}}Internal link with title{{< /link */>}}
|
||||
- {{</* link url="projects/another-project" /*/>}}
|
||||
- {{</* link url="/projects/another-project" /*/>}}
|
||||
- {{</* link url="../projects/another-project" case=false /*/>}}
|
||||
- {{</* link "/about/" /*/>}}
|
||||
- {{</* link "/fr/about/" /*/>}}
|
||||
- {{</* link "/fr/about" >}}About (French){{< /link */>}}
|
||||
- {{</* link "#image" /*/>}}
|
||||
- {{</* link "components/#map" /*/>}}
|
||||
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Nav
|
||||
|
||||
As an example, the following shortcode displays a tab group with vertically aligned pills.
|
||||
@@ -219,7 +269,7 @@ As an example, the following shortcode displays a light navigation header.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* navbar path="about" color="primary" size="md" search="false" menus="sample" title="Brand" mode="false" */>}}
|
||||
{{</* navbar id="navbar-sample" path="blog" color="primary" size="md" search="false" menus="sample" title="Brand" mode="false" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
@@ -4,9 +4,12 @@ title: Components
|
||||
date: 2023-07-21
|
||||
description: Use shortcodes to add predefined components powered by external libraries.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
thumbnail: img/puzzle.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@ryoji__iwata">Ryoji Iwata</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/5siQcvSxCP8">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/puzzle.jpg
|
||||
author: Ryoji Iwata
|
||||
authorURL: https://unsplash.com/@ryoji__iwata
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
||||
modules: ["katex", "leaflet"]
|
||||
---
|
||||
|
@@ -4,9 +4,12 @@ title: First post
|
||||
date: 2022-10-01
|
||||
description: This is my first blog post.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/notepad.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@frederickjmedina">Frederick Medina</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/PdfRE-xB--s">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/notepad.jpg
|
||||
author: Frederick Medina
|
||||
authorURL: https://unsplash.com/@frederickjmedina
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/PdfRE-xB--s
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero.
|
@@ -4,9 +4,12 @@ title: Fourth post
|
||||
date: 2023-01-01
|
||||
description: This is my fourth blog post.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/flowers.jpg # https://picsum.photos/id/106/2592/1728
|
||||
photoCredits: <a href="https://unsplash.com/@flutterhappy">Arvee Marie</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/YnfGtpt2gf4">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/flowers.jpg
|
||||
author: Arvee Marie
|
||||
authorURL: https://unsplash.com/@flutterhappy
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/YnfGtpt2gf4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices.
|
@@ -4,9 +4,12 @@ title: Second post
|
||||
date: 2022-11-01
|
||||
description: This is my second blog post.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/phone.jpg # https://picsum.photos/id/160/3200/2119
|
||||
photoCredits: <a href="https://unsplash.com/@thomweerd">Thom</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/Zdcq3iKly6g">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/phone.jpg
|
||||
author: Thom
|
||||
authorURL: https://unsplash.com/@thomweerd
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/Zdcq3iKly6g
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis.
|
@@ -4,9 +4,12 @@ title: Third post
|
||||
date: 2022-12-01
|
||||
description: This is my third blog post.
|
||||
tags: ["blog"]
|
||||
thumbnail: https://picsum.photos/id/184/4288/2848.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@timdegroot">Tim de Groot</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/yNGQ830uFB4">Unsplash</a>
|
||||
thumbnail:
|
||||
url: https://picsum.photos/id/184/4288/2848.jpg
|
||||
author: Tim de Groot
|
||||
authorURL: https://unsplash.com/@timdegroot
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/yNGQ830uFB4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla.
|
@@ -3,4 +3,4 @@ draft: false
|
||||
outputs:
|
||||
- xml
|
||||
url: browserconfig.xml
|
||||
---
|
||||
---
|
14
exampleSite/content/fr/_index.md
Normal file
14
exampleSite/content/fr/_index.md
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Bienvenue sur Hinode!
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
---
|
||||
|
||||
Un thème de blog et de documentation pour Hugo basé sur Bootstrap 5.
|
||||
|
||||
{{< button href="a-propos" >}}À propos{{< /button>}}
|
50
exampleSite/content/fr/about.md
Normal file
50
exampleSite/content/fr/about.md
Normal file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
slug: a-propos
|
||||
title: À propos
|
||||
description: Un thème de blog et de documentation pour Hugo basé sur Bootstrap 5.
|
||||
date: 2023-02-17
|
||||
updated: 2023-08-02
|
||||
showComments: false
|
||||
---
|
||||
|
||||
<p class="text-center"><svg class="img-fluid w-50"><use href="/img/logo_var.svg#logo"></use></svg></p>
|
||||
|
||||
<section class="section section-sm mt-5">
|
||||
<div class="container-fluid">
|
||||
<div class="row justify-content-center text-center">
|
||||
<div class="row justify-content-center text-center">
|
||||
<div class="col-lg-4">
|
||||
{{< icon fab bootstrap fa-2xl >}}
|
||||
<h2 class="h4">Framework Bootstrap</h2>
|
||||
<p>Créez des sites rapides et réactifs avec Bootstrap 5. Personnalisez facilement votre site avec les fichiers source Sass.</p>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
{{< icon fas magnifying-glass fa-2xl >}}
|
||||
<h2 class="h4">Recherche en texte intégral</h2>
|
||||
<p>Recherchez votre site avec FlexSearch, une bibliothèque de recherche en texte intégral avec zéro dépendances.</p>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
{{< icon fas code fa-2xl >}}
|
||||
<h2 class="h4">Outils de développement</h2>
|
||||
<p>Utilisez Node Package Manager pour automatiser le processus de construction et suivre les dépendances.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
Les fonctionnalités supplémentaires incluent:
|
||||
|
||||
- Passer du mode clair au mode sombre
|
||||
- Prise en charge de plusieurs langues
|
||||
- Composants bootstrap réutilisables à travers des codes et partiels configurables
|
||||
- Documentation versionnée, incluant une navigation latérale et un sélecteur de version.
|
||||
- Commentaires intégrés via une intégration légère avec GitHub via [utteranc.es]({{< param "links.utterances" >}})
|
||||
- Gestion d'images adaptatives pour plusieurs tailles d'écran et résolutions.
|
||||
- Résultats de recherche optimisés, obtenant un score de 100 points pour le référencement (SEO) sur [PageSpeed Insights]({{< param "links.pagespeed" >}}).
|
||||
- Sécurisé par défaut, obtenant un score A+ au test [Mozilla Observatory]({{< param "links.observatory" >}})
|
||||
{.tickmark}
|
||||
|
||||
Hinode est inspiré par les thèmes suivants:
|
||||
|
||||
- [Blist](https://github.com/apvarun/blist-hugo-theme) - Un thème de blog pour Hugo basé sur Tailwind CSS.
|
||||
- [Doks](https://github.com/h-enk/doks) - Un thème Hugo pour la création de sites de documentation sécurisés, rapides et optimisés pour le référencement (SEO), que vous pouvez facilement mettre à jour et personnaliser.
|
18
exampleSite/content/fr/blog/first-post.md
Normal file
18
exampleSite/content/fr/blog/first-post.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Premier article
|
||||
slug: premier-article
|
||||
date: 2022-10-01
|
||||
description: Ceci est mon premier article.
|
||||
tags: ["blog"]
|
||||
thumbnail:
|
||||
url: img/notepad.jpg
|
||||
author: Frederick Medina
|
||||
authorURL: https://unsplash.com/@frederickjmedina
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/PdfRE-xB--s
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero.
|
||||
|
||||
In ac lobortis diam. Curabitur id dui ac nunc mattis rhoncus a sed lorem. Sed lobortis sem turpis, at posuere enim dignissim et. Vivamus fermentum justo quis volutpat volutpat. Proin eget vehicula neque, ut tempus urna. Duis ac ex vel leo pharetra lobortis et vitae lacus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Aliquam erat volutpat. Suspendisse ullamcorper ultrices elementum. Suspendisse mi elit, commodo at varius a, cursus a ligula. Sed et mattis elit, eu luctus arcu. Cras a porttitor libero. Vestibulum tincidunt sed magna at dapibus. Sed quis orci eu lacus aliquam tristique. Integer porttitor ultrices ipsum quis porttitor. Etiam a sodales ligula.
|
20
exampleSite/content/fr/blog/fourth-post.md
Normal file
20
exampleSite/content/fr/blog/fourth-post.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Quatrième article
|
||||
slug: quatrieme-article
|
||||
date: 2023-01-01
|
||||
description: Ceci est mon quatrième article.
|
||||
tags: ["blog"]
|
||||
thumbnail:
|
||||
url: img/flowers.jpg
|
||||
author: Arvee Marie
|
||||
authorURL: https://unsplash.com/@flutterhappy
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/YnfGtpt2gf4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices.
|
||||
|
||||
Pellentesque sit amet sollicitudin nibh. Cras in dolor eget quam feugiat ultricies in ac lectus. Ut venenatis vitae justo quis pretium. Pellentesque vulputate nulla ac est iaculis vulputate. Proin pellentesque sem nec molestie imperdiet. Duis eu molestie sapien, vel ultricies lacus. Donec in felis tempus, rutrum ipsum at, fermentum felis. Praesent mi odio, semper non vulputate vitae, vulputate quis ex.
|
||||
|
||||
Nunc rhoncus eleifend gravida. Aliquam feugiat tristique pellentesque. Pellentesque vel elit sed nulla commodo convallis. Curabitur placerat sapien augue, ac semper metus volutpat non. Sed semper ultricies enim, consequat convallis justo placerat eget. Ut fermentum leo facilisis metus congue commodo. Vestibulum consectetur magna vitae ullamcorper sodales. Nulla lobortis aliquam odio id tincidunt. Suspendisse efficitur auctor tortor non consequat. Quisque sit amet posuere lorem, convallis bibendum nisi. Proin ullamcorper justo tempus dignissim scelerisque. Quisque sit amet sapien libero. Phasellus eget enim velit. Proin ut fermentum dui. Proin gravida tortor in ligula lacinia, id dapibus dui tincidunt. Mauris suscipit nisi et urna consectetur, non venenatis nisi euismod.
|
20
exampleSite/content/fr/blog/second-post.md
Normal file
20
exampleSite/content/fr/blog/second-post.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Deuxième article
|
||||
slug: deuxieme-article
|
||||
date: 2022-11-01
|
||||
description: Ceci est mon deuxième article.
|
||||
tags: ["blog"]
|
||||
thumbnail:
|
||||
url: img/phone.jpg
|
||||
author: Thom
|
||||
authorURL: https://unsplash.com/@thomweerd
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/Zdcq3iKly6g
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis.
|
||||
|
||||
Nunc eget dignissim ex, sed lobortis leo. Suspendisse mollis posuere tellus, in viverra nunc ullamcorper vitae. Nam vel tempor arcu, in imperdiet odio. Fusce malesuada vehicula odio, in iaculis nulla congue eget. Quisque id odio id nisl facilisis posuere porta sit amet mauris. Curabitur lorem leo, tempus id rhoncus eget, placerat vitae lectus. Morbi eu aliquet enim. Nulla malesuada laoreet sodales.
|
||||
|
||||
Nunc volutpat dui in elit euismod, sed egestas purus tristique. Nam in condimentum mauris. Praesent nec suscipit enim. Aliquam dolor ipsum, faucibus vitae purus ac, congue egestas nisi. Donec hendrerit erat eu arcu porttitor rhoncus. Nunc a odio bibendum metus semper pellentesque. Sed at sapien ut est semper eleifend. Aliquam lorem libero, porttitor nec tristique ut, auctor vitae ipsum. Suspendisse pretium pharetra rutrum. Nulla tincidunt tempus enim eu sagittis. Maecenas pulvinar metus a urna mattis dictum sed id tellus.
|
20
exampleSite/content/fr/blog/third-post.md
Normal file
20
exampleSite/content/fr/blog/third-post.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Troisième article
|
||||
slug: troisieme-article
|
||||
date: 2022-12-01
|
||||
description: Ceci est mon troisième article.
|
||||
tags: ["blog"]
|
||||
thumbnail:
|
||||
url: https://picsum.photos/id/184/4288/2848.jpg
|
||||
author: Tim de Groot
|
||||
authorURL: https://unsplash.com/@timdegroot
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/yNGQ830uFB4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla.
|
||||
|
||||
Nulla molestie ultrices vehicula. Etiam iaculis, erat a blandit blandit, nulla tellus dapibus ligula, vitae venenatis turpis diam non felis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed vitae arcu in justo iaculis egestas. In imperdiet arcu vitae pharetra commodo. Quisque ut erat eget nisl semper laoreet vitae eget ligula. Mauris bibendum purus nec vulputate faucibus. In luctus sagittis ante, quis laoreet orci bibendum vitae. Nam at odio accumsan, tincidunt eros at, lacinia metus. In et ultricies sapien, a mollis est. Nunc convallis orci eu tristique euismod. Proin vel ullamcorper diam. Quisque et semper orci. Proin pharetra lorem justo, id malesuada erat feugiat sit amet. Praesent bibendum mi at lorem volutpat suscipit. Morbi sed libero elit.
|
||||
|
||||
Nunc sodales est eu ipsum volutpat, in mollis dui facilisis. Nulla faucibus interdum lectus, a condimentum elit vulputate eu. Nunc ipsum risus, suscipit sit amet nulla ac, pulvinar maximus nulla. In venenatis diam erat, non elementum ante dignissim posuere. Aliquam sem justo, luctus at vestibulum ut, egestas ut quam. Quisque a dolor viverra, aliquam nunc vel, lacinia nulla. In id magna magna. Morbi dapibus pretium sollicitudin. Morbi volutpat augue at felis tristique, quis euismod tellus vulputate. Morbi dui lacus, aliquam eget quam vel, vestibulum faucibus enim. Proin porta pretium metus id venenatis. Aliquam nec tempor lorem. Vivamus euismod est varius sagittis placerat. Maecenas tincidunt elementum libero, at imperdiet elit feugiat vel.
|
@@ -3,4 +3,4 @@ draft: false
|
||||
outputs:
|
||||
- xml
|
||||
url: browserconfig.xml
|
||||
---
|
||||
---
|
5
exampleSite/content/fr/projects/_index.md
Normal file
5
exampleSite/content/fr/projects/_index.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
author: Katheryn Fox
|
||||
title: Projets
|
||||
url: "projets"
|
||||
---
|
12
exampleSite/content/fr/projects/another-project.md
Normal file
12
exampleSite/content/fr/projects/another-project.md
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
author: "Hugo Authors"
|
||||
slug: "autre-projet"
|
||||
title: "Autre projet"
|
||||
url: "projets/autre-projet"
|
||||
date: 2021-07-15
|
||||
description: "Un autre projet."
|
||||
tags: ["javascript", "golang"]
|
||||
icon: fas rocket
|
||||
---
|
||||
|
||||
Vivamus iaculis metus sed magna porta tincidunt. Aliquam molestie eget orci eu elementum. Integer pellentesque dolor sit amet suscipit maximus. Duis consequat, massa vitae volutpat rhoncus, erat augue venenatis velit, a auctor leo nulla nec turpis. Nunc ut libero sapien. Vivamus aliquam ultrices vestibulum. Sed sit amet vestibulum dolor, ut vehicula diam. Sed felis purus, feugiat vitae vulputate quis, sodales vitae dui. Pellentesque volutpat fringilla sapien varius condimentum. Integer odio massa, pharetra at bibendum vitae, aliquam nec erat.
|
12
exampleSite/content/fr/projects/sample-project.md
Normal file
12
exampleSite/content/fr/projects/sample-project.md
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
author: "Hugo Authors"
|
||||
slug: "exemple-de-projet"
|
||||
title: "Exemple de projet"
|
||||
url: "projets/exemple-de-projet"
|
||||
date: 2021-07-15
|
||||
description: "Un exemple de projet."
|
||||
tags: ["html", "css"]
|
||||
icon: fab docker
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
14
exampleSite/content/nl/_index.md
Normal file
14
exampleSite/content/nl/_index.md
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Welkom bij Hinode!
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
---
|
||||
|
||||
Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.
|
||||
|
||||
{{< button href="over-mij" >}}Over mij{{< /button>}}
|
4
exampleSite/content/nl/blog/_index.md
Normal file
4
exampleSite/content/nl/blog/_index.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Blog
|
||||
---
|
@@ -5,9 +5,12 @@ slug: eerste-artikel
|
||||
date: 2022-10-01
|
||||
description: Dit is mijn eerste artikel.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/notepad.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@frederickjmedina">Frederick Medina</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/PdfRE-xB--s">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/notepad.jpg
|
||||
author: Frederick Medina
|
||||
authorURL: https://unsplash.com/@frederickjmedina
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/PdfRE-xB--s
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero.
|
@@ -5,9 +5,12 @@ slug: vierde-artikel
|
||||
date: 2023-01-01
|
||||
description: Dit is mijn vierde artikel.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/flowers.jpg # https://picsum.photos/id/106/2592/1728
|
||||
photoCredits: <a href="https://unsplash.com/@flutterhappy">Arvee Marie</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/YnfGtpt2gf4">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/flowers.jpg
|
||||
author: Arvee Marie
|
||||
authorURL: https://unsplash.com/@flutterhappy
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/YnfGtpt2gf4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices.
|
@@ -5,9 +5,12 @@ slug: tweede-artikel
|
||||
date: 2022-11-01
|
||||
description: Dit is mijn tweede artikel.
|
||||
tags: ["blog"]
|
||||
thumbnail: img/phone.jpg # https://picsum.photos/id/160/3200/2119
|
||||
photoCredits: <a href="https://unsplash.com/@thomweerd">Thom</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/Zdcq3iKly6g">Unsplash</a>
|
||||
thumbnail:
|
||||
url: img/phone.jpg
|
||||
author: Thom
|
||||
authorURL: https://unsplash.com/@thomweerd
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/Zdcq3iKly6g
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis.
|
@@ -5,9 +5,12 @@ slug: derde-artikel
|
||||
date: 2022-12-01
|
||||
description: Dit is mijn derde artikel.
|
||||
tags: ["blog"]
|
||||
thumbnail: https://picsum.photos/id/184/4288/2848.jpg
|
||||
photoCredits: <a href="https://unsplash.com/@timdegroot">Tim de Groot</a>
|
||||
photoSource: <a href="https://unsplash.com/photos/yNGQ830uFB4">Unsplash</a>
|
||||
thumbnail:
|
||||
url: https://picsum.photos/id/184/4288/2848.jpg
|
||||
author: Tim de Groot
|
||||
authorURL: https://unsplash.com/@timdegroot
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/yNGQ830uFB4
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla.
|
6
exampleSite/content/nl/browserconfig.md
Normal file
6
exampleSite/content/nl/browserconfig.md
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
draft: false
|
||||
outputs:
|
||||
- xml
|
||||
url: browserconfig.xml
|
||||
---
|
11
exampleSite/go.mod
Normal file
11
exampleSite/go.mod
Normal file
@@ -0,0 +1,11 @@
|
||||
module github.com/gethinode/hinode-test
|
||||
|
||||
go 1.19
|
||||
|
||||
require (
|
||||
github.com/gethinode/mod-bootstrap v1.1.1 // indirect
|
||||
github.com/gethinode/mod-flexsearch v1.4.0 // indirect
|
||||
github.com/gethinode/mod-fontawesome v1.2.5 // indirect
|
||||
github.com/gethinode/mod-katex v1.0.2 // indirect
|
||||
github.com/gethinode/mod-leaflet v0.3.4 // indirect
|
||||
)
|
16
exampleSite/go.sum
Normal file
16
exampleSite/go.sum
Normal file
@@ -0,0 +1,16 @@
|
||||
github.com/gethinode/mod-bootstrap v1.1.1 h1:Tx4M5hGVOFrEaxnUONDAm6N9xuRi5UphKlT7F26HujU=
|
||||
github.com/gethinode/mod-bootstrap v1.1.1/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8=
|
||||
github.com/gethinode/mod-flexsearch v1.2.0 h1:SSMpWzK9SMbi9QRYfil9PJZLLWWLHWzlTc69UxtSWAA=
|
||||
github.com/gethinode/mod-flexsearch v1.2.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.3.0 h1:RbfEDw219Y1rOVp9lHmy5ePdF9lyPalDu2J5oVeejrU=
|
||||
github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc=
|
||||
github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.5 h1:RqkLRj6+s+gM4nKd0IwNMMDA8cRmxfp0fxkVH4FdAGU=
|
||||
github.com/gethinode/mod-fontawesome v1.2.5/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-katex v1.0.2 h1:pIG4n3qLl/IVe7BEiwn+GL8r5lOCtF6FDxlcrPKdAXk=
|
||||
github.com/gethinode/mod-katex v1.0.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4=
|
||||
github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
464
exampleSite/hugo_stats.json
Normal file
464
exampleSite/hugo_stats.json
Normal file
@@ -0,0 +1,464 @@
|
||||
{
|
||||
"htmlElements": {
|
||||
"tags": [
|
||||
"a",
|
||||
"body",
|
||||
"br",
|
||||
"button",
|
||||
"code",
|
||||
"div",
|
||||
"figcaption",
|
||||
"figure",
|
||||
"footer",
|
||||
"form",
|
||||
"h1",
|
||||
"h2",
|
||||
"h3",
|
||||
"h4",
|
||||
"h5",
|
||||
"h6",
|
||||
"head",
|
||||
"hr",
|
||||
"html",
|
||||
"i",
|
||||
"img",
|
||||
"input",
|
||||
"li",
|
||||
"link",
|
||||
"meta",
|
||||
"nav",
|
||||
"noscript",
|
||||
"ol",
|
||||
"p",
|
||||
"path",
|
||||
"pre",
|
||||
"script",
|
||||
"section",
|
||||
"small",
|
||||
"span",
|
||||
"strong",
|
||||
"svg",
|
||||
"time",
|
||||
"title",
|
||||
"ul",
|
||||
"use"
|
||||
],
|
||||
"classes": [
|
||||
"accordion",
|
||||
"accordion-body",
|
||||
"accordion-button",
|
||||
"accordion-collapse",
|
||||
"accordion-header",
|
||||
"accordion-item",
|
||||
"active",
|
||||
"alert",
|
||||
"alert-danger",
|
||||
"alert-dismissible",
|
||||
"align-content-center",
|
||||
"align-items-center",
|
||||
"align-items-end",
|
||||
"align-items-start",
|
||||
"align-middle",
|
||||
"align-self-center",
|
||||
"anchor",
|
||||
"badge",
|
||||
"bg-body",
|
||||
"bg-body-tertiary",
|
||||
"bg-danger",
|
||||
"bg-info",
|
||||
"bg-opacity-10",
|
||||
"bg-primary",
|
||||
"bg-primary-subtle",
|
||||
"bg-secondary",
|
||||
"border",
|
||||
"border-0",
|
||||
"border-1",
|
||||
"border-bottom",
|
||||
"border-end",
|
||||
"border-none",
|
||||
"border-start",
|
||||
"border-top",
|
||||
"bottom-0",
|
||||
"bottom-bar",
|
||||
"breadcrumb",
|
||||
"breadcrumb-item",
|
||||
"btn",
|
||||
"btn-close",
|
||||
"btn-group",
|
||||
"btn-light",
|
||||
"btn-outline-primary",
|
||||
"btn-outline-secondary",
|
||||
"btn-primary",
|
||||
"btn-secondary",
|
||||
"btn-sm",
|
||||
"btn-social",
|
||||
"card",
|
||||
"card-body",
|
||||
"card-body-link",
|
||||
"card-emphasize",
|
||||
"card-img-top",
|
||||
"card-img-wrap",
|
||||
"card-text",
|
||||
"card-title",
|
||||
"card-zoom",
|
||||
"carousel",
|
||||
"carousel-caption",
|
||||
"carousel-control-next",
|
||||
"carousel-control-next-icon",
|
||||
"carousel-control-prev",
|
||||
"carousel-control-prev-icon",
|
||||
"carousel-indicators",
|
||||
"carousel-inner",
|
||||
"carousel-item",
|
||||
"chroma",
|
||||
"col",
|
||||
"col-12",
|
||||
"col-3",
|
||||
"col-4",
|
||||
"col-6",
|
||||
"col-8",
|
||||
"col-9",
|
||||
"col-lg-2",
|
||||
"col-lg-4",
|
||||
"col-lg-8",
|
||||
"col-md-10",
|
||||
"col-md-2",
|
||||
"col-md-4",
|
||||
"col-md-8",
|
||||
"col-md-auto",
|
||||
"col-sm-12",
|
||||
"col-sm-3",
|
||||
"col-sm-6",
|
||||
"collapse",
|
||||
"collapsed",
|
||||
"container",
|
||||
"container-fluid",
|
||||
"container-xxl",
|
||||
"d-block",
|
||||
"d-flex",
|
||||
"d-grid",
|
||||
"d-inline",
|
||||
"d-inline-flex",
|
||||
"d-lg-block",
|
||||
"d-md-block",
|
||||
"d-md-flex",
|
||||
"d-md-none",
|
||||
"d-none",
|
||||
"d-none-dark",
|
||||
"d-none-light",
|
||||
"d-sm-block",
|
||||
"d-sm-none",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"dropdown",
|
||||
"dropdown-divider-bg",
|
||||
"dropdown-item",
|
||||
"dropdown-menu",
|
||||
"dropdown-menu-end",
|
||||
"dropdown-toggle",
|
||||
"emphasis",
|
||||
"emphasis-dark",
|
||||
"end-0",
|
||||
"fa",
|
||||
"fa-10x",
|
||||
"fa-2x",
|
||||
"fa-2xl",
|
||||
"fa-2xs",
|
||||
"fa-arrow-left",
|
||||
"fa-arrow-right",
|
||||
"fa-bootstrap",
|
||||
"fa-circle-check",
|
||||
"fa-circle-half-stroke",
|
||||
"fa-code",
|
||||
"fa-docker",
|
||||
"fa-ellipsis",
|
||||
"fa-face-frown",
|
||||
"fa-facebook",
|
||||
"fa-fluid",
|
||||
"fa-fw",
|
||||
"fa-github",
|
||||
"fa-globe",
|
||||
"fa-heart",
|
||||
"fa-house",
|
||||
"fa-link",
|
||||
"fa-linkedin",
|
||||
"fa-magnifying-glass",
|
||||
"fa-medium",
|
||||
"fa-moon",
|
||||
"fa-rocket",
|
||||
"fa-share-nodes",
|
||||
"fa-sort",
|
||||
"fa-square-check",
|
||||
"fa-sun",
|
||||
"fa-up-right-from-square",
|
||||
"fa-whatsapp",
|
||||
"fa-wrapper",
|
||||
"fa-x-twitter",
|
||||
"fab",
|
||||
"fade",
|
||||
"fas",
|
||||
"feature",
|
||||
"figure-caption",
|
||||
"fixed-top",
|
||||
"flex-column",
|
||||
"flex-fill",
|
||||
"flex-grow-1",
|
||||
"flex-wrap",
|
||||
"font-monospace",
|
||||
"footer",
|
||||
"form-control",
|
||||
"fs-3",
|
||||
"fs-5",
|
||||
"fw-30",
|
||||
"fw-bold",
|
||||
"fw-semibold",
|
||||
"g-0",
|
||||
"gap-2",
|
||||
"gap-3",
|
||||
"gradient",
|
||||
"h-100",
|
||||
"h4",
|
||||
"h6",
|
||||
"heading",
|
||||
"highlight",
|
||||
"hstack",
|
||||
"img-fluid",
|
||||
"img-wrap",
|
||||
"invisible",
|
||||
"is-search",
|
||||
"justify-content-between",
|
||||
"justify-content-center",
|
||||
"justify-content-end",
|
||||
"justify-content-start",
|
||||
"lead",
|
||||
"leaflet-map",
|
||||
"link-bg-body",
|
||||
"link-bg-body-tertiary",
|
||||
"link-bg-footer",
|
||||
"link-primary",
|
||||
"link-secondary",
|
||||
"link-success",
|
||||
"link-warning",
|
||||
"m-0",
|
||||
"main-nav-toggler",
|
||||
"mb-0",
|
||||
"mb-3",
|
||||
"mb-4",
|
||||
"mb-5",
|
||||
"mb-lg-5",
|
||||
"me-3",
|
||||
"me-auto",
|
||||
"middle-bar",
|
||||
"min-vh-100",
|
||||
"ms-1",
|
||||
"ms-3",
|
||||
"ms-auto",
|
||||
"ms-md-3",
|
||||
"mt-2",
|
||||
"mt-3",
|
||||
"mt-5",
|
||||
"mt-auto",
|
||||
"multi-docs-collapse-14",
|
||||
"multi-file-collapse-1",
|
||||
"mx-auto",
|
||||
"mx-md-2",
|
||||
"my-2",
|
||||
"my-auto",
|
||||
"my-md-0",
|
||||
"nav",
|
||||
"nav-item",
|
||||
"nav-link",
|
||||
"nav-pills",
|
||||
"nav-tabs",
|
||||
"navbar",
|
||||
"navbar-brand",
|
||||
"navbar-collapse",
|
||||
"navbar-contrast",
|
||||
"navbar-expand-md",
|
||||
"navbar-nav",
|
||||
"navbar-nav-scroll",
|
||||
"navbar-toggler",
|
||||
"next",
|
||||
"no-js",
|
||||
"order-1",
|
||||
"order-2",
|
||||
"order-3",
|
||||
"order-4",
|
||||
"order-first",
|
||||
"order-sm-2",
|
||||
"order-sm-3",
|
||||
"p-0",
|
||||
"p-1",
|
||||
"p-2",
|
||||
"p-3",
|
||||
"p-4",
|
||||
"pb-2",
|
||||
"pb-3",
|
||||
"pb-5",
|
||||
"pe-3",
|
||||
"position-absolute",
|
||||
"position-fixed",
|
||||
"position-relative",
|
||||
"post-date",
|
||||
"previous",
|
||||
"ps-1",
|
||||
"ps-3",
|
||||
"ps-xl-3",
|
||||
"pt-3",
|
||||
"px-3",
|
||||
"px-4",
|
||||
"px-xxl-0",
|
||||
"py-1",
|
||||
"py-2",
|
||||
"py-3",
|
||||
"py-5",
|
||||
"py-md-1",
|
||||
"ratio",
|
||||
"ratio-16x9",
|
||||
"rounded",
|
||||
"rounded-2",
|
||||
"rounded-bottom",
|
||||
"rounded-pill",
|
||||
"rounded-top",
|
||||
"row",
|
||||
"row-cols-1",
|
||||
"row-cols-2",
|
||||
"row-cols-md-3",
|
||||
"row-cols-sm-2",
|
||||
"row-cols-sm-3",
|
||||
"row-cols-sm-4",
|
||||
"search",
|
||||
"section",
|
||||
"section-sm",
|
||||
"shadow",
|
||||
"show",
|
||||
"slide",
|
||||
"small",
|
||||
"spinner-border",
|
||||
"start-100",
|
||||
"sticky-top",
|
||||
"stretched-link",
|
||||
"svg-inline--fa",
|
||||
"switch-mode-collapsed",
|
||||
"syntax-highlight",
|
||||
"tab-content",
|
||||
"tab-pane",
|
||||
"tag-link",
|
||||
"text-bg-body",
|
||||
"text-bg-body-tertiary",
|
||||
"text-bg-info",
|
||||
"text-bg-primary",
|
||||
"text-bg-success",
|
||||
"text-bg-warning",
|
||||
"text-body",
|
||||
"text-body-secondary",
|
||||
"text-break",
|
||||
"text-center",
|
||||
"text-decoration-none",
|
||||
"text-end",
|
||||
"text-info",
|
||||
"text-nowrap",
|
||||
"text-right",
|
||||
"text-secondary",
|
||||
"text-sm-start",
|
||||
"text-uppercase",
|
||||
"theme-icon",
|
||||
"theme-icon-active",
|
||||
"tickmark",
|
||||
"timeline",
|
||||
"timeline-bg-dark",
|
||||
"timeline-connector-end",
|
||||
"timeline-connector-start",
|
||||
"timeline-description-text-end",
|
||||
"timeline-description-text-start",
|
||||
"timeline-dot",
|
||||
"timeline-info",
|
||||
"timeline-panel-end",
|
||||
"timeline-panel-start",
|
||||
"timeline-primary",
|
||||
"timeline-semi-circle-end",
|
||||
"timeline-semi-circle-start",
|
||||
"timeline-sm",
|
||||
"timeline-success",
|
||||
"timeline-warning",
|
||||
"toast",
|
||||
"toast-body",
|
||||
"toast-container",
|
||||
"toast-header",
|
||||
"toc",
|
||||
"toc-button",
|
||||
"toc-panel",
|
||||
"toc-sidebar",
|
||||
"toggler-icon",
|
||||
"top-0",
|
||||
"top-bar",
|
||||
"translate-middle",
|
||||
"visually-hidden",
|
||||
"vr",
|
||||
"w-100",
|
||||
"w-50"
|
||||
],
|
||||
"ids": [
|
||||
"-theme",
|
||||
"-theme-collapsed",
|
||||
"TableOfContents",
|
||||
"accordion",
|
||||
"accordion-0",
|
||||
"accordion-0-heading-0",
|
||||
"accordion-0-heading-1",
|
||||
"accordion-0-heading-2",
|
||||
"accordion-0-item-0",
|
||||
"accordion-0-item-1",
|
||||
"accordion-0-item-2",
|
||||
"alert",
|
||||
"badge",
|
||||
"body-docs-collapse-14",
|
||||
"body-file-collapse-1",
|
||||
"breadcrumb",
|
||||
"btn-webshare",
|
||||
"button",
|
||||
"button-group",
|
||||
"card",
|
||||
"carousel",
|
||||
"carousel-0",
|
||||
"collapse",
|
||||
"collapse-1",
|
||||
"command-prompt",
|
||||
"docs",
|
||||
"example",
|
||||
"file",
|
||||
"footer-docs-collapse-14",
|
||||
"footer-file-collapse-1",
|
||||
"formula-katex",
|
||||
"icon",
|
||||
"image",
|
||||
"leaflet-map-0",
|
||||
"link",
|
||||
"map",
|
||||
"nav",
|
||||
"nav-0",
|
||||
"nav-0-0",
|
||||
"nav-0-1",
|
||||
"nav-0-2",
|
||||
"nav-0-btn-0",
|
||||
"nav-0-btn-1",
|
||||
"nav-0-btn-2",
|
||||
"navbar",
|
||||
"navbar-0-collapse",
|
||||
"navbar-sample-collapse",
|
||||
"release",
|
||||
"search",
|
||||
"spinner",
|
||||
"suggestions",
|
||||
"timeline",
|
||||
"toast",
|
||||
"toast-container",
|
||||
"toast-copied-code-message",
|
||||
"toast-example-1",
|
||||
"toast-example-2",
|
||||
"toast-message-email-4",
|
||||
"toc-collapse",
|
||||
"tooltip"
|
||||
]
|
||||
}
|
||||
}
|
6
go.mod
6
go.mod
@@ -4,8 +4,8 @@ go 1.19
|
||||
|
||||
require (
|
||||
github.com/gethinode/mod-bootstrap v1.1.1 // indirect
|
||||
github.com/gethinode/mod-flexsearch v1.1.4 // indirect
|
||||
github.com/gethinode/mod-fontawesome v1.2.2 // indirect
|
||||
github.com/gethinode/mod-flexsearch v1.4.0 // indirect
|
||||
github.com/gethinode/mod-fontawesome v1.2.5 // indirect
|
||||
github.com/gethinode/mod-katex v1.0.2 // indirect
|
||||
github.com/gethinode/mod-leaflet v0.3.3 // indirect
|
||||
github.com/gethinode/mod-leaflet v0.3.4 // indirect
|
||||
)
|
||||
|
14
go.sum
14
go.sum
@@ -16,6 +16,12 @@ github.com/gethinode/mod-flexsearch v1.1.3 h1:lzmSvnJL6ABjp03avYzSvJJ7hw01CpHap1
|
||||
github.com/gethinode/mod-flexsearch v1.1.3/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.1.4 h1:dJvwBxYlLe/VGlctLn8k89STJ5toATIjNnXIlNeanOY=
|
||||
github.com/gethinode/mod-flexsearch v1.1.4/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.2.0 h1:SSMpWzK9SMbi9QRYfil9PJZLLWWLHWzlTc69UxtSWAA=
|
||||
github.com/gethinode/mod-flexsearch v1.2.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.3.0 h1:RbfEDw219Y1rOVp9lHmy5ePdF9lyPalDu2J5oVeejrU=
|
||||
github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc=
|
||||
github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg=
|
||||
github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
|
||||
@@ -26,6 +32,12 @@ github.com/gethinode/mod-fontawesome v1.2.1 h1:k7z5ZRsNxCohZjlZm8jVAzmTPk17c6xMY
|
||||
github.com/gethinode/mod-fontawesome v1.2.1/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.2 h1:rA9EtuE/LeFQmKSA7ampfUknxsR1mu7hpi4wpA89gX8=
|
||||
github.com/gethinode/mod-fontawesome v1.2.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.3 h1:RHWd+E72+m29xaC45m/3CF35C201jehw0dcozVBdPrI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.3/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.2.5 h1:RqkLRj6+s+gM4nKd0IwNMMDA8cRmxfp0fxkVH4FdAGU=
|
||||
github.com/gethinode/mod-fontawesome v1.2.5/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
|
||||
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
|
||||
@@ -38,3 +50,5 @@ github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoS
|
||||
github.com/gethinode/mod-leaflet v0.3.1/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||
github.com/gethinode/mod-leaflet v0.3.3 h1:isnjja6VRFvVWBatYSouh46TXSJg2C4/E2BQTrQw+yI=
|
||||
github.com/gethinode/mod-leaflet v0.3.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||
github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4=
|
||||
github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||
|
186
hugo_stats.json
Normal file
186
hugo_stats.json
Normal file
@@ -0,0 +1,186 @@
|
||||
{
|
||||
"htmlElements": {
|
||||
"tags": [
|
||||
"a",
|
||||
"body",
|
||||
"button",
|
||||
"div",
|
||||
"footer",
|
||||
"form",
|
||||
"head",
|
||||
"hr",
|
||||
"html",
|
||||
"img",
|
||||
"input",
|
||||
"li",
|
||||
"link",
|
||||
"meta",
|
||||
"nav",
|
||||
"p",
|
||||
"path",
|
||||
"script",
|
||||
"small",
|
||||
"span",
|
||||
"strong",
|
||||
"svg",
|
||||
"title",
|
||||
"ul"
|
||||
],
|
||||
"classes": [
|
||||
"active",
|
||||
"align-content-center",
|
||||
"align-items-center",
|
||||
"align-self-center",
|
||||
"bg-body",
|
||||
"bg-info",
|
||||
"bg-opacity-10",
|
||||
"bg-primary",
|
||||
"bottom-0",
|
||||
"bottom-bar",
|
||||
"btn",
|
||||
"btn-close",
|
||||
"btn-primary",
|
||||
"col",
|
||||
"col-12",
|
||||
"col-lg-2",
|
||||
"col-lg-4",
|
||||
"col-md-2",
|
||||
"col-md-4",
|
||||
"col-md-8",
|
||||
"col-md-auto",
|
||||
"col-sm-12",
|
||||
"col-sm-6",
|
||||
"collapse",
|
||||
"collapsed",
|
||||
"container-fluid",
|
||||
"container-xxl",
|
||||
"d-block",
|
||||
"d-flex",
|
||||
"d-inline",
|
||||
"d-lg-block",
|
||||
"d-md-block",
|
||||
"d-md-flex",
|
||||
"d-md-none",
|
||||
"d-none",
|
||||
"d-sm-none",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"dropdown",
|
||||
"dropdown-divider-bg",
|
||||
"dropdown-item",
|
||||
"dropdown-menu",
|
||||
"dropdown-menu-end",
|
||||
"dropdown-toggle",
|
||||
"emphasis",
|
||||
"end-0",
|
||||
"fa",
|
||||
"fa-10x",
|
||||
"fa-2x",
|
||||
"fa-book-open",
|
||||
"fa-circle-half-stroke",
|
||||
"fa-ellipsis",
|
||||
"fa-face-frown",
|
||||
"fa-fw",
|
||||
"fa-github",
|
||||
"fa-linkedin",
|
||||
"fa-medium",
|
||||
"fa-moon",
|
||||
"fa-sun",
|
||||
"fab",
|
||||
"fas",
|
||||
"feature",
|
||||
"fixed-top",
|
||||
"flex-column",
|
||||
"flex-fill",
|
||||
"flex-grow-1",
|
||||
"flex-wrap",
|
||||
"footer",
|
||||
"form-control",
|
||||
"fs-3",
|
||||
"fw-30",
|
||||
"fw-bold",
|
||||
"h-100",
|
||||
"img-fluid",
|
||||
"img-wrap",
|
||||
"invisible",
|
||||
"is-search",
|
||||
"justify-content-center",
|
||||
"link-bg-footer",
|
||||
"link-secondary",
|
||||
"main-nav-toggler",
|
||||
"mb-4",
|
||||
"me-auto",
|
||||
"middle-bar",
|
||||
"min-vh-100",
|
||||
"ms-auto",
|
||||
"ms-md-3",
|
||||
"mt-3",
|
||||
"mt-5",
|
||||
"mx-auto",
|
||||
"mx-md-2",
|
||||
"my-auto",
|
||||
"nav-item",
|
||||
"nav-link",
|
||||
"navbar",
|
||||
"navbar-brand",
|
||||
"navbar-collapse",
|
||||
"navbar-expand-md",
|
||||
"navbar-nav",
|
||||
"navbar-toggler",
|
||||
"no-js",
|
||||
"order-1",
|
||||
"order-2",
|
||||
"order-3",
|
||||
"order-4",
|
||||
"order-first",
|
||||
"order-sm-2",
|
||||
"order-sm-3",
|
||||
"p-0",
|
||||
"p-2",
|
||||
"p-3",
|
||||
"p-4",
|
||||
"pb-5",
|
||||
"pe-1",
|
||||
"position-fixed",
|
||||
"position-relative",
|
||||
"px-3",
|
||||
"px-4",
|
||||
"px-xxl-0",
|
||||
"py-2",
|
||||
"py-5",
|
||||
"py-md-1",
|
||||
"rounded",
|
||||
"row",
|
||||
"row-cols-1",
|
||||
"row-cols-sm-3",
|
||||
"row-cols-sm-4",
|
||||
"search",
|
||||
"shadow",
|
||||
"svg-inline--fa",
|
||||
"switch-mode-collapsed",
|
||||
"text-center",
|
||||
"text-decoration-none",
|
||||
"text-secondary",
|
||||
"text-sm-start",
|
||||
"theme-icon",
|
||||
"theme-icon-active",
|
||||
"toast",
|
||||
"toast-body",
|
||||
"toast-container",
|
||||
"toast-header",
|
||||
"toggler-icon",
|
||||
"top-bar",
|
||||
"vr",
|
||||
"w-100"
|
||||
],
|
||||
"ids": [
|
||||
"-theme",
|
||||
"-theme-collapsed",
|
||||
"navbar-0-collapse",
|
||||
"search",
|
||||
"suggestions",
|
||||
"toast-container",
|
||||
"toast-copied-code-message"
|
||||
]
|
||||
}
|
||||
}
|
163
i18n/de.yaml
163
i18n/de.yaml
@@ -1,52 +1,46 @@
|
||||
# Content
|
||||
- id: about
|
||||
translation: "Über mich"
|
||||
# Single pages
|
||||
- id: postedOnDate
|
||||
translation: "Veröffentlicht am {{ . }}"
|
||||
- id: lastModified
|
||||
translation: "Zuletzt verändert am {{ . }}"
|
||||
- id: translationsLabel
|
||||
translation: "Andere Sprachen: "
|
||||
- id: translationsSeparator
|
||||
translation: ", "
|
||||
- id: more
|
||||
translation: "Weitere {{ . }}"
|
||||
- id: readMore
|
||||
translation: "Weiterlesen"
|
||||
- id: moreBlog
|
||||
translation: "Weitere Beiträge"
|
||||
- id: olderBlog
|
||||
translation: "Ältere Beiträge"
|
||||
- id: recentBlog
|
||||
translation: "Aktuelle Beiträge"
|
||||
- id: newerBlog
|
||||
translation: "Neuere Beiträge"
|
||||
- id: previousBlog
|
||||
translation: "Vorheriger Beitrag"
|
||||
- id: nextBlog
|
||||
translation: "Nächster Beitrag"
|
||||
- id: recentProjects
|
||||
translation: "Projekte"
|
||||
- id: moreProjects
|
||||
translation: "Weitere Projekte"
|
||||
- id: read
|
||||
translation: "Lesezeit"
|
||||
- id: minutesShort
|
||||
translation: "Min."
|
||||
- id: words
|
||||
translation: "Wörter"
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "Alle Rechte vorbehalten"
|
||||
- id: photoBy
|
||||
translation: "Foto von"
|
||||
- id: photoOn
|
||||
translation: "auf"
|
||||
- id: photoFull
|
||||
translation: "Foto von %s auf %s"
|
||||
- id: photoShort
|
||||
translation: "Foto von {{ . }}"
|
||||
- id: draft
|
||||
translation: "Entwurf"
|
||||
|
||||
# List pages
|
||||
- id: article
|
||||
translation: "Artikel"
|
||||
- id: articles
|
||||
translation: "Artikel"
|
||||
- id: more
|
||||
translation: "Weitere {{ . }}"
|
||||
|
||||
# Sharing
|
||||
- id: shareLink
|
||||
translation: "Diese Seite teilen per {{ . }}"
|
||||
- id: shareSystem
|
||||
translation: "Betriebssystem"
|
||||
- id: copyToClipboard
|
||||
translation: "In Zwischenablage kopieren"
|
||||
- id: copiedToClipboard
|
||||
translation: "Der Text befindet sich in die Zwischenablage"
|
||||
- id: link
|
||||
translation: "Link zur Webseite"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
|
||||
# Pagination
|
||||
- id: paginationNav
|
||||
translation: "Navigation auf der Seite"
|
||||
- id: paginationPrevious
|
||||
translation: "Vorherige"
|
||||
- id: paginationNext
|
||||
@@ -55,78 +49,65 @@
|
||||
translation: "Erste"
|
||||
- id: paginationLast
|
||||
translation: "Letzte"
|
||||
- id: toggleSidebar
|
||||
translation: "Menünavigation anzuzeigen oder auszublenden"
|
||||
|
||||
# Navigation
|
||||
- id: colorMode
|
||||
translation: "Modus"
|
||||
translation: "Thema umschalten"
|
||||
- id: colorLight
|
||||
translation: "Licht"
|
||||
translation: "Light"
|
||||
- id: colorDark
|
||||
translation: "Dunkel"
|
||||
translation: "Dark"
|
||||
- id: colorAuto
|
||||
translation: "Automatisch"
|
||||
translation: "Auto"
|
||||
- id: toggleMainNav
|
||||
translation: "Hauptmenü anzuzeigen oder auszublenden"
|
||||
- id: home
|
||||
translation: "Startseite"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Sprache"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "Auf dieser Seite"
|
||||
- id: seeAlso
|
||||
translation: "Siehe auch"
|
||||
|
||||
# Sidebar
|
||||
- id: toggleSidebar
|
||||
translation: "Menünavigation anzuzeigen oder auszublenden"
|
||||
|
||||
# Feature
|
||||
- id: addedFeature
|
||||
translation: "Eingefügt seit {{ . }}"
|
||||
- id: deprecatedFeature
|
||||
translation: "Veraltet seit {{ . }}"
|
||||
|
||||
# Versioning
|
||||
- id: latest
|
||||
translation: "neueste"
|
||||
- id: allVersions
|
||||
translation: "Alle Versionen"
|
||||
- id: newerVersionAlert
|
||||
translation: "Es gibt eine neuere Version von {{ . }}!"
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
translation: "Diese Seite existiert nicht. Versuche es über die"
|
||||
translation: "Diese Seite existiert nicht. Versuche es über die {{ . }}"
|
||||
- id: pageNotFoundTitle
|
||||
translation: "Nicht gefunden"
|
||||
- id: pageNotFoundHome
|
||||
translation: "Startseite"
|
||||
|
||||
# Footer
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "Alle Rechte vorbehalten"
|
||||
- id: poweredBy
|
||||
translation: "Ermöglicht durch {{ . }}."
|
||||
|
||||
# Navigation
|
||||
- id: toggleNavigation
|
||||
translation: "Navigation umschalten"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Sprache"
|
||||
- id: gcseLabelShort
|
||||
translation: "Suche"
|
||||
- id: gcseLabelLong
|
||||
translation: "Suche {{ .Site.Title }}"
|
||||
- id: gcseClose
|
||||
translation: "Schließen"
|
||||
- id: home
|
||||
translation: "Startseite"
|
||||
|
||||
# Staticman
|
||||
- id: noComment
|
||||
translation: "Kein Kommentar"
|
||||
- id: oneComment
|
||||
translation: "Kommentar"
|
||||
- id: moreComment
|
||||
translation: "Kommentare"
|
||||
- id: useMarkdown
|
||||
translation: "Du kannst Markdown-Syntax benutzen"
|
||||
- id: yourName
|
||||
translation: "Dein Name"
|
||||
- id: yourEmail
|
||||
translation: "Deine E-Mail-Adresse"
|
||||
- id: yourWebsite
|
||||
translation: "Deine Webseite"
|
||||
|
||||
# Delayed Disqus
|
||||
# Comments
|
||||
- id: show
|
||||
translation: "Zeige"
|
||||
- id: comments
|
||||
translation: "Kommentare"
|
||||
|
||||
# Related posts
|
||||
- id: seeAlso
|
||||
translation: "Siehe auch"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "Auf dieser Seite"
|
||||
|
||||
# Search
|
||||
- id: ui_search
|
||||
translation: "Durchsuche diese Seite..."
|
||||
- id: ui_no_results
|
||||
translation: "Keine Ergebnisse für"
|
||||
|
||||
# Draft
|
||||
- id: draft
|
||||
translation: "Entwurf"
|
||||
|
162
i18n/en.yaml
162
i18n/en.yaml
@@ -1,60 +1,46 @@
|
||||
# Content
|
||||
- id: about
|
||||
translation: "About"
|
||||
# Single pages
|
||||
- id: postedOnDate
|
||||
translation: "Posted on {{ . }}"
|
||||
- id: lastModified
|
||||
translation: "Last modified on {{ . }}"
|
||||
- id: translationsLabel
|
||||
translation: "Other languages: "
|
||||
- id: translationsSeparator
|
||||
translation: ", "
|
||||
- id: more
|
||||
translation: "More {{ . }}"
|
||||
- id: readMore
|
||||
translation: "Read More"
|
||||
- id: moreBlog
|
||||
translation: "More Posts"
|
||||
- id: olderBlog
|
||||
translation: "Older Posts"
|
||||
- id: recentBlog
|
||||
translation: "Recent Posts"
|
||||
- id: newerBlog
|
||||
translation: "Newer Posts"
|
||||
- id: previousBlog
|
||||
translation: "Previous Post"
|
||||
- id: nextBlog
|
||||
translation: "Next Post"
|
||||
- id: recentProjects
|
||||
translation: "Projects"
|
||||
- id: moreFeatures
|
||||
translation: "More Features"
|
||||
- id: moreGuides
|
||||
translation: "More Guides"
|
||||
- id: moreOpensource
|
||||
translation: "More Features"
|
||||
- id: moreProjects
|
||||
translation: "More Projects"
|
||||
- id: moreUsers
|
||||
translation: "More Users"
|
||||
- id: read
|
||||
translation: "read"
|
||||
- id: minutesShort
|
||||
translation: "min"
|
||||
- id: words
|
||||
translation: "words"
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "All rights reserved"
|
||||
- id: photoBy
|
||||
translation: "Photo by"
|
||||
- id: photoFull
|
||||
translation: "Photo by %s on %s"
|
||||
- id: photoShort
|
||||
translation: "Photo by {{ . }}"
|
||||
- id: photoOn
|
||||
translation: "on"
|
||||
- id: draft
|
||||
translation: "Draft"
|
||||
|
||||
# List pages
|
||||
- id: article
|
||||
translation: "Article"
|
||||
- id: articles
|
||||
translation: "Articles"
|
||||
- id: more
|
||||
translation: "More {{ . }}"
|
||||
|
||||
# Sharing
|
||||
- id: shareLink
|
||||
translation: "Share via {{ . }}"
|
||||
- id: shareSystem
|
||||
translation: "system"
|
||||
- id: copyToClipboard
|
||||
translation: "copy to clipboard"
|
||||
- id: copiedToClipboard
|
||||
translation: "copied to clipboard"
|
||||
- id: link
|
||||
translation: "Link"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
|
||||
# Pagination
|
||||
- id: paginationNav
|
||||
translation: "Page navigation"
|
||||
- id: paginationPrevious
|
||||
@@ -65,8 +51,8 @@
|
||||
translation: "First page"
|
||||
- id: paginationLast
|
||||
translation: "Last page"
|
||||
- id: toggleSidebar
|
||||
translation: "Toggle sidebar navigation"
|
||||
|
||||
# Navigation
|
||||
- id: colorMode
|
||||
translation: "Toggle theme"
|
||||
- id: colorLight
|
||||
@@ -77,20 +63,28 @@
|
||||
translation: "Auto"
|
||||
- id: toggleMainNav
|
||||
translation: "Toggle main navigation"
|
||||
- id: demo
|
||||
translation: "Demo"
|
||||
- id: home
|
||||
translation: "Home"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Language"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "On this page"
|
||||
- id: seeAlso
|
||||
translation: "See also"
|
||||
|
||||
# Sidebar
|
||||
- id: toggleSidebar
|
||||
translation: "Toggle sidebar navigation"
|
||||
|
||||
# Feature
|
||||
- id: addedFeature
|
||||
translation: "Added in"
|
||||
translation: "Added in {{ . }}"
|
||||
- id: deprecatedFeature
|
||||
translation: "Deprecated in"
|
||||
- id: shareLink
|
||||
translation: "Share via"
|
||||
- id: copiedToClipboard
|
||||
translation: "copied to clipboard"
|
||||
- id: link
|
||||
translation: "Link"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
translation: "Deprecated in {{ . }}"
|
||||
|
||||
# Versioning
|
||||
- id: latest
|
||||
translation: "latest"
|
||||
- id: allVersions
|
||||
@@ -100,62 +94,22 @@
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
translation: "The page you are looking for does not exist or another error occurred. Try going back to our"
|
||||
translation: "The page you are looking for does not exist or another error occurred. Try going back to our {{ . }}."
|
||||
- id: pageNotFoundTitle
|
||||
translation: "Page not found"
|
||||
- id: pageNotFoundHome
|
||||
translation: "home page"
|
||||
|
||||
# Navigation
|
||||
- id: toggleNavigation
|
||||
translation: "Toggle navigation"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Language"
|
||||
- id: gcseLabelShort
|
||||
translation: "Search"
|
||||
- id: gcseLabelLong
|
||||
translation: "Search {{ .Site.Title }}"
|
||||
- id: gcseClose
|
||||
translation: "Close"
|
||||
- id: home
|
||||
translation: "Home"
|
||||
# Footer
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "All rights reserved"
|
||||
- id: poweredBy
|
||||
translation: "Powered by {{ . }}."
|
||||
|
||||
# Staticman
|
||||
- id: noComment
|
||||
translation: "No comment"
|
||||
- id: oneComment
|
||||
translation: "comment"
|
||||
- id: moreComment
|
||||
translation: "comments"
|
||||
- id: useMarkdown
|
||||
translation: "You can use Markdown syntax"
|
||||
- id: yourName
|
||||
translation: "Your name"
|
||||
- id: yourEmail
|
||||
translation: "Your email address"
|
||||
- id: yourWebsite
|
||||
translation: "You website"
|
||||
|
||||
# Delayed Disqus
|
||||
# Comments
|
||||
- id: show
|
||||
translation: "Show"
|
||||
- id: comments
|
||||
translation: "Comments"
|
||||
|
||||
# Related posts
|
||||
- id: seeAlso
|
||||
translation: "See also"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "On this page"
|
||||
|
||||
# Search
|
||||
- id: ui_search
|
||||
translation: "Search this site..."
|
||||
- id: ui_no_results
|
||||
translation: "No results for"
|
||||
|
||||
# Draft
|
||||
- id: draft
|
||||
translation: "Draft"
|
||||
|
115
i18n/fr.yaml
Normal file
115
i18n/fr.yaml
Normal file
@@ -0,0 +1,115 @@
|
||||
# Single pages
|
||||
- id: postedOnDate
|
||||
translation: "Posté le {{ . }}"
|
||||
- id: lastModified
|
||||
translation: "Dernière modification le {{ . }}"
|
||||
- id: read
|
||||
translation: "de lecture"
|
||||
- id: minutesShort
|
||||
translation: "min"
|
||||
- id: words
|
||||
translation: "mots"
|
||||
- id: photoFull
|
||||
translation: "Photo par %s sur %s"
|
||||
- id: photoShort
|
||||
translation: "Photo par {{ . }}"
|
||||
- id: photoOn
|
||||
translation: "sur"
|
||||
- id: draft
|
||||
translation: "Brouillon"
|
||||
|
||||
# List pages
|
||||
- id: article
|
||||
translation: "Article"
|
||||
- id: articles
|
||||
translation: "Articles"
|
||||
- id: more
|
||||
translation: "Plus {{ . }}"
|
||||
|
||||
# Sharing
|
||||
- id: shareLink
|
||||
translation: "Partager via {{ . }}"
|
||||
- id: shareSystem
|
||||
translation: "système"
|
||||
- id: copyToClipboard
|
||||
translation: "copier dans le presse-papier"
|
||||
- id: copiedToClipboard
|
||||
translation: "copié dans le presse-papier"
|
||||
- id: link
|
||||
translation: "Lien"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
|
||||
# Pagination
|
||||
- id: paginationNav
|
||||
translation: "Navigation de la page"
|
||||
- id: paginationPrevious
|
||||
translation: "Page précédente"
|
||||
- id: paginationNext
|
||||
translation: "Page suivante"
|
||||
- id: paginationFirst
|
||||
translation: "Première page"
|
||||
- id: paginationLast
|
||||
translation: "Dernière page"
|
||||
|
||||
# Navigation
|
||||
- id: colorMode
|
||||
translation: "Changer le thème"
|
||||
- id: colorLight
|
||||
translation: "Clair"
|
||||
- id: colorDark
|
||||
translation: "Sombre"
|
||||
- id: colorAuto
|
||||
translation: "Auto"
|
||||
- id: toggleMainNav
|
||||
translation: "Afficher/Masquer la navigation principale"
|
||||
- id: home
|
||||
translation: "Accueil"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Langage"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "Sur cette page"
|
||||
- id: seeAlso
|
||||
translation: "Voir également"
|
||||
|
||||
# Sidebar
|
||||
- id: toggleSidebar
|
||||
translation: "Afficher/Masquer la barre latérale"
|
||||
|
||||
# Feature
|
||||
- id: addedFeature
|
||||
translation: "Ajouté dans {{ . }}"
|
||||
- id: deprecatedFeature
|
||||
translation: "Obsolète dans {{ . }}"
|
||||
|
||||
# Versioning
|
||||
- id: latest
|
||||
translation: "dernière"
|
||||
- id: allVersions
|
||||
translation: "Toutes les versions"
|
||||
- id: newerVersionAlert
|
||||
translation: "Il existe une nouvelle version de {{ . }}!"
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
translation: "La page que vous recherchez n'existe pas ou une autre erreur s'est produite. Essayez de revenir à notre {{ . }}."
|
||||
- id: pageNotFoundTitle
|
||||
translation: "Page non trouvée"
|
||||
- id: pageNotFoundHome
|
||||
translation: "page d'accueil"
|
||||
|
||||
# Footer
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "Tous droits réservés"
|
||||
- id: poweredBy
|
||||
translation: "Propulsé par {{ . }}."
|
||||
|
||||
# Comments
|
||||
- id: show
|
||||
translation: "Afficher"
|
||||
- id: comments
|
||||
translation: "Commentaires"
|
165
i18n/nl.yaml
165
i18n/nl.yaml
@@ -1,64 +1,56 @@
|
||||
# Content
|
||||
- id: about
|
||||
translation: "Over mij"
|
||||
# Single pages
|
||||
- id: postedOnDate
|
||||
translation: "Gepubliceerd op {{ . }}"
|
||||
- id: lastModified
|
||||
translation: "Laatst gewijzigd op {{ . }}"
|
||||
- id: translationsLabel
|
||||
translation: "Overige talen: "
|
||||
- id: translationsSeparator
|
||||
translation: ", "
|
||||
- id: more
|
||||
translation: "Meer {{ . }}"
|
||||
- id: readMore
|
||||
translation: "Lees meer"
|
||||
- id: moreBlog
|
||||
translation: "Meer berichten"
|
||||
- id: olderBlog
|
||||
translation: "Oudere berichten"
|
||||
- id: recentBlog
|
||||
translation: "Recente berichten"
|
||||
- id: newerBlog
|
||||
translation: "Nieuwere berichten"
|
||||
- id: previousBlog
|
||||
translation: "Vorig bericht"
|
||||
- id: nextBlog
|
||||
translation: "Volgend bericht"
|
||||
- id: recentProjects
|
||||
translation: "Projecten"
|
||||
- id: moreProjects
|
||||
translation: "Meer projecten"
|
||||
- id: read
|
||||
translation: "leestijd"
|
||||
- id: minutesShort
|
||||
translation: "min"
|
||||
- id: words
|
||||
translation: "woorden"
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "Alle rechten voorbehouden"
|
||||
- id: photoBy
|
||||
translation: "Foto van"
|
||||
- id: photoOn
|
||||
translation: "via"
|
||||
- id: photoFull
|
||||
translation: "Foto van %s via %s"
|
||||
- id: photoShort
|
||||
translation: "Foto van {{ . }}"
|
||||
- id: draft
|
||||
translation: "Concept"
|
||||
|
||||
# List pages
|
||||
- id: article
|
||||
translation: "Artikel"
|
||||
- id: articles
|
||||
translation: "Artikelen"
|
||||
- id: more
|
||||
translation: "Meer {{ . }}"
|
||||
|
||||
# Sharing
|
||||
- id: shareLink
|
||||
translation: "Delen via {{ . }}"
|
||||
- id: shareSystem
|
||||
translation: "systeem"
|
||||
- id: copyToClipboard
|
||||
translation: "kopieren naar clipboard"
|
||||
- id: copiedToClipboard
|
||||
translation: "gekopieerd naar clipboard"
|
||||
- id: link
|
||||
translation: "Link"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
|
||||
# Pagination
|
||||
- id: paginationNav
|
||||
translation: "Pagina navigatie"
|
||||
- id: paginationPrevious
|
||||
translation: "Vorige"
|
||||
translation: "Vorige pagina"
|
||||
- id: paginationNext
|
||||
translation: "Volgende"
|
||||
translation: "Volgende pagina"
|
||||
- id: paginationFirst
|
||||
translation: "Eerste"
|
||||
translation: "Eerste pagina"
|
||||
- id: paginationLast
|
||||
translation: "Laatste"
|
||||
- id: toggleSidebar
|
||||
translation: "Toon of verberg navigatie"
|
||||
translation: "Laatste pagina"
|
||||
|
||||
# Navigation
|
||||
- id: colorMode
|
||||
translation: "Pas modus aan"
|
||||
- id: colorLight
|
||||
@@ -69,18 +61,28 @@
|
||||
translation: "Automatisch"
|
||||
- id: toggleMainNav
|
||||
translation: "Toon of verberg hoofdnavigatie"
|
||||
- id: home
|
||||
translation: "Home"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Taal"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "Inhoudsopgave"
|
||||
- id: seeAlso
|
||||
translation: "Zie ook"
|
||||
|
||||
# Sidebar
|
||||
- id: toggleSidebar
|
||||
translation: "Toon of verberg navigatie"
|
||||
|
||||
# Feature
|
||||
- id: addedFeature
|
||||
translation: "Toegevoegd in"
|
||||
translation: "Toegevoegd in {{ . }}"
|
||||
- id: deprecatedFeature
|
||||
translation: "Verouderd in"
|
||||
- id: shareLink
|
||||
translation: "Delen via"
|
||||
- id: copiedToClipboard
|
||||
translation: "gekopieerd naar clipboard"
|
||||
- id: link
|
||||
translation: "Link"
|
||||
- id: code
|
||||
translation: "Code"
|
||||
translation: "Afgeschaft in {{ . }}"
|
||||
|
||||
# Versioning
|
||||
- id: latest
|
||||
translation: "meest recente"
|
||||
- id: allVersions
|
||||
@@ -90,63 +92,22 @@
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
translation: "Deze pagina bestaat niet of er is een andere fout opgetreden. Ga terug naar het"
|
||||
translation: "Deze pagina bestaat niet of er is een andere fout opgetreden. Ga terug naar het {{ . }}."
|
||||
- id: pageNotFoundTitle
|
||||
translation: "Niet gevonden"
|
||||
translation: "Pagina niet gevonden"
|
||||
- id: pageNotFoundHome
|
||||
translation: "begin"
|
||||
|
||||
# Footer
|
||||
- id: copyright
|
||||
translation: "Copyright"
|
||||
- id: rights
|
||||
translation: "Alle rechten voorbehouden"
|
||||
- id: poweredBy
|
||||
translation: "Mede mogelijk gemaakt door {{ . }}."
|
||||
|
||||
# Navigation
|
||||
- id: toggleNavigation
|
||||
translation: "Toon/verberg navigatie"
|
||||
- id: languageSwitcherLabel
|
||||
translation: "Taal"
|
||||
- id: gcseLabelShort
|
||||
translation: "Zoeken"
|
||||
- id: gcseLabelLong
|
||||
translation: "Zoeken op {{ .Site.Title }}"
|
||||
- id: gcseClose
|
||||
translation: "Sluiten"
|
||||
- id: home
|
||||
translation: "Home"
|
||||
|
||||
# Staticman
|
||||
- id: noComment
|
||||
translation: "Geen commentaar"
|
||||
- id: oneComment
|
||||
translation: "commentaar"
|
||||
- id: moreComment
|
||||
translation: "commentaar"
|
||||
- id: useMarkdown
|
||||
translation: "Je kunt Markdown syntax gebruiken"
|
||||
- id: yourName
|
||||
translation: "Jouw naam"
|
||||
- id: yourEmail
|
||||
translation: "Jouw email adres"
|
||||
- id: yourWebsite
|
||||
translation: "Jouw website"
|
||||
|
||||
# Delayed Disqus
|
||||
# Comments
|
||||
- id: show
|
||||
translation: "Tonen"
|
||||
- id: comments
|
||||
translation: "Reacties"
|
||||
|
||||
# Related posts
|
||||
- id: seeAlso
|
||||
translation: "Zie ook"
|
||||
|
||||
# Table of contents
|
||||
- id: toc
|
||||
translation: "Inhoudsopgave"
|
||||
|
||||
# Search
|
||||
- id: ui_search
|
||||
translation: "Zoeken op deze site..."
|
||||
- id: ui_no_results
|
||||
translation: "Geen resultaten voor"
|
||||
|
||||
# Draft
|
||||
- id: draft
|
||||
translation: "Concept"
|
||||
|
@@ -1,12 +1,13 @@
|
||||
{{ define "main"}}
|
||||
<div class="container-xxl flex-fill d-flex align-content-center flex-wrap">
|
||||
<div class="container-xxl flex-fill d-flex align-content-center flex-wrap feature">
|
||||
<div class="w-100 text-center">
|
||||
<span class="text-secondary fw-bold">
|
||||
{{ partial "assets/icon.html" (dict "icon" "fa face-frown fa-10x") }}
|
||||
<p class="display-1 mt-3 fw-bold">404</p>
|
||||
<p class="fs-3">{{ T "pageNotFoundTitle" }}</p>
|
||||
</span>
|
||||
<p>{{ T "pageNotFound" }} <a href="{{ "/" | relLangURL }}">{{ T "pageNotFoundHome" }}</a>.</p>
|
||||
{{- $home := printf "<a href=\"%s\">%s</a>" ("/" | relLangURL) (T "pageNotFoundHome") -}}
|
||||
<p>{{ T "pageNotFound" $home | safeHTML }}</p>
|
||||
</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
{{ if site.Params.navigation.anchor }}
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}" class="heading">{{ .Text | safeHTML }} <a href="#{{ .Anchor | safeURL }}">{{- partial "assets/icon.html" (dict "icon" "fas link anchor") }}</a></h{{ .Level }}>
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}" class="heading">{{ .Text | safeHTML }} <a href="#{{ .Anchor | safeURL }}" aria-labelledby="{{ .Anchor | safeURL }}">{{- partial "assets/icon.html" (dict "icon" "fas link anchor") }}</a></h{{ .Level }}>
|
||||
{{ else }}
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }}</h{{ .Level }}>
|
||||
{{ end }}
|
@@ -4,7 +4,7 @@
|
||||
"section" .Type
|
||||
"home" false
|
||||
"nested" .Params.Nested
|
||||
"title" .Title
|
||||
"title" (or .Title .Type)
|
||||
"description" .Description
|
||||
"content" .Content
|
||||
"paginate" true)
|
||||
|
@@ -30,7 +30,7 @@
|
||||
<div class="hstack gap-3">
|
||||
{{ range (.GetTerms "tags") -}}
|
||||
{{- $url := (path.Join .Page.RelPermalink) | relLangURL -}}
|
||||
{{ partial "assets/button.html" (dict "href" $url "title" .LinkTitle "color" "secondary" "size" "sm" "outline" "true") }}
|
||||
{{ partial "assets/button.html" (dict "href" $url "title" .LinkTitle "color" "primary" "size" "sm" "outline" "true") }}
|
||||
{{ end -}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -47,10 +47,40 @@
|
||||
{{- end -}}
|
||||
|
||||
{{ if not (in (slice "docs" "minimal") .Layout) }}
|
||||
{{ if .Params.thumbnail -}}
|
||||
{{- $credits := "" -}}
|
||||
{{- if .Params.photoCredits }}{{ if .Params.PhotoSource }}{{ $credits = printf "%s %s %s %s" (T "photoBy") .Params.photoCredits (T "photoOn") .Params.PhotoSource }}{{ end }}{{ end -}}
|
||||
{{- partial "assets/image.html" (dict "url" .Params.thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}}
|
||||
{{- $thumbnail := "" -}}
|
||||
{{- $credits := "" -}}
|
||||
|
||||
{{- if reflect.IsMap .Params.Thumbnail -}}
|
||||
{{- $thumbnail = .Params.Thumbnail.url -}}
|
||||
{{- $author := "" -}}
|
||||
{{- if and .Params.Thumbnail.authorURL "text" .Params.Thumbnail.author }}
|
||||
{{- $author = partial "utilities/link" (dict "destination" .Params.Thumbnail.authorURL "text" .Params.Thumbnail.author) -}}
|
||||
{{- else if .Params.Thumbnail.author }}
|
||||
{{- $author = .Params.Thumbnail.author -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $origin := "" -}}
|
||||
{{- if and .Params.Thumbnail.originURL "text" .Params.Thumbnail.origin }}
|
||||
{{- $origin = partial "utilities/link" (dict "destination" .Params.Thumbnail.originURL "text" .Params.Thumbnail.origin) -}}
|
||||
{{- else if .Params.Thumbnail.origin }}
|
||||
{{- $origin = .Params.Thumbnail.origin -}}
|
||||
{{- end }}
|
||||
|
||||
{{- if and $author $origin }}
|
||||
{{ $credits = printf (T "photoFull") $author $origin }}
|
||||
{{ else if $author }}
|
||||
{{ $credits = T "photoShort" $author }}
|
||||
{{ end }}
|
||||
{{ else }}
|
||||
{{- $thumbnail = .Params.Thumbnail -}}
|
||||
{{ if or .Params.photoCredits .Params.photoSource }}
|
||||
{{ warnf "DEPRECATED: frontmatter variables `photoCredits` and `photoSource` have been deprecated in release v0.18: %s" .RelPermalink }}
|
||||
{{ end }}
|
||||
{{- if and .Params.photoCredits .Params.PhotoSource }}{{ $credits = printf (T "photoFull") .Params.photoCredits .Params.PhotoSource }}{{ end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{ if $thumbnail -}}
|
||||
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}}
|
||||
{{ end -}}
|
||||
{{ end }}
|
||||
{{ .Content }}
|
||||
|
@@ -4,17 +4,26 @@
|
||||
|
||||
{{- define "main" -}}
|
||||
{{- $page := . -}}
|
||||
{{- $sections := site.Params.home.sections -}}
|
||||
{{- if not $sections -}}
|
||||
{{ range $section := site.Sections }}
|
||||
{{ $sections = $sections | append $section.Type }}
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
|
||||
{{- range $index, $section := site.Params.home.sections -}}
|
||||
{{- range $index, $section := $sections -}}
|
||||
{{- $sectionPage := site.GetPage "section" $section -}}
|
||||
{{- $sectionURL := $sectionPage.RelPermalink -}}
|
||||
{{- $title := $sectionPage.Title -}}
|
||||
{{- $thumbnail := $sectionPage.Params.Thumbnail -}}
|
||||
{{- $title := or $sectionPage.Title $sectionPage.Type -}}
|
||||
{{- $thumbnail := (or (and (reflect.IsMap $sectionPage.Params.Thumbnail) $sectionPage.Params.Thumbnail.url) $sectionPage.Params.Thumbnail) -}}
|
||||
{{- $icon := $sectionPage.Params.Icon -}}
|
||||
{{- $description := $sectionPage.Description -}}
|
||||
{{- $content := $sectionPage.Content -}}
|
||||
|
||||
{{- $moreTitle := (T (printf "more%s" (strings.FirstUpper $section))) -}}
|
||||
{{- $sectionTitle := strings.FirstUpper $sectionPage.Type -}}
|
||||
{{- $moreTitle := "" -}}
|
||||
{{- with (index site.Params.sections $section) -}}
|
||||
{{- with index . "reference" }}{{ $moreTitle = . }}{{ end -}}
|
||||
{{- end -}}
|
||||
{{- $moreTitle = or $moreTitle (printf (T "more" (pluralize $sectionTitle))) -}}
|
||||
|
||||
{{- partial "assets/section-list.html" (dict
|
||||
"page" $page
|
||||
|
@@ -9,7 +9,8 @@
|
||||
"danger", "warning", "info", "light", "dark", "white", or "black".
|
||||
"outline" Optional flag indicating the button should be outlined, either "false" (default) or "true".
|
||||
"badge" Optional positioned badge to display on top of the button.
|
||||
"aria-label" Optional assistive label for the badge.
|
||||
"label" Optional assistive label for the button or badge. The label is applied to the badge instead of the
|
||||
button when a badge has been defined. Default value of the button aria-label is its title.
|
||||
"tooltip" Optional text to display in a tooltip. Cannot be used together with collapse. Ignored for active/
|
||||
inactive buttons.
|
||||
"collapse" Optional panel to collapse. Cannot be used together with tooltip. Ignored for active/inactive buttons.
|
||||
@@ -133,29 +134,28 @@
|
||||
|
||||
{{- if and $title $cue -}}
|
||||
{{ $suffix := partial "assets/icon.html" (dict "icon" "fas up-right-from-square fa-2xs") }}
|
||||
{{- $title = printf "%s %s" $title $suffix | safeHTML -}}
|
||||
{{- $title = printf "%s %s" $title $suffix | safeHTML -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $attributes := .attributes -}}
|
||||
|
||||
<a aria-label="{{ $title }}" {{ if ne $state "disabled" }}{{ with $href }}href="{{ . }}"{{ end }}{{ end }}
|
||||
{{ with $id }}id="{{ . }}"{{ end }}
|
||||
{{ with $target }}target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }}
|
||||
{{ with $toast }}data-toast-target="{{ $toast }}"{{ end }}
|
||||
{{ with $clipboard }}data-clipboard="{{ $clipboard }}"{{ end }}
|
||||
{{ if eq $type "button" }}class="btn btn-{{ if $outline }}outline-{{ end }}{{ $color }} {{ if ne $size "md"}}btn-{{ $size }}{{ end }} position-relative {{ if in (slice "disabled" "active") $state }}{{ $state }}{{ end }} {{ $class }}"
|
||||
role="button" {{ if eq $state "disabled" }}aria-disabled="true"{{ end }}
|
||||
{{ else }} class="link-{{ $color }} position-relative {{ $class }}"{{ end }}
|
||||
{{ with $tooltip }}data-bs-toggle="tooltip" data-bs-title="{{ . }}" data-bs-placement="{{ $placement }}"{{ end }}
|
||||
{{ with $collapse }}data-bs-toggle="collapse" aria-expanded="false" aria-controls="{{ . }}"{{ end }}
|
||||
{{ if eq $state "active" }}data-bs-toggle="button" aria-pressed="true"{{ end }}
|
||||
{{ if eq $state "inactive" }}data-bs-toggle="button" aria-pressed="false"{{ end }}
|
||||
{{ range $key, $val := $attributes }}
|
||||
{{ print $key | safeHTMLAttr }}="{{ $val }}"
|
||||
{{ end }}
|
||||
<a aria-label="{{ or $label $title }}" {{ if ne $state "disabled" }}{{ with $href }}href="{{ . }}"{{ end }}{{ end -}}
|
||||
{{- with $id }} id="{{ . }}"{{ end -}}
|
||||
{{- with $target }} target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end -}}
|
||||
{{- with $toast }} data-toast-target="{{ $toast }}"{{ end -}}
|
||||
{{- with $clipboard }} data-clipboard="{{ $clipboard }}"{{ end -}}
|
||||
{{- if eq $type "button" }} class="btn btn-{{ if $outline }}outline-{{ end }}{{ $color }} {{ if ne $size "md"}}btn-{{ $size }}{{ end }} position-relative {{ if in (slice "disabled" "active") $state }}{{ $state }}{{ end }} {{ $class -}}"
|
||||
role="button" {{ if eq $state "disabled" }}aria-disabled="true"{{ end -}}
|
||||
{{- else }} class="link-{{ $color }} position-relative {{ $class }}"{{ end -}}
|
||||
{{- with $tooltip }} data-bs-toggle="tooltip" data-bs-title="{{ . }}" data-bs-placement="{{ $placement }}"{{ end -}}
|
||||
{{- with $collapse }} data-bs-toggle="collapse" aria-expanded="false" aria-controls="{{ . }}"{{ end -}}
|
||||
{{- if eq $state "active" }} data-bs-toggle="button" aria-pressed="true"{{ end -}}
|
||||
{{- if eq $state "inactive" }} data-bs-toggle="button" aria-pressed="false"{{ end -}}
|
||||
{{- range $key, $val := $attributes -}}
|
||||
{{ printf " %s=\"%s\"" $key $val | safeHTMLAttr }}
|
||||
{{- end -}}
|
||||
>
|
||||
|
||||
<div class="d-flex justify-content-{{ $justify }}">
|
||||
<div class="my-auto">{{ $title }}</div>
|
||||
{{- with $icon }}<div class="align-self-center{{ if $title }}{{ if eq $order "first" }} order-first pe-1{{ else }} ps-1{{ end }}{{ end }}">{{ partial "assets/icon.html" (dict "icon" $icon) }}</div>{{ end }}
|
||||
|
@@ -106,15 +106,16 @@
|
||||
"footer" $footer
|
||||
"orientation" $orientation
|
||||
) -}}
|
||||
|
||||
|
||||
{{- if $element.RelPermalink -}}
|
||||
{{- $params = merge $params (dict "path" $element.File.Path) -}}
|
||||
{{- else -}}
|
||||
{{- $thumbnail := (or (and (reflect.IsMap $element.Params.Thumbnail) $element.Params.Thumbnail.url) $element.Params.Thumbnail) -}}
|
||||
{{- $params = merge $params (dict
|
||||
"title" $element.Title
|
||||
"href" $element.RelPermalink
|
||||
"description" (or $element.Description $element.Content)
|
||||
"thumbnail" $element.Params.thumbnail
|
||||
"description" (partial "utilities/GetDescription.html" $element)
|
||||
"thumbnail" $thumbnail
|
||||
"icon" $element.Params.icon
|
||||
) -}}
|
||||
{{- end -}}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user