Initial commit with doom-one inspired theme
This commit is contained in:
commit
77fdac90ad
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) [year] [fullname]
|
||||||
|
|
||||||
|
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.
|
|
@ -0,0 +1,7 @@
|
||||||
|
# Theme Name
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
## Configuration
|
|
@ -0,0 +1,5 @@
|
||||||
|
+++
|
||||||
|
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||||
|
date = {{ .Date }}
|
||||||
|
draft = true
|
||||||
|
+++
|
|
@ -0,0 +1,33 @@
|
||||||
|
|
||||||
|
body {
|
||||||
|
color: #222;
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: 1.5;
|
||||||
|
margin: 1rem;
|
||||||
|
max-width: 768px;
|
||||||
|
background-color: #282c34;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
color: #4faeef;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2, h2 a {
|
||||||
|
color: #98be64;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
border-bottom: 1px solid #222;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
border-top: 1px solid #222;
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #00e;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
|
@ -0,0 +1,69 @@
|
||||||
|
/** Use doom-one theme: */
|
||||||
|
body {
|
||||||
|
color: #222;
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: 1.5;
|
||||||
|
margin: 1rem;
|
||||||
|
max-width: 768px;
|
||||||
|
background-color: #282c34;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
color: #4faeef;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2,
|
||||||
|
h2 a {
|
||||||
|
color: #98be64;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
border-bottom: 1px solid #222;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
border-top: 1px solid #222;
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #50afef;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
height: auto;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* menu */
|
||||||
|
nav li {
|
||||||
|
list-style: none;
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav li:nth-of-type(1) {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* tags */
|
||||||
|
ul.tags li {
|
||||||
|
list-style: none;
|
||||||
|
margin: 0.25em;
|
||||||
|
}
|
||||||
|
ul.tags li::before {
|
||||||
|
content: "#";
|
||||||
|
color: #98be64;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.tags {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
console.log('This site was generated by Hugo.');
|
|
@ -0,0 +1,23 @@
|
||||||
|
baseURL = 'https://example.org/'
|
||||||
|
languageCode = 'en-us'
|
||||||
|
title = 'My New Hugo Site'
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Home'
|
||||||
|
pageRef = '/'
|
||||||
|
weight = 10
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Posts'
|
||||||
|
pageRef = '/posts'
|
||||||
|
weight = 20
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Tags'
|
||||||
|
pageRef = '/tags'
|
||||||
|
weight = 30
|
||||||
|
|
||||||
|
[module]
|
||||||
|
[module.hugoVersion]
|
||||||
|
extended = false
|
||||||
|
min = "0.116.0"
|
|
@ -0,0 +1,17 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ or site.Language.LanguageCode site.Language.Lang }}" dir="{{ or site.Language.LanguageDirection `ltr` }}">
|
||||||
|
<head>
|
||||||
|
{{ partial "head.html" . }}
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
{{ partial "header.html" . }}
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
{{ block "main" . }}{{ end }}
|
||||||
|
</main>
|
||||||
|
<footer>
|
||||||
|
{{ partial "footer.html" . }}
|
||||||
|
</footer>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,7 @@
|
||||||
|
{{ define "main" }}
|
||||||
|
{{ .Content }}
|
||||||
|
{{ range site.RegularPages }}
|
||||||
|
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
|
||||||
|
{{ .Summary }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
|
@ -0,0 +1,8 @@
|
||||||
|
{{ define "main" }}
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
{{ .Content }}
|
||||||
|
{{ range .Pages }}
|
||||||
|
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
|
||||||
|
{{ .Summary }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
|
@ -0,0 +1,9 @@
|
||||||
|
{{ define "main" }}
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
|
||||||
|
{{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }} {{
|
||||||
|
$dateHuman := .Date | time.Format ":date_long" }}
|
||||||
|
<time datetime="{{ $dateMachine }}">{{ $dateHuman }}</time>
|
||||||
|
|
||||||
|
{{ .Content }} {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} {{
|
||||||
|
end }}
|
|
@ -0,0 +1,10 @@
|
||||||
|
<p>
|
||||||
|
<a href="{{ .Site.Params.Repo }}">Copyleft</a> 2020 - {{ now.Year }}.
|
||||||
|
</p>
|
||||||
|
<p xmlns:cc=" http://creativecommons.org/ns#">This work is licensed under <a
|
||||||
|
href="http://creativecommons.org/licenses/by/4.0/?ref=chooser-v1" target="_blank"
|
||||||
|
rel="license noopener noreferrer" style="display:inline-block;">CC BY 4.0<img
|
||||||
|
style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||||||
|
src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img
|
||||||
|
style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
|
||||||
|
src="https://mirrors.creativecommons.org/presskit/icons/by.svg"></a></p>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width" />
|
||||||
|
<title>
|
||||||
|
{{ if .IsHome }}{{ site.Title |plainify }}{{ else }}{{ printf "%s | %s" .Title
|
||||||
|
site.Title | plainify }}{{ end }}
|
||||||
|
</title>
|
||||||
|
{{ partialCached "head/css.html" . }} {{ partialCached "head/js.html" . }}
|
||||||
|
|
||||||
|
<!-- math -->
|
||||||
|
{{ if .Param "math" }} {{ partialCached "math.html" . }} {{ end }}
|
||||||
|
|
||||||
|
<!-- pseudocode.js -->
|
||||||
|
{{ if .Param "pseudocode" }} {{ partialCached "pseudocode.html" . }} {{ end }}
|
|
@ -0,0 +1,9 @@
|
||||||
|
{{- with resources.Get "css/main.css" }}
|
||||||
|
{{- if eq hugo.Environment "development" }}
|
||||||
|
<link rel="stylesheet" href="{{ .RelPermalink }}">
|
||||||
|
{{- else }}
|
||||||
|
{{- with . | minify | fingerprint }}
|
||||||
|
<link rel="stylesheet" href="{{ .RelPermalink }}" integrity="{{ .Data.Integrity }}" crossorigin="anonymous">
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,12 @@
|
||||||
|
{{- with resources.Get "js/main.js" }}
|
||||||
|
{{- if eq hugo.Environment "development" }}
|
||||||
|
{{- with . | js.Build }}
|
||||||
|
<script src="{{ .RelPermalink }}"></script>
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $opts := dict "minify" true }}
|
||||||
|
{{- with . | js.Build $opts | fingerprint }}
|
||||||
|
<script src="{{ .RelPermalink }}" integrity="{{- .Data.Integrity }}" crossorigin="anonymous"></script>
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,2 @@
|
||||||
|
<h1>{{ site.Title | safeHTML }}</h1>
|
||||||
|
{{ partial "menu.html" (dict "menuID" "main" "page" .) }}
|
|
@ -0,0 +1,21 @@
|
||||||
|
<script>
|
||||||
|
MathJax = {
|
||||||
|
tex: {
|
||||||
|
inlineMath: [
|
||||||
|
["$", "$"],
|
||||||
|
["\\(", "\\)"],
|
||||||
|
],
|
||||||
|
displayMath: [
|
||||||
|
["$$", "$$"],
|
||||||
|
["\\[", "\\]"],
|
||||||
|
],
|
||||||
|
processEscapes: true,
|
||||||
|
processEnvironments: true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<script
|
||||||
|
src="https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-chtml-full.js"
|
||||||
|
integrity="sha256-kbAFUDxdHwlYv01zraGjvjNZayxKtdoiJ38bDTFJtaQ="
|
||||||
|
crossorigin="anonymous"
|
||||||
|
></script>
|
|
@ -0,0 +1,51 @@
|
||||||
|
{{- /*
|
||||||
|
Renders a menu for the given menu ID.
|
||||||
|
|
||||||
|
@context {page} page The current page.
|
||||||
|
@context {string} menuID The menu ID.
|
||||||
|
|
||||||
|
@example: {{ partial "menu.html" (dict "menuID" "main" "page" .) }}
|
||||||
|
*/}}
|
||||||
|
|
||||||
|
{{- $page := .page }}
|
||||||
|
{{- $menuID := .menuID }}
|
||||||
|
|
||||||
|
{{- with index site.Menus $menuID }}
|
||||||
|
<nav>
|
||||||
|
<ul>
|
||||||
|
{{- partial "inline/menu/walk.html" (dict "page" $page "menuEntries" .) }}
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "partials/inline/menu/walk.html" }}
|
||||||
|
{{- $page := .page }}
|
||||||
|
{{- range .menuEntries }}
|
||||||
|
{{- $attrs := dict "href" .URL }}
|
||||||
|
{{- if $page.IsMenuCurrent .Menu . }}
|
||||||
|
{{- $attrs = merge $attrs (dict "class" "active" "aria-current" "page") }}
|
||||||
|
{{- else if $page.HasMenuCurrent .Menu .}}
|
||||||
|
{{- $attrs = merge $attrs (dict "class" "ancestor" "aria-current" "true") }}
|
||||||
|
{{- end }}
|
||||||
|
{{- $name := .Name }}
|
||||||
|
{{- with .Identifier }}
|
||||||
|
{{- with T . }}
|
||||||
|
{{- $name = . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
<li>
|
||||||
|
<a
|
||||||
|
{{- range $k, $v := $attrs }}
|
||||||
|
{{- with $v }}
|
||||||
|
{{- printf " %s=%q" $k $v | safeHTMLAttr }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
>{{ $name }}</a>
|
||||||
|
{{- with .Children }}
|
||||||
|
<ul>
|
||||||
|
{{- partial "inline/menu/walk.html" (dict "page" $page "menuEntries" .) }}
|
||||||
|
</ul>
|
||||||
|
{{- end }}
|
||||||
|
</li>
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,6 @@
|
||||||
|
<script>
|
||||||
|
let pseudocodeElements = document.getElementsByClassName("pseudocode");
|
||||||
|
for (let element of pseudocodeElements) {
|
||||||
|
pseudocode.renderElement(element);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,14 @@
|
||||||
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="https://cdn.jsdelivr.net/npm/pseudocode@latest/build/pseudocode.min.css"
|
||||||
|
/>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/pseudocode@latest/build/pseudocode.min.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
window.addEventListener("DOMContentLoaded", function () {
|
||||||
|
let pseudocodeElements = document.getElementsByClassName("pseudocode");
|
||||||
|
for (let element of pseudocodeElements) {
|
||||||
|
pseudocode.renderElement(element);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
|
@ -0,0 +1,16 @@
|
||||||
|
{{- /* For a given taxonomy, renders a list of terms assigned to the page.
|
||||||
|
@context {page} page The current page. @context {string} taxonomy The taxonony.
|
||||||
|
@example: {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} */}} {{-
|
||||||
|
$page := .page }} {{- $taxonomy := .taxonomy }} {{- with $page.GetTerms
|
||||||
|
$taxonomy }} {{- $label := (index . 0).Parent.LinkTitle }}
|
||||||
|
<div>
|
||||||
|
<!--
|
||||||
|
<div>{{ $label }}:</div>
|
||||||
|
-->
|
||||||
|
<ul class="tags">
|
||||||
|
{{- range . }}
|
||||||
|
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
|
||||||
|
{{- end }}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
{{- end }}
|
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
|
@ -0,0 +1,26 @@
|
||||||
|
name = 'mus'
|
||||||
|
license = 'AGPL-v3-or-later'
|
||||||
|
licenselink = 'https://github.com/owner/repo/LICENSE'
|
||||||
|
description = 'Samulus custome hugo theme'
|
||||||
|
|
||||||
|
# The home page of the theme, where the source can be found
|
||||||
|
homepage = 'https://forge.s1gm4.eu/sortion/hugo-mus-theme'
|
||||||
|
|
||||||
|
# If you have a running demo of the theme
|
||||||
|
# demosite = 'https://owner.github.io/repo'
|
||||||
|
|
||||||
|
# Taxonomy terms
|
||||||
|
tags = ['blog', 'company']
|
||||||
|
features = ['some', 'awesome', 'features']
|
||||||
|
|
||||||
|
|
||||||
|
# If the theme has a single author
|
||||||
|
[author]
|
||||||
|
name = 'Samuel Ortion'
|
||||||
|
homepage = 'samuel.ortion.fr'
|
||||||
|
|
||||||
|
# If porting an existing theme
|
||||||
|
[original]
|
||||||
|
author = 'Name of original author'
|
||||||
|
homepage = 'Website of original author'
|
||||||
|
repo = 'https://github.com/owner/repo'
|
Loading…
Reference in New Issue