master #1
@ -1,6 +1,6 @@
|
|||||||
# Lugo - a fork of Luke's theme
|
# Oliver's Hugo Theme
|
||||||
|
|
||||||
A basic hugo theme based off of [Luke Smith's](https://lukesmith.xyz) hugo theme. Quite a lot has been changed so it is barely a fork at this point.
|
Fork of [lugo](https://github.com/LukeSmithxyz/lugo). Used for my personal website(s).
|
||||||
|
|
||||||
## Get started
|
## Get started
|
||||||
|
|
||||||
|
@ -2,6 +2,6 @@
|
|||||||
title: "{{ replace .Name "-" " " | title }}"
|
title: "{{ replace .Name "-" " " | title }}"
|
||||||
date: {{ .Date }}
|
date: {{ .Date }}
|
||||||
description: "Example"
|
description: "Example"
|
||||||
tags: ['']
|
tags: ['blog']
|
||||||
draft: true
|
draft: true
|
||||||
---
|
---
|
@ -1,11 +1,12 @@
|
|||||||
title = "Website Name"
|
title = "Website Name"
|
||||||
baseURL = 'https://example.org'
|
baseURL = 'https://example.org'
|
||||||
languageCode = 'en-us'
|
languageCode = 'en-us'
|
||||||
|
enableRobotsTXT = true
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
# "relatedtext" is the text that appears above the tag list at the bottom of pages.
|
# "relatedtext" is the text that appears above the tag list at the bottom of pages.
|
||||||
relatedtext = "Related"
|
relatedtext = "Tags:"
|
||||||
favicon = "/favicon.ico"
|
favicon = "favicon.ico"
|
||||||
|
|
||||||
#list items
|
#list items
|
||||||
datesinlist = true
|
datesinlist = true
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ .Site.Language }}">
|
<html lang="{{ .Site.Language }}">
|
||||||
{{ partial "head.html" . }}
|
{{ partial "head.html" . }}
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
{{ block "header" . }}
|
{{ block "header" . }}
|
||||||
{{ partial "header.html" . }}
|
{{ partial "header.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
<main>
|
<main>
|
||||||
|
<section>
|
||||||
<div class="article-header">
|
<div class="article-header">
|
||||||
<h3 class="spaced">
|
<h3 class="spaced">
|
||||||
{{ .Page.Title }}
|
{{ .Page.Title }}
|
||||||
@ -17,10 +17,10 @@
|
|||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</article>
|
</article>
|
||||||
|
</section>
|
||||||
{{ block "footer" . }}
|
{{ block "footer" . }}
|
||||||
{{ partial "footer.html" . }}
|
{{ partial "footer.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</main>
|
</main>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
@ -3,6 +3,7 @@
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
|
{{ if not .IsHome }}
|
||||||
<ul>
|
<ul>
|
||||||
{{- range.Pages }}
|
{{- range.Pages }}
|
||||||
<li>
|
<li>
|
||||||
@ -18,3 +19,4 @@
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
</ul>
|
</ul>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{ end }}
|
||||||
|
@ -1,8 +1,5 @@
|
|||||||
<hr>
|
<hr>
|
||||||
<footer>
|
<footer>
|
||||||
<p>
|
<a href="{{ .Site.BaseURL }}">{{ .Site.BaseURL }}</a>
|
||||||
Poem + Hugo = Pogo
|
{{- if .Param "showrss" }}<br><br><a href="/index.xml"><img src="/rss.svg" style="max-height:1.5em" alt="RSS Feed" title="Subscribe via RSS for updates." class="rss"></a>{{ end }}
|
||||||
<br><br>
|
|
||||||
Pogo by Oliver A
|
|
||||||
</p>
|
|
||||||
</footer>
|
</footer>
|
@ -3,6 +3,7 @@
|
|||||||
<link rel="canonical" href="{{ .Site.BaseURL }}">
|
<link rel="canonical" href="{{ .Site.BaseURL }}">
|
||||||
<link rel='alternate' type='application/rss+xml' title="{{ .Site.Title }} RSS" href='{{ .Site.BaseURL }}/index.xml'>
|
<link rel='alternate' type='application/rss+xml' title="{{ .Site.Title }} RSS" href='{{ .Site.BaseURL }}/index.xml'>
|
||||||
<link rel='stylesheet' type='text/css' media='screen' href='{{ .Site.BaseURL }}/style.css'>
|
<link rel='stylesheet' type='text/css' media='screen' href='{{ .Site.BaseURL }}/style.css'>
|
||||||
|
<link rel='stylesheet' type='text/css' href='{{ .Site.BaseURL }}/lugo.css'>
|
||||||
{{ with .Site.Params.favicon }}
|
{{ with .Site.Params.favicon }}
|
||||||
<link rel="icon" href="{{ . }}">
|
<link rel="icon" href="{{ . }}">
|
||||||
{{ end -}}
|
{{ end -}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<header>
|
<header>
|
||||||
<h2>
|
<h1>
|
||||||
<a href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a>
|
<a href="{{ .Site.BaseURL }}">{{ .Site.Title }}</a>
|
||||||
</h2>
|
</h1>
|
||||||
</header>
|
</header>
|
13
layouts/partials/taglist.html
Normal file
13
layouts/partials/taglist.html
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{{- if isset .Params "tags" -}}
|
||||||
|
{{- $tagsLen := len .Params.tags -}}
|
||||||
|
{{- if gt $tagsLen 0 -}}
|
||||||
|
<div style="clear:both" class=taglist>
|
||||||
|
{{- with .Site.Params.relatedtext }} <a href="/tags">{{ . }}</a> <br>{{ end -}}
|
||||||
|
{{- range $k, $v := .Params.tags -}}
|
||||||
|
{{- $url := printf "tags/%s" (. | urlize | lower) -}}
|
||||||
|
<a id="tag_{{ . | lower }}" href="{{ $url | absURL }}">{{ . | title }}</a>
|
||||||
|
{{- if lt $k (sub $tagsLen 1) }} · {{ end -}}
|
||||||
|
{{- end -}}
|
||||||
|
</div>
|
||||||
|
{{- end -}}
|
||||||
|
{{- end }}
|
@ -8,8 +8,9 @@
|
|||||||
<figure {{ with .Get "class" }}class="{{.}}"{{ end -}}>
|
<figure {{ with .Get "class" }}class="{{.}}"{{ end -}}>
|
||||||
{{- with .Get "link"}}<a href="{{.}}">{{ end -}}
|
{{- with .Get "link"}}<a href="{{.}}">{{ end -}}
|
||||||
<img src='{{ .Get "src" }}'
|
<img src='{{ .Get "src" }}'
|
||||||
{{- with .Get "mouse" }} title="{{.}}"{{ end -}}
|
{{- with .Get "mouse" }} title="{{.}}"{{ end -}}
|
||||||
{{- with .Get "alt" }} alt="{{.}}"{{ end -}}
|
{{- with .Get "alt" }} alt="{{.}}"{{ end -}}
|
||||||
|
loading="lazy"
|
||||||
>
|
>
|
||||||
{{- if .Get "link"}}</a>{{ end -}}
|
{{- if .Get "link"}}</a>{{ end -}}
|
||||||
{{- with .Get "caption" -}}
|
{{- with .Get "caption" -}}
|
||||||
|
67
static/lugo.css
Normal file
67
static/lugo.css
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
/* Shortcode css*/
|
||||||
|
/* For NEXTPREV.HTML */
|
||||||
|
#nextprev {
|
||||||
|
/* The container for both the previous and next articles. */
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#nextprev a:any-link {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#nextart {
|
||||||
|
float: left ;
|
||||||
|
text-align: left ;
|
||||||
|
}
|
||||||
|
|
||||||
|
#prevart {
|
||||||
|
float: right ;
|
||||||
|
text-align: right ;
|
||||||
|
}
|
||||||
|
|
||||||
|
#nextart,#prevart {
|
||||||
|
max-width: 33% ;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* For TAGLIST.HTML */
|
||||||
|
.taglist {
|
||||||
|
text-align: center;
|
||||||
|
clear: both;
|
||||||
|
color: var(--bg-text);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* For putting right / left boxes next to each other */
|
||||||
|
.left {
|
||||||
|
width: 45%;
|
||||||
|
padding-right: 5%;
|
||||||
|
float: left;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
.right {
|
||||||
|
width: 45%;
|
||||||
|
padding-left: 5%;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
align-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
figcaption {
|
||||||
|
color: var(--bg-text);
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: 50vh;
|
||||||
|
border-radius: var(--radius);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rss {
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
}
|
@ -1,71 +0,0 @@
|
|||||||
.roller-container {display: grid; text-align: center;}
|
|
||||||
.roller0,.roller1,.roller2,.roller3,.roller4,.roller5{
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-timing-function: cubic-bezier(1, 0, 0, 1);
|
|
||||||
animation-duration: 6s;
|
|
||||||
animation-direction: normal;
|
|
||||||
transform-origin: center;
|
|
||||||
/* works with "display: grid" to have all the words in the same place on the screen. */
|
|
||||||
grid-row: 1;
|
|
||||||
grid-column: 1;
|
|
||||||
}
|
|
||||||
.roller0 { animation-name: roll0; color: rgb(0, 182, 182)}
|
|
||||||
.roller1 { animation-name: roll1; color: rgb(173, 3, 154)}
|
|
||||||
.roller2 { animation-name: roll2; color: rgb(6, 179, 0)}
|
|
||||||
.roller3 { animation-name: roll3; color: rgb(211, 189, 0)}
|
|
||||||
.roller4 { animation-name: roll4; color: rgb(171, 0, 0)}
|
|
||||||
.roller5 { animation-name: roll5; color: rgb(255, 247, 0)}
|
|
||||||
@keyframes roll0 {
|
|
||||||
100% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
0% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
17% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
34% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
51% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
68% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
85% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
}
|
|
||||||
@keyframes roll1 {
|
|
||||||
100% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
0% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
17% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
34% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
51% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
68% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
85% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
}
|
|
||||||
@keyframes roll2 {
|
|
||||||
100% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
0% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
17% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
34% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
51% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
68% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
85% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
}
|
|
||||||
@keyframes roll3 {
|
|
||||||
100% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
0% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
17% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
34% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
51% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
68% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
85% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
}
|
|
||||||
@keyframes roll4 {
|
|
||||||
100% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
0% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
17% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
34% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
51% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
68% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
85% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
}
|
|
||||||
@keyframes roll5 {
|
|
||||||
100% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
0% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
17% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
34% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
51% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
68% { opacity: 0; transform: translateY(2rem) rotateX(15deg); }
|
|
||||||
85% { opacity: 1; transform: translateY(0) rotateX(0); }
|
|
||||||
}
|
|
@ -1,5 +1,46 @@
|
|||||||
|
:root {
|
||||||
|
--bg: #222222;
|
||||||
|
--bg-text: #606060;
|
||||||
|
--text: #ffffff;
|
||||||
|
--header: #454545;
|
||||||
|
--header-text: #707070;
|
||||||
|
--content-bg: #303030;
|
||||||
|
--accent: #344a70;
|
||||||
|
--link: #3e765d;
|
||||||
|
--radius: 0.75rem;
|
||||||
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
background-color: var(--header);
|
||||||
|
/* border-radius: var(--radius); */
|
||||||
|
padding-left: 1rem;
|
||||||
|
padding-right: 1rem;
|
||||||
|
padding-top: 0.25rem;
|
||||||
|
padding-bottom: 0.25rem;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* blockquote~blockquote {
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
border-top-right-radius: 0;
|
||||||
|
}
|
||||||
|
blockquote+blockquote {
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
} */
|
||||||
|
|
||||||
|
pre {
|
||||||
|
background-color: var(--bg);
|
||||||
|
padding: 1rem;
|
||||||
|
border-radius: var(--radius);
|
||||||
|
}
|
||||||
|
|
||||||
.copy:hover {
|
.copy:hover {
|
||||||
color: #344a70;
|
color: var(--accent);
|
||||||
|
cursor: copy;
|
||||||
}
|
}
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
::-webkit-scrollbar {
|
||||||
@ -7,29 +48,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
background-color: #222222;
|
background-color: var(--bg);
|
||||||
color: #ffffff;
|
color: var(--text);
|
||||||
font-family: Arial, Helvetica, sans-serif;
|
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-size: x-large;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
header {
|
header {
|
||||||
background-color: #344a70;
|
background-color: var(--accent);
|
||||||
margin-top: 0;
|
|
||||||
margin-left: 0;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 0.75rem;
|
padding: 0.5rem;
|
||||||
font-size: xx-large;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.article-header {
|
.article-header {
|
||||||
background-color: #454545;
|
background-color: var(--header);
|
||||||
color: #707070;
|
color: var(--header-text);
|
||||||
|
}
|
||||||
|
|
||||||
|
section {
|
||||||
|
border-radius: var(--radius);
|
||||||
margin: 2rem;
|
margin: 2rem;
|
||||||
margin-bottom: 0;
|
overflow: hidden;
|
||||||
border-top-right-radius: 0.5rem;
|
|
||||||
border-top-left-radius: 0.5rem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.spaced {
|
.spaced {
|
||||||
@ -38,49 +76,44 @@ header {
|
|||||||
}
|
}
|
||||||
|
|
||||||
article {
|
article {
|
||||||
background-color: #303030;
|
background-color: var(--content-bg);
|
||||||
padding: 1.5rem;
|
padding: 1.5rem;
|
||||||
margin-left: 2rem;
|
|
||||||
margin-right: 2rem;
|
|
||||||
text-align: left;
|
text-align: left;
|
||||||
border-bottom-left-radius: 0.5rem;
|
|
||||||
border-bottom-right-radius: 0.5em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
hr {
|
hr {
|
||||||
margin: 2rem;
|
margin: 2rem;
|
||||||
height: 1px;
|
height: 1px;
|
||||||
border: 0;
|
border: 0;
|
||||||
border-top: 1px solid #454545;
|
border-top: 1px solid var(--header);
|
||||||
height: 1px;
|
height: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
footer {
|
||||||
color: #606060;
|
color: var(--bg-text);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
p {
|
|
||||||
margin-left: 1rem;
|
|
||||||
margin-right: 1rem;
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1,h2,h3,h4,h5,h6 {
|
h1,h2,h3,h4,h5,h6 {
|
||||||
margin: 0;
|
margin: 1rem;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
header h1 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 2.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
article h1 {
|
article h1 {
|
||||||
margin-bottom: 1rem;
|
margin-bottom: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
color: #3e765d;
|
color: var(--link);
|
||||||
}
|
}
|
||||||
|
|
||||||
a:hover {
|
a:hover {
|
||||||
color: #344a70;
|
color: var(--accent);
|
||||||
text-decoration-line: none;
|
text-decoration-line: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -100,7 +133,7 @@ main {
|
|||||||
margin: auto;
|
margin: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 900px) {
|
@media screen and (max-width: 1500px) {
|
||||||
main {
|
main {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
margin: auto;
|
margin: auto;
|
||||||
|
Loading…
Reference in New Issue
Block a user