v0.3.0
* Getting environment variables and passwords from Vault (not tested yet) * Vault configuration to config (not tested yet) * Ability to run scripts from file on local machine on the remote host * Ability to get ouput in the notification of a list for individual commands or all commands * Make SSH connections close after all commands have been run; reuse previous connections if needed
19
docs/themes/hugo-theme-relearn/.editorconfig
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
# https://editorconfig.org
|
||||
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
indent_size = 2
|
||||
indent_style = space
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.css]
|
||||
indent_size = 4
|
||||
|
||||
[*.js]
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
1
docs/themes/hugo-theme-relearn/.frontmatter/database/mediaDb.json
vendored
Normal file
@ -0,0 +1 @@
|
||||
{}
|
14
docs/themes/hugo-theme-relearn/.github/actions/build_site/action.yaml
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
name: Build site
|
||||
description: Builds the Hugo exampleSite for later deploy on GitHub-Pages
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Setup Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
hugo-version: 'latest'
|
||||
|
||||
- name: Build site
|
||||
shell: bash
|
||||
run: |
|
||||
hugo --source ${GITHUB_WORKSPACE}/exampleSite --destination ${GITHUB_WORKSPACE}/../public --cleanDestinationDir --gc --baseURL https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/ --theme ${GITHUB_WORKSPACE}
|
105
docs/themes/hugo-theme-relearn/.github/actions/check_milestone/action.yaml
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
name: Check milestone
|
||||
description: Checks if the given milestone and its according tag are valid to be released
|
||||
inputs:
|
||||
milestone:
|
||||
description: Milestone for this release
|
||||
required: true
|
||||
github_token:
|
||||
description: Secret GitHub token
|
||||
required: true
|
||||
outputs:
|
||||
outcome:
|
||||
description: Result of the check, success or failure
|
||||
value: ${{ steps.outcome.outputs.outcome }}
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Get closed issues for milestone
|
||||
id: closed_issues
|
||||
uses: octokit/graphql-action@v2.x
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
with:
|
||||
query: |
|
||||
query {
|
||||
search(first: 1, type: ISSUE, query: "user:${{ github.repository_owner }} repo:${{ github.event.repository.name }} milestone:${{ env.MILESTONE }} state:closed") {
|
||||
issueCount
|
||||
}
|
||||
}
|
||||
|
||||
- name: Get open issues for milestone
|
||||
id: open_issues
|
||||
uses: octokit/graphql-action@v2.x
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
with:
|
||||
query: |
|
||||
query {
|
||||
search(first: 1, type: ISSUE, query: "user:${{ github.repository_owner }} repo:${{ github.event.repository.name }} milestone:${{ env.MILESTONE }} state:open") {
|
||||
issueCount
|
||||
}
|
||||
}
|
||||
|
||||
- name: Get old version number
|
||||
id: oldvers
|
||||
uses: andstor/file-reader-action@v1
|
||||
with:
|
||||
path: layouts/partials/version.txt
|
||||
|
||||
- name: Get old main version number
|
||||
id: oldmainvers
|
||||
uses: ashley-taylor/regex-property-action@v1
|
||||
with:
|
||||
value: ${{ steps.oldvers.outputs.contents }}
|
||||
regex: (\d+)\.(\d+)\.\d+.*
|
||||
replacement: '$1\.$2'
|
||||
|
||||
- name: Get current patch version number
|
||||
id: patchvers
|
||||
uses: ashley-taylor/regex-property-action@v1
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
with:
|
||||
value: ${{ env.MILESTONE }}
|
||||
regex: \d+\.\d+\.(\d+)
|
||||
replacement: "$1"
|
||||
|
||||
- name: Get migration notes
|
||||
id: migrationnotes
|
||||
uses: andstor/file-reader-action@v1
|
||||
with:
|
||||
path: exampleSite/content/basics/migration/_index.en.md
|
||||
|
||||
- name: Check for old migration notes
|
||||
id: hasoldnotes
|
||||
uses: ashley-taylor/regex-property-action@v1
|
||||
with:
|
||||
value: ${{ steps.migrationnotes.outputs.contents }}
|
||||
regex: '.*?[\n\r\s]*<!--GH-ACTION-RELEASE-MILESTONE-->[\n\r\s]*-*\s*[\n\r\s]*?[\n\r]+##\s+${{ steps.oldmainvers.outputs.value }}\.0\s+.*?[\n\r][\n\r\s]*.*'
|
||||
flags: gs
|
||||
replacement: '1'
|
||||
|
||||
- name: Set outcome
|
||||
id: outcome
|
||||
shell: bash
|
||||
run: |
|
||||
if [ "${{ fromJSON(steps.closed_issues.outputs.data).search.issueCount > 0 && fromJSON(steps.open_issues.outputs.data).search.issueCount == 0 && ( (steps.patchvers.outputs.value!='0'&&steps.hasoldnotes.outputs.value=='1') || (steps.patchvers.outputs.value=='0'&&steps.hasoldnotes.outputs.value!='1') ) }}" = "true" ]; then
|
||||
echo "outcome=success" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "outcome=failure" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Log results and exit
|
||||
shell: bash
|
||||
run: |
|
||||
echo outcome : ${{ steps.outcome.outputs.outcome }}
|
||||
echo has closed issues : ${{ fromJSON(steps.closed_issues.outputs.data).search.issueCount > 0 }}
|
||||
echo has open issues : ${{ fromJSON(steps.open_issues.outputs.data).search.issueCount > 0 }}
|
||||
echo is patch version : ${{ steps.patchvers.outputs.value != '0' }}
|
||||
echo has old main notes : ${{ steps.hasoldnotes.outputs.value == '1' }}
|
||||
echo are notes okay : ${{ (steps.patchvers.outputs.value!='0'&&steps.hasoldnotes.outputs.value=='1') || (steps.patchvers.outputs.value=='0'&&steps.hasoldnotes.outputs.value!='1') }}
|
||||
if [ "${{ steps.outcome.outputs.outcome }}" = "failure" ]; then
|
||||
exit 1
|
||||
fi
|
17
docs/themes/hugo-theme-relearn/.github/actions/deploy_site/action.yaml
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
name: Deploy site
|
||||
description: Deploys a built site on GitHub-Pages
|
||||
inputs:
|
||||
github_token:
|
||||
description: Secret GitHub token
|
||||
required: true
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Deploy site
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
GITHUB_WORKSPACE: ${{ github.workspace }}
|
||||
with:
|
||||
github_token: ${{ env.GITHUB_TOKEN }}
|
||||
publish_dir: ${{ env.GITHUB_WORKSPACE }}/../public
|
162
docs/themes/hugo-theme-relearn/.github/actions/release_milestone/action.yaml
vendored
Normal file
@ -0,0 +1,162 @@
|
||||
name: Release milestone
|
||||
description: Creates a release and tag out of a given milestone
|
||||
inputs:
|
||||
milestone:
|
||||
description: Milestone for this release
|
||||
required: true
|
||||
github_token:
|
||||
description: Secret GitHub token
|
||||
required: true
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: '16'
|
||||
|
||||
- name: Setup git
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
git config user.name "GitHub Actions Bot"
|
||||
git config user.email "<>"
|
||||
|
||||
- name: Get current date
|
||||
id: date
|
||||
uses: Kaven-Universe/github-action-current-date-time@v1
|
||||
with:
|
||||
format: 'YYYY-MM-DD'
|
||||
|
||||
- name: Get current main version number
|
||||
id: mainvers
|
||||
uses: ashley-taylor/regex-property-action@v1
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
with:
|
||||
value: ${{ env.MILESTONE }}
|
||||
regex: (\d+\.\d+)\.\d+
|
||||
replacement: "$1"
|
||||
|
||||
- name: Get current major version number
|
||||
id: majorvers
|
||||
uses: ashley-taylor/regex-property-action@v1
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
with:
|
||||
value: ${{ env.MILESTONE }}
|
||||
regex: (\d+)\.\d+\.\d+
|
||||
replacement: "$1"
|
||||
|
||||
- name: Get next version number
|
||||
id: nextvers
|
||||
uses: WyriHaximus/github-action-next-semvers@v1
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
with:
|
||||
version: ${{ env.MILESTONE }}
|
||||
|
||||
- name: Close milestone
|
||||
uses: Akkjon/close-milestone@v2.1.0
|
||||
continue-on-error: true
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
with:
|
||||
milestone_name: ${{ env.MILESTONE }}
|
||||
|
||||
- name: Create temporary tag
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
git tag --message "" "$MILESTONE" || true
|
||||
git push origin "$MILESTONE" || true
|
||||
git tag --force --message "" "$MILESTONE"
|
||||
git push --force origin "$MILESTONE"
|
||||
|
||||
- name: Update migration docs
|
||||
uses: mingjun97/file-regex-replace@v1
|
||||
with:
|
||||
regex: '(.)[\n\r\s]*<!--GH-ACTION-RELEASE-MILESTONE-->[\n\r\s]*-*\s*[\n\r\s]*?[\n\r]+##\s*.*?[\n\r][\n\r\s]*(.)'
|
||||
replacement: "$1\n\n<!--GH-ACTION-RELEASE-MILESTONE-->\n\n---\n\n## ${{ steps.mainvers.outputs.value }}.0 (${{ steps.date.outputs.time }})\n\n$2"
|
||||
include: exampleSite/content/basics/migration/_index.en.md
|
||||
|
||||
- name: Update generator version
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
run: |
|
||||
echo -n "$MILESTONE" > layouts/partials/version.txt
|
||||
|
||||
- name: Update changelog
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
GREN_GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
npx github-release-notes@0.17.1 changelog --generate --override --tags=all
|
||||
|
||||
- name: Commit updates
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
GREN_GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
git add *
|
||||
git commit --message "Ship tag $MILESTONE"
|
||||
git push origin main
|
||||
|
||||
- name: Create final tag
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
MILESTONE_MINOR: ${{ steps.mainvers.outputs.value }}
|
||||
MILESTONE_MAJOR: ${{ steps.majorvers.outputs.value }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
git tag --force --message "" "$MILESTONE"
|
||||
git push --force origin "$MILESTONE"
|
||||
git tag --message "" "$MILESTONE_MINOR.x" || true
|
||||
git push origin "$MILESTONE_MINOR.x" || true
|
||||
git tag --force --message "" "$MILESTONE_MINOR.x"
|
||||
git push --force origin "$MILESTONE_MINOR.x"
|
||||
git tag --message "" "$MILESTONE_MAJOR.x" || true
|
||||
git push origin "$MILESTONE_MAJOR.x" || true
|
||||
git tag --force --message "" "$MILESTONE_MAJOR.x"
|
||||
git push --force origin "$MILESTONE_MAJOR.x"
|
||||
git tag --message "" "x" || true
|
||||
git push origin "x" || true
|
||||
git tag --force --message "" "x"
|
||||
git push --force origin "x"
|
||||
|
||||
- name: Publish release
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GREN_GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
npx github-release-notes@0.17.1 release --tags "$MILESTONE"
|
||||
|
||||
- name: Update version number to mark non-release version
|
||||
shell: bash
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
run: |
|
||||
echo -n "$MILESTONE+tip" > layouts/partials/version.txt
|
||||
git add *
|
||||
git commit --message "Mark non-release version"
|
||||
git push origin main
|
||||
|
||||
- name: Create next patch milestone
|
||||
uses: WyriHaximus/github-action-create-milestone@v1
|
||||
continue-on-error: true
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ inputs.github_token }}
|
||||
with:
|
||||
title: ${{ steps.nextvers.outputs.patch }}
|
25
docs/themes/hugo-theme-relearn/.github/workflows/docs-build-deployment.yaml
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
name: docs-build-deployment
|
||||
|
||||
on:
|
||||
push: # Build on all pushes but only deploy for main branch
|
||||
workflow_dispatch: # Allow this task to be manually started (you'll never know)
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
name: Run deploy
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event_name != 'push' || (github.event_name == 'push' && github.ref == 'refs/heads/main')
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
||||
|
||||
- name: Build site
|
||||
uses: ./.github/actions/build_site
|
||||
|
||||
- name: Deploy site
|
||||
uses: ./.github/actions/deploy_site
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
20
docs/themes/hugo-theme-relearn/.github/workflows/docs-build.yaml
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
name: docs-build
|
||||
|
||||
on:
|
||||
push: # Build on all pushes but only deploy for main branch
|
||||
pull_request: # Build on all PRs regardless what branch
|
||||
workflow_dispatch: # Allow this task to be manually started (you'll never know)
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
name: Run build
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event_name != 'push' || (github.event_name == 'push' && github.ref != 'refs/heads/main')
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
|
||||
- name: Build site
|
||||
uses: ./.github/actions/build_site
|
42
docs/themes/hugo-theme-relearn/.github/workflows/version-release.yaml
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
name: version-release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
milestone:
|
||||
description: 'Milestone for this release'
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
release:
|
||||
name: Run release
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
||||
|
||||
- name: Check milestone
|
||||
id: check
|
||||
uses: ./.github/actions/check_milestone
|
||||
with:
|
||||
milestone: ${{ github.event.inputs.milestone }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Create release
|
||||
if: ${{ steps.check.outputs.outcome == 'success' }}
|
||||
uses: ./.github/actions/release_milestone
|
||||
with:
|
||||
milestone: ${{ github.event.inputs.milestone }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
# We need to deploy the site again to show the updated changelog
|
||||
- name: Build site
|
||||
uses: ./.github/actions/build_site
|
||||
|
||||
- name: Deploy site
|
||||
uses: ./.github/actions/deploy_site
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
6
docs/themes/hugo-theme-relearn/.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
.DS_Store
|
||||
.hugo_build.lock
|
||||
exampleSite/public*
|
||||
exampleSite/hugo*.exe
|
||||
**/*.xcf
|
||||
**/*.zip
|
47
docs/themes/hugo-theme-relearn/.grenrc.js
vendored
Normal file
@ -0,0 +1,47 @@
|
||||
module.exports = {
|
||||
changelogFilename: "exampleSite/content/basics/CHANGELOG.md",
|
||||
dataSource: "milestones",
|
||||
groupBy: {
|
||||
"Enhancements": [
|
||||
"feature",
|
||||
],
|
||||
"Fixes": [
|
||||
"bug"
|
||||
],
|
||||
"Maintenance": [
|
||||
"task",
|
||||
],
|
||||
"Uncategorised": [
|
||||
"closed",
|
||||
],
|
||||
},
|
||||
ignoreLabels: [
|
||||
"blocked",
|
||||
"browser",
|
||||
"device",
|
||||
"helpwanted",
|
||||
"hugo",
|
||||
"mermaid",
|
||||
"needsfeedback",
|
||||
"undecided",
|
||||
],
|
||||
ignoreIssuesWith: [
|
||||
"discussion",
|
||||
"documentation",
|
||||
"duplicate",
|
||||
"invalid",
|
||||
"update",
|
||||
"unresolved",
|
||||
"wontfix",
|
||||
],
|
||||
ignoreTagsWith: [
|
||||
"Relearn",
|
||||
"x",
|
||||
],
|
||||
milestoneMatch: "{{tag_name}}",
|
||||
onlyMilestones: true,
|
||||
template: {
|
||||
group: "\n### {{heading}}\n",
|
||||
release: ({ body, date, release }) => `## ${release} (` + date.replace( /(\d+)\/(\d+)\/(\d+)/, '$3-$2-$1' ) + `)\n${body}`,
|
||||
},
|
||||
};
|
7
docs/themes/hugo-theme-relearn/.imgbotconfig
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"schedule": "daily",
|
||||
"ignoredFiles": [
|
||||
"static/*"
|
||||
],
|
||||
"prTitle": "autobot: optimize images"
|
||||
}
|
7
docs/themes/hugo-theme-relearn/.issuetracker
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
# Integration with Issue Tracker
|
||||
#
|
||||
# (note that '\' need to be escaped).
|
||||
|
||||
[issuetracker "GitHub Rule"]
|
||||
regex = "#(\\d+)"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn/issues/$1"
|
23
docs/themes/hugo-theme-relearn/LICENSE
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2021 Sören Weber
|
||||
Copyright (c) 2017 Valere JEANTET
|
||||
Copyright (c) 2016 MATHIEU CORNIC
|
||||
Copyright (c) 2014 Grav
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
80
docs/themes/hugo-theme-relearn/README.md
vendored
Normal file
@ -0,0 +1,80 @@
|
||||
# Hugo Relearn Theme
|
||||
|
||||
A theme for [Hugo](https://gohugo.io/) designed for documentation.
|
||||
|
||||
[★ What's new in the latest release ★](https://mcshelby.github.io/hugo-theme-relearn/basics/migration)
|
||||
|
||||

|
||||
|
||||
## Motivation
|
||||
|
||||
The Relearn theme is a fork of the great [Learn theme](https://github.com/matcornic/hugo-theme-learn) with the aim of fixing long outstanding bugs and adepting to latest Hugo features. As far as possible this theme tries to be a drop-in replacement for the Learn theme.
|
||||
|
||||
## Features
|
||||
|
||||
- **Wide set of usage scenarios**
|
||||
- Responsive design for mobile usage
|
||||
- Looks nice on paper (if you have to)
|
||||
- Usable offline, no external dependencies
|
||||
- [Usable from your local file system via `file://` protocol](https://mcshelby.github.io/hugo-theme-relearn/basics/configuration#serving-your-page-from-the-filesystem)
|
||||
- Support for the [VSCode Front Matter extension](https://github.com/estruyf/vscode-front-matter) for on-premise CMS capabilities
|
||||
- Support for Internet Explorer 11
|
||||
- **Configurable theming and visuals**
|
||||
- [Configurable brand images](https://mcshelby.github.io/hugo-theme-relearn/basics/customization#change-the-logo)
|
||||
- [Automatic switch for light/dark variant dependend on your OS settings](https://mcshelby.github.io/hugo-theme-relearn/basics/customization#adjusting-to-os-settings)
|
||||
- Predefined light, dark and color variants
|
||||
- [User selectable variants](https://mcshelby.github.io/hugo-theme-relearn/basics/customization#multiple-variants)
|
||||
- [Stylesheet generator](https://mcshelby.github.io/hugo-theme-relearn/basics/generator)
|
||||
- [Configurable syntax highlighting](https://mcshelby.github.io/hugo-theme-relearn/cont/syntaxhighlight)
|
||||
- **Unique theme features**
|
||||
- [Print whole chapters or even the complete site](https://mcshelby.github.io/hugo-theme-relearn/basics/configuration#activate-print-support)
|
||||
- In page search
|
||||
- [Site search](https://mcshelby.github.io/hugo-theme-relearn/basics/configuration#activate-search)
|
||||
- [Dedicated search page](https://mcshelby.github.io/hugo-theme-relearn/basics/configuration#activate-dedicated-search-page)
|
||||
- [Taxonomy support](https://mcshelby.github.io/hugo-theme-relearn/cont/taxonomy)
|
||||
- Hidden pages
|
||||
- Unlimited nested menu dependend on your site structure
|
||||
- Navigation buttons dependend on your site structure
|
||||
- [Configurable shortcut links](https://mcshelby.github.io/hugo-theme-relearn/cont/menushortcuts)
|
||||
- **Multi language support**
|
||||
- [Full support for languages written right to left](https://mcshelby.github.io/hugo-theme-relearn/cont/i18n)
|
||||
- [Available languages](https://mcshelby.github.io/hugo-theme-relearn/cont/i18n#basic-configuration): Arabic, Simplified Chinese, Traditional Chinese, Czech, Dutch, English, Finnish, French, German, Hindi, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Russian, Spanish, Turkish, Vietnamese
|
||||
- [Search support for mixed language content](https://mcshelby.github.io/hugo-theme-relearn/cont/i18n#search)
|
||||
- **Additional Markdown features**
|
||||
- [Support for GFM (GitHub Flavored Markdown](https://mcshelby.github.io/hugo-theme-relearn/cont/markdown)
|
||||
- [Image styling like sizing, shadow, border and alignment](https://mcshelby.github.io/hugo-theme-relearn/cont/markdown#further-image-formatting)
|
||||
- [Image lightbox](https://mcshelby.github.io/hugo-theme-relearn/cont/markdown#further-image-formatting#lightbox)
|
||||
- **Shortcodes galore**
|
||||
- [Display files attached to page bundles](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/attachments)
|
||||
- [Marker badges](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/badge)
|
||||
- [Configurable buttons](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/button)
|
||||
- [List child pages](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/children)
|
||||
- [Expand areas to reveal content](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/expand)
|
||||
- [Font Awesome icons](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/icon)
|
||||
- [Inclusion of other files](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/include)
|
||||
- [Math and chemical formulae using MathJax](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/math)
|
||||
- [Mermaid diagrams for flowcharts, sequences, gantts, pie, etc.](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/mermaid)
|
||||
- [Colorful boxes](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/notice)
|
||||
- [OpenAPI specifications using Swagger UI](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/openapi)
|
||||
- [Reveal you site's configuration parameter](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/siteparam)
|
||||
- [Single tabbed panels](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/tab) and [multiple tabbed panels](https://mcshelby.github.io/hugo-theme-relearn/shortcodes/tabs)
|
||||
|
||||
## Installation & Usage
|
||||
|
||||
For a detailed description of the theme's capabilities visit the [official documentation](https://mcshelby.github.io/hugo-theme-relearn/).
|
||||
|
||||
## Changelog
|
||||
|
||||
See the [What's New](https://mcshelby.github.io/hugo-theme-relearn/basics/migration) page for release highlights or the detailed [change history](https://mcshelby.github.io/hugo-theme-relearn/basics/history) for a complete list of changes.
|
||||
|
||||
## Contributions
|
||||
|
||||
You are most welcome to contribute bugfixes or new features. Check the [contribution guidelines](https://mcshelby.github.io/hugo-theme-relearn/dev/contributing) first before starting.
|
||||
|
||||
## License
|
||||
|
||||
The Relearn theme is licensed under the [MIT License](https://github.com/McShelby/hugo-theme-relearn/blob/main/LICENSE).
|
||||
|
||||
## Credits
|
||||
|
||||
This theme would not be possible without the work of [many others](https://mcshelby.github.io/hugo-theme-relearn/more/credits).
|
7
docs/themes/hugo-theme-relearn/archetypes/chapter.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
weight = X
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
6
docs/themes/hugo-theme-relearn/archetypes/default.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
weight = X
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
6
docs/themes/hugo-theme-relearn/archetypes/home.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
archetype = "home"
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
34
docs/themes/hugo-theme-relearn/assets/css/theme-auto.css
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
{{- $themevariants := slice | append (.Site.Params.themeVariant | default "auto") -}}
|
||||
{{- $themevariantsauto := slice | append (.Site.Params.themeVariantAuto | default slice) -}}
|
||||
{{- $i := 0 -}}
|
||||
{{- if eq (int (len $themevariantsauto)) 0 -}}
|
||||
{{- range $themevariants -}}
|
||||
{{- $i = add $i 1 -}}
|
||||
{{- if ne . "auto" -}}
|
||||
{{- $themevariantsauto = $themevariantsauto | append . -}}
|
||||
{{- break -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- if eq (int (len $themevariantsauto)) 0 -}}
|
||||
{{- $themevariantsauto = $themevariantsauto | append "relearn-light" -}}
|
||||
{{- end -}}
|
||||
{{- if eq (int (len $themevariantsauto)) 1 -}}
|
||||
{{- $poppedthemevariants := last (sub (len $themevariants) $i) $themevariants -}}
|
||||
{{- range $poppedthemevariants -}}
|
||||
{{- if ne . "auto" -}}
|
||||
{{- $themevariantsauto = $themevariantsauto | append . -}}
|
||||
{{- break -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- if eq (int (len $themevariantsauto)) 1 -}}
|
||||
{{- $themevariantsauto = $themevariantsauto | append "relearn-dark" -}}
|
||||
{{- end -}}
|
||||
{{- $themevariantsauto = ($themevariantsauto | first 2) -}}
|
||||
{{- with index $themevariantsauto 0 -}}
|
||||
@import "{{ printf "theme-%s.css" . }}" screen and (prefers-color-scheme: light);
|
||||
{{ end -}}
|
||||
{{- with index $themevariantsauto 1 -}}
|
||||
@import "{{ printf "theme-%s.css" . }}" screen and (prefers-color-scheme: dark);
|
||||
{{ end -}}
|
32
docs/themes/hugo-theme-relearn/config.toml
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
[module]
|
||||
[module.hugoVersion]
|
||||
min = "0.95.0"
|
||||
|
||||
[mediaTypes]
|
||||
[mediaTypes."text/javascript"]
|
||||
suffixes = ["js"]
|
||||
|
||||
[outputFormats]
|
||||
[outputFormats.PRINT]
|
||||
name= "PRINT"
|
||||
baseName = "index.print"
|
||||
isHTML = true
|
||||
mediaType = 'text/html'
|
||||
permalinkable = false
|
||||
noUgly = true
|
||||
|
||||
[outputFormats.SEARCH]
|
||||
name= "SEARCH"
|
||||
baseName = "index.search"
|
||||
isPlainText = true
|
||||
mediaType = 'text/javascript'
|
||||
permalinkable = false
|
||||
noUgly = true
|
||||
|
||||
[outputFormats.SERCHPAGE]
|
||||
name= "SEARCHPAGE"
|
||||
baseName = "search"
|
||||
isHTML = true
|
||||
mediaType = 'text/html'
|
||||
permalinkable = false
|
||||
noUgly = true
|
231
docs/themes/hugo-theme-relearn/exampleSite/config/_default/config.toml
vendored
Normal file
@ -0,0 +1,231 @@
|
||||
# this is a required setting for this theme to appear on https://themes.gohugo.io/
|
||||
# change this to a value appropriate for you; if your site is served from a subdirectory
|
||||
# set it like "https://example.com/mysite/"
|
||||
baseURL = "https://example.com/"
|
||||
|
||||
# canonicalization will only be used for the sitemap.xml and index.xml files;
|
||||
# if set to false, a site served from a subdirectory will generate wrong links
|
||||
# inside of the above mentioned files; if you serve the page from the servers root
|
||||
# you are free to set the value to false as recommended by the official Hugo documentation
|
||||
canonifyURLs = true # true -> all relative URLs would instead be canonicalized using baseURL
|
||||
# required value to serve this page from a webserver AND the file system;
|
||||
# if you don't want to serve your page from the file system, you can also set this value
|
||||
# to false
|
||||
relativeURLs = true # true -> rewrite all relative URLs to be relative to the current content
|
||||
# if you set uglyURLs to false, this theme will append 'index.html' to any branch bundle link
|
||||
# so your page can be also served from the file system; if you don't want that,
|
||||
# set disableExplicitIndexURLs=true in the [params] section
|
||||
uglyURLs = false # true -> basic/index.html -> basic.html
|
||||
|
||||
# the directory where Hugo reads the themes from; this is specific to your
|
||||
# installation and most certainly needs be deleted or changed
|
||||
themesdir = "../.."
|
||||
# yeah, well, obviously a mandatory setting for your site, if you want to
|
||||
# use this theme ;-)
|
||||
theme = "hugo-theme-relearn"
|
||||
|
||||
# the main language of this site; also an automatic pirrrate translation is
|
||||
# available in this showcase
|
||||
languageCode = "en"
|
||||
# make sure your defaultContentLanguage is the first one in the [languages]
|
||||
# array below, as the theme needs to make assumptions on it
|
||||
defaultContentLanguage = "en"
|
||||
# if you want to get rrrid o' ourrr pirrrates nonsense uncomment th' next line
|
||||
# disableLanguages = ['pir']
|
||||
|
||||
# the site's title of this showcase; you should change this ;-)
|
||||
title = "Hugo Relearn Documentation"
|
||||
|
||||
[outputs]
|
||||
# add JSON to the home to support Lunr search; This is a mandatory setting
|
||||
# for the search functionality
|
||||
# add PRINT to home, section and page to activate the feature to print whole
|
||||
# chapters
|
||||
home = ["HTML", "RSS", "PRINT", "SEARCH", "SEARCHPAGE"]
|
||||
section = ["HTML", "RSS", "PRINT"]
|
||||
page = ["HTML", "RSS", "PRINT"]
|
||||
|
||||
[markup]
|
||||
[markup.highlight]
|
||||
# if `guessSyntax = true`, there will be no unstyled code even if no language
|
||||
# was given BUT Mermaid and Math codefences will not work anymore! So this is a
|
||||
# mandatory setting for your site if you want to use Mermaid or Math codefences
|
||||
guessSyntax = false
|
||||
|
||||
# here in this showcase we use our own modified chroma syntax highlightning style
|
||||
# which is imported in theme-relearn-light.css / theme-relearn-dark.css;
|
||||
# if you want to use a predefined style instead:
|
||||
# - remove the following `noClasses`
|
||||
# - set the following `style` to a predefined style name
|
||||
# - remove the `@import` of the self-defined chroma stylesheet from your CSS files
|
||||
# (here eg.: theme-relearn-light.css / theme-relearn-dark.css)
|
||||
noClasses = false
|
||||
# style = "tango"
|
||||
|
||||
[markup.goldmark.renderer]
|
||||
# activated for this showcase to use HTML and JavaScript; decide on your own needs;
|
||||
# if in doubt, remove this line
|
||||
unsafe = true
|
||||
|
||||
# allows `hugo server` to display this showcase in IE11; this is used for testing, as we
|
||||
# are still supporting IE11 - although with degraded experience; if you don't care about
|
||||
# `hugo server` or browsers of ancient times, fell free to remove this whole block
|
||||
[server]
|
||||
[[server.headers]]
|
||||
for = "**.html"
|
||||
[server.headers.values]
|
||||
X-UA-Compatible = "IE=edge"
|
||||
|
||||
# showcase of the menu shortcuts; you can use relative URLs linking
|
||||
# to your content or use fully-quallified URLs to link outside of
|
||||
# your project
|
||||
[languages]
|
||||
[languages.en]
|
||||
title = "Hugo Relearn Theme"
|
||||
weight = 1
|
||||
languageName = "English"
|
||||
# Language dependend settings:
|
||||
# Use case https://gohugo.io/content-management/multilingual/#translation-by-content-directory
|
||||
#contentDir = "content/en"
|
||||
[languages.en.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Home"
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fab fa-fw fa-github'></i> GitHub repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn"
|
||||
weight = 10
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-camera'></i> Showcases"
|
||||
pageRef = "showcase/"
|
||||
weight = 11
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bookmark'></i> Hugo Documentation"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bullhorn'></i> Credits"
|
||||
pageRef = "more/credits/"
|
||||
weight = 30
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-tags'></i> Tags"
|
||||
pageRef = "tags/"
|
||||
weight = 40
|
||||
|
||||
# this is ourrr way t' showcase th' multilang settings by
|
||||
# doing autotrrranlat'n of th' english content; we are
|
||||
# lazy and don't supporrt furrrther trrranslations; arrr,
|
||||
# don't take it t' serrrious, fello'; it's prrretty hacky and:
|
||||
# NOT MEANT FER PRRRODUCTION! ARRR!
|
||||
|
||||
[languages.pir]
|
||||
title = "Cap'n Hugo Relearrrn Theme"
|
||||
weight = 2
|
||||
languageName = "Arrr! ☠ Pirrrates ☠"
|
||||
# Language dependend settings:
|
||||
# Use case https://gohugo.io/content-management/multilingual/#translation-by-content-directory
|
||||
#contentDir = "content/pir"
|
||||
[languages.pir.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Arrr! Home"
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fab fa-fw fa-github'></i> GitHub repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn"
|
||||
weight = 10
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-camera'></i> Showcases"
|
||||
pageRef = "showcase/"
|
||||
weight = 11
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bookmark'></i> Cap'n Hugo Documentat'n"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bullhorn'></i> Crrredits"
|
||||
pageRef = "more/credits/"
|
||||
weight = 30
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-tags'></i> Arrr! Tags"
|
||||
pageRef = "tags/"
|
||||
weight = 40
|
||||
|
||||
# mounts are only needed in this showcase to access the publicly available screenshots;
|
||||
# remove this section if you don't need further mounts
|
||||
[module]
|
||||
[[module.mounts]]
|
||||
source = 'archetypes'
|
||||
target = 'archetypes'
|
||||
[[module.mounts]]
|
||||
source = 'assets'
|
||||
target = 'assets'
|
||||
|
||||
# Language dependend settings:
|
||||
# Use case https://gohugo.io/content-management/multilingual/#translation-by-filename
|
||||
[[module.mounts]]
|
||||
source = 'content'
|
||||
target = 'content'
|
||||
# Use case https://gohugo.io/content-management/multilingual/#translation-by-content-directory
|
||||
#[[module.mounts]]
|
||||
# lang = 'en'
|
||||
# source = 'content/en'
|
||||
# target = 'content'
|
||||
#[[module.mounts]]
|
||||
# lang = 'pir'
|
||||
# source = 'content/pir'
|
||||
# target = 'content'
|
||||
|
||||
[[module.mounts]]
|
||||
source = 'data'
|
||||
target = 'data'
|
||||
[[module.mounts]]
|
||||
source = 'i18n'
|
||||
target = 'i18n'
|
||||
[[module.mounts]]
|
||||
source = '../images'
|
||||
target = 'static/images'
|
||||
[[module.mounts]]
|
||||
source = 'static/images'
|
||||
target = 'static/images'
|
||||
[[module.mounts]]
|
||||
source = 'layouts'
|
||||
target = 'layouts'
|
||||
[[module.mounts]]
|
||||
source = 'static'
|
||||
target = 'static'
|
||||
|
||||
# settings specific to this theme's features; choose to your likings and
|
||||
# consult this documentation for explaination
|
||||
[params]
|
||||
editURL = "https://github.com/McShelby/hugo-theme-relearn/edit/main/exampleSite/content/"
|
||||
description = "Documentation for Hugo Relearn Theme"
|
||||
author = "Sören Weber"
|
||||
showVisitedLinks = true
|
||||
collapsibleMenu = true
|
||||
disableBreadcrumb = false
|
||||
disableInlineCopyToClipBoard = true
|
||||
disableNextPrev = false
|
||||
disableLandingPageButton = true
|
||||
breadcrumbSeparator = ">"
|
||||
titleSeparator = "::"
|
||||
themeVariant = [ "auto", "relearn-bright", "relearn-light", "relearn-dark", "learn", "neon", "blue", "green", "red" ]
|
||||
themeVariantAuto = [ "relearn-light", "relearn-dark" ]
|
||||
disableSeoHiddenPages = true
|
||||
# this is to index search for your native language in other languages, too (eg.
|
||||
# pir in this showcase)
|
||||
additionalContentLanguage = [ "en" ]
|
||||
# this is for the stylesheet generator to allow for interactivity in Mermaid
|
||||
# graphs; you usually will not need it and you should remove this for
|
||||
# security reasons
|
||||
mermaidInitialize = "{ \"securityLevel\": \"loose\" }"
|
||||
mermaidZoom = true
|
21
docs/themes/hugo-theme-relearn/exampleSite/config/testing/config.toml
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
# We disable this for testing the exampleSite; you must do so too
|
||||
# if you want to use the themes parameter disableGeneratorVersion=true;
|
||||
# otherwise Hugo will create a generator tag on your home page
|
||||
disableHugoGeneratorInject = true
|
||||
|
||||
# We are pretty sure, to not have unintentionally untranslated titles;
|
||||
# it may happen in case when shortcodes want to set an automatic title
|
||||
# out of a given style setting (this is allowed to fail for non severity styles)
|
||||
# enableMissingTranslationPlaceholders = true
|
||||
|
||||
# Audit your published site for problems
|
||||
# https://discourse.gohugo.io/t/audit-your-published-site-for-problems/35184/12?u=mcshelby
|
||||
[minify]
|
||||
[minify.tdewolff]
|
||||
[minify.tdewolff.html]
|
||||
keepComments = true
|
||||
|
||||
[params]
|
||||
disableGeneratorVersion = true
|
||||
disableAssetsBusting = true
|
||||
disableRandomIds = true
|
82
docs/themes/hugo-theme-relearn/exampleSite/content/_index.en.md
vendored
Normal file
@ -0,0 +1,82 @@
|
||||
+++
|
||||
archetype = "home"
|
||||
title = "Hugo Relearn Theme"
|
||||
+++
|
||||
|
||||
A theme for [Hugo](https://gohugo.io/) designed for documentation.
|
||||
|
||||
[★ What's new in the latest release ★]({{% relref "basics/migration" %}})
|
||||
|
||||

|
||||
|
||||
## Motivation
|
||||
|
||||
The theme is a fork of the great [Learn theme](https://github.com/matcornic/hugo-theme-learn) with the aim of fixing long outstanding bugs and adepting to latest Hugo features. As far as possible this theme tries to be a drop-in replacement for the Learn theme.
|
||||
|
||||
## Features
|
||||
|
||||
- **Wide set of usage scenarios**
|
||||
- Responsive design for mobile usage
|
||||
- Looks nice on paper (if you have to)
|
||||
- Usable offline, no external dependencies
|
||||
- [Usable from your local file system via `file://` protocol]({{%relref "basics/configuration#serving-your-page-from-the-filesystem" %}})
|
||||
- Support for the [VSCode Front Matter extension](https://github.com/estruyf/vscode-front-matter) for on-premise CMS capabilities
|
||||
- Support for Internet Explorer 11
|
||||
- **Configurable theming and visuals**
|
||||
- [Configurable brand images]({{%relref "basics/customization#change-the-logo" %}})
|
||||
- [Automatic switch for light/dark variant dependend on your OS settings]({{%relref "basics/customization#adjusting-to-os-settings" %}})
|
||||
- Predefined light, dark and color variants
|
||||
- [User selectable variants]({{%relref "basics/customization#multiple-variants" %}})
|
||||
- [Stylesheet generator]({{%relref "basics/generator" %}})
|
||||
- [Configurable syntax highlighting]({{%relref "cont/syntaxhighlight" %}})
|
||||
- **Unique theme features**
|
||||
- [Print whole chapters or even the complete site]({{%relref "basics/configuration#activate-print-support" %}})
|
||||
- In page search
|
||||
- [Site search]({{%relref "basics/configuration#activate-search" %}})
|
||||
- [Dedicated search page]({{%relref "basics/configuration#activate-dedicated-search-page" %}})
|
||||
- [Taxonomy support]({{%relref "cont/taxonomy" %}})
|
||||
- Hidden pages
|
||||
- Unlimited nested menu dependend on your site structure
|
||||
- Navigation buttons dependend on your site structure
|
||||
- [Configurable shortcut links]({{%relref "cont/menushortcuts" %}})
|
||||
- **Multi language support**
|
||||
- [Full support for languages written right to left]({{%relref "cont/i18n" %}})
|
||||
- [Available languages]({{%relref "cont/i18n#basic-configuration" %}}): Arabic, Simplified Chinese, Traditional Chinese, Czech, Dutch, English, Finnish, French, German, Hindi, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Russian, Spanish, Turkish, Vietnamese
|
||||
- [Search support for mixed language content]({{%relref "cont/i18n#search" %}})
|
||||
- **Additional Markdown features**
|
||||
- [Support for GFM (GitHub Flavored Markdown]({{%relref "cont/markdown" %}})
|
||||
- [Image styling like sizing, shadow, border and alignment]({{%relref "cont/markdown#further-image-formatting" %}})
|
||||
- [Image lightbox]({{%relref "cont/markdown#further-image-formatting#lightbox" %}})
|
||||
- **Shortcodes galore**
|
||||
- [Display files attached to page bundles]({{%relref "shortcodes/attachments" %}})
|
||||
- [Marker badges]({{%relref "shortcodes/badge" %}})
|
||||
- [Configurable buttons]({{%relref "shortcodes/button" %}})
|
||||
- [List child pages]({{%relref "shortcodes/children" %}})
|
||||
- [Expand areas to reveal content]({{%relref "shortcodes/expand" %}})
|
||||
- [Font Awesome icons]({{%relref "shortcodes/icon" %}})
|
||||
- [Inclusion of other files]({{%relref "shortcodes/include" %}})
|
||||
- [Math and chemical formulae using MathJax]({{%relref "shortcodes/math" %}})
|
||||
- [Mermaid diagrams for flowcharts, sequences, gantts, pie, etc.]({{%relref "shortcodes/mermaid" %}})
|
||||
- [Colorful boxes]({{%relref "shortcodes/notice" %}})
|
||||
- [OpenAPI specifications using Swagger UI]({{%relref "shortcodes/openapi" %}})
|
||||
- [Reveal you site's configuration parameter]({{%relref "shortcodes/siteparam" %}})
|
||||
- [Tabbed panels]({{%relref "shortcodes/tabs" %}})
|
||||
- [Single tabbed panels]({{%relref "shortcodes/tab" %}}) and [multiple tabbed panels]({{%relref "shortcodes/tabs" %}})
|
||||
|
||||
## Support
|
||||
|
||||
To get support, feel free to open a new [discussion topic](https://github.com/McShelby/hugo-theme-relearn/discussions) or [issue report](https://github.com/McShelby/hugo-theme-relearn/issues) in the official repository on GitHub.
|
||||
|
||||
## Contributions
|
||||
|
||||
Feel free to contribute to this documentation by just clicking the {{% button style="transparent" icon="pen" %}}{{% /button %}} button displayed on top right of each page.
|
||||
|
||||
You are most welcome to contribute bugfixes or new features by making pull requests to the [official repository](https://github.com/McShelby/hugo-theme-relearn). Check the [contribution guidelines]({{%relref "dev/contributing" %}}) first before starting.
|
||||
|
||||
## License
|
||||
|
||||
The Relearn theme is licensed under the [MIT License](https://github.com/McShelby/hugo-theme-relearn/blob/main/LICENSE).
|
||||
|
||||
## Credits
|
||||
|
||||
This theme would not be possible without the work of [many others]({{%relref "more/credits" %}}).
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
archetype = "home"
|
||||
title = "Cap'n Hugo Relearrrn Theme"
|
||||
+++
|
||||
{{< piratify true >}}
|
1372
docs/themes/hugo-theme-relearn/exampleSite/content/basics/CHANGELOG.md
vendored
Normal file
7
docs/themes/hugo-theme-relearn/exampleSite/content/basics/_index.en.md
vendored
Executable file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Basics"
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
Discover what this Hugo theme is all about and the core-concepts behind it.
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Basics"
|
||||
weight = 1
|
||||
+++
|
||||
{{< piratify >}}
|
220
docs/themes/hugo-theme-relearn/exampleSite/content/basics/configuration/_index.en.md
vendored
Normal file
@ -0,0 +1,220 @@
|
||||
+++
|
||||
title = "Configuration"
|
||||
weight = 20
|
||||
+++
|
||||
|
||||
## Global site parameters
|
||||
|
||||
On top of [Hugo global configuration](https://gohugo.io/overview/configuration/), the Relearn theme lets you define the following parameters in your `config.toml` (here, values are default).
|
||||
|
||||
Note that some of these parameters are explained in details in other sections of this documentation.
|
||||
|
||||
```toml
|
||||
[params]
|
||||
# This controls whether submenus will be expanded (true), or collapsed (false) in the
|
||||
# menu; if no setting is given, the first menu level is set to false, all others to true;
|
||||
# this can be overridden in the pages frontmatter
|
||||
alwaysopen = true
|
||||
# Prefix URL to edit current page. Will display an "Edit" button on top right hand corner of every page.
|
||||
# Useful to give opportunity to people to create merge request for your doc.
|
||||
# See the config.toml file from this documentation site to have an example.
|
||||
editURL = ""
|
||||
# Author of the site, will be used in meta information
|
||||
author = ""
|
||||
# Description of the site, will be used in meta information
|
||||
description = ""
|
||||
# Shows a checkmark for visited pages on the menu
|
||||
showVisitedLinks = false
|
||||
# Disable search function. It will hide search bar
|
||||
disableSearch = false
|
||||
# Disable search in hidden pages, otherwise they will be shown in search box
|
||||
disableSearchHiddenPages = false
|
||||
# Disables hidden pages from showing up in the sitemap and on Google (et all), otherwise they may be indexed by search engines
|
||||
disableSeoHiddenPages = false
|
||||
# Disables hidden pages from showing up on the tags page although the tag term will be displayed even if all pages are hidden
|
||||
disableTagHiddenPages = false
|
||||
# Javascript and CSS cache are automatically busted when new version of site is generated.
|
||||
# Set this to true to disable this behavior (some proxies don't handle well this optimization)
|
||||
disableAssetsBusting = false
|
||||
# Set this to true if you want to disable generation for generator version meta tags of hugo and the theme;
|
||||
# don't forget to also set Hugo's disableHugoGeneratorInject=true, otherwise it will generate a meta tag into your home page
|
||||
disableGeneratorVersion = false
|
||||
# Set this to true to disable copy-to-clipboard button for inline code.
|
||||
disableInlineCopyToClipBoard = false
|
||||
# A title for shortcuts in menu is set by default. Set this to true to disable it.
|
||||
disableShortcutsTitle = false
|
||||
# If set to false, a Home button will appear below the search bar on the menu.
|
||||
# It is redirecting to the landing page of the current language if specified. (Default is "/")
|
||||
disableLandingPageButton = true
|
||||
# When using mulitlingual website, disable the switch language button.
|
||||
disableLanguageSwitchingButton = false
|
||||
# Hide breadcrumbs in the header and only show the current page title
|
||||
disableBreadcrumb = true
|
||||
# If set to true, hide table of contents menu in the header of all pages
|
||||
disableToc = false
|
||||
# If set to false, load the MathJax module on every page regardless if a MathJax shortcode is present
|
||||
disableMathJax = false
|
||||
# Specifies the remote location of the MathJax js
|
||||
customMathJaxURL = "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"
|
||||
# Initialization parameter for MathJax, see MathJax documentation
|
||||
mathJaxInitialize = "{}"
|
||||
# If set to false, load the Mermaid module on every page regardless if a Mermaid shortcode or Mermaid codefence is present
|
||||
disableMermaid = false
|
||||
# Specifies the remote location of the Mermaid js
|
||||
customMermaidURL = "https://unpkg.com/mermaid/dist/mermaid.min.js"
|
||||
# Initialization parameter for Mermaid, see Mermaid documentation
|
||||
mermaidInitialize = "{ \"theme\": \"default\" }"
|
||||
# If set to false, load the OpenAPI module on every page regardless if a OpenAPI shortcode is present
|
||||
disableOpenapi = false
|
||||
# Specifies the remote location of the swagger-ui js
|
||||
customOpenapiURL = "https://unpkg.com/swagger-ui-dist/swagger-ui-bundle.js"
|
||||
# Hide Next and Previous page buttons normally displayed full height beside content
|
||||
disableNextPrev = true
|
||||
# Order sections in menu by "weight" or "title". Default to "weight";
|
||||
# this can be overridden in the pages frontmatter
|
||||
ordersectionsby = "weight"
|
||||
# Change default color scheme with a variant one. Eg. can be "auto", "red", "blue", "green" or an array like [ "blue", "green" ].
|
||||
themeVariant = "auto"
|
||||
# Change the breadcrumb separator. Default to ">".
|
||||
breadcrumbSeparator = "|"
|
||||
# Change the title separator. Default to "::".
|
||||
titleSeparator = "-"
|
||||
# If set to true, the menu in the sidebar will be displayed in a collapsible tree view. Although the functionality works with old browsers (IE11), the display of the expander icons is limited to modern browsers
|
||||
collapsibleMenu = false
|
||||
# If a single page can contain content in multiple languages, add those here
|
||||
additionalContentLanguage = [ "en" ]
|
||||
# If set to true, no index.html will be appended to prettyURLs; this will cause pages not
|
||||
# to be servable from the file system
|
||||
disableExplicitIndexURLs = false
|
||||
# For external links you can define how they are opened in your browser; this setting will only be applied to the content area but not the shortcut menu
|
||||
externalLinkTarget = "_blank"
|
||||
```
|
||||
|
||||
## Serving your page from a subfolder
|
||||
|
||||
If your site is served from a subfolder, eg. `https://example.com/mysite/`, you have to set the following lines to your `config.toml`
|
||||
|
||||
````toml
|
||||
baseURL = "https://example.com/mysite/"
|
||||
canonifyURLs = true
|
||||
relativeURLs = true
|
||||
````
|
||||
|
||||
Without `canonifyURLs=true` URLs in sublemental pages (like `sitemap.xml`, `rss.xml`) will be generated falsly while your HTML files will still work. See https://github.com/gohugoio/hugo/issues/5226.
|
||||
|
||||
## Serving your page from the filesystem
|
||||
|
||||
If you want your page served from the filesystem by using URLs starting with `file://` you'll need the following configuration in your `config.toml`:
|
||||
|
||||
````toml
|
||||
relativeURLs = true
|
||||
````
|
||||
|
||||
The theme will append an additional `index.html` to all branch bundle links by default to make the page be servable from the file system. If you don't care about the file system and only serve your page via a webserver you can also generate the links without this change by adding this to your `config.toml`
|
||||
|
||||
````toml
|
||||
[params]
|
||||
disableExplicitIndexURLs = true
|
||||
````
|
||||
|
||||
{{% notice note %}}
|
||||
If you want to use the search feature from the file system using an older installation of the theme make sure to change your outputformat for the homepage from the now deprecated `JSON` to `SEARCH` [as seen below](#activate-search).
|
||||
{{% /notice %}}
|
||||
|
||||
## Activate search
|
||||
|
||||
If not already present, add the following lines in the same `config.toml` file.
|
||||
|
||||
```toml
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "SEARCH"]
|
||||
```
|
||||
|
||||
This will generate a search index file at the root of your public folder ready to be consumed by the Lunr search library. Note that the `SEARCH` outputformat was named `JSON` in previous releases but was implemented differently. Although `JSON` still works, it is now deprecated.
|
||||
|
||||
### Activate dedicated search page
|
||||
|
||||
You can add a dedicated search page for your page by adding the `SEARCHPAGE` outputformat to your home page by adding the following lines in your `config.toml` file.
|
||||
|
||||
```toml
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "SEARCH", "SEARCHPAGE"]
|
||||
```
|
||||
|
||||
You can access this page by either clicking on the magnifier glass or by typing some search term and pressing `ENTER` inside of the menu's search box .
|
||||
|
||||

|
||||
|
||||
## Activate print support
|
||||
|
||||
You can activate print support to add the capability to print whole chapters or even the complete site. Just add the `PRINT` output format to your home, section and page in your `config.toml` as seen below:
|
||||
|
||||
```toml
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "PRINT", "SEARCH"]
|
||||
section = ["HTML", "RSS", "PRINT"]
|
||||
page = ["HTML", "RSS", "PRINT"]
|
||||
```
|
||||
|
||||
This will add a little printer icon in the top bar. It will switch the page to print preview when clicked. You can then send this page to the printer by using your browser's usual print functionality.
|
||||
|
||||
{{% notice note %}}
|
||||
The resulting URL will not be [configured ugly](https://gohugo.io/templates/output-formats/#configure-output-formats) in terms of [Hugo's URL handling](https://gohugo.io/content-management/urls/#ugly-urls) even if you've set `uglyURLs=true` in your `config.toml`. This is due to the fact that for one mime type only one suffix can be configured.
|
||||
|
||||
Nevertheless, if you're unhappy with the resulting URLs you can manually redefine `outputFormats.PRINT` in your own `config.toml` to your liking.
|
||||
{{% /notice %}}
|
||||
|
||||
## MathJax
|
||||
|
||||
The MathJax configuration parameters can also be set on a specific page. In this case, the global parameter would be overwritten by the local one. See [Math]({{< relref "shortcodes/math" >}}) for additional documentation.
|
||||
|
||||
### Example {#math-example}
|
||||
|
||||
MathJax is globally disabled. By default it won't be loaded by any page.
|
||||
|
||||
On page "Physics" you coded some JavaScript for a dynamic formulae. You can set the MathJax parameters locally to load mathJax on this page.
|
||||
|
||||
You also can disable MathJax for specific pages while globally enabled.
|
||||
|
||||
## Mermaid
|
||||
|
||||
The Mermaid configuration parameters can also be set on a specific page. In this case, the global parameter would be overwritten by the local one. See [Mermaid]({{< relref "shortcodes/mermaid" >}}) for additional documentation.
|
||||
|
||||
### Example {#mermaid-example}
|
||||
|
||||
Mermaid is globally disabled. By default it won't be loaded by any page.
|
||||
|
||||
On page "Architecture" you coded some JavaScript to dynamically generate a class diagram. You can set the Mermaid parameters locally to load mermaid on this page.
|
||||
|
||||
You also can disable Mermaid for specific pages while globally enabled.
|
||||
|
||||
## Home Button Configuration
|
||||
|
||||
If the `disableLandingPageButton` option is set to `false`, a Home button will appear
|
||||
on the left menu. It is an alternative for clicking on the logo. To edit the
|
||||
appearance, you will have to configure two parameters for the defined languages:
|
||||
|
||||
```toml
|
||||
[languages]
|
||||
[languages.en]
|
||||
...
|
||||
[languages.en.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Home"
|
||||
...
|
||||
[languages.pir]
|
||||
...
|
||||
[languages.pir.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Arrr! Homme"
|
||||
...
|
||||
```
|
||||
|
||||
If those params are not configured for a specific language, they will get their
|
||||
default values:
|
||||
|
||||
```toml
|
||||
landingPageName = "<i class='fas fa-home'></i> Home"
|
||||
```
|
||||
|
||||
The home button is going to look like this:
|
||||
|
||||

|
5
docs/themes/hugo-theme-relearn/exampleSite/content/basics/configuration/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Configurrrat'n"
|
||||
weight = 20
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/basics/configuration/home_button_defaults.png
vendored
Normal file
After Width: | Height: | Size: 7.4 KiB |
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/basics/configuration/search_page.png
vendored
Normal file
After Width: | Height: | Size: 30 KiB |
123
docs/themes/hugo-theme-relearn/exampleSite/content/basics/customization/_index.en.md
vendored
Normal file
@ -0,0 +1,123 @@
|
||||
+++
|
||||
categories = ["custom", "theming"]
|
||||
title = "Customization"
|
||||
weight = 25
|
||||
+++
|
||||
|
||||
The Relearn theme has been built to be as configurable as possible by defining multiple [partials](https://gohugo.io/templates/partials/)
|
||||
|
||||
In `themes/hugo-theme-relearn/layouts/partials/`, you will find all the partials defined for this theme. If you need to overwrite something, don't change the code directly. Instead [follow this page](https://gohugo.io/themes/customizing/). You'd create a new partial in the `layouts/partials` folder of your local project. This partial will have the priority.
|
||||
|
||||
This theme defines the following partials :
|
||||
|
||||
- `header.html`: the header of the page. See [output-formats](#output-formats)
|
||||
- `footer.html`: the footer of the page. See [output-formats](#output-formats)
|
||||
- `body.html`: the body of the page. The body may contain of one or many articles. See [output-formats](#output-formats)
|
||||
- `article.html`: the output for a single article, can contain elements around your content. See [output-formats](#output-formats)
|
||||
- `menu.html`: left menu. _Not meant to be overwritten_
|
||||
- `search.html`: search box. _Not meant to be overwritten_
|
||||
- `custom-header.html`: custom headers in page. Meant to be overwritten when adding CSS imports. Don't forget to include `style` HTML tag directive in your file.
|
||||
- `custom-footer.html`: custom footer in page. Meant to be overwritten when adding JavaScript. Don't forget to include `javascript` HTML tag directive in your file.
|
||||
- `favicon.html`: the favicon
|
||||
- `heading-pre.html`: side-wide configuration to prepend to pages title headings. If you override this, it is your responsibility to take the page's `headingPre` setting into account.
|
||||
- `heading-post.html`: side-wide configuration to append to pages title headings. If you override this, it is your responsibility to take the page's `headingPost` setting into account.
|
||||
- `logo.html`: the logo, on top left hand corner
|
||||
- `meta.html`: HTML meta tags, if you want to change default behavior
|
||||
- `menu-pre.html`: side-wide configuration to prepend to menu items. If you override this, it is your responsibility to take the page's `menuPre` setting into account.
|
||||
- `menu-post.html`: side-wide configuration to append to menu items. If you override this, it is your responsibility to take the page's `menuPost` setting into account.
|
||||
- `menu-footer.html`: footer of the the left menu
|
||||
- `toc.html`: table of contents
|
||||
- `content.html`: the content page itself. This can be overridden if you want to display page's meta data above or below the content.
|
||||
- `content-header.html`: header above the title, has a default implementation but you can overwrite it if you don't like it.
|
||||
- `content-footer.html`: footer below the content, has a default implementation but you can overwrite it if you don't like it.
|
||||
|
||||
## Change the logo
|
||||
|
||||
Create a new file in `layouts/partials/` named `logo.html`. Then write any HTML you want.
|
||||
You could use an `img` HTML tag and reference an image created under the _static_ folder, or you could paste a SVG definition!
|
||||
|
||||
{{% notice note %}}
|
||||
The size of the logo will adapt automatically
|
||||
{{% /notice %}}
|
||||
|
||||
## Change the favicon
|
||||
|
||||
If your favicon is a SVG, PNG or ICO, just drop off your image in your local `static/images/` folder and name it `favicon.svg`, `favicon.png` or `favicon.ico` respectively.
|
||||
|
||||
Additionally, if you want your site to use light & dark theme favicons that follow the OS' (and in some cases, the browser's) color scheme, add the image files to your local `static/images/` folder and name them eg. `favicon-light.svg` and/or `favicon-dark.svg` respectively corresponding to your file format. In case one of the files is missing, the theme falls back to eg. `favicon.svg` for the missing file. All supplied favicons must be of the same file format.
|
||||
|
||||
{{% notice warning %}}
|
||||
IE and old browser versions do not support [media queries](https://caniuse.com/css-media-interaction), which are necessary for the light & dark theme favicon option.
|
||||
If you have requirements to support IE and/or older browser versions, use one of the other options.
|
||||
{{% /notice %}}
|
||||
|
||||
If no favicon file is found, the theme will lookup the alternative filename `logo` in the same location and will repeat the search for the list of supported file types.
|
||||
|
||||
If you need to change this default behavior, create a new file in `layouts/partials/` named `favicon.html`. Then write something like this:
|
||||
|
||||
```html
|
||||
<link rel="icon" href="/images/favicon.bmp" type="image/bmp">
|
||||
```
|
||||
|
||||
## Change the colors {#theme-variant}
|
||||
|
||||
The Relearn theme lets you choose between some predefined color variants in light or dark mode, but feel free to add one yourself!
|
||||
|
||||
You can preview the shipped variants by changing them in the variant selector at the bottom of the menu.
|
||||
|
||||
### Single variant
|
||||
|
||||
Set the `themeVariant` value with the name of your theme file. That's it!
|
||||
|
||||
```toml
|
||||
[params]
|
||||
themeVariant = "relearn-light"
|
||||
```
|
||||
|
||||
In the above example your theme file has to be named `theme-relearn-light.css`
|
||||
|
||||
### Multiple variants
|
||||
|
||||
You can also set multiple variants. In this case, the first variant is the default chosen on first view and a variant switch will be shown in the menu footer.
|
||||
|
||||
```toml
|
||||
[params]
|
||||
# Change default color scheme with a variant one.
|
||||
themeVariant = [ "relearn-light", "relearn-dark" ]
|
||||
```
|
||||
|
||||
{{% notice tip %}}
|
||||
If you want to switch the syntax highlighting theme together with your color variant, generate a syntax highlighting stylesheet and configure your installation [according to Hugo's documentation](https://gohugo.io/content-management/syntax-highlighting/), and `@import` this stylesheet in your color variant stylesheet. For an example, take a look into `theme-relearn-light.css` and `config.toml` of the exampleSite.
|
||||
{{% /notice %}}
|
||||
|
||||
### Adjust to OS Settings
|
||||
|
||||
You can also cause the site to adjust to your OS settings for light/dark mode. Just set the `themeVariant` to `auto`. That's it.
|
||||
|
||||
If you've set multiple variants, you can drop `auto` at any position, but usually it makes sense to set it in the first position and make it the default.
|
||||
|
||||
```toml
|
||||
[params]
|
||||
themeVariant = [ "auto", "red" ]
|
||||
```
|
||||
|
||||
If you don't configure anything else, the theme will use `relearn-light` for light mode and `relearn-dark` for dark mode.
|
||||
|
||||
If you don't like that, you can set `themeVariantAuto`. The first element is the variant for light mode, the second for dark mode
|
||||
|
||||
```toml
|
||||
[params]
|
||||
themeVariantAuto = [ "learn", "neon" ]
|
||||
```
|
||||
|
||||
{{% notice note %}}
|
||||
This is not supported for Internet Explorer 11, which still displays in the `relearn-light` variant.
|
||||
{{% /notice %}}
|
||||
|
||||
### Roll your own
|
||||
|
||||
If you are not happy with the shipped variants you can either copy and rename one of the shipped files from `themes/hugo-theme-relearn/static/css` to `static/css`, edit them afterwards to your liking in a text editor and configure the `themeVariant` parameter in your `config.toml` or just use the [interactive variant generator]({{%relref "basics/generator" %}}).
|
||||
|
||||
### Output formats
|
||||
|
||||
Certain parts of the theme can be changed for support of your own [output formats](https://gohugo.io/templates/output-formats/). Eg. if you define a new output format `PLAINTEXT` in your `config.toml`, you can add a file `layouts/partials/header.plaintext.html` to change the way, the page header should look like for that output format.
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/customization/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
categories = ["custom", "theming"]
|
||||
title = "Customizat'n"
|
||||
weight = 25
|
||||
+++
|
||||
{{< piratify >}}
|
36
docs/themes/hugo-theme-relearn/exampleSite/content/basics/generator/_index.en.md
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
+++
|
||||
categories = "theming"
|
||||
disableMermaid = false
|
||||
title = "Stylesheet generator"
|
||||
weight = 26
|
||||
+++
|
||||
|
||||
This interactive tool may help you to generate your own color variant stylesheet.
|
||||
|
||||
{{% expand "Show usage instructions" %}}
|
||||
To get started, first select a color variant from the variant switch in the lower left sidebar that fits you best as a starting point.
|
||||
|
||||
The graph is interactive and reflect the current colors. You can click on any of the colored boxes to adjust the respective color. The graph **and the page** will update accordingly.
|
||||
|
||||
The arrowed lines reflect how colors are inherited thru different parts of the theme if the descendent isn't overwritten. If you want to delete a color and let it inherit from its parent, just delete the value from the input field.
|
||||
|
||||
To better understand this select the `neon` variant and modify the different heading colors. There, colors for the heading `h2`, `h3` and `h4` are explicitly set. `h5` is not set and inherits its value from `h4`. `h6` is also not set and inherits its value from `h5`.
|
||||
|
||||
Once you've changed a color, the variant switch will show a "My custom variant" entry and your changes are stored in the browser. You can **browse to other pages** and even close the browser **without losing your changes**.
|
||||
|
||||
Once you are satisfied, you can download the new variants file and copy it into your site's `static/css` directory. Afterwards you have to adjust the `themeVariant` parameter in your `config.toml` to your chosen file name.
|
||||
|
||||
Eg. if your new variants file is named `theme-my-custom-variant.css`, you have to set `themeVariant='my-custom-variant'` to use it.
|
||||
{{% /expand %}}
|
||||
|
||||
{{% button style="secondary" icon="download" href="javascript:window.variants&&variants.getStylesheet();this.blur();" %}}Download variant{{% /button %}}
|
||||
{{% button style="warning" icon="trash" href="javascript:window.variants&&variants.resetVariant();this.blur();" %}}Reset variant{{% /button %}}
|
||||
|
||||
<div id="vargenerator" class="mermaid" style="background-color: var(--INTERNAL-MAIN-TEXT-color);">Graph</div>
|
||||
|
||||
{{% button style="secondary" icon="download" href="javascript:window.variants&&variants.getStylesheet();this.blur();" %}}Download variant{{% /button %}}
|
||||
{{% button style="warning" icon="trash" href="javascript:window.variants&&variants.resetVariant();this.blur();" %}}Reset variant{{% /button %}}
|
||||
|
||||
<script>
|
||||
window.variants && variants.generator( '#vargenerator' );
|
||||
</script>
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/generator/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
categories = "theming"
|
||||
title = "Stylesheet generrrat'r"
|
||||
weight = 26
|
||||
+++
|
||||
{{< piratify >}}
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/history/_index.en.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
disableToc = false
|
||||
title = "History"
|
||||
weight = 30
|
||||
+++
|
||||
{{% include "basics/CHANGELOG.md" true %}}
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/history/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
disableToc = false
|
||||
title = "Historrry"
|
||||
weight = 30
|
||||
+++
|
||||
{{< piratify >}}
|
113
docs/themes/hugo-theme-relearn/exampleSite/content/basics/installation/_index.en.md
vendored
Normal file
@ -0,0 +1,113 @@
|
||||
+++
|
||||
tags = ["documentation"]
|
||||
title = "Installation"
|
||||
weight = 15
|
||||
+++
|
||||
|
||||
The following steps are here to help you initialize your new website. If you don't know Hugo at all, we strongly suggest you learn more about it by following this [great documentation for beginners](https://gohugo.io/overview/quickstart/).
|
||||
|
||||
## Create your project
|
||||
|
||||
Hugo provides a `new` command to create a new website.
|
||||
|
||||
```
|
||||
hugo new site <new_project>
|
||||
```
|
||||
|
||||
## Install the theme
|
||||
|
||||
Install the Relearn theme by following [this documentation](https://gohugo.io/hugo-modules/use-modules/#use-a-module-for-a-theme) using Hugo's module system.
|
||||
|
||||
This theme's repository is: https://github.com/McShelby/hugo-theme-relearn.git
|
||||
|
||||
Alternatively, you can [download the theme as .zip](https://github.com/McShelby/hugo-theme-relearn/archive/main.zip) file and extract it in the `themes` directory
|
||||
|
||||
### From Git
|
||||
|
||||
If you install the theme from your git repository or GitHub, you have several options.
|
||||
|
||||
If you use the `head` of the `main` branch, you are using the development version. Usually it is fully functional but can break from time to time. We try to fix newly introduced bugs in this version as soon as possible.
|
||||
|
||||
Additionally you can checkout one of the tagged versions. These tagged versions correspond to an official [releases from the GitHub repository](https://github.com/McShelby/hugo-theme-relearn/releases).
|
||||
|
||||
Besides the usual version tags (eg `1.2.3`) there are also tags for the main version (eg. `1.2.x`), major version (eg. `1.x`) and the latest (just `x`) released version making it easier for you to pin the theme to a certain version.
|
||||
|
||||
## Basic configuration
|
||||
|
||||
When building the website, you can set a theme by using `--theme` option. However, we suggest you modify the configuration file (`config.toml`) and set the theme as the default. You can also add the `[outputs]` section to enable the search functionality.
|
||||
|
||||
```toml
|
||||
# Change the default theme to be use when building the site with Hugo
|
||||
theme = "hugo-theme-relearn"
|
||||
|
||||
# For search functionality
|
||||
[outputs]
|
||||
home = [ "HTML", "RSS", "SEARCH"]
|
||||
```
|
||||
|
||||
## Create your first chapter page
|
||||
|
||||
Chapters are pages that contain other child pages. It has a special layout style and usually just contains a _chapter name_, the _title_ and a _brief abstract_ of the section.
|
||||
|
||||
```markdown
|
||||
### Chapter 1
|
||||
|
||||
# Basics
|
||||
|
||||
Discover what this Hugo theme is all about and the core concepts behind it.
|
||||
```
|
||||
|
||||
renders as
|
||||
|
||||

|
||||
|
||||
The Relearn theme provides archetypes to create skeletons for your website. Begin by creating your first chapter page with the following command
|
||||
|
||||
```shell
|
||||
hugo new --kind chapter basics/_index.md
|
||||
```
|
||||
|
||||
By opening the given file, you should see the property `chapter=true` on top, meaning this page is a _chapter_.
|
||||
|
||||
By default all chapters and pages are created as a draft. If you want to render these pages, remove the property `draft: true` from the metadata.
|
||||
|
||||
## Create your first content pages
|
||||
|
||||
Then, create content pages inside the previously created chapter. Here are two ways to create content in the chapter:
|
||||
|
||||
```shell
|
||||
hugo new basics/first-content.md
|
||||
hugo new basics/second-content/_index.md
|
||||
```
|
||||
|
||||
Feel free to edit those files by adding some sample content and replacing the `title` value in the beginning of the files.
|
||||
|
||||
## Launching the website locally
|
||||
|
||||
Launch by using the following command:
|
||||
|
||||
```shell
|
||||
hugo serve
|
||||
```
|
||||
|
||||
Go to `http://localhost:1313`
|
||||
|
||||
You should notice three things:
|
||||
|
||||
1. You have a left-side **Basics** menu, containing two submenus with names equal to the `title` properties in the previously created files.
|
||||
2. The home page explains how to customize it by following the instructions.
|
||||
3. When you run `hugo serve`, when the contents of the files change, the page automatically refreshes with the changes. Neat!
|
||||
|
||||
## Build the website
|
||||
|
||||
When your site is ready to deploy, run the following command:
|
||||
|
||||
```shell
|
||||
hugo
|
||||
```
|
||||
|
||||
A `public` folder will be generated, containing all static content and assets for your website. It can now be deployed on any web server.
|
||||
|
||||
{{% notice note %}}
|
||||
This website can be automatically published and hosted with [Netlify](https://www.netlify.com/) (Read more about [Automated HUGO deployments with Netlify](https://www.netlify.com/blog/2015/07/30/hosting-hugo-on-netlifyinsanely-fast-deploys/)). Alternatively, you can use [GitHub pages](https://gohugo.io/hosting-and-deployment/hosting-on-github/).
|
||||
{{% /notice %}}
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/installation/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
tags = ["documentat'n"]
|
||||
title = "Installat'n"
|
||||
weight = 15
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/basics/installation/chapter.png
vendored
Normal file
After Width: | Height: | Size: 15 KiB |
586
docs/themes/hugo-theme-relearn/exampleSite/content/basics/migration/_index.en.md
vendored
Normal file
@ -0,0 +1,586 @@
|
||||
+++
|
||||
disableToc = false
|
||||
title = "What's New"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
This document shows you what's new in the latest release. For a detailed list of changes, see the [history page]({{%relref "basics/history" %}}).
|
||||
|
||||
{{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.95.0{{% /badge %}} The minimum required Hugo version.
|
||||
|
||||
{{% badge style="warning" title=" " %}}Breaking{{% /badge %}} A change that requires action by you after upgrading to assure the site is still functional.
|
||||
|
||||
{{% badge style="note" title=" " %}}Change{{% /badge %}} A change in default behavior that may requires action by you if you want to revert it.
|
||||
|
||||
{{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Marks new behavior you might find interesting or comes configurable.
|
||||
|
||||
<!--GH-ACTION-RELEASE-MILESTONE-->
|
||||
|
||||
---
|
||||
|
||||
## 5.16.0 (2023-06-10)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The theme now provides warnings for deprecated or now unsupported features. The warnings include hints how to fix them and an additional link to the documenation.
|
||||
|
||||
`DEPRECATION` warnings mark features that still work but may be removed in the future.
|
||||
|
||||
`UNSUPPORTED` warnings mark features that will not work anymore.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The 404 error page was revamped. Hopefully you will not see this very often.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The [`tabs` shortcode]({{% relref "shortcodes/tabs" %}}) and the [`tab` shortcode]({{% relref "shortcodes/tab" %}}) received some love and now align with their style, color, title and icon parameter to the other shortcodes.
|
||||
|
||||
The visuals are now slightly different compared to previous versions. Most noteable, if you now display a single code block in a tab, its default styling will adapt to that of a code block but with a tab handle at the top.
|
||||
|
||||
Additionally the `name` parameter was renamed to `title` but you don't need to change anything yet as the old name will be used as a fallback. Nevertheless you will get deprecation warnings while executing Hugo.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The theme now optionally supports [separate favicons]({{%relref "basics/customization/#change-the-favicon" %}}) for light & dark mode.
|
||||
|
||||
---
|
||||
|
||||
## 5.15.0 (2023-05-29)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Now also compatible with Hugo {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.112.0{{% /badge %}} or higher. This does not change the minimum required Hugo version.
|
||||
|
||||
The [`attachments` shortcode]({{% relref "shortcodes/attachments" %}}) has compatiblity issues with newer Hugo versions. You must switch to leaf bundles or are locked to Hugo < `0.112.0` for now.
|
||||
|
||||
It is [planned to refactor](https://github.com/McShelby/hugo-theme-relearn/issues/22) the `attchments` shortcode in the future. This will make it possible to use the shortcode in branch bundles again but not in simple pages anymore. This will most likely come with a breaking change.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The [`tabs` shortcode]({{% relref "shortcodes/tabs" %}}) has changed behavior if you haven't set the `groupid` parameter.
|
||||
|
||||
Formerly all tab views without a `groupid` were treated as so they belong to the same group. Now, each tab view is treated as it was given a unique id.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The already known `tabs`has a new friend the [`tab` shortcode]({{% relref "shortcodes/tab" %}}) to make it easier to create a tab view in case you only need one single tab. Really handy if you want to flag your code examples with a language identifier.
|
||||
|
||||
Additionally for such a use case, the whitespace between a tab outline and the code is removed if only a single code block is contained.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Besides the _tag_ [taxonomy]({{% relref "cont/taxonomy" %}}) the theme now also provides the _category_ taxonomy out of the box and shows them in the content footer of each page.
|
||||
|
||||
---
|
||||
|
||||
## 5.14.0 (2023-05-20)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The taxonomy pages received some love in this release, making them better leverage available screen space and adding translation support for the taxonomy names.
|
||||
|
||||
Hugo's default taxonmies `tags` and `categories` are already contained in the theme's i18n files. If you have self-defined taxonomies, you can add translations by adding them to your own i18n files. If you don't provide translations, the singualar and plural forms are taken as configured in your `config.toml`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} To give you more flexibility in customizing your article layout a new partial `content-header.html` is introduced.
|
||||
|
||||
This came out of the requirement to customize the position of article tags, which by default are displayed above the title. A second requirement was to also show additional [taxonomies](https://gohugo.io/content-management/taxonomies/) not supported by the theme natively. While Hugo supports tags and categories by default, the theme only displays tags.
|
||||
|
||||
So how to adjust the position of tags starting from the theme's default where tags are only shown above the title?
|
||||
|
||||
1. Hide tags above title: Overwrite `content-header.html` with an empty file.
|
||||
2. Show tags between title and content: Overwrite `heading-post.html` and add `{{- partial "tags.html" . }}` to it.
|
||||
3. Show tags below content: Overwrite `content-footer.html` and add `{{- partial "tags.html" . }}` to it.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The new parameter `breadcrumbSeparator` is now available in your `config.toml` to change the - well - separator of the breadcrumb items. An appropriate default is in place if you do not configure anything.
|
||||
|
||||
---
|
||||
|
||||
## 5.13.0 (2023-05-17)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The `swagger` shortcode was deprecated in favor for the [`openapi` shortcode]({{% relref "shortcodes/openapi" %}}). You don't need to change anything yet as the old name will be used as a fallback. It is planned to remove the `swagger` shortcode in the next major release.
|
||||
|
||||
Additionally, the implemantion of this shortcode was switched from RapiDoc to [SwaggerUI](https://github.com/swagger-api/swagger-ui).
|
||||
|
||||
---
|
||||
|
||||
## 5.12.0 (2023-05-04)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In the effort to comply with WCAG standards, the implementation of the collapsible menu was changed (again). While Internet Explorer 11 has issues in displaying it, the functionality still works.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Support for the great [VSCode Front Matter extension](https://github.com/estruyf/vscode-front-matter) which provides on-premise CMS capabilties to Hugo.
|
||||
|
||||
The theme provides Front Matter snippets for its shortcodes. Currently only English and German is supported. Put a reference into your `frontmatter.json` like this
|
||||
|
||||
````json
|
||||
{
|
||||
...
|
||||
"frontMatter.extends": [
|
||||
"./vscode-frontmatter/snippets.en.json"
|
||||
]
|
||||
...
|
||||
}
|
||||
````
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Support for languages that are written right to left (like Arabic) is now complete and extended to the menu, the top navigation bar and print. You can experience this in the [pirate translation]({{%relref path="basics/migration" lang="pir" %}}). This feature is not available in Internet Explorer 11.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The scrollbars are now colored according to their variant color scheme to better fit into the visuals.
|
||||
|
||||
---
|
||||
|
||||
## 5.11.0 (2023-02-07)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The theme removed the popular [jQuery](https://jquery.com) library from its distribution.
|
||||
|
||||
In case you made changes to the theme that are dependend on this library you can place a copy of jQuery into your `static/js` directory and load it from your own `layouts/partials/custom-header.html` like this:
|
||||
|
||||
````html
|
||||
<script src="{{"js/jquery.min.js"| relURL}}" defer></script>
|
||||
````
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} [Mermaid]({{% relref "shortcodes/mermaid#parameter" %}}) diagrams can now be configured for pan and zoom on site-, page-level or individually for each graph.
|
||||
|
||||
The default setting of `on`, in effect since 1.1.0, changed back to `off` as there was interference with scrolling on mobile and big pages.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The theme is now capable to visually [adapt to your OS's light/dark mode setting]({{%relref "basics/customization/#adjust-to-os-settings" %}}).
|
||||
|
||||
This is also the new default setting if you haven't configured `themeVariant` in your `config.toml`.
|
||||
|
||||
Additionally you can configure the variants to be taken for light/dark mode with the new `themeVariantAuto` parameter.
|
||||
|
||||
This is not supported for Internet Explorer 11, which still displays in the `relearn-light` variant.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The JavaScript code for handling image lightboxes (provided by [Featherlight](https://noelboss.github.io/featherlight)) was replaced by a CSS-only solution.
|
||||
|
||||
This also changed the [lightbox effects]({{% relref "cont/markdown#lightbox" %}}) parameter from `featherlight=false` to `lightbox=false`. Nevertheless you don't need to change anything as the old name will be used as a fallback.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In the effort to comply with WCAG standards, the implementation of the [`expand` shortcode]({{% relref "shortcodes/expand" %}}) was changed. While Internet Explorer 11 has issues in displaying it, the functionality still works.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Translation for Czech. This language is not supported for search.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} [GitHub releases](https://github.com/McShelby/hugo-theme-relearn/tags) are also now tagged for the main version (eg. `1.2.x`), major version (eg. `1.x`) and the latest (just `x`) release making it easier for you to pin the theme to a certain version.
|
||||
|
||||
---
|
||||
|
||||
## 5.10.0 (2023-01-25)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The [`attachments`]({{% relref "shortcodes/attachments" %}}), [`badge`]({{% relref "shortcodes/badge" %}}), [`button`]({{% relref "shortcodes/button" %}}) and [`notice`]({{% relref "shortcodes/notice" %}}) shortcodes have a new parameter `color` to set arbitrary CSS color values.
|
||||
|
||||
Additionally the `--ACCENT-color` brand color introduced in version 5.8.0 is now supported with these shortcodes.
|
||||
|
||||
---
|
||||
|
||||
## 5.9.0 (2022-12-23)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} With this version it is now possible to not only have sections on the first menu level but also pages.
|
||||
|
||||
It was later discovered, that this causes pages only meant to be displayed in the `More` section of the menu and stored directly inside your `content` directory to now show up in the menu aswell.
|
||||
|
||||
To get rid of this undesired behavior you have two choices:
|
||||
|
||||
1. Make the page file for the `More` section a [headless branch bundle](https://gohugo.io/content-management/page-bundles/#headless-bundle) (contained in its own subdirectory and called `_index.md`) and add the following frontmatter configuration to the file (see exampleSite's `content/showcase`). This causes its content to **not** be contained in the sitemap.
|
||||
|
||||
````toml
|
||||
[_build]
|
||||
render = "never"
|
||||
list = "never"
|
||||
publishResources = false
|
||||
````
|
||||
|
||||
2. Store the page file for the `More` section below a parent headless branch bundle and add the following frontmatter to the **parent**. In this case, the file itself can be a branch bundle, leaf bundle or simple page (see exampleSite's `content/more/` and `content/more/credits`). This causes its content to be contained in the sitemap.
|
||||
|
||||
````toml
|
||||
[_build]
|
||||
render = "always"
|
||||
list = "never"
|
||||
publishResources = true
|
||||
````
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The required folder name for the [`attachments` shortcode]({{% relref "shortcodes/attachments" %}}) was changed for leaf bundles.
|
||||
|
||||
Previously, the attachments for leaf bundles in non-multilang setups were required to be in a `files` subdirectory. For page bundles and leaf bundles in multilang setups they were always required to be in a `_index.<LANGCODE>.files` or `index.<LANGCODE>.files` subdirectory accordingly.
|
||||
|
||||
This added unnessessary complexity. So attachments for leaf bundles in non-multilang setups can now also reside in a `index.files` directory. Although the old `files` directory is now deprecated, if both directories are present, only the old `files` directory will be used for compatiblity.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Absolute links prefixed with `http://` or `https://` are now opened in a separate browser tab.
|
||||
|
||||
You can revert back to the old behavior by defining `externalLinkTarget="_self"` in the `params` section of your `config.toml`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The theme now supports [Hugo's module system](https://gohugo.io/hugo-modules/).
|
||||
|
||||
---
|
||||
|
||||
## 5.8.0 (2022-12-08)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The new [`badge` shortcode]({{% relref "shortcodes/badge" %}}) is now available to add highly configurable markers to your content as you can see it on this page.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The new [`icon` shortcode]({{% relref "shortcodes/icon" %}}) simplyfies the usage of icons. This can even be combined with also new `badge` shortcode.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The theme now supports some of GFM (GitHub Flavored Markdown) syntax and Hugo Markdown extensions, namely [task lists]({{% relref "cont/markdown#tasks" %}}), [defintion lists]({{% relref "cont/markdown#defintions" %}}) and [footnotes]({{% relref "cont/markdown#footnotes" %}}).
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} A new color `--ACCENT-color` was introduced which is used for highlightning search results on the page. In case you simply don't care, you don't need to change anything in your variant stylesheet as the old `yellow` color is still used as default.
|
||||
|
||||
---
|
||||
|
||||
## 5.7.0 (2022-11-29)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The Korean language translation for this theme is now available with the language code `ko`. Formerly the country code `kr` was used instead.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The [`button` shortcode]({{% relref "shortcodes/button" %}}) can now also be used as a real button inside of HTML forms - although this is a pretty rare use case. The documentation was updated accordingly.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The search now supports the Korean language.
|
||||
|
||||
---
|
||||
|
||||
## 5.6.0 (2022-11-18)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} This release introduces an additional dedicated search page. On this page, displayed search results have more space making it easier scanning thru large number of results.
|
||||
|
||||
To activate this feature, you need to [configure it]({{% relref "basics/configuration#activate-dedicated-search-page" %}}) in your `config.toml` as a new outputformat `SEARCHPAGE` for the home page. If you don't configure it, no dedicated search page will be accessible and the theme works as before.
|
||||
|
||||
You can access the search page by either clicking on the magnifier glass or pressing enter inside of the search box.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Keyboard handling for the TOC and search was improved.
|
||||
|
||||
Pressing `CTRL+ALT+t` now will not only toggle the TOC overlay but also places the focus to the first heading on opening. Subsequently this makes it possible to easily select headings by using the `TAB` key.
|
||||
|
||||
The search received its own brand new keyboard shortcut `CTRL+ALT+f`. This will focus the cursor inside of the the search box so you can immediately start your search by typing.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You are now able to turn off the generation of generator meta tags in your HTML head to hide the used versions of Hugo and this theme.
|
||||
|
||||
To [configure this]({{% relref "basics/configuration#global-site-parameters" %}}) in your `config.toml` make sure to set Hugo's `disableHugoGeneratorInject=true` **and** also `[params] disableGeneratorVersion=true`, otherwise Hugo will generate a meta tag into your home page automagically.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Creation of your project gets a little bit faster with this release.
|
||||
|
||||
This addresses increased build time with the 5.x releases. The theme now heavily caches partial results leading to improved performance. To further increase performance, unnecessary parts of the page are now skipped for creation of the print output (eg. menus, navigation bar, etc.).
|
||||
|
||||
---
|
||||
|
||||
## 5.5.0 (2022-11-06)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The way images are processed has changed. Now images are lazy loaded by default which speeds up page load on slow networks and/or big pages and also the print preview.
|
||||
|
||||
For that the JavaScript code to handle the [lightbox and image effects]({{% relref "cont/markdown#further-image-formatting" %}}) on the client side was removed in favour for static generation of those effects on the server.
|
||||
|
||||
If you have used HTML directly in your Markdown files, this now has the downside that it doesn't respect the effect query parameter anymore. In this case you have to migrate all your HTML `img` URLs manually to the respective HTML attributes.
|
||||
|
||||
| Old | New |
|
||||
| ------------------------------------------------------ | --------------------------------------------------------------- |
|
||||
| `<img src="pic.png?width=20vw&classes=shadow,border">` | `<img src="pic.png" style="width:20vw;" class="shadow border">` |
|
||||
|
||||
---
|
||||
|
||||
## 5.4.0 (2022-11-01)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} [With the proper settings]({{% relref "basics/configuration#serving-your-page-from-the-filesystem" %}}) in your `config.toml` your page is now servable from the local file system using `file://` URLs.
|
||||
|
||||
Please note that the searchbox will only work for this if you reconfigure your outputformat for the homepage in your `config.toml` from `JSON` to `SEARCH`. The now deprecated `JSON` outputformat still works as before, so there is no need to reconfigure your installation if it is only served from `http://` or `https://`.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The [`button` shortcode]({{% relref "shortcodes/button" %}}) has a new parameter `target` to set the destination frame/window for the URL to open. If not given, it defaults to a new window/tab for external URLs or is not set at all for internal URLs. Previously even internal URLs where opened in a new window/tab.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The [`math` shortcode]({{% relref "shortcodes/math" %}}) and [`mermaid` shortcode]({{% relref "shortcodes/mermaid" %}}) now also support the `align` parameter if codefence syntax is used.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Support for languages that are written right to left (like Arabic). This is only implemented for the content area but not the navigation sidebar. This feature is not available in Internet Explorer 11.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Translation for Finnish (Suomi).
|
||||
|
||||
---
|
||||
|
||||
## 5.3.0 (2022-10-07)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In the effort to comply with WCAG standards, the implementation of the collapsible menu was changed. The functionality of the new implementation does not work with old browsers (Internet Explorer 11).
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} [Image formatting]({{% relref "cont/markdown#add-css-classes" %}}) has two new classes to align images to the `left` or `right`. Additionally, the already existing `inline` option is now documented.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Printing for the [`swagger` shortcode]({{% relref "shortcodes/openapi" %}}) was optimized to expand sections that are usually closed in interactive mode. This requires [print support]({{%relref "basics/configuration#activate-print-support" %}}) to be configured.
|
||||
|
||||
---
|
||||
|
||||
## 5.2.0 (2022-08-03)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} If you've set `collapsibleMenu = true` in your `config.toml`, the menu will be expanded if a search term is found in a collapsed submenu. The menu will return to its initial collapse state once the search term does not match any submenus.
|
||||
|
||||
---
|
||||
|
||||
## 5.1.0 (2022-07-15)
|
||||
|
||||
- {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.95.0{{% /badge %}} This release requires a newer Hugo version.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Because the print preview URLs were non deterministic for normal pages in comparison to page bundles, this is now changed. Each print preview is now accessible by adding a `index.print.html` to the default URL.
|
||||
|
||||
You can revert this behavior by overwriting the PRINT output format setting in your `config.toml`to:
|
||||
|
||||
````toml
|
||||
[outputFormats]
|
||||
[outputFormats.PRINT]
|
||||
name= "PRINT"
|
||||
baseName = "index"
|
||||
path = "_print"
|
||||
isHTML = true
|
||||
mediaType = 'text/html'
|
||||
permalinkable = false
|
||||
````
|
||||
|
||||
---
|
||||
|
||||
## 5.0.0 (2022-07-05)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} The theme changed how JavaScript and CSS dependencies are loaded to provide a better performance. In case you've added own JavaScript code that depends on the themes jQuery implementation, you have to put it into a separate `*.js` file (if not already) and add the `defer` keyword to the `script` element. Eg.
|
||||
|
||||
````html
|
||||
<script defer src="myscript.js"></script>
|
||||
````
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The way [archetypes]({{% relref "cont/archetypes" %}}) are used to generate output has changed. The new systems allows you, to redefine existing archetypes or even generate your own ones.
|
||||
|
||||
Your existing markdown files will still work like before and therefore you don't need to change anything after the upgrade. Nevertheless, it is recommended to adapt your existing markdown files to the new way as follows:
|
||||
|
||||
- for your home page, add the frontmatter parameter `archetype = "home"` and remove the leading heading
|
||||
|
||||
- for all files containing the deprecated frontmatter parameter `chapter = true`, replace it with `archetype = "chapter"` and remove the leading headings
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The frontmatter options `pre` / `post` were renamed to `menuPre` / `menuPost`. The old options will still be used if the new options aren't set. Therefore you don't need to change anything after the upgrade.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Adding new partials `heading-pre.html` / `heading-post.html` and according frontmatter options `headingPre` / `headingPost` to modify the way your page`s main heading gets styled.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The new shortcode `math` is available to add beautiful math and chemical formulae. See the [documentation]({{% relref "shortcodes/math" %}}) for available features. This feature will not work with Internet Explorer 11.
|
||||
|
||||
---
|
||||
|
||||
## 4.2.0 (2022-06-23)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} The second parameter for the [`include` shortcode]({{% relref "shortcodes/include" %}}) was switched in meaning and was renamed from `showfirstheading` to `hidefirstheading`. If you haven't used this parameter in your shortcode, the default behavior hasn't changed and you don't need to change anything.
|
||||
|
||||
If you've used the second boolean parameter, you have to rename it and invert its value to achieve the same behavior.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Previously, if the [`tabs` shortcode]({{% relref "shortcodes/tabs" %}}) could not find a tab item because, the tabs ended up empty. Now the first tab is selected instead.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} The `landingPageURL` was removed from `config.toml`. You can safely remove this as well from your configuration as it is not used anymore. The theme will detect the landing page URL automatically and will point to the project's homepage. If you want to support a different link, overwrite the `logo.html` partial.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} All shortcodes can now be also called from your partials. Examples for this are added to the documentation of each shortcode.
|
||||
|
||||
---
|
||||
|
||||
## 4.1.0 (2022-06-12)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} While fixing issues with the search functionality for non Latin languages, you can now [configure to have multiple languages on a single page]({{% relref "cont/i18n/#search-with-mixed-language-support" %}}).
|
||||
|
||||
---
|
||||
|
||||
## 4.0.0 (2022-06-05)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} The `custom_css` config parameter was removed from the configuration. If used in an existing installation, it can be achieved by overriding the `custom-header.html` template in a much more generic manner.
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} Because anchor hover color was not configurable without introducing more complexity to the variant stylesheets, we decided to remove `--MAIN-ANCHOR-color` instead. You don't need to change anything in your custom color stylesheet as the anchors now get their colors from `--MAIN-LINK-color` and `--MAIN-ANCHOR-HOVER-color` respectively.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} All shortcodes now support named parameter. The positional parameter are still supported but will not be enhanced with new features, so you don't need to change anything in your installation.
|
||||
|
||||
This applies to [`expand`]({{% relref "shortcodes/expand" %}}), [`include`]({{% relref "shortcodes/include" %}}), [`notice`]({{% relref "shortcodes/notice" %}}) and [`siteparam`]({{% relref "shortcodes/siteparam" %}}).
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The [`button`]({{% relref "shortcodes/button" %}}) shortcode received some love and now has a parameter for the color style similar to other shortcodes.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} New colors `--PRIMARY-color` and `--SECONDARY-color` were added to provide easier modification of your custom style. Shortcodes with a color style can now have `primary` or `secondary` as additional values.
|
||||
|
||||
These two colors are the default for other, more specific color variables. You don't need to change anything in your existing custom color stylesheets as those variables get reasonable default values.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Translation for Polish. This language is not supported for search.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The documentation for all shortcodes were revised.
|
||||
|
||||
---
|
||||
|
||||
## 3.4.0 (2022-04-03)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} If you had previously overwritten the `custom-footer.html` partial to add visual elements below the content of your page, you have to move this content to the new partial `content-footer.html`. `custom-footer.html` was never meant to contain HTML other than additional styles and JavaScript.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} If you prefer expandable/collapsible menu items, you can now set `collapsibleMenu=true` in your `config.toml`. This will add arrows to all menu items that contain sub menus. The menu will expand/collapse without navigation if you click on an arrow.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You can activate [print support]({{%relref "basics/configuration#activate-print-support" %}}) in your `config.toml` to add the capability to print whole chapters or even the complete site.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Translation for Traditional Chinese.
|
||||
|
||||
---
|
||||
|
||||
## 3.3.0 (2022-03-28)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Introduction of new CSS variables to set the font. The theme distinguishes between `--MAIN-font` for all content text and `--CODE-font` for inline or block code. There are additional overrides for all headings. See the [theme variant generator]({{%relref "basics/generator" %}}) of the exampleSite for all available variables.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The new shortcode `swagger` is available to include a UI for REST OpenAPI specifications. See the [documentation]({{% relref "shortcodes/openapi" %}}) for available features. This feature will not work with Internet Explorer 11.
|
||||
|
||||
---
|
||||
|
||||
## 3.2.0 (2022-03-19)
|
||||
|
||||
- {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.93.0{{% /badge %}} This release requires a newer Hugo version.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In this release the Mermaid JavaScript library will only be loaded on demand if the page contains a Mermaid shortcode or is using Mermaid codefences. This changes the behavior of `disableMermaid` config option as follows: If a Mermaid shortcode or codefence is found, the option will be ignored and Mermaid will be loaded regardlessly.
|
||||
|
||||
The option is still useful in case you are using scripting to set up your graph. In this case no shortcode or codefence is involved and the library is not loaded by default. In this case you can set `disableMermaid=false` in your frontmatter to force the library to be loaded. See the [theme variant generator]({{%relref "basics/generator" %}}) of the exampleSite for an example.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Additional color variant variable `--MERMAID-theme` to set the variant's Mermaid theme. This causes the Mermaid theme to switch with the color variant if it defers from the setting of the formerly selected color variant.
|
||||
|
||||
---
|
||||
|
||||
## 3.1.0 (2022-03-15)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} [`attachment`]({{% relref "shortcodes/attachments" %}}) and [`notice`]({{% relref "shortcodes/notice" %}}) shortcodes have a new parameter to override the default icon. Allowed values are all [Font Awesome 5 Free](https://fontawesome.com/v5/search?m=free) icons.
|
||||
|
||||
---
|
||||
|
||||
## 3.0.0 (2022-02-22)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} We made changes to the menu footer. If you have your `menu-footer.html` [partial overridden]({{%relref "basics/customization" %}}), you may have to review the styling (eg. margins/paddings) in your partial. For a reference take a look into the `menu-footer.html` partial that is coming with the exampleSite.
|
||||
|
||||
This change was made to allow your own menu footer to be placed right after the so called prefooter that comes with the theme (containing the language switch and _Clear history_ functionality).
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} We have changed the default colors from the original Learn theme (the purple menu header) to the Relearn defaults (the light green menu header) as used in the official documentation.
|
||||
|
||||
This change will only affect your installation if you've not set the `themeVariant` parameter in your `config.toml`. [If you still want to use the Learn color variant]({{%relref "basics/customization/#theme-variant" %}}), you have to explicitly set `themeVariant="learn"` in your `config.toml`.
|
||||
|
||||
Note, that this will also affect your site if viewed with Internet Explorer 11 but in this case it can not be reconfigured as Internet Explorer does not support CSS variables.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Due to a bug, that we couldn't fix in a general manner for color variants, we decided to remove `--MENU-SEARCH-BOX-ICONS-color` and introduced `--MENU-SEARCH-color` instead. You don't need to change anything in your custom color stylesheet as the old name will be used as a fallback.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} For consistency reasons, we renamed `--MENU-SEARCH-BOX-color` to `--MENU-SEARCH-BORDER-color`. You don't need to change anything in your custom color stylesheet as the old name will be used as a fallback.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} With this release you are now capable to define your own _dark mode_ variants.
|
||||
|
||||
To make this possible, we have introduced a lot more color variables you can use in [your color variants]({{%relref "basics/customization/#theme-variant" %}}). Your old variants will still work and don't need to be changed as appropriate fallback values are used by the theme. Nevertheless, the new colors allow for much more customization.
|
||||
|
||||
To see what's now possible, see the new variants `relearn-dark` and `neon` that are coming with this release.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} To make the creation of new variants easier for you, we've added a new interactive [theme variant generator]({{%relref "basics/generator" %}}). This feature will not work with Internet Explorer 11.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You can now configure multiple color variants in your `config.toml`. In this case, the first variant is the default chosen on first view and a variant switch will be shown in the menu footer. See the [documentation]({{%relref "basics/customization/#multiple-variants" %}}) for configuration.
|
||||
|
||||
Note, that the new variant switch will not work with Internet Explorer 11 as it does not support CSS variables. Therefore, the variant switcher will not be displayed with Internet Explorer 11.
|
||||
|
||||
---
|
||||
|
||||
## 2.9.0 (2021-11-19)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} This release removes the themes implementation of `ref`/`relref` in favor for Hugos standard implementation. This is because of inconsistencies with the themes implementation. In advantage, your project becomes standard compliant and exchanging this theme in your project to some other theme will be effortless.
|
||||
|
||||
In a standard compliant form you must not link to the `*.md` file but to its logical name. You'll see, referencing other pages becomes much easier. All three types result in the same reference:
|
||||
|
||||
| Type | Non-Standard | Standard |
|
||||
| ------------- | -------------------------------- | ---------------------- |
|
||||
| Branch bundle | `basics/configuration/_index.md` | `basics/configuration` |
|
||||
| Leaf bundle | `basics/configuration/index.md` | `basics/configuration` |
|
||||
| Page | `basics/configuration.md` | `basics/configuration` |
|
||||
|
||||
If you've linked from a page of one language to a page of another language, conversion is a bit more difficult but [Hugo got you covered](https://gohugo.io/content-management/cross-references/#link-to-another-language-version) as well.
|
||||
|
||||
Also, the old themes implementation allowed refs to non-existing content. This will cause Hugos implementation to show the error below and abort the generation. If your project relies on this old behavior, you can [reconfigure the error handling](https://gohugo.io/content-management/cross-references/#link-to-another-language-version) of Hugos implementation.
|
||||
|
||||
In the best case your usage of the old implementation is already standard compliant and you don't need to change anything. You'll notice this very easily once you've started `hugo server` after an upgrade and no errors are written to the console.
|
||||
|
||||
You may see errors on the console after the update in the form:
|
||||
|
||||
````sh
|
||||
ERROR 2021/11/19 22:29:10 [en] REF_NOT_FOUND: Ref "basics/configuration/_index.md": "hugo-theme-relearn\exampleSite\content\_index.en.md:19:22": page not found
|
||||
````
|
||||
|
||||
In this case, you must apply one of two options:
|
||||
|
||||
1. Start up a text editor with regular expression support for search and replace. Search for `(ref\s+"[^"]*?)(?:/_index|/index)?(?:\.md)?(#[^"]*?)?"` and replace it by `$1$2"` in all `*.md` files. **This is the recommended choice**.
|
||||
|
||||
2. Copy the old implementation files `theme/hugo-theme-relearn/layouts/shortcode/ref.html` and `theme/hugo-theme-relearn/layouts/shortcode/relref.html` to your own projects `layouts/shortcode/ref.html` and `layouts/shortcode/relref.html` respectively. **This is not recommended** as your project will still rely on non-standard behavior afterwards.
|
||||
|
||||
---
|
||||
|
||||
## 2.8.0 (2021-11-03)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Although never officially documented, this release removes the font `Novacento`/`Novecento`. If you use it in an overwritten CSS please replace it with `Work Sans`. This change was necessary as Novacento did not provide all Latin special characters and lead to mixed styled character text eg. for Czech.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The theme now supports favicons served from `static/images/` named as `favicon` or `logo` in SVG, PNG or ICO format [out of the box]({{% relref "basics/customization/#change-the-favicon" %}}). An overridden partial `layouts/partials/favicon.html` may not be necessary anymore in most cases.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You can hide the table of contents menu for the whole site by setting the `disableToc` option in your `config.toml`. For an example see [the example configuration]({{%relref "basics/configuration/#global-site-parameters" %}}).
|
||||
|
||||
---
|
||||
|
||||
## 2.7.0 (2021-10-24)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Optional second parameter for [`notice`]({{% relref "shortcodes/notice" %}}) shortcode to set title in box header.
|
||||
|
||||
---
|
||||
|
||||
## 2.6.0 (2021-10-21)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Your site can now be served from a subfolder if you set `baseURL` and `canonifyURLs=true` in your `config.toml`. See the [documentation]({{% relref "basics/configuration/#a-word-on-running-your-site-in-a-subfolder" %}}) for a detailed example.
|
||||
|
||||
---
|
||||
|
||||
## 2.5.0 (2021-10-08)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} New colors `--CODE-BLOCK-color` and `--CODE-BLOCK-BG-color` were added to provide a fallback for Hugos syntax highlighting in case `guessSyntax=true` is set. Ideally the colors are set to the same values as the ones from your chosen chroma style.
|
||||
|
||||
---
|
||||
|
||||
## 2.4.0 (2021-10-07)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Creation of customized stylesheets was simplified down to only contain the CSS variables. Everything else can and should be deleted from your custom stylesheet to assure everything works fine. For the predefined stylesheet variants, this change is already included.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Hidden pages are displayed by default in their according tags page. You can now turn off this behavior by setting `disableTagHiddenPages=true` in your `config.toml`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You can define the expansion state of your menus for the whole site by setting the `alwaysopen` option in your `config.toml`. Please see further [documentation]({{%relref "cont/pages/#override-expand-state-rules-for-menu-entries" %}}) for possible values and default behavior.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} New frontmatter `ordersectionsby` option to change immediate children sorting in menu and `children` shortcode. Possible values are `title` or `weight`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Alternate content of a page is now advertised in the HTML meta tags. See [Hugo documentation](https://gohugo.io/templates/rss/#reference-your-rss-feed-in-head).
|
||||
|
||||
---
|
||||
|
||||
## 2.3.0 (2021-09-13)
|
||||
|
||||
- {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.81.0{{% /badge %}} This release requires a newer Hugo version.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Showcase multilanguage features by providing a documentation translation "fer us pirrrates". There will be no other translations besides the original English one and the Pirates one due to maintenance constraints.
|
||||
|
||||
---
|
||||
|
||||
## 2.2.0 (2021-09-09)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Hidden pages are displayed by default in the sitemap generated by Hugo and are therefore visible for search engine indexing. You can now turn off this behavior by setting `disableSeoHiddenPages=true` in your `config.toml`.
|
||||
|
||||
---
|
||||
|
||||
## 2.1.0 (2021-09-07)
|
||||
|
||||
- {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.69.0{{% /badge %}} This release requires a newer Hugo version.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In case the site's structure contains additional *.md files not part of the site (eg files that are meant to be included by site pages - see `CHANGELOG.md` in the exampleSite), they will now be ignored by the search.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Hidden pages are indexed for the site search by default. You can now turn off this behavior by setting `disableSearchHiddenPages=true` in your `config.toml`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} If a search term is found in an `expand` shortcode, the expand will be opened.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} The menu will scroll the active item into view on load.
|
||||
|
||||
---
|
||||
|
||||
## 2.0.0 (2021-08-28)
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Syntax highlighting was switched to the [built in Hugo mechanism](https://gohugo.io/content-management/syntax-highlighting/). You may need to configure a new stylesheet or decide to roll you own as described on in the Hugo documentation
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} In the predefined stylesheets there was a typo and `--MENU-HOME-LINK-HOVERED-color` must be changed to `--MENU-HOME-LINK-HOVER-color`. You don't need to change anything in your custom color stylesheet as the old name will be used as a fallback.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} `--MENU-HOME-LINK-color` and `--MENU-HOME-LINK-HOVER-color` were missing in the documentation. You should add them to your custom stylesheets if you want to override the defaults.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} Arrow navigation and `children` shortcode were ignoring setting for `ordersectionsby`. This is now changed and may result in different sorting order of your sub pages.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} If hidden pages are accessed directly by typing their URL, they will be exposed in the menu.
|
||||
|
||||
- {{% badge style="note" title=" " %}}Change{{% /badge %}} A page without a `title` will be treated as `hidden=true`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} You can define the expansion state of your menus in the frontmatter. Please see further [documentation]({{%relref "cont/pages/#override-expand-state-rules-for-menu-entries" %}}) for possible values and default behavior.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} New partials for defining pre/post content for menu items and the content. See [documentation]({{% relref "basics/customization" %}}) for further reading.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Shortcode [`children`]({{% relref "shortcodes/children" %}}) with new parameter `containerstyle`.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} New shortcode [`include`]({{% relref "shortcodes/include" %}}) to include arbitrary file content into a page.
|
||||
|
||||
---
|
||||
|
||||
## 1.2.0 (2021-07-26)
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Shortcode [`expand`]({{% relref "shortcodes/expand" %}}) with new parameter to open on page load.
|
||||
|
||||
---
|
||||
|
||||
## 1.1.0 (2021-07-02)
|
||||
|
||||
- {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} [Mermaid]({{% relref "shortcodes/mermaid" %}}) diagrams can now be panned and zoomed. This isn't configurable yet.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} [`Mermaid`]({{% relref "shortcodes/mermaid#configuration" %}}) config options can be set in `config.toml`.
|
||||
|
||||
---
|
||||
|
||||
## 1.0.0 (2021-07-01)
|
||||
|
||||
- {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.65.0{{% /badge %}} The requirement for the Hugo version of this theme is the same as for the Learn theme version 2.5.0 on 2021-07-01.
|
||||
|
||||
- {{% badge style="info" icon="plus-circle" title=" " %}}New{{% /badge %}} Initial fork of the [Learn theme](https://github.com/matcornic/hugo-theme-learn) based on Learn 2.5.0 on 2021-07-01. This introduces no new features besides a global rename to `Relearn` and a new logo. For the reasons behind forking the Learn theme, see [this comment](https://github.com/matcornic/hugo-theme-learn/issues/442#issuecomment-907863495) in the Learn issues.
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/basics/migration/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
disableToc = false
|
||||
title = "What's New"
|
||||
weight = 2
|
||||
+++
|
||||
{{< piratify true >}}
|
12
docs/themes/hugo-theme-relearn/exampleSite/content/basics/requirements/_index.en.md
vendored
Executable file
@ -0,0 +1,12 @@
|
||||
+++
|
||||
categories = "basic"
|
||||
disableToc = true
|
||||
title = "Requirements"
|
||||
weight = 10
|
||||
+++
|
||||
|
||||
Thanks to the simplicity of Hugo, this page is as empty as this theme needs requirements.
|
||||
|
||||
Just download at least version {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.95.0{{% /badge %}} of the [Hugo binary](https://gohugo.io/getting-started/installing/) for your OS (Windows, Linux, Mac).
|
||||
|
||||

|
7
docs/themes/hugo-theme-relearn/exampleSite/content/basics/requirements/_index.pir.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
categories = "basic"
|
||||
disableToc = true
|
||||
title = "Requirrrements"
|
||||
weight = 10
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/basics/requirements/magic.gif
vendored
Normal file
After Width: | Height: | Size: 1.4 MiB |
7
docs/themes/hugo-theme-relearn/exampleSite/content/cont/_index.en.md
vendored
Executable file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Content"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
Find out how to create and organize your content quickly and intuitively.
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/cont/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Rambl'n"
|
||||
weight = 2
|
||||
+++
|
||||
{{< piratify >}}
|
131
docs/themes/hugo-theme-relearn/exampleSite/content/cont/archetypes/_index.en.md
vendored
Normal file
@ -0,0 +1,131 @@
|
||||
+++
|
||||
title = "Archetypes"
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
Using the command: `hugo new [relative new content path]`, you can start a content file with the date and title automatically set. While this is a welcome feature, active writers need more: [archetypes](https://gohugo.io/content/archetypes/). These are preconfigured skeleton pages with default frontmatter.
|
||||
|
||||
The Relearn theme defines some few archetypes of pages but you are free to define new ones to your liking. All can be used at any level of the documentation, the only difference being the layout of the content.
|
||||
|
||||
## Predefined Archetypes
|
||||
|
||||
### Home {#archetypes-home}
|
||||
|
||||
A **Home** page is the starting page of your project. It's best to have only one page of this kind in your project.
|
||||
|
||||

|
||||
|
||||
To create a home page, run the following command
|
||||
|
||||
```shell
|
||||
hugo new --kind home _index.md
|
||||
```
|
||||
|
||||
This leads to a file with the following content
|
||||
|
||||
```markdown
|
||||
+++
|
||||
archetype = "home"
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
||||
```
|
||||
|
||||
### Chapter {#archetypes-chapter}
|
||||
|
||||
A **Chapter** displays a page meant to be used as introduction for a set of child pages. Commonly, it contains a simple title and a catch line to define content that can be found below it.
|
||||
|
||||

|
||||
|
||||
To create a chapter page, run the following command
|
||||
|
||||
```shell
|
||||
hugo new --kind chapter <name>/_index.md
|
||||
```
|
||||
|
||||
This leads to a file with the following content
|
||||
|
||||
```markdown
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
weight = X
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
||||
```
|
||||
|
||||
Replace the `X` with a number. Because this number will be used to generate the subtitle of the chapter page, set the number to a consecutive value starting at 1 for each new chapter level.
|
||||
|
||||
### Default {#archetypes-default}
|
||||
|
||||
A **Default** page is any other content page. If you set an unknown archetype in your frontmatter, this archetype will be used to generate the page.
|
||||
|
||||

|
||||
|
||||
To create a default page, run either one of the following commands
|
||||
|
||||
```shell
|
||||
hugo new <chapter>/<name>/_index.md
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```shell
|
||||
hugo new <chapter>/<name>.md
|
||||
```
|
||||
|
||||
This leads to a file with the following content
|
||||
|
||||
```markdown
|
||||
+++
|
||||
title = "{{ replace .Name "-" " " | title }}"
|
||||
weight = X
|
||||
+++
|
||||
|
||||
Lorem Ipsum.
|
||||
```
|
||||
|
||||
Replace the `X` with a number or delete the whole `weight` parameter entirely.
|
||||
|
||||
## Self defined Archetypes
|
||||
|
||||
If you are in need of further archetypes you can define your own or even redefine existing ones.
|
||||
|
||||
### Template
|
||||
|
||||
Define a template file in your project at `archetypes/<kind>.md` and make sure it has at least the frontmatter parameter for that archetype like
|
||||
|
||||
````markdown
|
||||
+++
|
||||
archetype = "<kind>"
|
||||
+++
|
||||
````
|
||||
|
||||
Afterwards you can generate new content files of that kind with the following command
|
||||
|
||||
```shell
|
||||
hugo new --kind <kind> <name>/_index.md
|
||||
```
|
||||
|
||||
### Partials
|
||||
|
||||
To define how your archetypes are rendered, define corresponding partial files in your projects directory `layouts/partials/archetypes/<kind>`.
|
||||
|
||||
If you use an unknown archetype in your frontmatter, the `default` archetype will be used to generate the page.
|
||||
|
||||
Related to each archetype, several _hook_ partial files in the form of `<hook>.html` can be given inside each archetype directory. If a partial for a specific hook is missing, no output is generated for this hook.
|
||||
|
||||
The following hooks are used:
|
||||
|
||||
| Name | Notes |
|
||||
|:---------------------|:------------|
|
||||
| styleclass | Defines a set of CSS classes to be added to the HTML's `<main>` element. You can use these classes to define own CSS rules in your `custom-header.html` |
|
||||
| article | Defines the HTML how to render your content |
|
||||
|
||||
Take a look at the existing archetypes of this theme to get an idea how to utilize it.
|
||||
|
||||
#### Output formats
|
||||
|
||||
Each hook file can be overridden of a specific [output format](https://gohugo.io/templates/output-formats/). Eg. if you define a new output format `PLAINTEXT` in your `config.toml`, you can add a file `layouts/partials/archetypes/default.plaintext.html` to change the way how normal content is written for that output format.
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/cont/archetypes/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Arrrchetypes"
|
||||
weight = 2
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/cont/archetypes/pages-chapter.png
vendored
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/cont/archetypes/pages-default.png
vendored
Normal file
After Width: | Height: | Size: 124 KiB |
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/cont/archetypes/pages-home.png
vendored
Normal file
After Width: | Height: | Size: 84 KiB |
103
docs/themes/hugo-theme-relearn/exampleSite/content/cont/i18n/_index.en.md
vendored
Normal file
@ -0,0 +1,103 @@
|
||||
+++
|
||||
title = "Multilingual and i18n"
|
||||
weight = 6
|
||||
+++
|
||||
|
||||
The Relearn theme is fully compatible with Hugo multilingual mode.
|
||||
|
||||
- Available languages: Arabic, Simplified Chinese, Traditional Chinese, Czech, Dutch, English, Finnish French, German, Hindi, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Russian, Spanish, Turkish, Vietnamese. Feel free to contribute!
|
||||
- Full support for languages written right to left
|
||||
- Automatic menu generation from multilingual content
|
||||
- In-browser language switching
|
||||
|
||||

|
||||
|
||||
## Basic configuration
|
||||
|
||||
After learning [how Hugo handle multilingual websites](https://gohugo.io/content-management/multilingual), define your languages in your `config.toml` file.
|
||||
|
||||
For example with current English and Piratized English website.
|
||||
|
||||
{{% notice note %}}
|
||||
Make sure your default language is defined as the first one in the `[languages]` array, as the theme needs to make assumptions on it
|
||||
{{% /notice %}}
|
||||
|
||||
|
||||
```toml
|
||||
# English is the default language
|
||||
defaultContentLanguage = "en"
|
||||
|
||||
[languages]
|
||||
[languages.en]
|
||||
title = "Hugo Relearn Theme"
|
||||
weight = 1
|
||||
languageName = "English"
|
||||
|
||||
[languages.pir]
|
||||
title = "Cap'n Hugo Relearrrn Theme"
|
||||
weight = 2
|
||||
languageName = "Arrr! Pirrrates"
|
||||
```
|
||||
|
||||
Then, for each new page, append the _id_ of the language to the file.
|
||||
|
||||
- Single file `my-page.md` is split in two files:
|
||||
- in English: `my-page.md`
|
||||
- in Piratized English: `my-page.pir.md`
|
||||
- Single file `_index.md` is split in two files:
|
||||
- in English: `_index.md`
|
||||
- in Piratized English: `_index.pir.md`
|
||||
|
||||
{{% notice info %}}
|
||||
Be aware that only translated pages are displayed in menu. It's not replaced with default language content.
|
||||
{{% /notice %}}
|
||||
|
||||
{{% notice tip %}}
|
||||
Use [slug](https://gohugo.io/content-management/multilingual/#translate-your-content) frontmatter parameter to translate urls too.
|
||||
{{% /notice %}}
|
||||
|
||||
## Search
|
||||
|
||||
In case each page's content is written in one single language only, the above configuration will already configure the site's search functionality correctly.
|
||||
|
||||
{{% notice warning %}}
|
||||
Although the theme supports a wide variety of supported languages, the site's search via the [Lunr](https://lunrjs.com) search library does not.
|
||||
You'll see error reports in your browsers console log for each unsupported language. Currently unsupported are:
|
||||
|
||||
- Czech
|
||||
- Indonesian
|
||||
- Polish
|
||||
{{% /notice %}}
|
||||
|
||||
### Search with mixed language support
|
||||
|
||||
In case your page's content contains text in multiple languages (e.g. you are writing a Russian documentation for your english API), you can add those languages to your `config.toml` to broaden search.
|
||||
|
||||
```toml
|
||||
[params]
|
||||
additionalContentLanguage = [ "en" ]
|
||||
````
|
||||
|
||||
As this is an array, you can add multiple additional languages.
|
||||
|
||||
{{% notice note %}}
|
||||
Keep in mind that the language code required here, is the base language code. E.g. if you have additional content in `zh-CN`, you have to add just `zh` to this parameter.
|
||||
{{% /notice %}}
|
||||
|
||||
## Overwrite translation strings
|
||||
|
||||
Translations strings are used for common default values used in the theme (_Edit_ button, _Search placeholder_ and so on). Translations are available in English and Piratized English but you may use another language or want to override default values.
|
||||
|
||||
To override these values, create a new file in your local i18n folder `i18n/<idlanguage>.toml` and inspire yourself from the theme `themes/hugo-theme-relearn/i18n/en.toml`
|
||||
|
||||
## Disable language switching
|
||||
|
||||
Switching the language in the browser is a great feature, but for some reasons you may want to disable it.
|
||||
|
||||
Just set `disableLanguageSwitchingButton=true` in your `config.toml`
|
||||
|
||||
```toml
|
||||
[params]
|
||||
# When using multilingual website, disable the switch language button.
|
||||
disableLanguageSwitchingButton = true
|
||||
```
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/cont/i18n/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Multilingual an' i18n"
|
||||
weight = 6
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/cont/i18n/i18n-menu.gif
vendored
Normal file
After Width: | Height: | Size: 74 KiB |
679
docs/themes/hugo-theme-relearn/exampleSite/content/cont/markdown.en.md
vendored
Normal file
@ -0,0 +1,679 @@
|
||||
+++
|
||||
tags = ["content"]
|
||||
title = "Markdown syntax"
|
||||
weight = 3
|
||||
+++
|
||||
|
||||
Let's face it: Writing content for the web is tiresome. WYSIWYG editors help alleviate this task, but they generally result in horrible code, or worse yet, ugly web pages.
|
||||
|
||||
**Markdown** is a better way to write **HTML**, without all the complexities and ugliness that usually accompanies it.
|
||||
|
||||
Some of the key benefits are:
|
||||
|
||||
1. Markdown is simple to learn, with minimal extra characters so it's also quicker to write content.
|
||||
2. Less chance of errors when writing in Markdown.
|
||||
3. Produces valid HTML output.
|
||||
4. Keeps the content and the visual display separate, so you cannot mess up the look of your site.
|
||||
5. Write in any text editor or Markdown application you like.
|
||||
6. Markdown is a joy to use!
|
||||
|
||||
John Gruber, the author of Markdown, puts it like this:
|
||||
|
||||
> The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions. While Markdown’s syntax has been influenced by several existing text-to-HTML filters, the single biggest source of inspiration for Markdown’s syntax is the format of plain text email.
|
||||
> <cite>John Gruber</cite>
|
||||
|
||||
Without further delay, let us go over the main elements of Markdown and what the resulting HTML looks like:
|
||||
|
||||
{{% notice tip %}}
|
||||
{{% icon bookmark %}} Bookmark this page and the [official Commonmark reference](https://commonmark.org/help/) for easy future reference!
|
||||
{{% /notice %}}
|
||||
|
||||
## Paragraphs
|
||||
|
||||
In Markdown your content usually spans the whole available document width. This is called a block. Blocks are always separated by whitespace to their adjacent blocks in the resulting document.
|
||||
|
||||
Any text not starting with a special sign is written as normal, plain text paragraph block and must be separated to its adjacent blocks by empty lines.
|
||||
|
||||
````markdown
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus.
|
||||
|
||||
Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus.
|
||||
|
||||
Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
||||
{{% /notice %}}
|
||||
|
||||
## Headings
|
||||
|
||||
A good idea is to structure your content using headings and subheadings. HTML-headings from `h1` through `h6` are constructed with a `#` for each level.
|
||||
|
||||
In Hugo you usually don't use `h1` as this is generated by your theme and you should only have one such element in a document.
|
||||
|
||||
````markdown
|
||||
# h1 Heading
|
||||
|
||||
## h2 Heading
|
||||
|
||||
### h3 Heading
|
||||
|
||||
#### h4 Heading
|
||||
|
||||
##### h5 Heading
|
||||
|
||||
###### h6 Heading
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
|
||||
# h1 Heading
|
||||
|
||||
## h2 Heading
|
||||
|
||||
### h3 Heading
|
||||
|
||||
#### h4 Heading
|
||||
|
||||
##### h5 Heading
|
||||
|
||||
###### h6 Heading
|
||||
{{% /notice %}}
|
||||
|
||||
## Horizontal Rules
|
||||
|
||||
To further structure your content you can add horizontal rules. They create a "thematic break" between paragraph blocks. In Markdown, you can create it with three consecutive dashes `---`.
|
||||
|
||||
````markdown
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus.
|
||||
|
||||
---
|
||||
|
||||
Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus.
|
||||
|
||||
---
|
||||
|
||||
Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
||||
{{% /notice %}}
|
||||
|
||||
## Text Markers
|
||||
|
||||
### Bold
|
||||
|
||||
You can show importance of a snippet of text with a heavier font-weight by enclosing it with two asterisks `**`.
|
||||
|
||||
````markdown
|
||||
I am rendered with **bold text**
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
I am rendered with **bold text**
|
||||
{{% /notice %}}
|
||||
|
||||
### Italics
|
||||
|
||||
You can emphasize a snippet of text with italics by enclosing it with underscores `_`.
|
||||
|
||||
````markdown
|
||||
I am rendered with _italicized text_
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
I am rendered with _italicized text_
|
||||
{{% /notice %}}
|
||||
|
||||
### Strikethrough
|
||||
|
||||
In GFM (GitHub Flavored Markdown) you can do strikethroughs by enclosing text with two tildes `~~`.
|
||||
|
||||
````markdown
|
||||
~~Strike through this text~~
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
~~Strike through this text~~
|
||||
{{% /notice %}}
|
||||
|
||||
## Text substitution
|
||||
|
||||
This Markdown dialect supports an extension to combine multiple punctuation characters to single typographic entities. This will only be applied to text outside of code blocks or inline code.
|
||||
|
||||
````markdown
|
||||
Double quotes `"` and single quotes `'` of enclosed text are replaced by **"double curly quotes"** and **'single curly quotes'**.
|
||||
|
||||
Double dashes `--` and triple dashes `---` are replaced by en-dash **--** and em-dash **---** entities.
|
||||
|
||||
Double arrows pointing left `<<` or right `>>` are replaced by arrow **<<** and **>>** entities.
|
||||
|
||||
Three consecutive dots `...` are replaced by an ellipsis **...** entity.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
Double quotes `"` and single quotes `'` of enclosed text are replaced by **"double curly quotes"** and **'single curly quotes'**.
|
||||
|
||||
Double dashes `--` and triple dashes `---` are replaced by en-dash **--** and em-dash **---** entities.
|
||||
|
||||
Double arrows pointing left `<<` or right `>>` are replaced by arrow **<<** and **>>** entities.
|
||||
|
||||
Three consecutive dots `...` are replaced by an ellipsis **...** entity.
|
||||
{{% /notice %}}
|
||||
|
||||
## Lists
|
||||
|
||||
### Unordered
|
||||
|
||||
You can write a list of items in which the order of the items does not explicitly matter.
|
||||
|
||||
It is possible to nest lists by indenting an item for the next sublevel.
|
||||
|
||||
You may use any of `-`, `*` or `+` to denote bullets for each list item but should not switch between those symbols inside one whole list.
|
||||
|
||||
````markdown
|
||||
- Lorem ipsum dolor sit amet
|
||||
- Consectetur adipiscing elit
|
||||
- Vestibulum laoreet porttitor sem
|
||||
- Ac tristique libero volutpat at
|
||||
- Nulla volutpat aliquam velit
|
||||
- Phasellus iaculis neque
|
||||
- Purus sodales ultricies
|
||||
- Faucibus porta lacus fringilla vel
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
- Lorem ipsum dolor sit amet
|
||||
- Consectetur adipiscing elit
|
||||
- Vestibulum laoreet porttitor sem
|
||||
- Ac tristique libero volutpat at
|
||||
- Nulla volutpat aliquam velit
|
||||
- Phasellus iaculis neque
|
||||
- Purus sodales ultricies
|
||||
- Faucibus porta lacus fringilla vel
|
||||
{{% /notice %}}
|
||||
|
||||
### Ordered
|
||||
|
||||
You can create a list of items in which the order of items does explicitly matter.
|
||||
|
||||
It is possible to nest lists by indenting an item for the next sublevel.
|
||||
|
||||
Markdown will automatically number each of your items consecutively. This means, the order number you are providing is irrelevant.
|
||||
|
||||
````markdown
|
||||
1. Lorem ipsum dolor sit amet
|
||||
3. Consectetur adipiscing elit
|
||||
1. Integer molestie lorem at massa
|
||||
7. Facilisis in pretium nisl aliquet
|
||||
99. Nulla volutpat aliquam velit
|
||||
1. Faucibus porta lacus fringilla vel
|
||||
1. Aenean sit amet erat nunc
|
||||
17. Eget porttitor lorem
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
1. Lorem ipsum dolor sit amet
|
||||
1. Consectetur adipiscing elit
|
||||
1. Integer molestie lorem at massa
|
||||
7. Facilisis in pretium nisl aliquet
|
||||
99. Nulla volutpat aliquam velit
|
||||
1. Faucibus porta lacus fringilla vel
|
||||
1. Aenean sit amet erat nunc
|
||||
17. Eget porttitor lorem
|
||||
{{% /notice %}}
|
||||
|
||||
### Tasks
|
||||
|
||||
In GFM (GitHub Flavored Markdown) you can add task lists resulting in checked or unchecked non-clickable items
|
||||
|
||||
````markdown
|
||||
- [x] Basic Test
|
||||
- [ ] More Tests
|
||||
- [x] View
|
||||
- [x] Hear
|
||||
- [ ] Smell
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
- [x] Basic Test
|
||||
- [ ] More Tests
|
||||
- [x] View
|
||||
- [x] Hear
|
||||
- [ ] Smell
|
||||
{{% /notice %}}
|
||||
|
||||
### Definitions
|
||||
|
||||
This Markdown dialect supports an extension to add definition lists. Definition lists are made of terms and definitions of these terms, much like in a dictionary.
|
||||
|
||||
A definition list in Markdown Extra is made of a single-line term followed by a colon and the definition for that term. You can also associate more than one term to a definition.
|
||||
|
||||
If you add empty lines around the definition terms, additional vertical space will be generated. Also multiple paragraphs are possible
|
||||
|
||||
````markdown
|
||||
Apple
|
||||
: Pomaceous fruit of plants of the genus Malus in the family Rosaceae.
|
||||
: An American computer company.
|
||||
|
||||
Orange
|
||||
: The fruit of an evergreen tree of the genus Citrus.
|
||||
|
||||
You can make juice out of it.
|
||||
: A telecommunication company.
|
||||
|
||||
You can't make juice out of it.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
Apple
|
||||
: Pomaceous fruit of plants of the genus Malus in the family Rosaceae.
|
||||
: An American computer company.
|
||||
|
||||
Orange
|
||||
: The fruit of an evergreen tree of the genus Citrus.
|
||||
|
||||
You can make juice out of it.
|
||||
: A telecommunication company.
|
||||
|
||||
You can't make juice out of it.
|
||||
{{% /notice %}}
|
||||
|
||||
## Code
|
||||
|
||||
### Inline Code
|
||||
|
||||
Inline snippets of code can be wrapped with backticks `` ` ``.
|
||||
|
||||
````markdown
|
||||
In this example, `<div></div>` is marked as code.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
In this example, `<div></div>` is marked as code.
|
||||
{{% /notice %}}
|
||||
|
||||
### Indented Code Block
|
||||
|
||||
A simple code block can be generated by indenting several lines of code by at least two spaces.
|
||||
|
||||
````markdown
|
||||
Be impressed by my advanced code:
|
||||
|
||||
// Some comments
|
||||
line 1 of code
|
||||
line 2 of code
|
||||
line 3 of code
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
Be impressed by my advanced code:
|
||||
|
||||
// Some comments
|
||||
line 1 of code
|
||||
line 2 of code
|
||||
line 3 of code
|
||||
{{% /notice %}}
|
||||
|
||||
### Fenced Code Block
|
||||
|
||||
If you want to gain more control of your code block you can enclose your code by at least three backticks ```` ``` ```` a so called fence.
|
||||
|
||||
In GFM (GitHub Flavored Markdown) you can also add a language specifier directly after the opening fence, ` ```js `, and syntax highlighting will automatically be applied according to the selected language in the rendered HTML.
|
||||
|
||||
See [Code Highlighting]({{% relref "syntaxhighlight" %}}) for additional documentation.
|
||||
|
||||
````plaintext
|
||||
```js
|
||||
grunt.initConfig({
|
||||
assemble: {
|
||||
options: {
|
||||
assets: 'docs/assets',
|
||||
data: 'src/data/*.{json,yml}',
|
||||
helpers: 'src/custom-helpers.js',
|
||||
partials: ['src/partials/**/*.{hbs,md}']
|
||||
},
|
||||
pages: {
|
||||
options: {
|
||||
layout: 'default.hbs'
|
||||
},
|
||||
files: {
|
||||
'./': ['src/templates/pages/index.hbs']
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
```
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
```js
|
||||
grunt.initConfig({
|
||||
assemble: {
|
||||
options: {
|
||||
assets: 'docs/assets',
|
||||
data: 'src/data/*.{json,yml}',
|
||||
helpers: 'src/custom-helpers.js',
|
||||
partials: ['src/partials/**/*.{hbs,md}']
|
||||
},
|
||||
pages: {
|
||||
options: {
|
||||
layout: 'default.hbs'
|
||||
},
|
||||
files: {
|
||||
'./': ['src/templates/pages/index.hbs']
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
```
|
||||
{{% /notice %}}
|
||||
|
||||
## Tables
|
||||
|
||||
In GFM (GitHub Flavored Markdown) you can create tables by adding pipes as dividers between each cell, and by adding a line of dashes (also separated by bars) beneath the header. Note that the pipes do not need to be vertically aligned.
|
||||
|
||||
````markdown
|
||||
| Option | Description |
|
||||
| ------ | ----------- |
|
||||
| data | path to data files to supply the data that will be passed into templates. |
|
||||
| engine | engine to be used for processing templates. Handlebars is the default. |
|
||||
| ext | extension to be used for dest files. |
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
| Option | Description |
|
||||
| ------ | ----------- |
|
||||
| data | path to data files to supply the data that will be passed into templates. |
|
||||
| engine | engine to be used for processing templates. Handlebars is the default. |
|
||||
| ext | extension to be used for dest files. |
|
||||
{{% /notice %}}
|
||||
|
||||
### Aligned Columns
|
||||
|
||||
Adding a colon on the left and/or right side of the dashes below any heading will align the text for that column accordingly.
|
||||
|
||||
````markdown
|
||||
| Option | Number | Description |
|
||||
| ------:|:------:|:----------- |
|
||||
| data | 1 | path to data files to supply the data that will be passed into templates. |
|
||||
| engine | 2 | engine to be used for processing templates. Handlebars is the default. |
|
||||
| ext | 3 | extension to be used for dest files. |
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
| Option | Number | Description |
|
||||
| ------:|:------:|:----------- |
|
||||
| data | 1 | path to data files to supply the data that will be passed into templates. |
|
||||
| engine | 2 | engine to be used for processing templates. Handlebars is the default. |
|
||||
| ext | 3 | extension to be used for dest files. |
|
||||
{{% /notice %}}
|
||||
|
||||
## Blockquotes
|
||||
|
||||
For quoting blocks of content from another source within your document add `>` before any text you want to quote.
|
||||
|
||||
Blockquotes can also be nested.
|
||||
|
||||
````markdown
|
||||
> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. Nunc augue augue, aliquam non hendrerit ac, commodo vel nisi.
|
||||
>
|
||||
> > Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor odio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.
|
||||
>
|
||||
> Mauris sit amet ligula egestas, feugiat metus tincidunt, luctus libero. Donec congue finibus tempor. Vestibulum aliquet sollicitudin erat, ut aliquet purus posuere luctus.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. Nunc augue augue, aliquam non hendrerit ac, commodo vel nisi.
|
||||
>
|
||||
> > Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor odio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.
|
||||
>
|
||||
> Mauris sit amet ligula egestas, feugiat metus tincidunt, luctus libero. Donec congue finibus tempor. Vestibulum aliquet sollicitudin erat, ut aliquet purus posuere luctus.
|
||||
{{% /notice %}}
|
||||
|
||||
## Links
|
||||
|
||||
### Autolink
|
||||
|
||||
In GFM (GitHub Flavored Markdown) absolute URLs will automatically be converted into a link.
|
||||
|
||||
````markdown
|
||||
This is a link to https://example.com.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
This is a link to https://example.com.
|
||||
{{% /notice %}}
|
||||
|
||||
|
||||
### Basic Link
|
||||
|
||||
You can explicitly define links in case you want to use non-absolute URLs or want to give different text.
|
||||
|
||||
````markdown
|
||||
[Assemble](http://assemble.io)
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
[Assemble](http://assemble.io)
|
||||
{{% /notice %}}
|
||||
|
||||
### Link with Tooltip
|
||||
|
||||
For even further information, you can add an additional text, displayed in a tooltip on hovering over the link.
|
||||
|
||||
````markdown
|
||||
[Upstage](https://github.com/upstage/ "Visit Upstage!")
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
[Upstage](https://github.com/upstage/ "Visit Upstage!")
|
||||
{{% /notice %}}
|
||||
|
||||
### Link References
|
||||
|
||||
Links can be simplyfied for recurring reuse by using a reference ID to later define the URL location. This simplyfies writing if you want to use a link more than once in a document.
|
||||
|
||||
````markdown
|
||||
[Example][somelinkID]
|
||||
|
||||
[somelinkID]: https://example.com "Go to example domain"
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
[Example][somelinkID]
|
||||
|
||||
[somelinkID]: https://example.com "Go to example domain"
|
||||
{{% /notice %}}
|
||||
|
||||
### Footnotes
|
||||
|
||||
Footnotes work mostly like reference-style links. A footnote is made of two things, a marker in the text that will become a superscript number and a footnote definition that will be placed in a list of footnotes.
|
||||
|
||||
Usually the list of footnotes will be shown at the end of your document. If we use a footnote in a notice box it will instead be listed at the end of its box.
|
||||
|
||||
Footnotes can contain block elements, which means that you can put multiple paragraphs, lists, blockquotes and so on in a footnote. It works the same as for list items, just indent the following paragraphs by four spaces in the footnote definition.
|
||||
|
||||
````markdown
|
||||
That's some text with a footnote[^1]
|
||||
|
||||
[^1]: And that's the footnote.
|
||||
|
||||
That's some more text with a footnote.[^someid]
|
||||
|
||||
[^someid]:
|
||||
Anything of interest goes here.
|
||||
|
||||
Blue light glows blue.
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
That's some text with a footnote[^1]
|
||||
|
||||
[^1]: And that's the footnote.
|
||||
|
||||
That's some more text with a footnote.[^someid]
|
||||
|
||||
[^someid]:
|
||||
Anything of interest goes here.
|
||||
|
||||
Blue light glows blue.
|
||||
{{% /notice %}}
|
||||
|
||||
## Images
|
||||
|
||||
### Basic Images
|
||||
|
||||
Images have a similar syntax to links but include a preceding exclamation mark.
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
### Image with Tooltip
|
||||
|
||||
Like links, images can also be given a tooltip.
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
### Image References
|
||||
|
||||
Images can also be linked by reference ID to later define the URL location. This simplyfies writing if you want to use an image more than once in a document.
|
||||
|
||||
````markdown
|
||||
![La Forge][laforge]
|
||||
|
||||
[laforge]: https://octodex.github.com/images/trekkie.jpg "Geordi La Forge"
|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||
![La Forge][laforge]
|
||||
|
||||
[laforge]: https://octodex.github.com/images/trekkie.jpg?width=20vw "Geordi La Forge"
|
||||
{{% /notice %}}
|
||||
|
||||
### Further Image Formatting
|
||||
|
||||
This theme allows additional non-standard formatting by setting query parameter at the end of the image URL.
|
||||
|
||||
#### Resizing
|
||||
|
||||
Add query parameter `width` and/or `height` to the link image to resize the image. Values are CSS values (default is `auto`).
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
#### CSS Classes
|
||||
|
||||
Add a query parameter `classes` to the link image to add CSS classes. Add some of the predefined values or even define your own in your CSS.
|
||||
|
||||
##### Shadow
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
##### Border
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
##### Left
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
##### Right
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
##### Inline
|
||||
|
||||
````markdown
|
||||

|
||||

|
||||

|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||

|
||||

|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
##### Combination
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
||||
|
||||
#### Lightbox
|
||||
|
||||
Add the query parameter `lightbox=false` to the image link to disable the lightbox.
|
||||
|
||||
````markdown
|
||||

|
||||
````
|
||||
|
||||
{{% notice style="secondary" icon="eye" title="Result" %}}
|
||||

|
||||
{{% /notice %}}
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/cont/markdown.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
tags = ["content"]
|
||||
title = "Marrrkdown rules"
|
||||
weight = 3
|
||||
+++
|
||||
{{< piratify >}}
|
154
docs/themes/hugo-theme-relearn/exampleSite/content/cont/menushortcuts.en.md
vendored
Normal file
@ -0,0 +1,154 @@
|
||||
+++
|
||||
title = "Menu extra shortcuts"
|
||||
weight = 5
|
||||
+++
|
||||
|
||||
You can define additional menu entries or shortcuts in the navigation menu without any link to content.
|
||||
|
||||
## Basic configuration
|
||||
|
||||
Edit the website configuration `config.toml` and add a `[[menu.shortcuts]]` entry for each link your want to add.
|
||||
|
||||
Example from the current website:
|
||||
|
||||
````toml
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fab fa-fw fa-github'></i> GitHub repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn"
|
||||
weight = 10
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-camera'></i> Showcases"
|
||||
url = "showcase/"
|
||||
weight = 11
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bookmark'></i> Hugo Documentation"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bullhorn'></i> Credits"
|
||||
url = "more/credits/"
|
||||
weight = 30
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-tags'></i> Tags"
|
||||
url = "tags/"
|
||||
weight = 40
|
||||
````
|
||||
|
||||
By default, shortcuts are preceded by a title. This title can be disabled by setting `disableShortcutsTitle=true`.
|
||||
However, if you want to keep the title but change its value, it can be overridden by changing your local i18n translation string configuration.
|
||||
|
||||
For example, in your local `i18n/en.toml` file, add the following content
|
||||
|
||||
````toml
|
||||
[Shortcuts-Title]
|
||||
other = "<Your value>"
|
||||
````
|
||||
|
||||
Read more about [hugo menu](https://gohugo.io/extras/menus/) and [hugo i18n translation strings](https://gohugo.io/content-management/multilingual/#translation-of-strings)
|
||||
|
||||
## Configuration for Multilingual mode {#i18n}
|
||||
|
||||
When using a multilingual website, you can set different menus for each language. In the `config.toml` file, prefix your menu configuration by `Languages.<language-id>`.
|
||||
|
||||
Example from the current website:
|
||||
|
||||
````toml
|
||||
[languages]
|
||||
[languages.en]
|
||||
title = "Hugo Relearn Theme"
|
||||
weight = 1
|
||||
languageName = "English"
|
||||
[languages.en.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Home"
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fab fa-fw fa-github'></i> GitHub repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn"
|
||||
weight = 10
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-camera'></i> Showcases"
|
||||
pageRef = "showcase/"
|
||||
weight = 11
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bookmark'></i> Hugo Documentation"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bullhorn'></i> Credits"
|
||||
pageRef = "more/credits/"
|
||||
weight = 30
|
||||
|
||||
[[languages.en.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-tags'></i> Tags"
|
||||
pageRef = "tags/"
|
||||
weight = 40
|
||||
|
||||
[languages.pir]
|
||||
title = "Cap'n Hugo Relearrrn Theme"
|
||||
weight = 1
|
||||
languageName = "Arrr! Pirrrates"
|
||||
[languages.pir.params]
|
||||
landingPageName = "<i class='fas fa-home'></i> Arrr! Home"
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fab fa-fw fa-github'></i> GitHub repo"
|
||||
identifier = "ds"
|
||||
url = "https://github.com/McShelby/hugo-theme-relearn"
|
||||
weight = 10
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-camera'></i> Showcases"
|
||||
pageRef = "showcase/"
|
||||
weight = 11
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bookmark'></i> Cap'n Hugo Documentat'n"
|
||||
identifier = "hugodoc"
|
||||
url = "https://gohugo.io/"
|
||||
weight = 20
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-bullhorn'></i> Crrredits"
|
||||
pageRef = "more/credits/"
|
||||
weight = 30
|
||||
|
||||
[[languages.pir.menu.shortcuts]]
|
||||
name = "<i class='fas fa-fw fa-tags'></i> Arrr! Tags"
|
||||
pageRef = "tags/"
|
||||
weight = 40
|
||||
````
|
||||
|
||||
Read more about [hugo menu](https://gohugo.io/extras/menus/) and [hugo multilingual menus](https://gohugo.io/content-management/multilingual/#menus)
|
||||
|
||||
## Shortcuts to pages inside of your project
|
||||
|
||||
If you have shortcuts to pages inside of your project and you don't want them to show up in page menu section, you have two choices:
|
||||
|
||||
1. Make the page file for the shortcut section a [headless branch bundle](https://gohugo.io/content-management/age-bundles/#headless-bundle) (contained in its own subdirectory and called `_index.md`) and add the following rontmatter configuration to the file (see exampleSite's `content/showcase`). This causes its content to **not** be ontained in the sitemap.
|
||||
|
||||
````toml
|
||||
[_build]
|
||||
render = "never"
|
||||
list = "never"
|
||||
publishResources = false
|
||||
````
|
||||
|
||||
2. Store the page file for the shortcut section below a parent headless branch bundle and add the following frontmatter to he **parent**. In this case, the file itself can be a branch bundle, leaf bundle or simple page (see exampleSite's content/more/` and `content/more/credits`). This causes its content to be contained in the sitemap.
|
||||
|
||||
````toml
|
||||
[_build]
|
||||
render = "always"
|
||||
list = "never"
|
||||
publishResources = true
|
||||
````
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/cont/menushortcuts.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Menu extrrra shorrrtcuts"
|
||||
weight = 5
|
||||
+++
|
||||
{{< piratify >}}
|
143
docs/themes/hugo-theme-relearn/exampleSite/content/cont/pages/_index.en.md
vendored
Normal file
@ -0,0 +1,143 @@
|
||||
+++
|
||||
title = "Pages organization"
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
In **Hugo**, pages are the core of your site. Once it is configured, pages are definitely the added value to your documentation site.
|
||||
|
||||
## Folders
|
||||
|
||||
Organize your site like [any other Hugo project](https://gohugo.io/content/organization/). Typically, you will have a _content_ folder with all your pages.
|
||||
|
||||
````plaintext
|
||||
content
|
||||
├── level-one
|
||||
│ ├── level-two
|
||||
│ │ ├── level-three
|
||||
│ │ │ ├── level-four
|
||||
│ │ │ │ ├── _index.md <-- /level-one/level-two/level-three/level-four
|
||||
│ │ │ │ ├── page-4-a.md <-- /level-one/level-two/level-three/level-four/page-4-a
|
||||
│ │ │ │ ├── page-4-b.md <-- /level-one/level-two/level-three/level-four/page-4-b
|
||||
│ │ │ │ └── page-4-c.md <-- /level-one/level-two/level-three/level-four/page-4-c
|
||||
│ │ │ ├── _index.md <-- /level-one/level-two/level-three
|
||||
│ │ │ ├── page-3-a.md <-- /level-one/level-two/level-three/page-3-a
|
||||
│ │ │ ├── page-3-b.md <-- /level-one/level-two/level-three/page-3-b
|
||||
│ │ │ └── page-3-c.md <-- /level-one/level-two/level-three/page-3-c
|
||||
│ │ ├── _index.md <-- /level-one/level-two
|
||||
│ │ ├── page-2-a.md <-- /level-one/level-two/page-2-a
|
||||
│ │ ├── page-2-b.md <-- /level-one/level-two/page-2-b
|
||||
│ │ └── page-2-c.md <-- /level-one/level-two/page-2-c
|
||||
│ ├── _index.md <-- /level-one
|
||||
│ ├── page-1-a.md <-- /level-one/page-1-a
|
||||
│ ├── page-1-b.md <-- /level-one/page-1-b
|
||||
│ └── page-1-c.md <-- /level-one/page-1-c
|
||||
├── _index.md <-- /
|
||||
└── page-top.md <-- /page-top
|
||||
````
|
||||
|
||||
{{% notice note %}}
|
||||
`_index.md` is required in each folder, it’s your “folder home page”
|
||||
{{% /notice %}}
|
||||
|
||||
## Create your project
|
||||
|
||||
The following steps are here to help you initialize your new website. If you don't know Hugo at all, we strongly suggest you to train by following [great documentation for beginners](https://gohugo.io/overview/quickstart/).
|
||||
|
||||
Hugo provides a `new` command to create a new website.
|
||||
|
||||
```shell
|
||||
hugo new site <new_project>
|
||||
```
|
||||
|
||||
The Relearn theme provides [archetypes]({{%relref "cont/archetypes" %}}) to help you create this kind of pages.
|
||||
|
||||
## Frontmatter Configuration
|
||||
|
||||
Each Hugo page has to define a [frontmatter](https://gohugo.io/content/front-matter/) in _toml_, _yaml_ or _json_. This site will use _toml_ in all cases.
|
||||
|
||||
The Relearn theme uses the following parameters on top of Hugo ones:
|
||||
|
||||
```toml
|
||||
+++
|
||||
# Table of contents (toc) is enabled by default. Set this parameter to true to disable it.
|
||||
# Note: Toc is always disabled for chapter pages
|
||||
disableToc = false
|
||||
# If set, this will be used for the page's menu entry (instead of the `title` attribute)
|
||||
menuTitle = ""
|
||||
# If set, this will explicitly override common rules for the expand state of a page's menu entry
|
||||
alwaysopen = true
|
||||
# If set, this will explicitly override common rules for the sorting order of a page's submenu entries
|
||||
ordersectionsby = "title"
|
||||
# The title of the page heading will be prefixed by this HTML content
|
||||
headingPre = ""
|
||||
# The title of the page heading will be postfixed by this HTML content
|
||||
headingPost = ""
|
||||
# The title of the page in menu will be prefixed by this HTML content
|
||||
menuPre = ""
|
||||
# The title of the page in menu will be postfixed by this HTML content
|
||||
menuPost = ""
|
||||
# Hide a menu entry by setting this to true
|
||||
hidden = false
|
||||
# Display name of this page modifier. If set, it will be displayed in the footer.
|
||||
LastModifierDisplayName = ""
|
||||
# Email of this page modifier. If set with LastModifierDisplayName, it will be displayed in the footer
|
||||
LastModifierEmail = ""
|
||||
+++
|
||||
```
|
||||
|
||||
### Add icon to a menu entry
|
||||
|
||||
In the page frontmatter, add a `menuPre` param to insert any HTML code before the menu label. The example below uses the GitHub icon.
|
||||
|
||||
```toml
|
||||
+++
|
||||
title = "GitHub repo"
|
||||
menuPre = "<i class='fab fa-github'></i> "
|
||||
+++
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Ordering sibling menu/page entries
|
||||
|
||||
Hugo provides a [flexible way](https://gohugo.io/content/ordering/) to handle order for your pages.
|
||||
|
||||
The simplest way is to set `weight` parameter to a number.
|
||||
|
||||
```toml
|
||||
+++
|
||||
title = "My page"
|
||||
weight = 5
|
||||
+++
|
||||
```
|
||||
|
||||
### Using a custom title for menu entries
|
||||
|
||||
By default, the Relearn theme will use a page's `title` attribute for the menu item (or `linkTitle` if defined).
|
||||
|
||||
But a page's title has to be descriptive on its own while the menu is a hierarchy.
|
||||
We've added the `menuTitle` parameter for that purpose:
|
||||
|
||||
For example (for a page named `content/install/linux.md`):
|
||||
|
||||
```toml
|
||||
+++
|
||||
title = "Install on Linux"
|
||||
menuTitle = "Linux"
|
||||
+++
|
||||
```
|
||||
|
||||
### Override expand state rules for menu entries
|
||||
|
||||
You can change how the theme expands menu entries on the side of the content with the `alwaysopen` setting on a per page basis. If `alwaysopen=false` for any given entry, its children will not be shown in the menu as long as it is not necessary for the sake of navigation.
|
||||
|
||||
The theme generates the menu based on the following rules:
|
||||
|
||||
- all parent entries of the active page including their siblings are shown regardless of any settings
|
||||
- immediate children entries of the active page are shown regardless of any settings
|
||||
- if not overridden, all other first level entries behave like they would have been given `alwaysopen=false`
|
||||
- if not overridden, all other entries of levels besides the first behave like they would have been given `alwaysopen=true`
|
||||
- all visible entries show their immediate children entries if `alwaysopen=true`; this proceeds recursively
|
||||
- all remaining entries are not shown
|
||||
|
||||
You can see this feature in action on the example page for [children shortcode]({{< relref "shortcodes/children" >}}) and its children pages.
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/cont/pages/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "planks orrrganizat'n"
|
||||
weight = 1
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/cont/pages/frontmatter-icon.png
vendored
Normal file
After Width: | Height: | Size: 3.1 KiB |
66
docs/themes/hugo-theme-relearn/exampleSite/content/cont/syntaxhighlight.en.md
vendored
Normal file
@ -0,0 +1,66 @@
|
||||
+++
|
||||
title = "Code highlighting"
|
||||
weight = 4
|
||||
+++
|
||||
|
||||
The Relearn theme uses [Hugo's built-in syntax highlighting](https://gohugo.io/content-management/syntax-highlighting/) for code.
|
||||
|
||||
## Markdown syntax
|
||||
|
||||
Wrap the code block with three backticks and the name of the language. Highlight will try to auto detect the language if one is not provided.
|
||||
|
||||
<!-- markdownlint-disable MD046 -->
|
||||
````plaintext
|
||||
```json
|
||||
[
|
||||
{
|
||||
"title": "apples",
|
||||
"count": [12000, 20000],
|
||||
"description": {"text": "...", "sensitive": false}
|
||||
},
|
||||
{
|
||||
"title": "oranges",
|
||||
"count": [17500, null],
|
||||
"description": {"text": "...", "sensitive": false}
|
||||
}
|
||||
]
|
||||
```
|
||||
````
|
||||
<!-- markdownlint-disable MD046 -->
|
||||
|
||||
Renders to:
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"title": "apples",
|
||||
"count": [12000, 20000],
|
||||
"description": {"text": "...", "sensitive": false}
|
||||
},
|
||||
{
|
||||
"title": "oranges",
|
||||
"count": [17500, null],
|
||||
"description": {"text": "...", "sensitive": false}
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
## Supported languages
|
||||
|
||||
Hugo comes with a [remarkable list](https://gohugo.io/content-management/syntax-highlighting/#list-of-chroma-highlighting-languages) of supported languages.
|
||||
|
||||
## Recommended configuration
|
||||
|
||||
You can choose a color theme from the [list of supported themes](https://xyproto.github.io/splash/docs/all.html) and add it in your `config.toml`
|
||||
|
||||
````toml
|
||||
[markup]
|
||||
[markup.highlight]
|
||||
# if `guessSyntax = true`, there will be no unstyled code even if no language
|
||||
# was given BUT Mermaid and Math codefences will not work anymore! So this is a
|
||||
# mandatory setting for your site if you want to use Mermaid or Math codefences
|
||||
guessSyntax = false
|
||||
|
||||
# choose a color theme or create your own
|
||||
style = "base16-snazzy"
|
||||
````
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/cont/syntaxhighlight.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Code highlight'n"
|
||||
weight = 4
|
||||
+++
|
||||
{{< piratify >}}
|
42
docs/themes/hugo-theme-relearn/exampleSite/content/cont/taxonomy.en.md
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
+++
|
||||
categories = ["taxonomy", "content"]
|
||||
tags = "tutorial"
|
||||
title = "Taxonomy"
|
||||
weight = 7
|
||||
+++
|
||||
|
||||
The Relearn theme supports Hugo's default taxonomies _tag_ and _category_ out of the box.
|
||||
|
||||
## Configuration
|
||||
|
||||
Just add tags and/or categories to any page. They can be given as a single string or an array of strings.
|
||||
|
||||
```toml
|
||||
+++
|
||||
categories = ["taxonomy", "content"]
|
||||
tags = "tutorial"
|
||||
title = "Taxonomy"
|
||||
+++
|
||||
```
|
||||
|
||||
## Behavior
|
||||
|
||||
The tags are displayed at the top of the page in alphabetical order.
|
||||
|
||||
The categories are displayed at the bottom of the page in alphabetical order in the default implementation of the theme but can be customized by providing your own `content-footer.html` partial.
|
||||
|
||||
Each item is a link to a taxonomy page displaying all the articles with the given term.
|
||||
|
||||
## List all the tags
|
||||
|
||||
In the `config.toml` file you can add a shortcut to display all the tags and categories
|
||||
|
||||
```toml
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-tags'></i> Tags"
|
||||
url = "/tags"
|
||||
|
||||
[[menu.shortcuts]]
|
||||
name = "<i class='fas fa-list'></i> Categories"
|
||||
url = "/categories"
|
||||
```
|
7
docs/themes/hugo-theme-relearn/exampleSite/content/cont/taxonomy.pir.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
categories = ["taxonomy", "content"]
|
||||
tags = "tutorrrial"
|
||||
title = "Taxonomy"
|
||||
weight = 7
|
||||
+++
|
||||
{{< piratify >}}
|
10
docs/themes/hugo-theme-relearn/exampleSite/content/dev/_index.en.md
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
hidden = true
|
||||
title = "Development"
|
||||
weight = 4
|
||||
+++
|
||||
|
||||
This chapter contains information only needed for development and maintaining the theme.
|
||||
|
||||
{{%children containerstyle="div" style="h2" description="true" %}}
|
7
docs/themes/hugo-theme-relearn/exampleSite/content/dev/_index.pir.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
hidden = true
|
||||
title = "Development"
|
||||
weight = 4
|
||||
+++
|
||||
{{< piratify >}}
|
55
docs/themes/hugo-theme-relearn/exampleSite/content/dev/contributing/_index.en.md
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
+++
|
||||
description = "What to know if you want to contribute"
|
||||
title = "Contributing"
|
||||
+++
|
||||
|
||||
## Code Quality
|
||||
|
||||
A new release can happen at any time from the `main` branch of the [GitHub project](https://github.com/McShelby/hugo-theme-relearn) without further accknowledgment. This makes it necessary that, every pushed set of changesets into the `main` branch **must** be self-contained and correct, resulting in a releasable version.
|
||||
|
||||
Stay simple for the user by focusing on the mantra "convention over configuration".
|
||||
|
||||
At installation the site should work reasonable without (m)any configuration.
|
||||
|
||||
Stay close to the Hugo way.
|
||||
|
||||
Don't use npm or any preprocessing, our contributors may not be front-end developers.
|
||||
|
||||
Document new features in the exampleSite. This also contains entries to the [What's new]({{% relref "basics/migration" %}}) page.
|
||||
|
||||
Don't break existing features if you don't have to.
|
||||
|
||||
Remove reported issue from the browser's console.
|
||||
|
||||
Check for unnecessary whitespace and correct indention of your resulting HTML.
|
||||
|
||||
Be compatible to IE11, at least for main functionality, this means:
|
||||
|
||||
- test in IE11
|
||||
- check caniuse.com
|
||||
- don't use JavaScript arrow functions
|
||||
- don't use JavaScript template literals
|
||||
- don't use other fancy JavaScript ES5/6 stuff
|
||||
|
||||
## Conventional Commits
|
||||
|
||||
Write commit messages in the [conventional commit](https://www.conventionalcommits.org/en/v1.0.0/) format.
|
||||
|
||||
Following is an impomplete list of some of the used conventional commit types. Be creative.
|
||||
|
||||
| Common | Feature | Structure | Shortcodes |
|
||||
|------------|------------|-----------------|-------------|
|
||||
| build | a11y | favicon | attachments |
|
||||
| browser | archetypes | search | badge |
|
||||
| chore | alias | menu | button |
|
||||
| docs | generator | history | children |
|
||||
| shortcodes | i18n | scrollbar | expand |
|
||||
| theme | mobile | nav | icon |
|
||||
| | print | toc | include |
|
||||
| | rss | clipboard | math |
|
||||
| | variant | syntaxhighlight | mermaid |
|
||||
| | | boxes | notice |
|
||||
| | | | openapi |
|
||||
| | | | piratify |
|
||||
| | | | siteparam |
|
||||
| | | | tabs |
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/dev/contributing/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
description = "What to know if you want to contribute"
|
||||
title = "Contributing"
|
||||
+++
|
||||
{{< piratify >}}
|
125
docs/themes/hugo-theme-relearn/exampleSite/content/dev/maintaining/_index.en.md
vendored
Normal file
@ -0,0 +1,125 @@
|
||||
+++
|
||||
description = "What to know as a maintainer"
|
||||
title = "Maintaining"
|
||||
+++
|
||||
|
||||
## Semver
|
||||
|
||||
This project tries to follow the [semver policy](https://semver.org/) - although not followed 100% in the past.
|
||||
|
||||
Usually an entry of {{% badge style="warning" title=" " %}}Breaking{{% /badge %}} on the [What's new]({{% relref "basics/migration" %}}) page causes a new major release number.
|
||||
|
||||
All other entries on the [What's new]({{% relref "basics/migration" %}}) page will increase the minor release number.
|
||||
|
||||
Releases resulting in a new major or minor number are called main release.
|
||||
|
||||
Releases containing bugixes only, are only increasing the patch release number. Those releases don't result in announcements on the [What's new]({{% relref "basics/migration" %}}) page.
|
||||
|
||||
Entries on the [What's new]({{% relref "basics/migration" %}}) page are checked and enforced during the `version-release` GitHub Action.
|
||||
|
||||
## Managing Issues
|
||||
|
||||
Issues are categorized and managed by assigning [labels](#labels) to it.
|
||||
|
||||
Once working on an issue, assign it to a fitting maintainer.
|
||||
|
||||
When done, close the ticket. Once an issue is closed, it needs to be assigned to next release milestone.
|
||||
|
||||
A once released ticket is not allowed to be reopened and rereleased in a different milestone. This would cause the changelog to be changed even for the milestone the issue was previously released in. Instead write a new ticket.
|
||||
|
||||
## Managing Pull Requests
|
||||
|
||||
If a PR is merged and closed it needs an accompanied issue assigned to. If there is no issue for a PR, the maintainer needs to create one.
|
||||
|
||||
You can assign multiple PRs to one issue as long as they belong together.
|
||||
|
||||
Usually set the same labels and milestone for the PR as for the accompanied issue.
|
||||
|
||||
## Labels
|
||||
|
||||
### Kind
|
||||
|
||||
An issue that results in changesets must have exactly one of the following labels. This needs to be assigned latest before release.
|
||||
|
||||
| Label | Description | Changelog section |
|
||||
|----------------------------------------------------------|--------------------------------------------|-------------------|
|
||||
| {{% badge color="#5498d8" %}}documentation{{% /badge %}} | Improvements or additions to documentation | - |
|
||||
| {{% badge color="#99d856" %}}discussion{{% /badge %}} | This issue was converted to a discussion | - |
|
||||
| {{% badge color="#d8d104" %}}task{{% /badge %}} | Maintainence work | Maintenance |
|
||||
| {{% badge color="#d8ae04" %}}feature{{% /badge %}} | New feature or request | Features |
|
||||
| {{% badge color="#d88704" %}}bug{{% /badge %}} | Something isn't working | Fixes |
|
||||
|
||||
### Impact
|
||||
|
||||
If the issue would cause a new main release due to [semver semantics](#semver) it needs one of the according labels and the matching badge on the [What's new]({{% relref "basics/migration" %}}) page.
|
||||
|
||||
| Label | Description |
|
||||
|-----------------------------------------------------|---------------------------------------------------------|
|
||||
| {{% badge color="#d73a4a" %}}change{{% /badge %}} | Introduces changes with existing installations |
|
||||
| {{% badge color="#d73a4a" %}}breaking{{% /badge %}} | Introduces breaking changes with existing installations |
|
||||
|
||||
### Declination
|
||||
|
||||
If an issue does not result in changesets but is closed anyways, it must have exactly one of the following labels.
|
||||
|
||||
| Label | Description |
|
||||
|-------------------------------------------------------|-------------------------------------------
|
||||
| {{% badge color="#9fa2a5" %}}duplicate{{% /badge %}} | This issue or pull request already exists |
|
||||
| {{% badge color="#9fa2a5" %}}invalid{{% /badge %}} | This doesn't seem right |
|
||||
| {{% badge color="#9fa2a5" %}}unresolved{{% /badge %}} | No progress on this issue |
|
||||
| {{% badge color="#9fa2a5" %}}update{{% /badge %}} | A documented change in behaviour |
|
||||
| {{% badge color="#9fa2a5" %}}wontfix{{% /badge %}} | This will not be worked on |
|
||||
|
||||
### Halt
|
||||
|
||||
You can assign one further label out of the following list to signal readers that development on an open issue is currently halted for different reasons.
|
||||
|
||||
| Label | Description |
|
||||
|----------------------------------------------------------|---------------------------------------------------------|
|
||||
| {{% badge color="#998f6b" %}}blocked{{% /badge %}} | Depends on other issue to be fixed first |
|
||||
| {{% badge color="#998f6b" %}}idea{{% /badge %}} | A valuable idea that's currently not worked on |
|
||||
| {{% badge color="#998f6b" %}}undecided{{% /badge %}} | No decission was made yet |
|
||||
| {{% badge color="#6426ff" %}}helpwanted{{% /badge %}} | Great idea, send in a PR |
|
||||
| {{% badge color="#6426ff" %}}needsfeedback{{% /badge %}} | Further information is needed |
|
||||
|
||||
### 3rd-Party
|
||||
|
||||
If the issue is not caused by a programming error in the themes own code, you can label the causing program or library.
|
||||
|
||||
| Label | Description |
|
||||
|----------------------------------------------------|-------------------------------------------------------------|
|
||||
| {{% badge color="#e550a7" %}}browser{{% /badge %}} | This is a topic related to the browser but not the theme |
|
||||
| {{% badge color="#e550a7" %}}device{{% /badge %}} | This is a topic related to a certain device |
|
||||
| {{% badge color="#e550a7" %}}hugo{{% /badge %}} | This is a topic related to Hugo itself but not the theme |
|
||||
| {{% badge color="#e550a7" %}}mermaid{{% /badge %}} | This is a topic related to Mermaid itself but not the theme |
|
||||
|
||||
## Making Releases
|
||||
|
||||
A release is based on a milestone named like the release itself - just the version number, eg: `1.2.3`. It's in the maintainers responsiblity to check [semver semantics](#semver) of the milestone's name prior to release and change it if necessary.
|
||||
|
||||
Making releases is automated by the `version-release` GitHub Action. It requires the version number of the milestone that should be released. The release will be created from the `main` branch of the repository.
|
||||
|
||||
Treat released milestones as immutable. Don't rerelease an already released milestone. An already released milestone may already been consumed by your users.
|
||||
|
||||
During execution of the action a few things are checked. If a check fails the action fails, resulting in no new release. You can correct the errors afterwards and rerun the action.
|
||||
|
||||
The following checks will be enforced
|
||||
|
||||
- the milestone exists
|
||||
- there is at least one closed issue assigned to the milestone
|
||||
- all assigned issues for this milestone are closed
|
||||
- if it's a main release, there must be a new `<major>.<minor>` at the beginning of the [What's new]({{% relref "basics/migration" %}}) page
|
||||
- if it's a patch release, there must be the `<major>.<minor>` from the previous release at the beginning of the [What's new]({{% relref "basics/migration" %}}) page
|
||||
|
||||
After a successful run of the action
|
||||
|
||||
- the [History](https://mcshelby.github.io/hugo-theme-relearn/basics/history/index.html) page is updated, including release version, release date and text
|
||||
- the [What's new](https://mcshelby.github.io/hugo-theme-relearn/basics/migration/index.html) page is updated, including release version, release date and text
|
||||
- the version number for the `<meta generator>` is updated
|
||||
- the updated files are commited
|
||||
- the milestone is closed
|
||||
- the repository is tagged with the version number (eg. `1.2.3`), the main version number (eg. `1.2.x`) and the major version number (eg. `1.x`)
|
||||
- a new entry in the [GitHub release list](https://github.com/McShelby/hugo-theme-relearn/releases) with the according changelog will be created
|
||||
- the [official documentation](https://mcshelby.github.io/hugo-theme-relearn/index.html) is built and deployed
|
||||
- the version number for the `<meta generator>` is updated to a temporary and commited (this helps to determine if users are running directly on the main branch or are using releases)
|
||||
- a new milestone for the next patch release is created (this can later be renamed to a main release if necessary)
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/dev/maintaining/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
description = "What to know as a maintainer"
|
||||
title = "Maintaining"
|
||||
+++
|
||||
{{< piratify >}}
|
87
docs/themes/hugo-theme-relearn/exampleSite/content/dev/screenshots/_index.en.md
vendored
Normal file
@ -0,0 +1,87 @@
|
||||
+++
|
||||
description = "Recipe to create various documentation screenshots"
|
||||
title = "Screenshots"
|
||||
+++
|
||||
|
||||
Sometimes screenshots need to be redone. This page explains how to create the different screenshots, tools and settings
|
||||
|
||||
## Common
|
||||
|
||||
**Creation**:
|
||||
|
||||
- Use English translation
|
||||
- Empty search
|
||||
- Remove history checkmarks but leave it on the page thats used for the screenshot
|
||||
- After resize of the page into the required resolution, reload the page to have all scrollbars in default loading position
|
||||
|
||||
## Demo Screenshot
|
||||
|
||||
**Content**:
|
||||
|
||||
A meaningful full-screen screenshot of an interesting page.
|
||||
|
||||
The content should be:
|
||||
|
||||
- timeless: not showing any dates or often edited content
|
||||
- interesting: show a bunch of interesting elements like headings, code, etc
|
||||
- balanced: no cluttering with overpresent elements or coloring
|
||||
- aligned: aligned outlines
|
||||
|
||||
**Used by**:
|
||||
|
||||
- Hugo Themes info: https://themes.gohugo.io/themes/hugo-theme-relearn/ _1000 x 1500 @ 1_
|
||||
|
||||
**Page URL**: [Screenshot Link]({{% relref "/shortcodes/include" %}})
|
||||
|
||||
**Creation**:
|
||||
|
||||
- save as `images/screenshot.png`
|
||||
|
||||
**Remarks**:
|
||||
|
||||
The location is mandatory due to Hugo's theme site builder.
|
||||
|
||||
### Preview `images/screenshot.png`
|
||||
|
||||

|
||||
|
||||
## Hero Image
|
||||
|
||||
**Content**:
|
||||
|
||||
Show the [Demo Screenshot](#demo-screenshot) page on different devices and different themes. Composition of the different device screenshots into a template.
|
||||
|
||||
The content should be:
|
||||
|
||||
- consistent: always use the same page for all devices
|
||||
- pleasing: use a delightful background
|
||||
|
||||
**Used by**:
|
||||
|
||||
- Hugo Themes gallery: https://themes.gohugo.io/tags/docs/ _900 x 600_
|
||||
- Hugo Themes notes: https://themes.gohugo.io/themes/hugo-theme-relearn/ _1280 x 640_
|
||||
- GitHub project site: https://github.com/McShelby/hugo-theme-relearn _1280 x 640_
|
||||
- GitHub social media preview: https://github.com/McShelby/hugo-theme-relearn/settings _1280 x 640_
|
||||
|
||||
**Page URL**: [Hero Image Link]({{% relref "/shortcodes/include" %}})
|
||||
|
||||
**Creation**:
|
||||
|
||||
- Template: http://www.pixeden.com/psd-web-elements/psd-screen-web-showcase
|
||||
- Desktop: light theme _1440 x 900 @ 1_
|
||||
- Tablet: light theme _778 x 1038 @ 1_
|
||||
- Phone: dark theme _450 x 801 @ .666_
|
||||
- From original template size resize to _2700 x 1800_ centered, scale to _900 x 600_ and save as `images/tn.png`
|
||||
- From original template size resize to _3000 x 1500_ offset y: _-330_, scale to _1280 x 640_ and save as `images/hero.png`
|
||||
|
||||
**Remarks**:
|
||||
|
||||
The location of `images/tn.png` is mandatory due to Hugo's theme site builder.
|
||||
|
||||
### Preview `images/hero.png`
|
||||
|
||||

|
||||
|
||||
### Preview `images/tn.png`
|
||||
|
||||

|
5
docs/themes/hugo-theme-relearn/exampleSite/content/dev/screenshots/_index.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
description = "Recipe t' create various documentat'n scrrreenshots"
|
||||
title = "Scrrrenshots"
|
||||
+++
|
||||
{{< piratify >}}
|
9
docs/themes/hugo-theme-relearn/exampleSite/content/more/_index.en.md
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
+++
|
||||
title = "More"
|
||||
[_build]
|
||||
render = "never"
|
||||
list = "never"
|
||||
publishResources = false
|
||||
+++
|
||||
|
||||
{{%children containerstyle="div" style="h2" description="true" %}}
|
8
docs/themes/hugo-theme-relearn/exampleSite/content/more/_index.pir.md
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
+++
|
||||
title = "Morrre"
|
||||
[_build]
|
||||
render = "never"
|
||||
list = "never"
|
||||
publishResources = false
|
||||
+++
|
||||
{{< piratify >}}
|
51
docs/themes/hugo-theme-relearn/exampleSite/content/more/credits/_index.en.md
vendored
Normal file
@ -0,0 +1,51 @@
|
||||
+++
|
||||
title = "Credits"
|
||||
+++
|
||||
|
||||
## Contributors
|
||||
|
||||
Special thanks to [everyone who has contributed](https://github.com/McShelby/hugo-theme-relearn/graphs/contributors) to this project.
|
||||
|
||||
Many thanks to [Mathieu Cornic](https://github.com/matcornic) for his work on porting the [Learn theme](https://github.com/matcornic/hugo-theme-learn) to Hugo.
|
||||
|
||||
Many thanks to [Andy Miller](https://github.com/rhukster) for initially creating the [Learn theme](https://github.com/getgrav/grav-theme-learn2) for Grav.
|
||||
|
||||
## Packages and Libraries
|
||||
|
||||
- [autoComplete](https://github.com/Pixabay/JavaScript-autoComplete) - A lightweight and powerful vanilla JavaScript completion suggester
|
||||
- [clipboard.js](https://clipboardjs.com) - A modern approach to copy text to clipboard
|
||||
- [d3-zoom](https://github.com/d3/d3-zoom) - Pan and zoom SVG, HTML or Canvas using mouse or touch input - plus dependencies
|
||||
- [d3-color](https://github.com/d3/d3-color) - Color spaces! RGB, HSL, Cubehelix, CIELAB, and more
|
||||
- [d3-dispatch](https://github.com/d3/d3-dispatch) - Register named callbacks and call them with arguments
|
||||
- [d3-ease](https://github.com/d3/d3-ease) - Easing functions for smooth animation
|
||||
- [d3-interpolate](https://github.com/d3/d3-interpolate) - Interpolate numbers, colors, strings, arrays, objects, whatever
|
||||
- [d3-selection](https://github.com/d3/d3-selection) - Transform the DOM by selecting elements and joining to data
|
||||
- [d3-timer](https://github.com/d3/d3-timer) - An efficient queue for managing thousands of concurrent animations
|
||||
- [d3-transition](https://github.com/d3/d3-transition) - Animated transitions for D3 selections
|
||||
- [d3-drag](https://github.com/d3/d3-drag) - Drag and drop SVG, HTML or Canvas using mouse or touch input
|
||||
- [Font Awesome](https://fontawesome.com) - The internet's icon library and toolkit
|
||||
- [Lunr](https://lunrjs.com) - Enables a great search experience without the need for external, server-side, search services
|
||||
- [Lunr Languages](https://github.com/MihaiValentin/lunr-languages) - A collection of languages stemmers and stopwords for Lunr Javascript library
|
||||
- [MathJax](https://mathjax.org/) - Beautiful math and chemical formulae in all browsers
|
||||
- [Mermaid](https://mermaid-js.github.io/mermaid) - Generation of diagram and flowchart from text in a similar manner as markdown
|
||||
- [Perfect Scrollbar](https://perfectscrollbar.com) - A minimalistic but perfect custom scrollbar plugin
|
||||
- [SwaggerUI](https://github.com/swagger-api/swagger-ui) - Generate beautiful documentation from a Swagger-compliant API
|
||||
- [WorkSans](https://weiweihuanghuang.github.io/Work-Sans/) - Work Sans is a 9 weight typeface family based loosely on early Grotesques
|
||||
|
||||
## Tooling
|
||||
|
||||
- [GitHub](https://github.com) - Continuous deployment, testing and hosting of this project's sources and its documentation
|
||||
- Various GitHub Actions
|
||||
- https://github.com/actions/setup-node
|
||||
- https://github.com/Akkjon/close-milestone
|
||||
- https://github.com/andstor/file-reader-action
|
||||
- https://github.com/ashley-taylor/regex-property-action
|
||||
- https://github.com/Kaven-Universe/github-action-current-date-time
|
||||
- https://github.com/mingjun97/file-regex-replace
|
||||
- https://github.com/octokit/graphql-action
|
||||
- https://github.com/peaceiris/actions-gh-pages
|
||||
- https://github.com/peaceiris/actions-hugo
|
||||
- https://github.com/WyriHaximus/github-action-create-milestone
|
||||
- https://github.com/WyriHaximus/github-action-next-semvers
|
||||
- [gren](https://github.com/github-tools/github-release-notes) - A releasenotes generator for GitHub
|
||||
- [Hugo](https://gohugo.io/) - The static site generator of your choice
|
4
docs/themes/hugo-theme-relearn/exampleSite/content/more/credits/_index.pir.md
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
+++
|
||||
title = "Crrredits"
|
||||
+++
|
||||
{{< piratify >}}
|
15
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/INCLUDE_ME.md
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
You can add standard markdown syntax:
|
||||
|
||||
- multiple paragraphs
|
||||
- bullet point lists
|
||||
- _emphasized_, **bold** and even **_bold emphasized_** text
|
||||
- [links](https://example.com)
|
||||
- etc.[^etc]
|
||||
|
||||
[^etc]: Et Cetera (English: /ɛtˈsɛtərə/), abbreviated to etc., etc, et cet., is a Latin expression that is used in English to mean "and other similar things", or "and so forth"
|
||||
|
||||
```plaintext
|
||||
...and even source code
|
||||
```
|
||||
|
||||
> the possibilities are endless (almost - including other shortcodes may or may not work) (almost - including other shortcodes may or may not work)
|
16
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/_index.en.md
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Shortcodes"
|
||||
ordersectionsby = "title"
|
||||
weight = 3
|
||||
+++
|
||||
|
||||
Hugo uses Markdown for its simple content format. However, there are a lot of things that Markdown doesn’t support well. You could use pure HTML to expand possibilities.
|
||||
|
||||
But this happens to be a bad idea. Everyone uses Markdown because it's pure and simple to read even non-rendered. You should avoid HTML to keep it as simple as possible.
|
||||
|
||||
To avoid this limitations, Hugo created [shortcodes](https://gohugo.io/extras/shortcodes/). A shortcode is a simple snippet inside a page.
|
||||
|
||||
The Relearn theme provides multiple shortcodes on top of existing ones.
|
||||
|
||||
{{%children containerstyle="div" style="h2" description="true" %}}
|
7
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/_index.pir.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
archetype = "chapter"
|
||||
title = "Shorrrtcodes"
|
||||
ordersectionsby = "title"
|
||||
weight = 3
|
||||
+++
|
||||
{{< piratify >}}
|
BIN
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/attachments/index.en.files/hugo.png
vendored
Normal file
After Width: | Height: | Size: 18 KiB |
@ -0,0 +1 @@
|
||||
This is a small text
|
130
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/attachments/index.en.md
vendored
Normal file
@ -0,0 +1,130 @@
|
||||
+++
|
||||
description = "List of files attached to a page"
|
||||
title = "Attachments"
|
||||
+++
|
||||
|
||||
The `attachments` shortcode displays a list of files attached to a page with adjustable color, title and icon.
|
||||
|
||||
{{% attachments sort="asc" /%}}
|
||||
|
||||
{{% notice warning %}}
|
||||
Since Hugo {{% badge color="fuchsia" icon="fab fa-hackerrank" title=" " %}}0.112.0{{% /badge %}} this only works for leaf bundles. Branch bundles and simple pages must be switched to leaf bundles or you are currently locked to a Hugo version < `0.112.0`.
|
||||
{{% /notice %}}
|
||||
|
||||
## Usage
|
||||
|
||||
While the examples are using shortcodes with named parameter you are free to also call this shortcode from your own partials.
|
||||
|
||||
{{< tabs groupId="shortcode-parameter">}}
|
||||
{{% tab title="shortcode" %}}
|
||||
|
||||
````go
|
||||
{{%/* attachments sort="asc" /*/%}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{% tab title="partial" %}}
|
||||
|
||||
````go
|
||||
{{ partial "shortcodes/attachments.html" (dict
|
||||
"context" .
|
||||
"sort" "asc"
|
||||
)}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{< /tabs >}}
|
||||
|
||||
### Parameter
|
||||
|
||||
| Name | Default | Notes |
|
||||
|:------------|:----------------|:------------|
|
||||
| **style** | `transparent` | The style scheme used for the box.<br><br>- by severity: `info`, `note`, `tip`, `warning`<br>- by brand color: `primary`, `secondary`, `accent`<br>- by color: `blue`, `green`, `grey`, `orange`, `red`<br>- by special color: `default`, `transparent`, `code` |
|
||||
| **color** | see notes | The [CSS color value](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value) to be used. If not set, the chosen color depends on the **style**. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching color for the severity<br>- for all other styles: the corresponding color |
|
||||
| **title** | see notes | Arbitrary text for the box title. Depending on the **style** there may be a default title. Any given value will overwrite the default.<br><br>- for severity styles: the matching title for the severity<br>- for all other styles: `Attachments`<br><br>If you want no title for a severity style, you have to set this parameter to `" "` (a non empty string filled with spaces) |
|
||||
| **icon** | see notes | [Font Awesome icon name]({{%relref "shortcodes/icon#finding-an-icon" %}}) set to the left of the title. Depending on the **style** there may be a default icon. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching icon for the severity<br>- for all other styles: `paperclip`<br><br>If you want no icon, you have to set this parameter to `" "` (a non empty d with spaces) |
|
||||
| **sort** | `asc` | Sorting the output in `asc`ending or `desc`ending order. |
|
||||
| **pattern** | `.*` | A [regular expressions](https://en.wikipedia.org/wiki/Regular_expression), used to filter the attachments by file name. For example:<br><br>- to match a file suffix of 'jpg', use `.*\.jpg` (not `*.\.jpg`)<br>- to match file names ending in `jpg` or `png`, use `.*\.(jpg\|png)` |
|
||||
|
||||
## Setup
|
||||
|
||||
### Single language
|
||||
|
||||
The shortcode lists files found in a specific folder. The name of the folder depends on your page type (either branch bundle, leaf bundle or page).
|
||||
|
||||
1. If your page is a leaf bundle, attachments must be placed in a nested `index.files` folder, accordingly.
|
||||
|
||||
> * content
|
||||
> * _index.md
|
||||
> * page
|
||||
> * _index.md
|
||||
> * **_index.files**
|
||||
> * attachment.pdf
|
||||
|
||||
2. If your page is a branch bundle, attachments must be placed in a nested `_index.files` folder, accordingly.
|
||||
|
||||
{{% badge style="warning" title=" " %}}Warning{{% /badge %}} This is only available for Hugo < `0.112.0`
|
||||
|
||||
> * content
|
||||
> * _index.md
|
||||
> * page
|
||||
> * index.md
|
||||
> * **index.files**
|
||||
> * attachment.pdf
|
||||
|
||||
3. For simple pages, attachments must be placed in a folder named like your page and ending with `.files`.
|
||||
|
||||
{{% badge style="warning" title=" " %}}Warning{{% /badge %}} This is only available for Hugo < `0.112.0`
|
||||
|
||||
> * content
|
||||
> * _index.md
|
||||
> * **page.files**
|
||||
> * attachment.pdf
|
||||
> * page.md
|
||||
|
||||
### Multilingual
|
||||
|
||||
Be aware that if you use a multilingual website, you will need to have as many folders as languages and the language code must be part of the folder name.
|
||||
|
||||
Eg. for a site in English and Piratish:
|
||||
|
||||
> * content
|
||||
> * index.en.md
|
||||
> * index.pir.md
|
||||
> * page
|
||||
> * index.en.md
|
||||
> * index.pir.md
|
||||
> * **index.en.files**
|
||||
> * attachment.pdf
|
||||
> * **index.pir.files**
|
||||
> * attachment.pdf
|
||||
|
||||
## Examples
|
||||
|
||||
### Custom Title, List of Attachments Ending in pdf or mp4
|
||||
|
||||
````go
|
||||
{{%/* attachments title="Related **files**" pattern=".*\.(pdf|mp4)" /*/%}}
|
||||
````
|
||||
|
||||
{{% attachments title="Related **files**" pattern=".*\.(pdf|mp4)" /%}}
|
||||
|
||||
### Info Styled Box, Descending Sort Order
|
||||
|
||||
````go
|
||||
{{%/* attachments style="info" sort="desc" /*/%}}
|
||||
````
|
||||
|
||||
{{% attachments style="info" sort="desc" /%}}
|
||||
|
||||
### With User-Defined Color and Font Awesome Brand Icon
|
||||
|
||||
````go
|
||||
{{%/* attachments color="fuchsia" icon="fab fa-hackerrank" /*/%}}
|
||||
````
|
||||
|
||||
{{% attachments color="fuchsia" icon="fab fa-hackerrank" /%}}
|
||||
|
||||
### Style, Color, Title and Icons
|
||||
|
||||
For further examples for **style**, **color**, **title** and **icon**, see the [`notice` shortcode]({{% relref "shortcodes/notice" %}}) documentation. The parameter are working the same way for both shortcodes, besides having different defaults.
|
@ -0,0 +1 @@
|
||||
Harrr, nothn' to see herre
|
7
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/attachments/index.pir.md
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
+++
|
||||
descrption = "Th' Attachments shorrrtcode displays a list o' files attached t' a plank"
|
||||
title = "Attachments"
|
||||
+++
|
||||
{{% attachments /%}}
|
||||
|
||||
{{< piratify >}}
|
227
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/badge.en.md
vendored
Normal file
@ -0,0 +1,227 @@
|
||||
+++
|
||||
description = "Marker badges to display in your text"
|
||||
title = "Badge"
|
||||
+++
|
||||
|
||||
The `badge` shortcode displays little markers in your text with adjustable color, title and icon.
|
||||
|
||||
{{% badge %}}Important{{% /badge %}}
|
||||
{{% badge style="primary" title="Version" %}}6.6.6{{% /badge %}}
|
||||
{{% badge style="red" icon="angle-double-up" %}}Captain{{% /badge %}}
|
||||
{{% badge style="info" %}}New{{% /badge %}}
|
||||
{{% badge color="fuchsia" icon="fab fa-hackerrank" %}}Awesome{{% /badge %}}
|
||||
|
||||
## Usage
|
||||
|
||||
While the examples are using shortcodes with named parameter you are free to also call this shortcode from your own partials.
|
||||
|
||||
{{< tabs groupId="shortcode-parameter">}}
|
||||
{{% tab title="shortcode" %}}
|
||||
|
||||
````go
|
||||
{{%/* badge %}}Important{{% /badge */%}}
|
||||
{{%/* badge style="primary" title="Version" %}}6.6.6{{% /badge */%}}
|
||||
{{%/* badge style="red" icon="angle-double-up" %}}Captain{{% /badge */%}}
|
||||
{{%/* badge style="info" %}}New{{% /badge */%}}
|
||||
{{%/* badge color="fuchsia" icon="fab fa-hackerrank" %}}Awesome{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{% tab title="partial" %}}
|
||||
|
||||
````go
|
||||
{{ partial "shortcodes/badge.html" (dict
|
||||
"context" .
|
||||
"content" "Important"
|
||||
)}}
|
||||
{{ partial "shortcodes/badge.html" (dict
|
||||
"context" .
|
||||
"style" "primary"
|
||||
"title" "Version"
|
||||
"content" "6.6.6"
|
||||
)}}
|
||||
{{ partial "shortcodes/badge.html" (dict
|
||||
"context" .
|
||||
"style" "red"
|
||||
"icon" "angle-double-up"
|
||||
"content" "Captain"
|
||||
)}}
|
||||
{{ partial "shortcodes/badge.html" (dict
|
||||
"context" .
|
||||
"style" "info"
|
||||
"content" "New"
|
||||
)}}
|
||||
{{ partial "shortcodes/badge.html" (dict
|
||||
"context" .
|
||||
"color" "fuchsia"
|
||||
"icon" "fab fa-hackerrank"
|
||||
"content" "Awesome"
|
||||
)}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{< /tabs >}}
|
||||
|
||||
### Parameter
|
||||
|
||||
| Name | Default | Notes |
|
||||
|:----------------------|:----------------|:------------|
|
||||
| **style** | `default` | The style scheme used for the badge.<br><br>- by severity: `info`, `note`, `tip`, `warning`<br>- by brand color: `primary`, `secondary`, `accent`<br>- by color: `blue`, `green`, `grey`, `orange`, `red`<br>- by special color: `default`, `transparent`, `code` |
|
||||
| **color** | see notes | The [CSS color value](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value) to be used. If not set, the chosen color depends on the **style**. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching color for the severity<br>- for all other styles: the corresponding color |
|
||||
| **title** | see notes | Arbitrary text for the badge title. Depending on the **style** there may be a default title. Any given value will overwrite the default.<br><br>- for severity styles: the matching title for the severity<br>- for all other styles: _<empty>_<br><br>If you want no title for a severity style, you have to set this parameter to `" "` (a non empty string filled with spaces) |
|
||||
| **icon** | see notes | [Font Awesome icon name]({{%relref "shortcodes/icon#finding-an-icon" %}}) set to the left of the title. Depending on the **style** there may be a default icon. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching icon for the severity<br>- for all other styles: _<empty>_<br><br>If you want no icon for a severity style, you have to set this parameter to `" "` (a non empty string filled with spaces) |
|
||||
| _**<content>**_ | _<empty>_ | Arbitrary text for the badge. |
|
||||
|
||||
## Examples
|
||||
|
||||
### Style
|
||||
|
||||
#### By Severity
|
||||
|
||||
````go
|
||||
{{%/* badge style="info" %}}New{{% /badge */%}}
|
||||
{{%/* badge style="note" %}}Change{{% /badge */%}}
|
||||
{{%/* badge style="tip" %}}Optional{{% /badge */%}}
|
||||
{{%/* badge style="warning" %}}Breaking{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge style="info" %}}New{{% /badge %}}
|
||||
{{% badge style="note" %}}Change{{% /badge %}}
|
||||
{{% badge style="tip" %}}Optional{{% /badge %}}
|
||||
{{% badge style="warning" %}}Breaking{{% /badge %}}
|
||||
|
||||
#### By Brand Colors
|
||||
|
||||
````go
|
||||
{{%/* badge style="primary" icon="bullhorn" title="Announcement" %}}Mandatory{{% /badge */%}}
|
||||
{{%/* badge style="secondary" icon="bullhorn" title="Announcement" %}}Optional{{% /badge */%}}
|
||||
{{%/* badge style="accent" icon="bullhorn" title="Announcement" %}}Special{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge style="primary" icon="bullhorn" title="Announcement" %}}Mandatory{{% /badge %}}
|
||||
{{% badge style="secondary" icon="bullhorn" title="Announcement" %}}Optional{{% /badge %}}
|
||||
{{% badge style="accent" icon="bullhorn" title="Announcement" %}}Special{{% /badge %}}
|
||||
|
||||
#### By Color
|
||||
|
||||
````go
|
||||
{{%/* badge style="blue" icon="palette" title="Color" %}}Blue{{% /badge */%}}
|
||||
{{%/* badge style="green" icon="palette" title="Color" %}}Green{{% /badge */%}}
|
||||
{{%/* badge style="grey" icon="palette" title="Color" %}}Grey{{% /badge */%}}
|
||||
{{%/* badge style="orange" icon="palette" title="Color" %}}Orange{{% /badge */%}}
|
||||
{{%/* badge style="red" icon="palette" title="Color" %}}Red{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge style="blue" icon="palette" title="Color" %}}Blue{{% /badge %}}
|
||||
{{% badge style="green" icon="palette" title="Color" %}}Green{{% /badge %}}
|
||||
{{% badge style="grey" icon="palette" title="Color" %}}Grey{{% /badge %}}
|
||||
{{% badge style="orange" icon="palette" title="Color" %}}Orange{{% /badge %}}
|
||||
{{% badge style="red" icon="palette" title="Color" %}}Red{{% /badge %}}
|
||||
|
||||
#### By Special Color
|
||||
|
||||
````go
|
||||
{{%/* badge style="default" icon="palette" title="Color" %}}Default{{% /badge */%}}
|
||||
{{%/* badge style="transparent" icon="palette" title="Color" %}}Transparent{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge style="default" icon="palette" title="Color" %}}Default{{% /badge %}}
|
||||
{{% badge style="transparent" icon="palette" title="Color" %}}Transparent{{% /badge %}}
|
||||
|
||||
### Variants
|
||||
|
||||
#### Without Icon and Title Text
|
||||
|
||||
````go
|
||||
{{%/* badge %}}6.6.6{{% /badge */%}}
|
||||
{{%/* badge style="info" icon=" " title=" " %}}Awesome{{% /badge */%}}
|
||||
{{%/* badge style="red" %}}Captain{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge %}}6.6.6{{% /badge %}}
|
||||
{{% badge style="info" icon=" " title=" " %}}Awesome{{% /badge %}}
|
||||
{{% badge style="red" %}}Captain{{% /badge %}}
|
||||
|
||||
#### Without Icon
|
||||
|
||||
````go
|
||||
{{%/* badge title="Version" %}}6.6.6{{% /badge */%}}
|
||||
{{%/* badge style="info" icon=" " %}}Awesome{{% /badge */%}}
|
||||
{{%/* badge style="red" title="Rank" %}}Captain{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge title="Version" %}}6.6.6{{% /badge %}}
|
||||
{{% badge style="info" icon=" " %}}Awesome{{% /badge %}}
|
||||
{{% badge style="red" title="Rank" %}}Captain{{% /badge %}}
|
||||
|
||||
#### Without Title Text
|
||||
|
||||
````go
|
||||
{{%/* badge icon="star" %}}6.6.6{{% /badge */%}}
|
||||
{{%/* badge style="info" title=" " %}}Awesome{{% /badge */%}}
|
||||
{{%/* badge style="red" icon="angle-double-up" %}}Captain{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge icon="star" %}}6.6.6{{% /badge %}}
|
||||
{{% badge style="info" title=" " %}}Awesome{{% /badge %}}
|
||||
{{% badge style="red" icon="angle-double-up" %}}Captain{{% /badge %}}
|
||||
|
||||
#### All Set
|
||||
|
||||
````go
|
||||
{{%/* badge icon="star" title="Version" %}}6.6.6{{% /badge */%}}
|
||||
{{%/* badge style="info" %}}Awesome{{% /badge */%}}
|
||||
{{%/* badge style="red" icon="angle-double-up" title="Rank" %}}Captain{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge icon="star" title="Version" %}}6.6.6{{% /badge %}}
|
||||
{{% badge style="info" %}}Awesome{{% /badge %}}
|
||||
{{% badge style="red" icon="angle-double-up" title="Rank" %}}Captain{{% /badge %}}
|
||||
|
||||
#### Override for Severity
|
||||
|
||||
````go
|
||||
{{%/* badge style="info" icon="rocket" title="Feature" %}}Awesome{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge style="info" icon="rocket" title="Feature" %}}Awesome{{% /badge %}}
|
||||
|
||||
### Other
|
||||
|
||||
#### With User-Defined Color, Font Awesome Brand Icon and Markdown Title and Content
|
||||
|
||||
````go
|
||||
{{%/* badge color="fuchsia" icon="fab fa-hackerrank" title="**Font**" %}}**Awesome**{{% /badge */%}}
|
||||
````
|
||||
|
||||
{{% badge color="fuchsia" icon="fab fa-hackerrank" title="**Font**" %}}**Awesome**{{% /badge %}}
|
||||
|
||||
#### With Icon Content
|
||||
|
||||
You can combine the badge with the [`icon` shortcode]({{% relref "shortcodes/icon" %}}) to create even more stunning visuals.
|
||||
|
||||
In this case you need to declare `{{</* badge */>}}` instead of `{{%/* badge */%}}`. Note, that in this case it is not possible to put markdown in the content.
|
||||
|
||||
````go
|
||||
{{</* badge style="primary" icon="angle-double-up" >}}{{% icon skull-crossbones %}}{{< /badge */>}}
|
||||
{{</* badge style="primary" icon="angle-double-up" >}}{{% icon skull-crossbones %}} Pirate{{< /badge */>}}
|
||||
{{</* badge style="primary" title="Rank" >}}{{% icon skull-crossbones %}}{{< /badge */>}}
|
||||
{{</* badge style="primary" title="Rank" >}}{{% icon skull-crossbones %}} Pirate{{< /badge */>}}
|
||||
{{</* badge style="primary" icon="angle-double-up" title="Rank" >}}{{% icon skull-crossbones %}}{{< /badge */>}}
|
||||
{{</* badge style="primary" icon="angle-double-up" title="Rank" >}}{{% icon skull-crossbones %}} Pirate{{< /badge */>}}
|
||||
````
|
||||
|
||||
{{< badge style="primary" icon="angle-double-up" >}}{{% icon skull-crossbones %}}{{< /badge >}}
|
||||
{{< badge style="primary" icon="angle-double-up" >}}{{% icon skull-crossbones %}} Pirate{{< /badge >}}
|
||||
{{< badge style="primary" title="Rank" >}}{{% icon skull-crossbones %}}{{< /badge >}}
|
||||
{{< badge style="primary" title="Rank" >}}{{% icon skull-crossbones %}} Pirate{{< /badge >}}
|
||||
{{< badge style="primary" icon="angle-double-up" title="Rank" >}}{{% icon skull-crossbones %}}{{< /badge >}}
|
||||
{{< badge style="primary" icon="angle-double-up" title="Rank" >}}{{% icon skull-crossbones %}} Pirate{{< /badge >}}
|
||||
|
||||
#### Inside of Text
|
||||
|
||||
````go
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. {{%/* badge style="blue" icon="rocket" %}}Awesome{{% /badge */%}} Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
||||
````
|
||||
|
||||
Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. {{% badge style="blue" icon="rocket" %}}Awesome{{% /badge %}} Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/badge.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
descrption = "Marker badges t' display 'n yer text"
|
||||
title = "Badge"
|
||||
+++
|
||||
{{< piratify >}}
|
208
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/button.en.md
vendored
Normal file
@ -0,0 +1,208 @@
|
||||
+++
|
||||
description = "Clickable buttons"
|
||||
title = "Button"
|
||||
+++
|
||||
|
||||
The `button` shortcode displays a clickable button with adjustable color, title and icon.
|
||||
|
||||
{{% button href="https://gohugo.io/" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="warning" icon="dragon" %}}Get Hugo{{% /button %}}
|
||||
|
||||
## Usage
|
||||
|
||||
While the examples are using shortcodes with named parameter you are free to also call this shortcode from your own partials.
|
||||
|
||||
{{< tabs groupId="shortcode-parameter">}}
|
||||
{{% tab title="shortcode" %}}
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="warning" icon="dragon" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{% tab title="partial" %}}
|
||||
|
||||
````go
|
||||
{{ partial "shortcodes/button.html" (dict
|
||||
"context" .
|
||||
"href" "https://gohugo.io/"
|
||||
"content" "Get Hugo"
|
||||
)}}
|
||||
{{ partial "shortcodes/button.html" (dict
|
||||
"context" .
|
||||
"href" "https://gohugo.io/"
|
||||
"style" "warning"
|
||||
"icon" "dragon"
|
||||
"content" "Get Hugo"
|
||||
)}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{< /tabs >}}
|
||||
|
||||
Once the button is clicked, it opens another browser tab for the given URL.
|
||||
|
||||
### Parameter
|
||||
|
||||
| Name | Default | Notes |
|
||||
|:----------------------|:----------------|:------------|
|
||||
| **href** | _<empty>_ | Either the destination URL for the button or JavaScript code to be executed on click. If this parameter is not set, the button will do nothing but is still displayed as clickable.<br><br>- if starting with `javascript:` all following text will be executed in your browser<br>- every other string will be interpreted as URL|
|
||||
| **style** | `transparent` | The style scheme used for the button.<br><br>- by severity: `info`, `note`, `tip`, `warning`<br>- by brand color: `primary`, `secondary`, `accent`<br>- by color: `blue`, `green`, `grey`, `orange`, `red`<br>- by special color: `default`, `transparent`, `code` |
|
||||
| **color** | see notes | The [CSS color value](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value) to be used. If not set, the chosen color depends on the **style**. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching color for the severity<br>- for all other styles: the corresponding color |
|
||||
| **icon** | see notes | [Font Awesome icon name]({{%relref "shortcodes/icon#finding-an-icon" %}}) set to the left of the title. Depending on the **style** there may be a default icon. Any given value will overwrite the default.<br><br>- for severity styles: a nice matching icon for the severity<br>- for all other styles: _<empty>_<br><br>If you want no icon for a severity style, you have to set this parameter to `" "` (a non empty string filled with spaces) |
|
||||
| **iconposition** | `left` | Places the icon to the `left` or `right` of the title. |
|
||||
| **target** | see notes | The destination frame/window if **href** is an URL. Otherwise the parameter is not used. This behaves similar to normal links. If the parameter is not given it defaults to:<br><br>- the setting of `externalLinkTarget` or `_blank` if not set, for any address starting with `http://` or `https://`<br>- no specific value for all other links |
|
||||
| **type** | see notes | The [button type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type) if **href** is JavaScript. Otherwise the parameter is not used. If the parameter is not given it defaults to `button` |
|
||||
| _**<content>**_ | see notes | Arbitrary text for the button title. Depending on the **style** there may be a default title. Any given value will overwrite the default.<br><br>- for severity styles: the matching title for the severity<br>- for all other styles: _<empty>_<br><br>If you want no title for a severity style, you have to set this parameter to `" "` (a non empty string filled with spaces) |
|
||||
|
||||
## Examples
|
||||
|
||||
### Style
|
||||
|
||||
#### By Severity
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" style="info" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="note" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="tip" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="warning" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" style="info" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="note" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="tip" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="warning" %}}Get Hugo{{% /button %}}
|
||||
|
||||
|
||||
#### By Brand Colors
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" style="primary" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="secondary" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="accent" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" style="primary" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="secondary" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="accent" %}}Get Hugo{{% /button %}}
|
||||
|
||||
#### By Color
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" style="blue" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="green" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="grey" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="orange" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="red" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" style="blue" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="green" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="grey" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="orange" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="red" %}}Get Hugo{{% /button %}}
|
||||
|
||||
#### By Special Color
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" style="default" %}}Get Hugo{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" style="transparent" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" style="default" %}}Get Hugo{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" style="transparent" %}}Get Hugo{{% /button %}}
|
||||
|
||||
### Icon
|
||||
|
||||
#### To the Left
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" icon="download" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" icon="download" %}}Get Hugo{{% /button %}}
|
||||
|
||||
#### To the Right
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" icon="download" iconposition="right" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" icon="download" iconposition="right" %}}Get Hugo{{% /button %}}
|
||||
|
||||
#### Override for Severity
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" icon="dragon" style="warning" %}}Get Hugo{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" icon="dragon" style="warning" %}}Get Hugo{{% /button %}}
|
||||
|
||||
### Target
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" target="_self" %}}Get Hugo in same window{{% /button */%}}
|
||||
{{%/* button href="https://gohugo.io/" %}}Get Hugo in new Window/Frame (default){{% /button */%}}
|
||||
````
|
||||
{{% button href="https://gohugo.io/" target="_self" %}}Get Hugo in same Window/Frame{{% /button %}}
|
||||
{{% button href="https://gohugo.io/" %}}Get Hugo in new Window/Frame (default){{% /button %}}
|
||||
|
||||
### Other
|
||||
|
||||
#### With User-Defined Color, Font Awesome Brand Icon and Markdown Title
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" color="fuchsia" icon="fab fa-hackerrank" %}}Get **Hugo**{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" color="fuchsia" icon="fab fa-hackerrank" %}}Get **Hugo**{{% /button %}}
|
||||
|
||||
#### Severity Style with All Defaults
|
||||
|
||||
````go
|
||||
{{%/* button href="https://gohugo.io/" style="tip" %}}{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="https://gohugo.io/" style="tip" %}}{{% /button %}}
|
||||
|
||||
#### Button to Internal Page
|
||||
|
||||
````go
|
||||
{{%/* button href="/index.html" %}}Home{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button href="/index.html" %}}Home{{% /button %}}
|
||||
|
||||
#### Button with JavaScript Action
|
||||
|
||||
If your JavaScript action does not change the focus afterwards, make sure to call `this.blur()` in the end to unselect the button.
|
||||
|
||||
````go
|
||||
{{%/* button style="primary" icon="bullhorn" href="javascript:alert('Hello world!');this.blur();" %}}Shout it out{{% /button */%}}
|
||||
````
|
||||
|
||||
{{% button style="primary" icon="bullhorn" href="javascript:alert('Hello world!');this.blur();" %}}Shout it out{{% /button %}}
|
||||
|
||||
#### Button within a `form` Element
|
||||
|
||||
To use native HTML elements in your Markdown, add this in your `config.toml`
|
||||
|
||||
````toml
|
||||
[markup.goldmark.renderer]
|
||||
unsafe = true
|
||||
````
|
||||
|
||||
````html
|
||||
<form action="../../search.html" method="get">
|
||||
<input name="search-by-detail" class="search-by" type="search">
|
||||
{{%/* button type="submit" style="secondary" icon="search" %}}Search{{% /button */%}}
|
||||
</form>
|
||||
````
|
||||
|
||||
<form action="../../search.html" method="get">
|
||||
<div class="searchform" style="width: 20vw;">
|
||||
<input name="search-by-detail" class="search-by" type="search" placeholder="Search...">
|
||||
{{% button type="submit" style="secondary" icon="search" %}}Search{{% /button %}}
|
||||
</div>
|
||||
</form>
|
5
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/button.pir.md
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
+++
|
||||
descrption = "Nice buttons on yer plank"
|
||||
title = "Button"
|
||||
+++
|
||||
{{< piratify >}}
|
86
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/children/_index.en.md
vendored
Normal file
@ -0,0 +1,86 @@
|
||||
+++
|
||||
alwaysopen = false
|
||||
description = "List the child pages of a page"
|
||||
title = "Children"
|
||||
+++
|
||||
|
||||
The `children` shortcode lists the child pages of the current page and its descendants.
|
||||
|
||||
{{% children sort="weight" %}}
|
||||
|
||||
## Usage
|
||||
|
||||
While the examples are using shortcodes with named parameter you are free to also call this shortcode from your own partials.
|
||||
|
||||
{{< tabs groupId="shortcode-parameter">}}
|
||||
{{% tab title="shortcode" %}}
|
||||
|
||||
````go
|
||||
{{%/* children sort="weight" */%}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{% tab title="partial" %}}
|
||||
|
||||
````go
|
||||
{{ partial "shortcodes/children.html" (dict
|
||||
"context" .
|
||||
"sort" "weight"
|
||||
)}}
|
||||
````
|
||||
|
||||
{{% /tab %}}
|
||||
{{< /tabs >}}
|
||||
|
||||
### Parameter
|
||||
|
||||
| Name | Default | Notes |
|
||||
|:-------------------|:------------------|:------------|
|
||||
| **containerstyle** | `ul` | Choose the style used to group all children. It could be any HTML tag name. |
|
||||
| **style** | `li` | Choose the style used to display each descendant. It could be any HTML tag name. |
|
||||
| **showhidden** | `false` | When `true`, child pages hidden from the menu will be displayed as well. |
|
||||
| **description** | `false` | When `true` shows a short text under each page in the list. When no description or summary exists for the page, the first 70 words of the content is taken - [read more info about summaries on gohugo.io](https://gohugo.io/content/summaries/). |
|
||||
| **depth** | `1` | The depth of descendants to display. For example, if the value is `2`, the shortcode will display two levels of child pages. To get all descendants, set this value to a high number eg. `999`. |
|
||||
| **sort** | see notes | The sort order of the displayed list.<br><br>If not set it is sorted by the [`ordersectionsby`]({{% relref "basics/configuration#global-site-parameters" %}}) setting of the site and the pages frontmatter<br><br>- `weight`: to sort on menu order<br>- `title`: to sort alphabetically on menu label. |
|
||||
|
||||
## Examples
|
||||
|
||||
### All Default
|
||||
|
||||
````go
|
||||
{{%/* children */%}}
|
||||
````
|
||||
|
||||
{{% children %}}
|
||||
|
||||
### With Description
|
||||
|
||||
````go
|
||||
{{%/* children description="true" */%}}
|
||||
````
|
||||
|
||||
{{%children description="true" %}}
|
||||
|
||||
### Infinite Depth and Hidden Pages
|
||||
|
||||
````go
|
||||
{{%/* children depth="999" showhidden="true" */%}}
|
||||
````
|
||||
|
||||
{{% children depth="999" showhidden="true" %}}
|
||||
|
||||
### Heading Styles for Container and Elements
|
||||
|
||||
````go
|
||||
{{%/* children containerstyle="div" style="h2" depth="3" description="true" */%}}
|
||||
````
|
||||
|
||||
{{% children containerstyle="div" style="h2" depth="3" description="true" %}}
|
||||
|
||||
### Divs for Group and Element Styles
|
||||
|
||||
````go
|
||||
{{%/* children containerstyle="div" style="div" depth="3" */%}}
|
||||
````
|
||||
|
||||
{{% children containerstyle="div" style="div" depth="3" %}}
|
6
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/children/_index.pir.md
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
+++
|
||||
alwaysopen = false
|
||||
descrption = "List th' child planks on a plank"
|
||||
title = "Children"
|
||||
+++
|
||||
{{< piratify >}}
|
13
docs/themes/hugo-theme-relearn/exampleSite/content/shortcodes/children/children-1/_index.en.md
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
+++
|
||||
alwaysopen = false
|
||||
description = "This is a demo child page"
|
||||
tags = ["children", "non-hidden"]
|
||||
title = "page 1"
|
||||
weight = 10
|
||||
+++
|
||||
|
||||
This is a demo child page.
|
||||
|
||||
## Subpages of this page
|
||||
|
||||
{{% children showhidden="true" %}}
|
@ -0,0 +1,8 @@
|
||||
+++
|
||||
alwaysopen = false
|
||||
descrption = "This be a demo child plank"
|
||||
tags = ["children", "non-hidden"]
|
||||
title = "plank 1"
|
||||
weight = 10
|
||||
+++
|
||||
{{< piratify >}}
|
@ -0,0 +1,12 @@
|
||||
+++
|
||||
alwaysopen = true
|
||||
description = "This is a demo child page"
|
||||
tags = ["children", "non-hidden"]
|
||||
title = "page 1-1"
|
||||
+++
|
||||
|
||||
This is a demo child page with a hidden child. You can still access the hidden child [directly]({{% relref "shortcodes/children/children-1/children-1-1/children-1-1-1" %}}) or via the search.
|
||||
|
||||
## Subpages of this page
|
||||
|
||||
{{% children showhidden="true" %}}
|
@ -0,0 +1,7 @@
|
||||
+++
|
||||
alwaysopen = true
|
||||
descrption = "This be a demo child plank"
|
||||
tags = ["children", "non-hidden"]
|
||||
title = "plank 1-1"
|
||||
+++
|
||||
{{< piratify >}}
|