diff options
| author | Miqdd <ahmadmiqdad27@te.student.pens.ac.id> | 2024-01-22 06:39:54 +0700 |
|---|---|---|
| committer | Miqdd <ahmadmiqdad27@te.student.pens.ac.id> | 2024-01-22 06:39:54 +0700 |
| commit | 04fdcac1dce2cc439dd8ad1b115507671040737e (patch) | |
| tree | fca0e8fa90c182863adf6a2baedadf8ebb46a5f4 /layouts | |
Publish
Diffstat (limited to 'layouts')
| -rw-r--r-- | layouts/404.html | 0 | ||||
| -rw-r--r-- | layouts/_default/baseof.html | 11 | ||||
| -rw-r--r-- | layouts/_default/list.html | 17 | ||||
| -rw-r--r-- | layouts/_default/single.html | 42 | ||||
| -rw-r--r-- | layouts/_default/term.html | 17 | ||||
| -rw-r--r-- | layouts/_default/terms.html | 20 | ||||
| -rw-r--r-- | layouts/index.html | 30 | ||||
| -rw-r--r-- | layouts/partials/disqus.html | 19 | ||||
| -rw-r--r-- | layouts/partials/footer.html | 21 | ||||
| -rw-r--r-- | layouts/partials/head.html | 14 | ||||
| -rw-r--r-- | layouts/partials/header.html | 104 | ||||
| -rw-r--r-- | layouts/partials/pagedescription.html | 7 | ||||
| -rw-r--r-- | layouts/partials/paginator.html | 15 | ||||
| -rw-r--r-- | layouts/shortcodes/callout.html | 6 |
14 files changed, 323 insertions, 0 deletions
diff --git a/layouts/404.html b/layouts/404.html new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/layouts/404.html diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..b941097 --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html> + {{- partial "header.html" . -}} + <body> + <div class="content"> + {{- partial "head.html" . -}} + {{- block "main" . }}{{- end }} + {{- partial "footer.html" . -}} + </div> + </body> +</html> diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..6e8b10c --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,17 @@ +{{ define "main" }} +{{ if isset .Data "Term" }} +<h1>Entries tagged - "{{ .Data.Term }}"</h1> +{{ else }} +<h1 class="page-title">All articles</h1> +{{ end }} + +<ul class="posts"> + {{- range .Data.Pages -}} + {{- if (not (in (.Site.Params.excludedTypes | default (slice "page")) .Type)) -}} + <li class="post"> + <a href="{{ .RelPermalink }}">{{.Title}}</a> <span class="meta">{{ dateFormat "2 jan, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</span> + </li> + {{- end -}} + {{- end -}} +</ul> +{{ end }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..0e96234 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,42 @@ +{{ define "main" }} +<main> + <article> + <div class="title"> + <h1 class="title">{{ .Title }}</h1> + <div class="meta">Posted on {{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</div> + </div> + {{ if isset .Params "tldr" }} + <div class="tldr"> + <strong>tl;dr:</strong> + {{ .Params.tldr }} + </div>{{ end }} + + <section class="body"> + {{ .Content }} + </section> + + <div class="post-tags"> + {{ if ne .Type "page" }} + {{ if gt .Params.tags 0 }} + <nav class="nav tags"> + <ul class="tags"> + {{ range .Params.tags }} + <li><a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}">{{ . }}</a></li> + {{ end }} + </ul> + </nav> + {{ end }} + {{ end }} + </div> + {{- $.Scratch.Set "isDisqus" true -}} + <!-- Check if disqus short name is given --> + {{ if not .Site.DisqusShortname }} + {{- $.Scratch.Set "isDisqus" false -}} + {{ end }} + + {{- if eq ($.Scratch.Get "isDisqus") true -}} + {{- partial "disqus.html" . -}} + {{- end -}} + </article> +</main> +{{ end }} diff --git a/layouts/_default/term.html b/layouts/_default/term.html new file mode 100644 index 0000000..41a4c6f --- /dev/null +++ b/layouts/_default/term.html @@ -0,0 +1,17 @@ +{{ define "main" }} +{{ if isset .Data "Term" }} +<h1>Entries tagged - "{{ .Data.Term }}"</h1> +{{ else }} +<h1 class="page-title">All articles</h1> +{{ end }} + +<ul class="posts"> + {{- range .Data.Pages -}} + {{- if (not (in (.Site.Params.excludedTypes | default (slice "page")) .Type)) -}} + <li class="post"> + <a href="{{ .RelPermalink }}">{{.Title}}</a> <span class="meta">{{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</span> + </li> + {{- end -}} + {{- end -}} +</ul> +{{ end }} diff --git a/layouts/_default/terms.html b/layouts/_default/terms.html new file mode 100644 index 0000000..fea9c2f --- /dev/null +++ b/layouts/_default/terms.html @@ -0,0 +1,20 @@ +{{ define "main" }} +<h1 class="page-title">All tags</h1> + +{{ $biggest := 1 }} +{{ $smallest := 1 }} +{{ $max := 3 }} +{{ $min := 1 }} +{{ $size := $min }} + +{{ $data := .Data }} +<div class="tag-cloud"> + <ul class="tags"> + {{ range $key, $value := .Data.Terms.ByCount }} + {{ $size := (add (mul (div $value.Count $biggest) (sub $max $min)) $min) }} + {{ $size := (cond (eq $biggest $smallest) $min $size) }} + <li><a style="font-size: {{ $size }}rem;" href="{{ $.Site.LanguagePrefix | absURL }}{{ $data.Plural }}/{{ $value.Name | urlize }}/">{{ $value.Name }}</a></li> + {{ end }} + </ul> +</div> +{{ end }} diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..bd4d1da --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,30 @@ +<!DOCTYPE html> +<html> + {{ partial "header.html" . }} + <body> + <div class="content"> + {{ partial "head.html" . }} + + <main class="list"> + <div class="site-description"> + {{- if isset .Site.Params "subtitle" -}} + <p>{{ .Site.Params.Subtitle | markdownify }}</p> + {{- end -}} + </div> + {{ $pages := where .Site.RegularPages "Type" "in" .Site.Params.mainSections }} + {{ $paginator := .Paginate (where $pages "Params.hidden" "ne" true) }} + {{ range $paginator.Pages }} + <section class="list-item"> + <h1 class="title"><a href="{{ .RelPermalink }}">{{.Title}}</a></h1> + <time>{{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</time> + <br>{{ template "partials/pagedescription.html" . }} + <a class="readmore" href="{{ .RelPermalink }}">Read more ⟶</a> + </section> + {{ end }} + {{ template "partials/paginator.html" . }} + </main> + {{ partial "footer.html" . }} + </div> + + </body> +</html> diff --git a/layouts/partials/disqus.html b/layouts/partials/disqus.html new file mode 100644 index 0000000..11bd488 --- /dev/null +++ b/layouts/partials/disqus.html @@ -0,0 +1,19 @@ +<div id="disqus_thread"></div> +<script type="text/javascript"> + (function () { + // Don't ever inject Disqus on localhost--it creates unwanted + // discussions from 'localhost:1313' on your Disqus account... + if (window.location.hostname == "localhost") + return; + + var dsq = document.createElement('script'); + dsq.type = 'text/javascript'; + dsq.async = true; + var disqus_shortname = '{{ .Site.DisqusShortname }}'; + dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; + (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); + })(); +</script> +<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by + Disqus.</a></noscript> +<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
\ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html new file mode 100644 index 0000000..b453bff --- /dev/null +++ b/layouts/partials/footer.html @@ -0,0 +1,21 @@ +<footer> + <div style="display:flex"> + {{- range $index, $key := .Site.Params.Social -}} + <a class="soc" href="{{ $key.url }}" rel="me" title="{{ $key.name }}"><i data-feather="{{ $key.icon }}"></i></a> + <a class="border"></a> + {{- end -}} + </div> + <div class="footer-info"> + {{ dateFormat "2006" now }} {{ with .Site.Copyright }} {{ . }} | {{ end }} <a + href="https://github.com/athul/archie">Archie Theme</a> | Built with <a href="https://gohugo.io">Hugo</a> + </div> +</footer> +{{ if not .Site.IsServer }} +{{ template "_internal/google_analytics_async.html" . }} +{{ end }} + +{{- if (isset .Site.Params "social") -}} +<script> + feather.replace() +</script> +{{- end -}} diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..30476c8 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,14 @@ +<header> + <div class="main"> + <a href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a> + </div> + <nav> + {{ range .Site.Menus.main }} + <a href="{{ .URL }}">{{ .Name }}</a> + {{ end }} + {{ if eq .Site.Params.mode "toggle" -}} + | <span id="dark-mode-toggle" onclick="toggleTheme()"></span> + <script src="{{ .Site.BaseURL }}js/themetoggle.js"></script> + {{ end }} + </nav> +</header> diff --git a/layouts/partials/header.html b/layouts/partials/header.html new file mode 100644 index 0000000..ad3ae4c --- /dev/null +++ b/layouts/partials/header.html @@ -0,0 +1,104 @@ +<head lang="{{ .Site.Language.Lang }}"> + <meta charset="utf-8" /> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + {{- $title := ( .Title ) -}} + {{- $siteTitle := ( .Site.Title ) -}} + {{- if .IsHome -}} + <title>{{ $siteTitle }} | Home </title> + {{- else -}} + <title>{{ $title }} - {{ $siteTitle }}</title> + {{- end -}} + + {{- if isset .Site.Params "favicon" -}} + <link rel="icon" type="image/png" href={{ .Site.Params.favicon }} /> + {{- end -}} + + <meta name="viewport" content="width=device-width, initial-scale=1"> + <meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }}" /> + <meta property="og:image" content="{{ .Site.Params.og_image }}"/> + {{ with .OutputFormats.Get "rss" -}} + {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }} + {{ end -}} + + {{- template "_internal/opengraph.html" . -}} + {{- template "_internal/twitter_cards.html" . -}} + {{ if and (isset .Site.Params "social") (.Site.Params.useCDN | default false) -}} + <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> + {{- else if or (isset .Site.Params "social") (eq .Site.Params.mode "toggle") -}} + <script src="{{ .Site.BaseURL }}js/feather.min.js"></script> + {{ end }} + {{ if .Site.Params.useCDN | default false -}} + <link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@1,500&display=swap" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css2?family=Fira+Sans&display=swap" rel="stylesheet"> + <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet"> + {{- else -}} + {{ $fontstyle := resources.Get "css/fonts.css" | fingerprint }} + <link href="{{ $fontstyle.Permalink }}" rel="stylesheet"> + {{ end }} + + {{ $style := resources.Get "css/main.css" | fingerprint }} + <link rel="stylesheet" type="text/css" media="screen" href="{{ $style.Permalink }}" /> + + {{- if or (eq .Site.Params.mode "auto") (eq .Site.Params.mode "dark") (eq .Site.Params.mode "toggle") -}} + {{ $darkstyle := resources.Get "css/dark.css" | fingerprint }} + <link id="darkModeStyle" rel="stylesheet" type="text/css" href="{{ $darkstyle.Permalink }}" {{ if eq .Site.Params.mode "auto" }}media="(prefers-color-scheme: dark)"{{ end }} {{ if eq .Site.Params.mode "toggle" }}disabled{{ end }} /> + {{ end }} + + <!-- Mathjax support --> + {{ with .Site.Params.mathjax }} + <script type="text/javascript" + src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> + </script> + + <!-- inline Mathjax --> + <script type="text/x-mathjax-config"> + MathJax.Hub.Config({ + tex2jax: { + inlineMath: [['$','$'], ['\\(','\\)']], + displayMath: [['$$','$$'], ['\[','\]']], + processEscapes: true, + processEnvironments: true, + skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'], + TeX: { equationNumbers: { autoNumber: "AMS" }, + extensions: ["AMSmath.js", "AMSsymbols.js"] } + } + }); + </script> + {{ end }} + + <!-- KaTeX support --> + {{ with .Site.Params.katex }} + <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.2/dist/katex.min.css"> + <script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.2/dist/katex.min.js"></script> + <script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.2/dist/contrib/auto-render.min.js" onload="renderMathInElement(document.body);"></script> + + <!-- inline KaTeX --> + <script> + document.addEventListener("DOMContentLoaded", function() { + renderMathInElement(document.body, { + delimiters: [ + {left: "$$", right: "$$", display: true}, + {left: "$", right: "$", display: false} + ] + }); + }); + </script> + {{ end }} + + <!-- Custom CSS style get applied last --> + {{- if isset .Site.Params "customcss" }} + {{ range .Site.Params.customCSS }} + {{ $customstyle := resources.Get . | fingerprint }} + <link rel="stylesheet" type="text/css" href="{{ $customstyle.Permalink }}"> + {{ end }} + {{- end -}} + {{- range .Site.Params.customJS }} + {{- if or (hasPrefix . "http://") (hasPrefix . "https://") }} + <script src="{{ . }}"></script> + {{- else if (hasPrefix . "<script")}} + {{ .| safeHTML }} + {{- else }} + <script src="{{ $.Site.BaseURL }}{{ . }}"></script> + {{- end }} + {{- end }} +</head> diff --git a/layouts/partials/pagedescription.html b/layouts/partials/pagedescription.html new file mode 100644 index 0000000..d69bb9a --- /dev/null +++ b/layouts/partials/pagedescription.html @@ -0,0 +1,7 @@ +<div class="description"> + {{ if isset .Params "description" }} + {{ .Description }} + {{ else }} + {{ .Summary }}… + {{ end }} +</div>
\ No newline at end of file diff --git a/layouts/partials/paginator.html b/layouts/partials/paginator.html new file mode 100644 index 0000000..5acc06d --- /dev/null +++ b/layouts/partials/paginator.html @@ -0,0 +1,15 @@ +{{ $pag := $.Paginator }} +{{ if gt $pag.TotalPages 1 }} +<ul class="pagination"> + <span class="page-item page-prev"> + {{ if $pag.HasPrev }} + <a {{ if $pag.HasPrev }}href="{{ $pag.Prev.URL }}"{{ end }} class="page-link" aria-label="Previous"><span aria-hidden="true">← Prev</span></a> + {{ end }} + </span> + <span class="page-item page-next"> + {{ if $pag.HasNext }} + <a {{ if $pag.HasNext }}href="{{ $pag.Next.URL }}"{{ end }} class="page-link" aria-label="Next"><span aria-hidden="true">Next →</span></a> + {{ end }} + </span> +</ul> +{{ end }} diff --git a/layouts/shortcodes/callout.html b/layouts/shortcodes/callout.html new file mode 100644 index 0000000..5557aad --- /dev/null +++ b/layouts/shortcodes/callout.html @@ -0,0 +1,6 @@ + +<div class="callout" style=""> + <div class="callout-inner"> + 💡 {{ .Get "text" }} + </div> +</div>
\ No newline at end of file |
