Initial commit.
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
2015-09-27 04:18:16 +02:00
commit 7411bfccbd
223 changed files with 14785 additions and 0 deletions

8
layouts/404.html Normal file
View File

@@ -0,0 +1,8 @@
{{ define "content" }}
<article>
<h1 class="title">
404 &mdash; Not Found
</h1>
<h1 class="title"><a href="{{ "/" | relURL }}">Go Home</a></h1>
</article>
{{ end }}

View File

@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="{{ $.Site.LanguageCode | default "en" }}">
{{ partial "html-head.html" . }}
<body class="has-navbar-fixed-top">
<div id="footer-fix-body-wrapper">
{{ block "header" . }}{{ partial "header.html" .}}{{ end }}
<main>
<div class="columns is-gapless is-centered is-mobile">
<div class="column is-12 is-11-widescreen is-10-fullhd" style="max-width:80em;">
<div class="content">
{{ block "content" . }}{{ end }}
</div>
</div>
</div>
</main>
</div>
{{ block "footer" . }}{{ partial "site-footer.html" . }}{{ end }}
</body>
</html>

View File

@@ -0,0 +1,12 @@
{{ define "content" }}
<div class="section">
{{ if isset .Params "title" }}
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">{{- title .Title -}}</h1>
{{ end }}
{{- .Content -}}
<div class="mt-6">
{{- partial "pagelist-default.html" . -}}
</div>
</div>
{{ end }}

View File

@@ -0,0 +1,9 @@
{{ define "content" }}
<div class="section">
{{ if isset .Params "title" }}
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">{{- title .Title -}}</h1>
<hr>
{{ end }}
{{- .Content -}}
</div>
{{ end }}

View File

@@ -0,0 +1,22 @@
{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
{{ range .Data.Pages }}{{ if ne .Params.sitemapExclude true }}
<url>
<loc>{{ .Permalink }}</loc>{{ if not .Lastmod.IsZero }}
<lastmod>{{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}</lastmod>{{ end }}{{ with .Sitemap.ChangeFreq }}
<changefreq>{{ . }}</changefreq>{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
<priority>{{ .Sitemap.Priority }}</priority>{{ end }}{{ if .IsTranslated }}{{ range .Translations }}
<xhtml:link
rel="alternate"
hreflang="{{ .Lang }}"
href="{{ .Permalink }}"
/>{{ end }}
<xhtml:link
rel="alternate"
hreflang="{{ .Lang }}"
href="{{ .Permalink }}"
/>{{ end }}
</url>
{{ end }}{{ end }}
</urlset>

45
layouts/blog/list.html Normal file
View File

@@ -0,0 +1,45 @@
{{ define "content" }}
<div class="section">
<div class="columns is-mobile is-centered">
<div class="column is-8-desktop" style="max-width:45em;">
{{ range (.Paginate (where .Site.RegularPages "Type" "blog") 5).Pages }}
<div class="box">
<div class="content">
<h3><a href="{{ .RelPermalink }}">{{ .Title }}</a></h3>
</div>
<div class="content">
{{ if isset .Params "summary" }}
{{ .Params.summary }}
{{ else }}
{{ .Summary }}
{{ end }}
</div>
<hr>
<div class="columns is-mobile">
<div class="column is-narrow">
<time>{{ .Date.Format "2006-01-02" }}</time>
</div>
<div class="column is-clearfix">
<div class="tags is-pulled-right">
{{ range .Params.tags }}
<span class="tag is-medium"><a href="{{ "/tags/" }}{{ . }}"> {{ . }} </a></span>
{{ end }}
</div>
</div>
</div>
</div>
{{ end }}
<hr>
{{ partial "pagination.html" . }}
<div class="content is-pulled-right">
<a href="/blog/list" class="is-size-7">See list of all posts</a>
</div>
</div>
</div>
</div>
{{ end }}

View File

@@ -0,0 +1,32 @@
{{ define "content" }}
<div class="section">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">{{- title .Title -}}</h1>
<div class="content mt-6">
<table class="table is-striped is-hoverable is-bordered">
<thead>
<tr>
{{ range slice "Title" "Date" }}
<th>{{ . }}</th>
{{ end }}
</tr>
</thead>
<tbody>
{{ range ((where .Site.RegularPages "Type" "blog") | complement (slice .)) }}
<tr>
<td>
<a href="{{ .Params.Permalink }}">
{{ .Title }}
</a>
</td>
<td>
<time datetime="{{- dateFormat "2006-01-02" .Date -}}">
{{- dateFormat "2006-01-02" .Date -}}
</time>
</td>
</tr>
{{ end }}
</tbody>
</table>
</div>
</div>
{{ end }}

47
layouts/blog/single.html Normal file
View File

@@ -0,0 +1,47 @@
{{ define "content" }}
<div class="columns is-gapless is-mobile is-centered">
<div class="column is-12 is-8-desktop is-offset-2-desktop" style="max-width:80ch;">
<article class="section">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">
{{ if (default true (.Params.titlecase)) }}
{{- title .Title -}}
{{ else }}
{{- .Title -}}
{{ end }}
</h1>
<div class="content has-text-centered is-size-6 mt-4">
<time datetime="{{- .Date.Format "2006-01-02" -}}">
{{- .Date.Format "2006-01-02" -}}
</time>
{{ if not (eq .Lastmod .Date) }}
<time datetime="{{- .Date.Format "2006-01-02" -}}">
(last update:&nbsp{{- .Lastmod.Format "2006-01-02" -}})
</time>
{{ end }}
</div>
<hr class="my-6">
<div class="content is-normal">
{{- .Content -}}
</div>
<div class="columns section">
<div class="column">
{{ if ne .Params.tags nil }}
<div class="content">
<h3>Tags</h3>
<div class="tags">
{{ range .Params.tags }}
<span class="tag has-background-grey-lighter is-medium"><a href="{{ ($.Site.GetPage (printf "/%s" .)).Permalink }}">{{ . }}</a></span>
{{ end }}
</div>
</div>
{{ end }}
</div>
<div class="column">
{{- partial "related.html" . -}}
</div>
</div>
</article>
</div>
</div>
{{ end }}

11
layouts/index.html Normal file
View File

@@ -0,0 +1,11 @@
{{ define "content" }}
<div class="columns is-gapless is-centered is-mobile">
<div class="column" style="max-width:60em;">
<div class="section content">
<article class="is-normal has-text-justified">
{{- .Content -}}
</article>
</div>
</div>
</div>
{{ end }}

View File

@@ -0,0 +1,69 @@
<script>
document.addEventListener('DOMContentLoaded', () => {
// Get all "navbar-burger" elements
const $navbarBurgers = Array.prototype.slice.call(document.querySelectorAll('.navbar-burger'), 0);
// Check if there are any navbar burgers
if ($navbarBurgers.length > 0) {
// Add a click event on each of them
$navbarBurgers.forEach( el => {
el.addEventListener('click', () => {
// Get the target from the "data-target" attribute
const target = el.dataset.target;
const $target = document.getElementById(target);
// Toggle the "is-active" class on both the "navbar-burger" and the "navbar-menu"
el.classList.toggle('is-active');
$target.classList.toggle('is-active');
});
});
}
});
</script>
<header>
<nav class="navbar is-fixed-top" aria-label="main navigation">
<div class="navbar-brand">
<a class="navbar-item has-text-weight-normal is-size-4 is-smallcaps" href="{{ .Site.BaseURL }}">
{{ .Site.Title|safeHTML }}
</a>
<a role="button" class="navbar-burger burger" aria-label="menu" aria-expanded="false" data-target="navMenu">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</a>
</div>
<div id="navMenu" class="navbar-menu">
<div class="navbar-end">
{{ range .Site.Menus.main }}
{{ if .HasChildren }}
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link is-smallcaps">
{{ .Name }}
</a>
<div class="navbar-dropdown is-right">
{{ $len := len .Children }}
{{ range $i, $child := .Children }}
<a href="{{ $child.URL }}" title="{{ $child.Name }}" class="navbar-item is-smallcaps">
{{ $child.Name }}
</a>
{{ if not (eq (add $len -1) $i) }}
<hr class="navbar-divider">
{{ end }}
{{ end }}
</div>
</div>
{{ else }}
<a href="{{ .URL }}" title="{{ .Name }}" class="mr-3 navbar-item is-smallcaps">
{{ .Name }}
</a>
{{ end }}
{{ end }}
</div>
</div>
</nav>
</header>

View File

@@ -0,0 +1,28 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.2/css/bulma.min.css">
<meta name="author" content="{{ $.Site.Params.author }}">
<meta name="description" content="{{ $.Site.Params.description }}">
{{ if .Page.Title }}
<title>{{ .Page.Title }} &ndash; {{ .Site.Title | safeHTML }}</title>
{{ else }}
<title>{{ .Site.Title | safeHTML }}</title>
{{ end }}
{{ hugo.Generator }}
{{ if .Site.Params.allow_robots }}
<meta name="robots" content="all">
{{ else }}
<meta name="robots" content="noindex, nofollow">
{{ end }}
<link rel="stylesheet" href="/css/main.css" >
<link rel="stylesheet" href="/css/syntax.css" >
<link rel="stylesheet" href="/fonts/fontawesome/css/all.css">
<link rel="shortcut icon" href="/favicon.svg" type="image/x-icon" />
</head>

View File

@@ -0,0 +1,103 @@
<div class="content">
<table class="table is-striped is-hoverable is-bordered">
{{ if isset .Params "infos" }}
{{ if gt (len .Params.infos) 1 }}
<thead>
<tr>
{{ range .Params.infos }}
<th>{{ title .name }}</th>
{{ end }}
</tr>
</thead>
{{ end }}
{{ end }}
<tbody>
{{ range $page := (.Paginator 15).Pages }}
<tr>
{{ range $info := $.Params.infos }}
{{ $key := "" }}
{{ if eq (index $info "key") nil }}
{{ $key = $info.name }}
{{ else }}
{{ $key = $info.key }}
{{ end }}
{{ $value := (index $page.Params $key) }}
{{ $type := "" }}
{{ if ne (index $info "type") nil }}
{{ $type = $info.type }}
{{ end }}
{{ $link := false }}
{{ $linktarget := "" }}
{{/* get default link */}}
{{ if ne (index $info "defaultlink") nil }}
{{ $link = $info.defaultlink }}
{{ end }}
{{/* look for overwrites */}}
{{ if ne (index $page.Params "links") nil }}
{{ if ne (index $page.Params.links $key) nil }}
{{ $link = default $link (index (index $page.Params.links $key) "enable") }}
{{ end }}
{{ end }}
{{/* get the link target */}}
{{ if ne (index $page.Params "links") nil }}
{{ if ne (index $page.Params.links $key) nil }}
{{ $linktarget = default "" (index (index $page.Params.links $key) "target") }}
{{ end }}
{{ end }}
{{/* fall back to default target if none given */}}
{{ if and ($link) (eq $linktarget "") }}
{{ $linktarget = $page.Permalink }}
{{ end }}
{{ $externallink := "" }}
{{ if ne (index $page.Params "externallink") nil }}
{{ $externallink = (index $page.Params "externallink") }}
{{ else if ne (index $info "externallink") nil }}
{{ $externallink = (index $info "externallink") }}
{{ end }}
{{ $datespan := false }}
{{ $dateto := "" }}
{{ if (eq $type "date") }}
{{ if ne (index $page.Params "dateto") nil }}
{{ $datespan = true }}
{{ $dateto = (index $page.Params "dateto") }}
{{ end }}
<td>
<time class="list-time" datetime="{{- dateFormat "2006-01-02" $value -}}">
{{- dateFormat "2006-01-02" $value -}}
</time>
{{- if $datespan -}}
<br>
<time class="dateto" datetime="{{ dateFormat "2006-01-02" $dateto -}}">
&ndash;
{{ dateFormat "2006-01-02" $dateto -}}
</time>
{{ end }}
</td>
{{ else }}
<td>
{{ if (eq $link true) }}
<a href="{{ $linktarget }}">
{{ $value }}
</a>
{{ else }}
{{ $value }}
{{ end }}
</td>
{{ end }}
{{ end }}
</tr>
{{ end }}
</tbody>
</table>
</div>
{{ partial "pagination.html" . }}

View File

@@ -0,0 +1,74 @@
{{- $pag := $.Paginator -}}
{{- if gt $pag.TotalPages 1 -}}
<nav class="pagination is-centered" aria-label="pagination">
<a
class="pagination-previous{{ if not $pag.HasPrev }} is-invisible {{- end }}"
{{ if $pag.HasPrev -}} href="{{ $pag.Prev.URL }}" {{- end }}
aria-label="Previous page">
<span class="is-hidden-touch">&larr;&nbsp;</span> Previous
</a>
<a
class="pagination-next{{ if not $pag.HasNext }} is-invisible {{- end }}"
{{ if $pag.HasNext -}} href="{{ $pag.Next.URL }}" {{- end }}
aria-label="Next page">
Next<span class="is-hidden-touch">&nbsp;&rarr;</span>
</a>
<ul class="pagination-list">
{{- with $pag.First -}}
<li>
<a
href="{{- .URL -}}"
class="pagination-link{{ if (eq $pag.PageNumber 1) }} is-current {{- end }}"
aria-label="First page">
1
</a>
</li>
{{- end -}}
{{- $ellipse_already_printed_high := false -}}
{{- $ellipse_already_printed_low := false -}}
{{/* all pages but the first and the last */}}
{{- range $pag.Pagers | first (sub (len $pag.Pagers) 1) | last (sub (len $pag.Pagers) 2) -}}
{{- if gt (sub .PageNumber $pag.PageNumber) 1 -}}
{{- if not (eq $ellipse_already_printed_high true) -}}
<li><span class="pagination-ellipsis">&hellip;</span></li>
{{- $ellipse_already_printed_high = true -}}
{{- end -}}
{{- else if gt (sub $pag.PageNumber .PageNumber) 1 -}}
{{- if not (eq $ellipse_already_printed_low true) -}}
<li><span class="pagination-ellipsis">&hellip;</span></li>
{{- $ellipse_already_printed_low = true -}}
{{- end -}}
{{- else -}}
{{- $is_current := eq .PageNumber $pag.PageNumber -}}
<li>
<a
href="{{- .URL -}}"
class="pagination-link{{ if $is_current }} is-current {{- end }}"
aria-label="Page number {{ .PageNumber }}"
{{ if $is_current }}aria-current="page"{{ end }}>
{{- .PageNumber -}}
</a>
</li>
{{- end -}}
{{- end -}}
{{- with $pag.Last -}}
<li>
<a
href="{{- .URL -}}"
class="pagination-link{{ if (eq $pag.PageNumber .PageNumber) }} is-current {{- end }}"
aria-label="Last page">
{{- .PageNumber -}}
</a>
</li>
{{- end -}}
</ul>
</nav>
{{- end -}}

View File

@@ -0,0 +1,18 @@
{{ $related := .Site.RegularPages.Related . | first 3 }}
{{ if gt (len $related) 0 }}
{{ with $related }}
<div class="content">
<h3>See also</h3>
<ul>
{{ range . }}
<li>
<a href="{{ .RelPermalink }}">
{{- .Title -}}
</a>
</li>
{{ end }}
</ul>
</div>
{{ end }}
{{ end }}

View File

@@ -0,0 +1,19 @@
<footer class="section has-background-white">
<div class="level">
<div class="level-left">
<div class="level-item">
{{ partial "social-follow.html" . }}
</div>
<a class="level-item px-5" href="https://www.credly.com/badges/870a6345-ed4e-416e-9c46-c9af9c6d2c77/public_url" title="AWS Certified Solutions Architect Associate">
<figure class="image is-48x48">
<img src="/assets/badges/aws-certified-solutions-architect-associate.png">
</figure>
</a>
</div>
<div class="level-right">
<div class="has-text-centered level-item">
<a class="has-text-black" href="https://code.hkoerber.de/hannes/blog"><span class="far fa-copyright"></span>&nbsp;{{ now.Format "2006" }}&nbsp;{{ .Site.Params.author }}</a>
</div>
</div>
</div>
</footer>

View File

@@ -0,0 +1,9 @@
<div class="buttons">
{{ range $social := .Site.Params.social }}
<a href="{{ $social.link }}" class="button" title="{{ $social.description | default (printf "Me on %s" $social.name|title) }}">
<span class="icon is-medium">
<i class="{{ $social.style }} {{ $social.icon }} fa-lg"></i>
</span>
</a>
{{ end }}
</div>

222
layouts/projects/list.html Normal file
View File

@@ -0,0 +1,222 @@
{{ define "content" }}
{{ $column_count := 2 }}
{{ $project_count := len .Params.projects }}
{{ $contribution_count := len .Params.contributions }}
<div class="section">
<div class="columns is-variable is-6">
<div class="column">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal mb-3">Projects</h1>
<hr>
<div class="tile is-ancestor mt-3">
<div class="tile is-vertical">
{{ range $i := (seq 0 $column_count $project_count) }}
<div class="tile is-block-touch">
{{ $projects_in_row := first $column_count (after $i $.Params.projects) }}
{{ range $projects_in_row }}
<div class="tile is-parent">
<div class="tile is-child card has-background-success-light" style="display: flex;flex-direction: column;">
<div class="card-header">
<div class="card-header-title is-centered">
{{ .name }}
</div>
</div>
{{ with .image }}
{{ $type := .type|default "picture" }}
{{ if (eq $type "picture") }}
<div class="card-image">
<figure class="image">
<img src="{{ .path }}" alt="{{ .alt }}">
</figure>
</div>
{{ else if (eq $type "picture-padded") }}
<div class="card-image">
<figure class="image py-4 px-4">
<img src="{{ .path }}" alt="{{ .alt }}">
</figure>
</div>
{{ end }}
{{ end }}
<div class="card-content" style="display: flex; flex-direction: column; flex-grow: 1;">
{{ with .icon }}
<div class="level">
<div class="level-item">
<figure class="image is-96x96">
<img src="{{ .path }}" alt="{{ .alt }}">
</figure>
</div>
</div>
{{ end }}
<div class="content">
{{ range .description }}
<p>
{{ .|markdownify}}
</p>
{{ end }}
</div>
<div class="block" style="margin-top: auto;">
<div class="field is-grouped is-grouped-multiline">
{{ range .tags }}
<div class="control">
<div class="tags has-addons">
{{ $color := "" }}
{{ if eq .type "language" }}
{{ $color = "info" }}
{{ else if eq .type "tech" }}
{{ $color = "success" }}
{{ else }}
{{ errorf "Unknown tag type \"%s\"" .type }}
{{ end }}
<span class="tag is-dark">{{ .type }}</span>
<span class="tag is-{{ $color }}">{{ .value|title }}</span>
</div>
</div>
{{ end }}
</div>
</div>
</div>
<footer class="card-footer" style="margin-top: auto;">
<p class="card-footer-item" style="margin-bottom: 0;">
<span>
<span class="icon">
<i class="fab fa-github"></i>
</span>
View on <a href="{{ .links.github }}">GitHub</a>
</span>
</p>
{{ if isset .links "projectpage" }}
<p class="card-footer-item">
<span>
<span class="icon">
<i class="fas fa-info-circle"></i>
</span>
See <a href="{{ .links.github }}">Project Page</a>
</span>
</p>
{{ end }}
</footer>
</div>
</div>
{{ end }}
{{/* Pad the last row with empty space */}}
{{ if (lt (len $projects_in_row) $column_count) }}
{{ range (seq 1 (sub $column_count (len $projects_in_row))) }}
<div class="tile is-parent">
<div class="tile is-child">
</div>
</div>
{{ end }}
{{ end }}
</div>
{{ end }}
</div>
</div>
</div>
<div class="column">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal mb-3">Contributions</h1>
<hr>
<div class="tile is-ancestor mt-3">
<div class="tile is-vertical">
{{ range $i := (seq 0 $column_count $contribution_count) }}
<div class="tile is-block-touch">
{{ $contributions_in_row := first $column_count (after $i $.Params.contributions) }}
{{ range $contributions_in_row }}
<div class="tile is-parent">
<div class="tile is-child has-background-info-light card" style="display: flex;flex-direction: column;">
<div class="card-header">
<div class="card-header-title is-centered">
{{ .name }}
</div>
</div>
{{ with .image }}
{{ $type := .type|default "picture" }}
{{ if (eq $type "picture") }}
<div class="card-image">
<figure class="image">
<img src="{{ .path }}" alt="{{ .alt }}">
</figure>
</div>
{{ end }}
{{ end }}
<div class="card-content" style="display: flex; flex-direction: column; flex-grow: 1;">
{{ with .icon }}
<div class="level">
<div class="level-item">
<figure class="image is-96x96">
<img src="{{ .path }}" alt="{{ .alt }}">
</figure>
</div>
</div>
{{ end }}
<div class="content">
{{ if eq (len .changes) 1 }}
<p>
{{ markdownify (index .changes 0) }}
</p>
{{ else }}
<ul>
{{ range .changes }}
<li>
{{ markdownify . }}
</li>
{{ end }}
</ul>
{{ end }}
</div>
<div class="block" style="margin-top: auto;">
<div class="field is-grouped is-grouped-multiline">
{{ range .tags }}
<div class="control">
<div class="tags has-addons">
{{ $color := "" }}
{{ if eq .type "language" }}
{{ $color = "info" }}
{{ else if eq .type "tech" }}
{{ $color = "success" }}
{{ else }}
{{ errorf "Unknown tag type \"%s\"" .type }}
{{ end }}
<span class="tag is-dark">{{ .type }}</span>
<span class="tag is-{{ $color }}">{{ .value|title }}</span>
</div>
</div>
{{ end }}
</div>
</div>
</div>
<footer class="card-footer" style="margin-top: auto;">
<p class="card-footer-item">
<span>
<span class="icon">
<i class="fab fa-github"></i>
</span>
View on <a href="{{ .links.github }}">GitHub</a>
</span>
</p>
</footer>
</div>
</div>
{{ end }}
{{/* Pad the last row with empty space */}}
{{ if (lt (len $contributions_in_row) $column_count) }}
{{ range (seq 1 (sub $column_count (len $contributions_in_row))) }}
<div class="tile is-parent">
<div class="tile is-child">
</div>
</div>
{{ end }}
{{ end }}
</div>
{{ end }}
</div>
</div>
</div>
</div>
</div>
{{ end }}

7
layouts/robots.txt Normal file
View File

@@ -0,0 +1,7 @@
User-agent: *
{{ if .Site.Params.allow_robots -}}
Disallow: /assets/
Disallow: /keybase.txt
{{ else -}}
Disallow: /
{{ end }}

View File

@@ -0,0 +1,3 @@
{{- $content := .Inner -}}
<figcaption class="is-size-7 has-text-left has-text-weight-light mt-1">{{ $content }}</figcaption>
{{- /* Do not remove comment, fix for extra whitespace after shortcode */ -}}

View File

@@ -0,0 +1,3 @@
{{- $content := .Inner -}}
<span class="is-smallcaps has-text-weight-medium has-text-danger">{{ $content }}</span>
{{- /* Do not remove comment, fix for extra whitespace after shortcode */ -}}

View File

@@ -0,0 +1,5 @@
{{- .Scratch.Set "path" (.Get 0) -}}
{{- if hasPrefix (.Scratch.Get "path") "/" -}}
{{- .Scratch.Set "path" (slicestr (.Scratch.Get "path") 1) -}}
{{- end -}}
{{- .Scratch.Get "path" | absLangURL -}}

View File

@@ -0,0 +1,20 @@
{{ define "content" }}
<div class="content section">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">All posts with the {{ title .Data.Singular }} "{{ .Title }}"</h1>
<table class="table is-striped is-hoverable is-bordered mt-6">
<tbody>
{{ range (index .Site.Taxonomies.tags .Data.Term) }}
<tr>
<td>
<a href="{{ .Page.RelPermalink }}">{{ .Page.Title }}</a>
</td>
</tr>
{{ end }}
</tbody>
</table>
</div>
<hr>
<div class="section">
<a href={{ printf "/%s" .Data.Plural }}>List of all {{ .Data.Plural }}</a>
</div>
{{ end }}

View File

@@ -0,0 +1,14 @@
{{ define "content" }}
<div class="content section">
<h1 class="subtitle is-3 has-text-centered has-text-weight-normal">List of all {{ title .Data.Plural }}</h1>
<div class="is-flex is-flex-direction-column is-flex-wrap-wrap">
<ul class="mt-6">
{{ range $name, $taxonomy := .Site.Taxonomies.tags }}
{{ with $.Site.GetPage (printf "/%s" $name) }}
<li><span class="tag has-background-grey-lighter is-medium"><a href="{{ .Permalink }}">{{ $name }}</a></span></li>
{{ end }}
{{ end }}
</ul>
</div>
</div>
{{ end }}