Add theme
This commit is contained in:
parent
b1f055efee
commit
c1b4e35924
@ -32,4 +32,6 @@ SOCIAL = (('You can add links in your config file', '#'),
|
||||
DEFAULT_PAGINATION = False
|
||||
|
||||
# Uncomment following line if you want document-relative URLs when developing
|
||||
#RELATIVE_URLS = True
|
||||
#RELATIVE_URLS = True
|
||||
|
||||
THEME = 'themes/homebrewtheme'
|
||||
|
374
themes/homebrewtheme/static/css/main.css
Normal file
374
themes/homebrewtheme/static/css/main.css
Normal file
@ -0,0 +1,374 @@
|
||||
/*
|
||||
2k18 Homebrewserver.club Pelican theme
|
||||
---
|
||||
Style sheet is ordered vertically, with declarations for the header on top and footer on the bottom.
|
||||
|
||||
With contributions by club members:
|
||||
http://roelof.info
|
||||
http://randomiser.info/
|
||||
http://majesticmoo.se
|
||||
*/
|
||||
html {
|
||||
font-size: 20px;
|
||||
}
|
||||
@font-face {
|
||||
font-family:'OrkneyRegular';
|
||||
src: url('../fonts/Orkney Regular.woff') format('truetype');
|
||||
}
|
||||
|
||||
header {
|
||||
width:100%;
|
||||
}
|
||||
|
||||
#banner {
|
||||
text-align: center;
|
||||
font-size: 5rem;
|
||||
padding-bottom: 0.5em;
|
||||
padding-top: 1em;
|
||||
background: #EAEAEA;
|
||||
}
|
||||
|
||||
#sitename {
|
||||
color:#0074D9;
|
||||
text-decoration:none;
|
||||
}
|
||||
pre {
|
||||
font-family: monospace;
|
||||
}
|
||||
#menu {
|
||||
font-size:2.5rem;
|
||||
margin-top:1.2em;
|
||||
font-weight:bold;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
body {
|
||||
line-height:1.6em;
|
||||
color:#0074D9;
|
||||
background-color:#f6f6f6;
|
||||
font-family:'OrkneyRegular';
|
||||
letter-spacing: 0.05em;
|
||||
margin:0;
|
||||
/*! padding: 1em; */
|
||||
}
|
||||
|
||||
#index{
|
||||
max-width:80%;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
a {
|
||||
color:#FF4136;
|
||||
}
|
||||
|
||||
|
||||
#index{
|
||||
/*! width:100%; */
|
||||
padding-top:2em;
|
||||
padding-bottom:1em;
|
||||
|
||||
}
|
||||
|
||||
#post-list {
|
||||
padding-left:0px;
|
||||
margin-top:0px;
|
||||
}
|
||||
|
||||
|
||||
h1{
|
||||
font-size:2.5rem;
|
||||
margin: 0;
|
||||
padding: 0.5em;
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
h2{
|
||||
font-size:2rem;
|
||||
padding: 1em;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
h3{
|
||||
font-size:1.5rem;
|
||||
text-decoration: underline;
|
||||
padding: 1em;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.summary p{
|
||||
font-size:0.8rem;
|
||||
text-align: left;
|
||||
margin:0;
|
||||
}
|
||||
.hentry{
|
||||
border-width: 1px;
|
||||
border-color: #EAEAEA;
|
||||
border-style: hidden hidden dashed hidden;
|
||||
padding-top:2em;
|
||||
padding-bottom:2em;
|
||||
}
|
||||
|
||||
.entry-title{
|
||||
font-size:3rem;
|
||||
font-weight:bold;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
.entry-title span{
|
||||
width:100%;
|
||||
display:inline-block;
|
||||
}
|
||||
|
||||
.toc{
|
||||
font-size: 0.8em;
|
||||
padding: 3em;
|
||||
float: right;
|
||||
line-height: 1.5em;
|
||||
border: 1px solid;
|
||||
margin: 1em;
|
||||
}
|
||||
|
||||
.toc .toctitle {
|
||||
font-size:1rem;
|
||||
}
|
||||
|
||||
.toc ul{
|
||||
/*list-style: none;*/
|
||||
margin-top:0px;
|
||||
}
|
||||
.entry-content{
|
||||
/*! margin:auto; */
|
||||
padding-bottom:1em;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.entry-content pre{
|
||||
font-size: 18px;
|
||||
padding: 0.5em;
|
||||
overflow: auto;
|
||||
background-color: #EAEAEA;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
.codehilite {
|
||||
max-width: 800px;
|
||||
margin:1em auto;
|
||||
}
|
||||
|
||||
code {
|
||||
/*! font-size: 18px; */
|
||||
padding: 0.5em;
|
||||
background-color: #EAEAEA;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
.entry-content img{
|
||||
max-height:100%;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.entry-content ul{
|
||||
line-height:1.5;
|
||||
margin: auto;
|
||||
max-width:800px;
|
||||
}
|
||||
|
||||
.entry-content pre{
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.highlight{
|
||||
margin: auto;
|
||||
max-width:800px;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#content p{
|
||||
line-height:1.6;
|
||||
max-width:800px;
|
||||
margin: 0 auto;
|
||||
margin-bottom:1em;
|
||||
}
|
||||
|
||||
#content .caption{
|
||||
font-size:80%;
|
||||
padding-top:0;
|
||||
margin-top:0px;
|
||||
|
||||
}
|
||||
#content p.img{
|
||||
margin-bottom:0px;
|
||||
}
|
||||
|
||||
.divider {
|
||||
font-size:12px;
|
||||
width:100%;
|
||||
line-height:1em;
|
||||
background-color:white;
|
||||
}
|
||||
|
||||
.published{
|
||||
font-size:smaller;
|
||||
}
|
||||
|
||||
|
||||
#categories {
|
||||
font-size: 40px;
|
||||
margin-top: 2em;
|
||||
text-align: center;
|
||||
}
|
||||
#pertaining{
|
||||
margin-top:2em;
|
||||
text-align:center;
|
||||
|
||||
}
|
||||
|
||||
.footnote{
|
||||
font-size:14px;
|
||||
margin:auto;
|
||||
max-width:800px;
|
||||
}
|
||||
|
||||
.author{
|
||||
font-size:smaller;
|
||||
}
|
||||
|
||||
.post-info {
|
||||
line-height: 1em;
|
||||
margin-top:1em;
|
||||
}
|
||||
|
||||
table{
|
||||
margin: 1em auto;
|
||||
max-width: 800px;
|
||||
font-size:0.9em;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
text-align: left;
|
||||
border: 1px solid #0074D9;
|
||||
}
|
||||
|
||||
table td, table th {
|
||||
border: 1px dashed #EAEAEA;
|
||||
padding-left:1em;
|
||||
padding-top:0.2em;
|
||||
}
|
||||
|
||||
table thead tr {
|
||||
border-bottom: 1px solid #0074D9;
|
||||
background: #EAEAEA;
|
||||
}
|
||||
|
||||
table tr:nth-child(even) {
|
||||
background: #EAEAEA;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* some good ol' theft from https://codepo8.github.io/css-fork-on-github-ribbon/ */
|
||||
#forkongithub a {
|
||||
background:#FF4136;
|
||||
color:#fff;
|
||||
text-decoration:none;
|
||||
/*! font-family:arial,sans-serif; */
|
||||
text-align:right;
|
||||
font-weight:bold;
|
||||
padding:5px 40px;
|
||||
font-size:1rem;
|
||||
line-height:2rem;
|
||||
position:relative;
|
||||
transition:0.5s;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
#forkongithub a:hover{
|
||||
background:#0074D9;
|
||||
color:#fff;}
|
||||
|
||||
#forkongithub a::before,#forkongithub a::after{
|
||||
content:"";
|
||||
width:100%;
|
||||
display:block;
|
||||
position:absolute;
|
||||
top:1px;
|
||||
left:0;
|
||||
height:1px;
|
||||
background:#fff;
|
||||
}
|
||||
#forkongithub a::after{
|
||||
bottom:1px;
|
||||
top:auto;
|
||||
}
|
||||
|
||||
@media screen and (min-width:800px){
|
||||
#forkongithub{
|
||||
position:fixed;
|
||||
display:block;
|
||||
top:0;
|
||||
right:0;
|
||||
width:200px;
|
||||
overflow:hidden;
|
||||
height:200px;
|
||||
z-index:9999;
|
||||
}
|
||||
#forkongithub a{
|
||||
width:210px;
|
||||
position:absolute;
|
||||
top:30px;
|
||||
right:-60px;
|
||||
transform:rotate(45deg);
|
||||
-webkit-transform:rotate(45deg);
|
||||
-ms-transform:rotate(45deg);
|
||||
-moz-transform:rotate(45deg);
|
||||
-o-transform:rotate(45deg);
|
||||
box-shadow:4px 4px 10px rgba(0,0,0,0.8);
|
||||
}
|
||||
}
|
||||
@media screen and (max-width:620px) {
|
||||
html {font-size:16px;}
|
||||
#banner{
|
||||
font-size: 1rem;
|
||||
line-height: 1rem;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
#menu{font-size:1rem}
|
||||
#index{
|
||||
max-width:100%;
|
||||
}
|
||||
#content{
|
||||
padding:1em;
|
||||
}
|
||||
ul {
|
||||
padding:0em;
|
||||
}
|
||||
article {
|
||||
padding:1em;
|
||||
}
|
||||
blockquote{margin:1em;}
|
||||
code{
|
||||
font-size:90%;
|
||||
padding:0.3em;
|
||||
}
|
||||
h1 {
|
||||
font-size:2rem;
|
||||
line-height:1em;
|
||||
}
|
||||
.entry-content pre {
|
||||
font-size: 90%;
|
||||
padding: 0.3em;
|
||||
}
|
||||
.footnote {
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
.footnote ol{
|
||||
padding-left:1.5em;
|
||||
}
|
||||
|
437
themes/homebrewtheme/static/css/pygment.css
Normal file
437
themes/homebrewtheme/static/css/pygment.css
Normal file
@ -0,0 +1,437 @@
|
||||
|
||||
pre .hll {
|
||||
background-color: #ffffcc;
|
||||
}
|
||||
pre .c {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .err {
|
||||
border: 1px solid #ff0000;
|
||||
}
|
||||
pre .k {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .o {
|
||||
color: #666666;
|
||||
}
|
||||
pre .ch {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .cm {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .cp {
|
||||
color: #007020;
|
||||
}
|
||||
pre .cpf {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .c1 {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .cs {
|
||||
background-color: #fff0f0;
|
||||
color: #60a0b0;
|
||||
}
|
||||
pre .gd {
|
||||
color: #a00000;
|
||||
}
|
||||
pre .ge {
|
||||
font-style: italic;
|
||||
}
|
||||
pre .gr {
|
||||
color: #ff0000;
|
||||
}
|
||||
pre .gh {
|
||||
color: #000080;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .gi {
|
||||
color: #00a000;
|
||||
}
|
||||
pre .go {
|
||||
color: #888888;
|
||||
}
|
||||
pre .gp {
|
||||
color: #c65d09;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .gs {
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .gu {
|
||||
color: #800080;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .gt {
|
||||
color: #0044dd;
|
||||
}
|
||||
pre .kc {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .kd {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .kn {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .kp {
|
||||
color: #007020;
|
||||
}
|
||||
pre .kr {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .kt {
|
||||
color: #902000;
|
||||
}
|
||||
pre .m {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .s {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .na {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .nb {
|
||||
color: #007020;
|
||||
}
|
||||
pre .nc {
|
||||
color: #0e84b5;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .no {
|
||||
color: #60add5;
|
||||
}
|
||||
pre .nd {
|
||||
color: #555555;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .ni {
|
||||
color: #d55537;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .ne {
|
||||
color: #007020;
|
||||
}
|
||||
pre .nf {
|
||||
color: #06287e;
|
||||
}
|
||||
pre .nl {
|
||||
color: #002070;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .nn {
|
||||
color: #0e84b5;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .nt {
|
||||
color: #062873;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .nv {
|
||||
color: #bb60d5;
|
||||
}
|
||||
pre .ow {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .w {
|
||||
color: #bbbbbb;
|
||||
}
|
||||
pre .mb {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .mf {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .mh {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .mi {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .mo {
|
||||
color: #40a070;
|
||||
}
|
||||
pre .sb {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .sc {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .sd {
|
||||
color: #4070a0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .s2 {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .se {
|
||||
color: #4070a0;
|
||||
font-weight: bold;
|
||||
}
|
||||
pre .sh {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .si {
|
||||
color: #70a0d0;
|
||||
font-style: italic;
|
||||
}
|
||||
pre .sx {
|
||||
color: #c65d09;
|
||||
}
|
||||
pre .sr {
|
||||
color: #235388;
|
||||
}
|
||||
pre .s1 {
|
||||
color: #4070a0;
|
||||
}
|
||||
pre .ss {
|
||||
color: #517918;
|
||||
}
|
||||
pre .bp {
|
||||
color: #007020;
|
||||
}
|
||||
pre .vc {
|
||||
color: #bb60d5;
|
||||
}
|
||||
pre .vg {
|
||||
color: #bb60d5;
|
||||
}
|
||||
pre .vi {
|
||||
color: #bb60d5;
|
||||
}
|
||||
pre .il {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .hll {
|
||||
background-color: #ffffcc;
|
||||
}
|
||||
.syntax pre {
|
||||
background: #f0f0f0 none repeat scroll 0 0;
|
||||
}
|
||||
.syntax pre .c {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .err {
|
||||
border: 1px solid #ff0000;
|
||||
}
|
||||
.syntax pre .k {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .o {
|
||||
color: #666666;
|
||||
}
|
||||
.syntax pre .ch {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .cm {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .cp {
|
||||
color: #007020;
|
||||
}
|
||||
.syntax pre .cpf {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .c1 {
|
||||
color: #60a0b0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .cs {
|
||||
background-color: #fff0f0;
|
||||
color: #60a0b0;
|
||||
}
|
||||
.syntax pre .gd {
|
||||
color: #a00000;
|
||||
}
|
||||
.syntax pre .ge {
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .gr {
|
||||
color: #ff0000;
|
||||
}
|
||||
.syntax pre .gh {
|
||||
color: #000080;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .gi {
|
||||
color: #00a000;
|
||||
}
|
||||
.syntax pre .go {
|
||||
color: #888888;
|
||||
}
|
||||
.syntax pre .gp {
|
||||
color: #c65d09;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .gs {
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .gu {
|
||||
color: #800080;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .gt {
|
||||
color: #0044dd;
|
||||
}
|
||||
.syntax pre .kc {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .kd {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .kn {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .kp {
|
||||
color: #007020;
|
||||
}
|
||||
.syntax pre .kr {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .kt {
|
||||
color: #902000;
|
||||
}
|
||||
.syntax pre .m {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .s {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .na {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .nb {
|
||||
color: #007020;
|
||||
}
|
||||
.syntax pre .nc {
|
||||
color: #0e84b5;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .no {
|
||||
color: #60add5;
|
||||
}
|
||||
.syntax pre .nd {
|
||||
color: #555555;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .ni {
|
||||
color: #d55537;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .ne {
|
||||
color: #007020;
|
||||
}
|
||||
.syntax pre .nf {
|
||||
color: #06287e;
|
||||
}
|
||||
.syntax pre .nl {
|
||||
color: #002070;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .nn {
|
||||
color: #0e84b5;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .nt {
|
||||
color: #062873;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .nv {
|
||||
color: #bb60d5;
|
||||
}
|
||||
.syntax pre .ow {
|
||||
color: #007020;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .w {
|
||||
color: #bbbbbb;
|
||||
}
|
||||
.syntax pre .mb {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .mf {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .mh {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .mi {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .mo {
|
||||
color: #40a070;
|
||||
}
|
||||
.syntax pre .sb {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .sc {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .sd {
|
||||
color: #4070a0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .s2 {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .se {
|
||||
color: #4070a0;
|
||||
font-weight: bold;
|
||||
}
|
||||
.syntax pre .sh {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .si {
|
||||
color: #70a0d0;
|
||||
font-style: italic;
|
||||
}
|
||||
.syntax pre .sx {
|
||||
color: #c65d09;
|
||||
}
|
||||
.syntax pre .sr {
|
||||
color: #235388;
|
||||
}
|
||||
.syntax pre .s1 {
|
||||
color: #4070a0;
|
||||
}
|
||||
.syntax pre .ss {
|
||||
color: #517918;
|
||||
}
|
||||
.syntax pre .bp {
|
||||
color: #007020;
|
||||
}
|
||||
.syntax pre .vc {
|
||||
color: #bb60d5;
|
||||
}
|
||||
.syntax pre .vg {
|
||||
color: #bb60d5;
|
||||
}
|
||||
.syntax pre .vi {
|
||||
color: #bb60d5;
|
||||
}
|
||||
.syntax pre .il {
|
||||
color: #40a070;
|
||||
}
|
||||
|
BIN
themes/homebrewtheme/static/fonts/Orkney Regular.woff
Executable file
BIN
themes/homebrewtheme/static/fonts/Orkney Regular.woff
Executable file
Binary file not shown.
11
themes/homebrewtheme/templates/archives.html
Normal file
11
themes/homebrewtheme/templates/archives.html
Normal file
@ -0,0 +1,11 @@
|
||||
{% extends "base.html" %}
|
||||
{% block content %}
|
||||
<h1>Archives for {{ SITENAME }}</h1>
|
||||
|
||||
<dl>
|
||||
{% for article in dates %}
|
||||
<dt>{{ article.locale_date }}</dt>
|
||||
<dd><a href="{{ SITEURL }}/{{ article.url }}">{{ article.title }}</a></dd>
|
||||
{% endfor %}
|
||||
</dl>
|
||||
{% endblock %}
|
50
themes/homebrewtheme/templates/article.html
Normal file
50
themes/homebrewtheme/templates/article.html
Normal file
@ -0,0 +1,50 @@
|
||||
{% extends "base.html" %}
|
||||
{% block head %}
|
||||
{{ super() }}
|
||||
{% if article.description %}
|
||||
<meta name="description" content="{{article.description}}" />
|
||||
{% endif %}
|
||||
|
||||
{% if article.tags or article.category or article.keywords %}
|
||||
<meta name="keywords" content="{{ [article.tags|join(', '), article.category, article.keywords]|join(', ') }}" />
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<section id="content" class="body">
|
||||
<header>
|
||||
<div class="entry-title">
|
||||
<a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark"
|
||||
title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></div>
|
||||
{% import 'translations.html' as translations with context %}
|
||||
{{ translations.translations_for(article) }}
|
||||
</header>
|
||||
<div class="post-info">
|
||||
<!-- <div class='summary'>{{ article.summary }}</div> -->
|
||||
<time class="published" datetime="{{ article.date.isoformat() }}">
|
||||
{{ article.locale_date }}
|
||||
</time>
|
||||
{% if article.modified %}
|
||||
<time class="modified" datetime="{{ article.modified.isoformat() }}">
|
||||
{{ article.locale_modified }}
|
||||
</time>
|
||||
{% endif %}
|
||||
{% if article.authors %}
|
||||
<address class="vcard author">
|
||||
By {% for author in article.authors %}
|
||||
<a class="url fn" href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a>
|
||||
{% endfor %}
|
||||
</address>
|
||||
|
||||
{% endif %}
|
||||
</div><!-- /.post-info -->
|
||||
{% if article.toc %}
|
||||
{{ article.toc }}
|
||||
{% endif %}
|
||||
<div class="entry-content">
|
||||
{{ article.content }}
|
||||
</div><!-- /.entry-content -->
|
||||
</section>
|
||||
{% endblock %}
|
7
themes/homebrewtheme/templates/author.html
Normal file
7
themes/homebrewtheme/templates/author.html
Normal file
@ -0,0 +1,7 @@
|
||||
{% extends "index.html" %}
|
||||
|
||||
{% block title %}{{ SITENAME }} - Articles by {{ author }}{% endblock %}
|
||||
{% block content_title %}
|
||||
<h2>Articles by {{ author }}</h2>
|
||||
{% endblock %}
|
||||
|
13
themes/homebrewtheme/templates/authors.html
Normal file
13
themes/homebrewtheme/templates/authors.html
Normal file
@ -0,0 +1,13 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}{{ SITENAME }} - Authors{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>Authors on {{ SITENAME }}</h1>
|
||||
|
||||
<ul>
|
||||
{%- for author, articles in authors|sort %}
|
||||
<li><a href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a> ({{ articles|count }})</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endblock %}
|
5
themes/homebrewtheme/templates/banner.html
Normal file
5
themes/homebrewtheme/templates/banner.html
Normal file
@ -0,0 +1,5 @@
|
||||
<pre>
|
||||
┃ ┃┏━┃┏┏ ┏━┛┏━ ┏━┃┏━┛┃┃┃┏━┛┏━┛┏━┃┃ ┃┏━┛┏━┃ ┏━┛┃ ┃ ┃┏━
|
||||
┏━┃┃ ┃┃┃┃┏━┛┏━┃┏┏┛┏━┛┃┃┃━━┃┏━┛┏┏┛┃ ┃┏━┛┏┏┛ ┃ ┃ ┃ ┃┏━┃
|
||||
┛ ┛━━┛┛┛┛━━┛━━ ┛ ┛━━┛━━┛━━┛━━┛┛ ┛ ┛ ━━┛┛ ┛┛━━┛━━┛━━┛━━ ━ ━
|
||||
</pre>
|
72
themes/homebrewtheme/templates/base.html
Normal file
72
themes/homebrewtheme/templates/base.html
Normal file
@ -0,0 +1,72 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ DEFAULT_LANG }}">
|
||||
<head>
|
||||
{% block head %}
|
||||
<title>{% block title %}{{ SITENAME }}{% endblock title %}</title>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="{{ SITEURL}}/favicon.ico" type="image/x-icon">
|
||||
<link rel="shortcut icon" href="{{ SITEURL }}/favicon.ico" type="image/x-icon">
|
||||
|
||||
{% if FEED_ALL_ATOM %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Full Atom Feed" />
|
||||
{% endif %}
|
||||
{% if FEED_ALL_RSS %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Full RSS Feed" />
|
||||
{% endif %}
|
||||
{% if FEED_ATOM %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ FEED_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Atom Feed" />
|
||||
{% endif %}
|
||||
{% if FEED_RSS %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ FEED_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} RSS Feed" />
|
||||
{% endif %}
|
||||
{% if CATEGORY_FEED_ATOM and category %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ CATEGORY_FEED_ATOM|format(slug=category.slug) }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Categories Atom Feed" />
|
||||
{% endif %}
|
||||
{% if CATEGORY_FEED_RSS and category %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ CATEGORY_FEED_RSS|format(slug=category.slug) }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Categories RSS Feed" />
|
||||
{% endif %}
|
||||
{% if TAG_FEED_ATOM and tag %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ TAG_FEED_ATOM|format(slug=tag.slug) }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Tags Atom Feed" />
|
||||
{% endif %}
|
||||
{% if TAG_FEED_RSS and tag %}
|
||||
<link href="{{ FEED_DOMAIN }}/{{ TAG_FEED_RSS|format(slug=tag.slug) }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Tags RSS Feed" />
|
||||
{% endif %}
|
||||
|
||||
{% from 'syndication.html' import syndication with context %}
|
||||
{{ syndication(article) }}
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/pygment.css" />
|
||||
<link rel="stylesheet" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/{{ CSS_FILE }}" />
|
||||
{% endblock head %}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<header id="banner">
|
||||
<a href="{{ SITEURL }}" id="sitename">{{ SITENAME }}</a>
|
||||
<span id="subtitle">{{ SITESUBTITLE }}</span>
|
||||
<!-- /#banner -->
|
||||
|
||||
<nav id="menu">
|
||||
{% for title, link in MENUITEMS %}
|
||||
<a class="menu-item" href="{{ link }}">{{ title }}</a>
|
||||
{% endfor %}
|
||||
{% if DISPLAY_PAGES_ON_MENU %}
|
||||
{% for p in pages %}
|
||||
<span {% if p == page %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a></span>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
{% if DISPLAY_CATEGORIES_ON_MENU %}
|
||||
{% for cat, null in categories %}
|
||||
<li{% if cat == category %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ cat.url }}">{{ cat }}</a></li>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</ul></nav>
|
||||
</header><!-- /#menu -->
|
||||
<span id="forkongithub"><a href="xmpp:hbsc@muc.lurk.org?join">Yes We're Config!™</a></span>
|
||||
<div id='index' class='home'>
|
||||
{% block content %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
8
themes/homebrewtheme/templates/categories.html
Normal file
8
themes/homebrewtheme/templates/categories.html
Normal file
@ -0,0 +1,8 @@
|
||||
{% extends "base.html" %}
|
||||
{% block content %}
|
||||
<div id="categories">
|
||||
{% for category, articles in categories %}
|
||||
<a href="{{ SITEURL }}/{{ category.url }}">{{ category }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endblock %}
|
5
themes/homebrewtheme/templates/category.html
Normal file
5
themes/homebrewtheme/templates/category.html
Normal file
@ -0,0 +1,5 @@
|
||||
{% extends "index.html" %}
|
||||
{% block content_title %}
|
||||
<div id="pertaining">Everything pertaining to {{ category }}</div>
|
||||
{% endblock %}
|
||||
|
26
themes/homebrewtheme/templates/index.html
Normal file
26
themes/homebrewtheme/templates/index.html
Normal file
@ -0,0 +1,26 @@
|
||||
{% extends "base.html" %}
|
||||
{% block content %}
|
||||
<section id="content">
|
||||
{% block content_title %}
|
||||
{% endblock %}
|
||||
|
||||
<ol id="post-list">
|
||||
{% for article in articles_page.object_list %}
|
||||
<ul><article class="hentry">
|
||||
<header>
|
||||
<div class="entry-title"><a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></div>
|
||||
</header>
|
||||
<div class="post-info">
|
||||
<time class="published" datetime="{{ article.date.isoformat() }}"> <sup>{{ article.locale_date }}</sup> </time>
|
||||
</div><!-- /.post-info -->
|
||||
<div class="entry-content"> {{ article.summary }}</div>
|
||||
<!-- /.entry-content -->
|
||||
<div id="moaaar"><a href="{{SITEURL}}/{{ article.url }}">moaaar</a></div>
|
||||
</article></ul>
|
||||
{% endfor %}
|
||||
</ol><!-- /#posts-list -->
|
||||
{% if articles_page.has_other_pages() %}
|
||||
{% include 'pagination.html' %}
|
||||
{% endif %}
|
||||
</section><!-- /#content -->
|
||||
{% endblock content %}
|
16
themes/homebrewtheme/templates/page.html
Normal file
16
themes/homebrewtheme/templates/page.html
Normal file
@ -0,0 +1,16 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}{{ page.title }}{%endblock%}
|
||||
{% block content %}
|
||||
{% import 'translations.html' as translations with context %}
|
||||
{{ translations.translations_for(page) }}
|
||||
|
||||
<div id ="page-content">
|
||||
{{ page.content }}
|
||||
|
||||
{% if page.modified %}
|
||||
<p>
|
||||
Last updated: {{ page.locale_modified }}
|
||||
</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endblock %}
|
11
themes/homebrewtheme/templates/pagination.html
Normal file
11
themes/homebrewtheme/templates/pagination.html
Normal file
@ -0,0 +1,11 @@
|
||||
{% if DEFAULT_PAGINATION %}
|
||||
<p class="paginator">
|
||||
{% if articles_page.has_previous() %}
|
||||
<a href="{{ SITEURL }}/{{ articles_previous_page.url }}">«</a>
|
||||
{% endif %}
|
||||
Page {{ articles_page.number }} / {{ articles_paginator.num_pages }}
|
||||
{% if articles_page.has_next() %}
|
||||
<a href="{{ SITEURL }}/{{ articles_next_page.url }}">»</a>
|
||||
{% endif %}
|
||||
</p>
|
||||
{% endif %}
|
11
themes/homebrewtheme/templates/period_archives.html
Normal file
11
themes/homebrewtheme/templates/period_archives.html
Normal file
@ -0,0 +1,11 @@
|
||||
{% extends "base.html" %}
|
||||
{% block content %}
|
||||
<h1>Archives for {{ period | reverse | join(' ') }}</h1>
|
||||
|
||||
<dl>
|
||||
{% for article in dates %}
|
||||
<dt>{{ article.locale_date }}</dt>
|
||||
<dd><a href="{{ SITEURL }}/{{ article.url }}">{{ article.title }}</a></dd>
|
||||
{% endfor %}
|
||||
</dl>
|
||||
{% endblock %}
|
56
themes/homebrewtheme/templates/syndication.html
Normal file
56
themes/homebrewtheme/templates/syndication.html
Normal file
@ -0,0 +1,56 @@
|
||||
{#This template is for syndicating across the fucked up part of the web. It implements Open Graph and Twitter Card metadata to display links to HBSC well on social media
|
||||
# This code is mostly taken from Talha Mansoor's Elegant pelican theme https://github.com/talha131/pelican-elegant
|
||||
#}
|
||||
|
||||
{# Thumbnail image to show when homepage is shared on social media. It also
|
||||
serves as the default image for posts whose featured_image is not set. #}
|
||||
{% if not FEATURED_IMAGE %}
|
||||
{% set FEATURED_IMAGE = 'http://homebrewserver.club/extra/featured_image_blue.png' %}
|
||||
{% else %}
|
||||
{% set FEATURED_IMAGE = FEATURED_IMAGE %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% macro syndication(article) %}
|
||||
{% if article %}
|
||||
<meta property="og:title" content="{{ article.title|striptags|e }} {%if article.subtitle %} - {{ article.subtitle|striptags|e }} {% endif %}"/>
|
||||
<meta property="og:url" content="{{ SITEURL }}/{{ article.url }}" />
|
||||
<meta property="og:description" content="{{article.description|striptags|e}}" />
|
||||
<meta property="og:site_name" content="{{ SITENAME|striptags|e }}" />
|
||||
<meta property="og:article:author" content="{{ article.author }}" />
|
||||
{% if article.date %}
|
||||
<meta property="og:article:published_time" content="{{ article.date.isoformat() }}" />
|
||||
{% endif %}
|
||||
{% if article.locale_modified and article.modified %}
|
||||
<meta property="" content="{{ article.modified.isoformat() }}" />
|
||||
{% endif %}
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
<meta name="twitter:title" content="{{ article.title|striptags|e }} {%if article.subtitle %} - {{ article.subtitle|striptags|e }} {% endif %}">
|
||||
<meta name="twitter:description" content="{{article.description|striptags|e}}">
|
||||
{% if article.featured_image %}
|
||||
<meta property="og:image" content="{{article.featured_image}}" />
|
||||
<meta name="twitter:image" content="{{article.featured_image}}" >
|
||||
{% else %}
|
||||
{% if FEATURED_IMAGE %}
|
||||
<meta property="og:image" content="{{FEATURED_IMAGE}}" />
|
||||
<meta name="twitter:image" content="{{FEATURED_IMAGE}}" >
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if not article %}
|
||||
<meta property="og:title" content="{{ SITENAME|striptags|e }}"/>
|
||||
<meta name="twitter:title" content="{{ SITENAME|striptags|e }}">
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="og:url" content="{{ SITEURL }}" />
|
||||
<meta property="og:description" content="A monthly gathering for those who (wish to) host their own online services from home, rather than using commercial and privacy unfriendly alternatives.">
|
||||
<meta name="twitter:description" content="A monthly gathering for those who (wish to) host their own online services from home, rather than using commercial and privacy unfriendly alternatives.">
|
||||
<meta property="og:site_name" content="{{ SITENAME|striptags|e }}" />
|
||||
<meta property="og:article:author" content="{{ AUTHOR }}" />
|
||||
{% if FEATURED_IMAGE %}
|
||||
<meta property="og:image" content="{{FEATURED_IMAGE}}" />
|
||||
<meta name="twitter:image" content="{{FEATURED_IMAGE}}" >
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
|
0
themes/homebrewtheme/templates/tag.html
Normal file
0
themes/homebrewtheme/templates/tag.html
Normal file
10
themes/homebrewtheme/templates/tags.html
Normal file
10
themes/homebrewtheme/templates/tags.html
Normal file
@ -0,0 +1,10 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}{{ SITENAME }} - Tags{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>Tags for {{ SITENAME }}</h1>
|
||||
{%- for tag, articles in tags|sort %}
|
||||
<li><a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }}</a> ({{ articles|count }})</li>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
9
themes/homebrewtheme/templates/translations.html
Normal file
9
themes/homebrewtheme/templates/translations.html
Normal file
@ -0,0 +1,9 @@
|
||||
{% macro translations_for(article) %}
|
||||
{% if article.translations %}
|
||||
Translations:
|
||||
{% for translation in article.translations %}
|
||||
<a href="{{ SITEURL }}/{{ translation.url }}">{{ translation.lang }}</a>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
Loading…
Reference in New Issue
Block a user