diff options
24 files changed, 1167 insertions, 97 deletions
diff --git a/pyssg.xyz/db.psv b/pyssg.xyz/db.psv index b6ea878..6e25b3e 100644 --- a/pyssg.xyz/db.psv +++ b/pyssg.xyz/db.psv @@ -1,4 +1,4 @@ test.md|1670227510.7104242|1670481891.6152065|21ef9b29a3a7b73718b244c9f32ef576|-
subdir/test2.md|1670237921.0787709|0.0|309bd695d912634400f1d50b65d51ba3|-
-index.md|1670906223.8776777|1670981840.3921337|6628953df39997d59ecc67ca9feb7366|-
+index.md|1670906223.8776777|1671077575.953031|4bb24fb729562b6793486b503d8b9e5c|-
404.md|1670985271.2221887|0.0|184dcb50b5aeba89d98679f29f7b6d9e|-
diff --git a/pyssg.xyz/db_blog.psv b/pyssg.xyz/db_blog.psv new file mode 100644 index 0000000..72117e9 --- /dev/null +++ b/pyssg.xyz/db_blog.psv @@ -0,0 +1,2 @@ +first.md|1671076311.823135|0.0|778bce781d95730cd1e872a10130e20d|english,short,test,update
+a/second.md|1671077831.63301|1671078892.892921|6092d6471d3a83135293e34ef6012939|english,multiple-author,short,test,update
diff --git a/pyssg.xyz/live/blog/a/second.html b/pyssg.xyz/live/blog/a/second.html new file mode 100644 index 0000000..79c7445 --- /dev/null +++ b/pyssg.xyz/live/blog/a/second.html @@ -0,0 +1,107 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Second blog post for testing purposes -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/a/second.md"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> + <h1>Second blog post for testing purposes</h1> + + <p>By David Luévano, Someone Else</p> + <p>Created: Thu, Dec 15, 2022 @ 04:17 UTC</p> + <p>Modified: Thu, Dec 15, 2022 @ 04:34 UTC</p> + + <p>A second “blog entry” for testing purposes which uses multiple authors and is inside a subdirectory.</p> +<p>Added a modification here after first submission.</p> + +<p>Tags: + <a href="https://blog.pyssg.xyz/tag/@english.html">english</a>, + <a href="https://blog.pyssg.xyz/tag/@multiple-author.html">multiple-author</a>, + <a href="https://blog.pyssg.xyz/tag/@short.html">short</a>, + <a href="https://blog.pyssg.xyz/tag/@test.html">test</a>, + <a href="https://blog.pyssg.xyz/tag/@update.html">update</a> +</p> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/first.html b/pyssg.xyz/live/blog/first.html new file mode 100644 index 0000000..2ba22e6 --- /dev/null +++ b/pyssg.xyz/live/blog/first.html @@ -0,0 +1,104 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>First blog post for testing purposes -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/first.md"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> + <h1>First blog post for testing purposes</h1> + + <p>By David Luévano</p> + <p>Created: Thu, Dec 15, 2022 @ 03:51 UTC</p> + + <p>Even though I have this “blog” subdomain and page setup, doesn’t mean I’ll be blogging for pyssg, this is just to serve as an example for the types of sites that pyssg can be used for.</p> + +<p>Tags: + <a href="https://blog.pyssg.xyz/tag/@english.html">english</a>, + <a href="https://blog.pyssg.xyz/tag/@short.html">short</a>, + <a href="https://blog.pyssg.xyz/tag/@test.html">test</a>, + <a href="https://blog.pyssg.xyz/tag/@update.html">update</a> +</p> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/index.html b/pyssg.xyz/live/blog/index.html new file mode 100644 index 0000000..d288454 --- /dev/null +++ b/pyssg.xyz/live/blog/index.html @@ -0,0 +1,108 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Index -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/index.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Index -- pyssg blog</h1> +<p>Some text here.</p> + +<p>Tags: + <a href="https://blog.pyssg.xyz/tag/@english.html">english</a>, + <a href="https://blog.pyssg.xyz/tag/@multiple-author.html">multiple-author</a>, + <a href="https://blog.pyssg.xyz/tag/@short.html">short</a>, + <a href="https://blog.pyssg.xyz/tag/@test.html">test</a>, + <a href="https://blog.pyssg.xyz/tag/@update.html">update</a> +</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/first.html">First blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/rss.xml b/pyssg.xyz/live/blog/rss.xml new file mode 100644 index 0000000..20b4c4e --- /dev/null +++ b/pyssg.xyz/live/blog/rss.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<rss version="2.0" + xmlns:atom="http://www.w3.org/2005/Atom" + xmlns:content="http://purl.org/rss/1.0/modules/content/"> + <channel> + <title>pyssg blog</title> + <link>https://blog.pyssg.xyz</link> + <atom:link href="https://blog.pyssg.xyz/rss.xml" rel="self" type="application/rss+xml"/> + <description>PySSG blog, the python static site generator official blog.</description> + <language>en-us</language> + <category>Blog</category> + <copyright>Copyright 2023 David Luévano Alvarado</copyright> + <managingEditor>david@luevano.xyz (David Luévano Alvarado)</managingEditor> + <webMaster>david@luevano.xyz (David Luévano Alvarado)</webMaster> + <pubDate></pubDate> + <lastBuildDate></lastBuildDate> + <generator>pyssg v0.8.0</generator> + <docs>https://validator.w3.org/feed/docs/rss2.html</docs> + <ttl>30</ttl> + <image> + <url>https://static.pyssg.xyz/images/default.png</url> + <title>pyssg blog</title> + <link>https://blog.pyssg.xyz</link> + </image> + <item> + <title>Second blog post for testing purposes</title> + <link>https://blog.pyssg.xyz/a/second.html</link> + <guid isPermaLink="true">https://blog.pyssg.xyz/a/second.html</guid> + <pubDate>Thu, 15 Dec 2022 04:17:11 GMT</pubDate> + <category>English</category> + <category>Multiple-author</category> + <category>Short</category> + <category>Test</category> + <category>Update</category> + <description>This is just a post used for testing (the second).</description> + <content:encoded><![CDATA[<p>A second “blog entry” for testing purposes which uses multiple authors and is inside a subdirectory.</p> +<p>Added a modification here after first submission.</p>]]></content:encoded> + </item> + <item> + <title>First blog post for testing purposes</title> + <link>https://blog.pyssg.xyz/first.html</link> + <guid isPermaLink="true">https://blog.pyssg.xyz/first.html</guid> + <pubDate>Thu, 15 Dec 2022 03:51:51 GMT</pubDate> + <category>English</category> + <category>Short</category> + <category>Test</category> + <category>Update</category> + <description>This is just a post used for testing.</description> + <content:encoded><![CDATA[<p>Even though I have this “blog” subdomain and page setup, doesn’t mean I’ll be blogging for pyssg, this is just to serve as an example for the types of sites that pyssg can be used for.</p>]]></content:encoded> + </item> + </channel> +</rss>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/sitemap.xml b/pyssg.xyz/live/blog/sitemap.xml new file mode 100644 index 0000000..0a84fa2 --- /dev/null +++ b/pyssg.xyz/live/blog/sitemap.xml @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="utf-8"?> +<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"> + <url> + <loc>https://blog.pyssg.xyz/a/second.html</loc> + <lastmod>2022-12-15</lastmod> + <changefreq>weekly</changefreq> + <priority>1.0</priority> + </url> + <url> + <loc>https://blog.pyssg.xyz/first.html</loc> + <lastmod>2022-12-15</lastmod> + <changefreq>weekly</changefreq> + <priority>1.0</priority> + </url> + + <url> + <loc>https://blog.pyssg.xyz/tag/@english.html</loc> + <lastmod></lastmod> + <changefreq>daily</changefreq> + <priority>0.5</priority> + </url> + <url> + <loc>https://blog.pyssg.xyz/tag/@multiple-author.html</loc> + <lastmod></lastmod> + <changefreq>daily</changefreq> + <priority>0.5</priority> + </url> + <url> + <loc>https://blog.pyssg.xyz/tag/@short.html</loc> + <lastmod></lastmod> + <changefreq>daily</changefreq> + <priority>0.5</priority> + </url> + <url> + <loc>https://blog.pyssg.xyz/tag/@test.html</loc> + <lastmod></lastmod> + <changefreq>daily</changefreq> + <priority>0.5</priority> + </url> + <url> + <loc>https://blog.pyssg.xyz/tag/@update.html</loc> + <lastmod></lastmod> + <changefreq>daily</changefreq> + <priority>0.5</priority> + </url> +</urlset>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/tag/@english.html b/pyssg.xyz/live/blog/tag/@english.html new file mode 100644 index 0000000..f3fca24 --- /dev/null +++ b/pyssg.xyz/live/blog/tag/@english.html @@ -0,0 +1,100 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Posts filtered by english -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/tag/@english.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Posts filtered by english</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/first.html">First blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/tag/@multiple-author.html b/pyssg.xyz/live/blog/tag/@multiple-author.html new file mode 100644 index 0000000..ca3f168 --- /dev/null +++ b/pyssg.xyz/live/blog/tag/@multiple-author.html @@ -0,0 +1,99 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Posts filtered by multiple-author -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/tag/@multiple-author.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Posts filtered by multiple-author</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/tag/@short.html b/pyssg.xyz/live/blog/tag/@short.html new file mode 100644 index 0000000..141c6b9 --- /dev/null +++ b/pyssg.xyz/live/blog/tag/@short.html @@ -0,0 +1,100 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Posts filtered by short -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/tag/@short.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Posts filtered by short</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/first.html">First blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/tag/@test.html b/pyssg.xyz/live/blog/tag/@test.html new file mode 100644 index 0000000..390a522 --- /dev/null +++ b/pyssg.xyz/live/blog/tag/@test.html @@ -0,0 +1,100 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Posts filtered by test -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/tag/@test.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Posts filtered by test</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/first.html">First blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/blog/tag/@update.html b/pyssg.xyz/live/blog/tag/@update.html new file mode 100644 index 0000000..2a77416 --- /dev/null +++ b/pyssg.xyz/live/blog/tag/@update.html @@ -0,0 +1,100 @@ +<!DOCTYPE html> +<html class="theme-dark" lang="en +" + prefix="og: https://ogp.me/ns#"> + <head> + <base href="https://static.pyssg.xyz"> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" href="images/icons/favicon.ico"> +<title>Posts filtered by update -- pyssg blog</title> +<meta name="description" content="PySSG blog, the python static site generator official blog."/> +<link rel="alternate" type="application/rss+xml" href="https://blog.pyssg.xyz/rss.xml" title="pyssg blog RSS"> + <!-- general style --> + <link rel="stylesheet" type="text/css" href="css/style.css"> + <link rel="stylesheet" type="text/css" href="fork-awesome/css/fork-awesome.min.css"> + <link rel="stylesheet" type="text/css" href="font-awesome/css/all.min.css"> + <!-- theme related --> + <script type="text/javascript" src="scripts/theme.js"></script> + <link id="theme-css" rel="stylesheet" type="text/css" href="css/theme.css"> + <!-- extra --> + <!-- og meta --> + <meta property="og:title" content="pyssg blog"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="https://blog.pyssg.xyz/tag/@update.html"/> + <meta property="og:image" content="https://static.pyssg.xyz/images/default.png"/> + <meta property="og:description" content="PySSG blog, the python static site generator official blog."/> + <meta property="og:locale" content="en"/> + <meta property="og:site_name" content="pyssg blog"/> + </head> + + <body> + <header> +<nav> + <ul> + <li> + <a href="https://blog.pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> + </li> + + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> + <ul> + <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> + + <li><a href="https://github.com/luevano" target="_blank"><i class="fab fa-github" alt="Github"></i></a></li> + + <li><a href="https://gitlab.com/dluevano" target="_blank"><i class="fab fa-gitlab" alt="Gitlab"></i></a></li> + </ul> + </li> + </ul> +</nav> + +<button class="theme-switcher" onclick="toggleTheme()"><i class="fas fa-moon"></i><i class="fas fa-sun"></i></button> + + </header> + + <main> +<h1>Posts filtered by update</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> + <h3>December 2022</h3> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/a/second.html">Second blog post for testing purposes</a></li> + <li>Dec 15 - <a href="https://blog.pyssg.xyz/first.html">First blog post for testing purposes</a></li> +</ul> + </main> + + <footer> +<span> + <i class="fas fa-address-card" alt="Contact"></i> + <a href="https://blog.pyssg.xyz/contact.html">Contact</a> +</span> + +<span> + <i class="fas fa-donate" alt="Donate"></i> + <a href="https://blog.pyssg.xyz/donate.html">Donate</a> +</span> + +<span> + <i class="fas fa-rss" alt="RSS"></i> + <a target="_blank" href="https://blog.pyssg.xyz/rss.xml">RSS</a> +</span> + +<br> +<span class="created-with"> + <i class="fas fa-hammer" alt="Hammer"></i> + Created with <a href="https://github.com/luevano/pyssg">pyssg</a> +</span> + +<br> +<span class="copyright"> + Copyright <i class="far fa-copyright" alt="Copyright"></i> 2023 David Luévano Alvarado +</span> + + </footer> + </body> +</html>
\ No newline at end of file diff --git a/pyssg.xyz/live/pyssg.xyz/404.html b/pyssg.xyz/live/pyssg.xyz/404.html index 860c6b5..0dea386 100644 --- a/pyssg.xyz/live/pyssg.xyz/404.html +++ b/pyssg.xyz/live/pyssg.xyz/404.html @@ -35,6 +35,10 @@ <a href="https://pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> </li> + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> <ul> <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> diff --git a/pyssg.xyz/live/pyssg.xyz/index.html b/pyssg.xyz/live/pyssg.xyz/index.html index d82c082..4c8d4d7 100644 --- a/pyssg.xyz/live/pyssg.xyz/index.html +++ b/pyssg.xyz/live/pyssg.xyz/index.html @@ -35,6 +35,10 @@ <a href="https://pyssg.xyz"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> </li> + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> <ul> <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> @@ -55,6 +59,8 @@ <h1>pyssg</h1> <p>Welcome to the official pyssg website. This is as of now serving as a testing ground when I’m making changes to it.</p> +<h2 id="blog">Blog</h2> +<p>You can find the blog (actually just a mock) <a href="https://blog.luevano.xyz">here</a>.</p> <p>Get the RSS feed: <a href="https://pyssg.xyz/rss.xml">https://pyssg.xyz/rss.xml</a></p> </main> diff --git a/pyssg.xyz/live/pyssg.xyz/rss.xml b/pyssg.xyz/live/pyssg.xyz/rss.xml index 9dab7bb..b1269cf 100644 --- a/pyssg.xyz/live/pyssg.xyz/rss.xml +++ b/pyssg.xyz/live/pyssg.xyz/rss.xml @@ -37,6 +37,8 @@ <pubDate>Tue, 13 Dec 2022 04:37:03 GMT</pubDate> <description></description> <content:encoded><![CDATA[<p>Welcome to the official pyssg website. This is as of now serving as a testing ground when I’m making changes to it.</p> +<h2 id="blog">Blog</h2> +<p>You can find the blog (actually just a mock) <a href="https://blog.luevano.xyz">here</a>.</p> <p>Get the RSS feed: <a href="https://pyssg.xyz/rss.xml">https://pyssg.xyz/rss.xml</a></p>]]></content:encoded> </item> </channel> diff --git a/pyssg.xyz/live/pyssg.xyz/sitemap.xml b/pyssg.xyz/live/pyssg.xyz/sitemap.xml index a9745f3..bbf8a85 100644 --- a/pyssg.xyz/live/pyssg.xyz/sitemap.xml +++ b/pyssg.xyz/live/pyssg.xyz/sitemap.xml @@ -10,7 +10,7 @@ </url> <url> <loc>https://pyssg.xyz/index.html</loc> - <lastmod>2022-12-14</lastmod> + <lastmod>2022-12-15</lastmod> <changefreq>weekly</changefreq> <priority>1.0</priority> </url> diff --git a/pyssg.xyz/plt/blog/index.html b/pyssg.xyz/plt/blog/index.html index 96d66ef..9086232 100644 --- a/pyssg.xyz/plt/blog/index.html +++ b/pyssg.xyz/plt/blog/index.html @@ -1,32 +1,71 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"> - <base href="{{config['url']['static']}}"> - <title>Index -- {{config['title']}}</title> - </head> - <body> - <h1>Index -- {{config['title']}}</h1> - <p>Some text here.</p> - - <p>Tags: - {%for t in all_tags%} - <a href="{{t[1]}}">{{t[0]}}</a>{{", " if not loop.last else ""}} - {%endfor%} - </p> - - <h2>Articles</h2> - <ul> - {%for p in all_pages%} - {%if loop.previtem%} - {%if loop.previtem.cdate_list_sep !=p.cdate_list_sep%} - <h3>{{p.cdate_list_sep}}</h3> - {%endif%} - {%else%} - <h3>{{p.cdate_list_sep}}</h3> +{%extends "base.html"%} + +{%block html_lang%} +{{config['lang']}} +{%endblock html_lang%} + +{%block head_title%} +<title>Index -- {{config['title']}}</title> +{%endblock head_title%} + +{%block head_description%} +<meta name="description" content="{{config['description']}}"/> +{%endblock head_description%} + +{%block head_rss%} +<link rel="alternate" type="application/rss+xml" href="{{config['url']['main']}}/rss.xml" title="{{config['title']}} RSS"> +{%endblock head_rss%} + +{%block head_extra%} +{%endblock head_extra%} + +{%block head_og%} + <meta property="og:title" content="{{config['title']}}"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="{{config['url']['main']}}/index.html"/> + <meta property="og:image" content="{{config['url']['static']}}/{{config['url']['default_image']}}"/> + <meta property="og:description" content="{{config['description']}}"/> + <meta property="og:locale" content="{{config['lang']}}"/> + <meta property="og:site_name" content="{{config['title']}}"/> +{%endblock head_og%} + +{%block body_header%} +{%import 'body/header.html' as body_header%} +{{body_header.print(config)}} +{%endblock body_header%} + +{%block body_content%} +<h1>Index -- {{config['title']}}</h1> +<p>Some text here.</p> + +<p>Tags: +{%for t in all_tags%} + <a href="{{t[1]}}">{{t[0]}}</a>{{", " if not loop.last else ""}} +{%endfor%} +</p> + +<h2>Articles</h2> +<ul> +{%for p in all_pages%} + {%if loop.previtem%} + {%if loop.previtem.cdate_list_sep !=p.cdate_list_sep%} + <h3>{{p.cdate_list_sep}}</h3> {%endif%} - <li>{{p.cdate_list}} - <a href="{{p.url}}">{{p.title}}</a></li> - {%endfor%} - </ul> - </body> -</html> + {%else%} + <h3>{{p.cdate_list_sep}}</h3> + {%endif%} + <li>{{p.cdate_list}} - <a href="{{p.url}}">{{p.title}}</a></li> +{%endfor%} +</ul> +{%endblock body_content%} + +{%block body_footer%} +{%import 'body/footer.html' as body_footer%} +{{body_footer.contact(config)}} +{{body_footer.donate(config)}} +{{body_footer.rss(config)}} +<br> +{{body_footer.created_with()}} +<br> +{{body_footer.copyright()}} +{%endblock body_footer%}
\ No newline at end of file diff --git a/pyssg.xyz/plt/blog/page.html b/pyssg.xyz/plt/blog/page.html index d7f5e43..bd79b15 100644 --- a/pyssg.xyz/plt/blog/page.html +++ b/pyssg.xyz/plt/blog/page.html @@ -1,25 +1,64 @@ -<!DOCTYPE html> -<html lang="{{page.lang}}"> - <head> - <meta charset="utf-8"> - <base href="{{config['url']['static']}}"> - <title>{{page.title}} -- {{config['title']}}</title> - </head> - <body> - <h1>{{page.title}}</h1> - <p>By {{page.author}}</p> - <p>Created: {{page.cdate}}</p> - {%if page.mdate is not none%} - <p>Modified: {{page.mdate}}</p> - {%endif%} - - {{page.content}} - - <p>Tags: - {%for t in page.tags%} - <a href="{{t[1]}}">{{t[0]}}</a>{{", " if not loop.last else ""}} - {%endfor%} - </p> - </body> -</html> +{%extends "base.html"%} +{%block html_lang%} +{{config['lang']}} +{%endblock html_lang%} + +{%block head_title%} +<title>{{page.title}} -- {{config['title']}}</title> +{%endblock head_title%} + +{%block head_description%} +<meta name="description" content="{{config['description']}}"/> +{%endblock head_description%} + +{%block head_rss%} +<link rel="alternate" type="application/rss+xml" href="{{config['url']['main']}}/rss.xml" title="{{config['title']}} RSS"> +{%endblock head_rss%} + +{%block head_extra%} +{%endblock head_extra%} + +{%block head_og%} + <meta property="og:title" content="{{config['title']}}"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="{{config['url']['main']}}/{{page.name}}"/> + <meta property="og:image" content="{{config['url']['static']}}/{{config['url']['default_image']}}"/> + <meta property="og:description" content="{{config['description']}}"/> + <meta property="og:locale" content="{{config['lang']}}"/> + <meta property="og:site_name" content="{{config['title']}}"/> +{%endblock head_og%} + +{%block body_header%} +{%import 'body/header.html' as body_header%} +{{body_header.print(config)}} +{%endblock body_header%} + +{%block body_content%} + <h1>{{page.title}}</h1> + + <p>By {{', '.join(page.author)}}</p> + <p>Created: {{page.cdate}}</p> + {%if page.mdate is not none%} + <p>Modified: {{page.mdate}}</p> + {%endif%} + + {{page.content}} + +<p>Tags: +{%for t in page.tags%} + <a href="{{t[1]}}">{{t[0]}}</a>{{", " if not loop.last else ""}} +{%endfor%} +</p> +{%endblock body_content%} + +{%block body_footer%} +{%import 'body/footer.html' as body_footer%} +{{body_footer.contact(config)}} +{{body_footer.donate(config)}} +{{body_footer.rss(config)}} +<br> +{{body_footer.created_with()}} +<br> +{{body_footer.copyright()}} +{%endblock body_footer%}
\ No newline at end of file diff --git a/pyssg.xyz/plt/blog/tag.html b/pyssg.xyz/plt/blog/tag.html index 59cbdf1..53499b1 100644 --- a/pyssg.xyz/plt/blog/tag.html +++ b/pyssg.xyz/plt/blog/tag.html @@ -1,26 +1,65 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"> - <base href="{{config['url']['static']}}"> - <title>Posts filtered by {{tag[0]}} -- {{config['title']}}</title> - </head> - <body> - <h1>Posts filtered by {{tag[0]}}</h1> - <p>Some text here.</p> - - <h2>Articles</h2> - <ul> - {%for p in tag_pages%} - {%if loop.previtem%} - {%if loop.previtem.cdate_list_sep !=p.cdate_list_sep%} - <h3>{{p.cdate_list_sep}}</h3> - {%endif%} - {%else%} - <h3>{{p.cdate_list_sep}}</h3> +{%extends "base.html"%} + +{%block html_lang%} +{{config['lang']}} +{%endblock html_lang%} + +{%block head_title%} +<title>Posts filtered by {{tag[0]}} -- {{config['title']}}</title> +{%endblock head_title%} + +{%block head_description%} +<meta name="description" content="{{config['description']}}"/> +{%endblock head_description%} + +{%block head_rss%} +<link rel="alternate" type="application/rss+xml" href="{{config['url']['main']}}/rss.xml" title="{{config['title']}} RSS"> +{%endblock head_rss%} + +{%block head_extra%} +{%endblock head_extra%} + +{%block head_og%} + <meta property="og:title" content="{{config['title']}}"/> + <meta property="og:type" content="article"/> + <meta property="og:url" content="{{tag[1]}}"/> + <meta property="og:image" content="{{config['url']['static']}}/{{config['url']['default_image']}}"/> + <meta property="og:description" content="{{config['description']}}"/> + <meta property="og:locale" content="{{config['lang']}}"/> + <meta property="og:site_name" content="{{config['title']}}"/> +{%endblock head_og%} + +{%block body_header%} +{%import 'body/header.html' as body_header%} +{{body_header.print(config)}} +{%endblock body_header%} + +{%block body_content%} +<h1>Posts filtered by {{tag[0]}}</h1> +<p>Some text here.</p> + +<h2>Articles</h2> +<ul> +{%for p in tag_pages%} + {%if loop.previtem%} + {%if loop.previtem.cdate_list_sep !=p.cdate_list_sep%} + <h3>{{p.cdate_list_sep}}</h3> {%endif%} - <li>{{p.cdate_list}} - <a href="{{p.url}}">{{p.title}}</a></li> - {%endfor%} - </ul> - </body> -</html> + {%else%} + <h3>{{p.cdate_list_sep}}</h3> + {%endif%} + <li>{{p.cdate_list}} - <a href="{{p.url}}">{{p.title}}</a></li> +{%endfor%} +</ul> +{%endblock body_content%} + +{%block body_footer%} +{%import 'body/footer.html' as body_footer%} +{{body_footer.contact(config)}} +{{body_footer.donate(config)}} +{{body_footer.rss(config)}} +<br> +{{body_footer.created_with()}} +<br> +{{body_footer.copyright()}} +{%endblock body_footer%}
\ No newline at end of file diff --git a/pyssg.xyz/plt/body/header.html b/pyssg.xyz/plt/body/header.html index 9b38511..368eab3 100644 --- a/pyssg.xyz/plt/body/header.html +++ b/pyssg.xyz/plt/body/header.html @@ -5,6 +5,10 @@ <a href="{{config['url']['main']}}"><i class="fas fa-home" alt="Home"></i><span>Home</span></a> </li> + <li> + <a href="https://blog.pyssg.xyz/"><i class="fas fa-book-open" alt="Blog"></i><span>Blog</span></a> + </li> + <li><i class="fab fa-git" alt="Git"></i><span>Git</span> <ul> <li><a href="https://git.luevano.xyz/" target="_blank"><i class="fab fa-git-alt" alt="Git-alt"></i></a></li> diff --git a/pyssg.xyz/src/blog/a/second.md b/pyssg.xyz/src/blog/a/second.md new file mode 100644 index 0000000..1dce357 --- /dev/null +++ b/pyssg.xyz/src/blog/a/second.md @@ -0,0 +1,14 @@ +title: Second blog post for testing purposes +author: David Luévano + Someone Else +lang: en +summary: This is just a post used for testing (the second). +tags: test + english + short + update + multiple-author + +A second "blog entry" for testing purposes which uses multiple authors and is inside a subdirectory. + +Added a modification here after first submission.
\ No newline at end of file diff --git a/pyssg.xyz/src/pyssg.xyz/index.md b/pyssg.xyz/src/pyssg.xyz/index.md index 31a068c..27371cd 100644 --- a/pyssg.xyz/src/pyssg.xyz/index.md +++ b/pyssg.xyz/src/pyssg.xyz/index.md @@ -2,4 +2,8 @@ title: pyssg Welcome to the official pyssg website. This is as of now serving as a testing ground when I'm making changes to it. +## Blog + +You can find the blog (actually just a mock) [here](https://blog.luevano.xyz). + Get the RSS feed: [https://pyssg.xyz/rss.xml](https://pyssg.xyz/rss.xml)
\ No newline at end of file diff --git a/src/pyssg/configuration.py b/src/pyssg/configuration.py index d7c32ae..b68930c 100644 --- a/src/pyssg/configuration.py +++ b/src/pyssg/configuration.py @@ -51,13 +51,14 @@ def __expand_all_paths(config: dict) -> None: # not necessary to type deeper than the first dict def get_parsed_config(path: str) -> list[dict]: log.debug('reading config file "%s"', path) - config: list[dict] = get_parsed_yaml(path) + config_all: list[dict] = get_parsed_yaml(path) mandatory_config: list[dict] = get_parsed_yaml('mandatory_config.yaml', 'pyssg.plt') - log.info('found %s document(s) for configuration "%s"', len(config), path) + log.info('found %s document(s) for configuration "%s"', len(config_all), path) log.debug('checking that config file is well formed (at least contains mandatory fields') - __check_well_formed_config(config[0], mandatory_config) - __expand_all_paths(config[0]) - return config + for config in config_all: + __check_well_formed_config(config, mandatory_config) + __expand_all_paths(config) + return config_all # not necessary to type deeper than the first dict, diff --git a/src/pyssg/page.py b/src/pyssg/page.py index 6a1ce54..32caadb 100644 --- a/src/pyssg/page.py +++ b/src/pyssg/page.py @@ -44,16 +44,14 @@ class Page: self.cdate_rss: str self.cdate_sitemap: str - self.mdate: str - self.mdate_list: str - self.mdate_list_sep: str - self.mdate_rss: str - self.mdate_sitemap: str - - # later assigned references to next and previous pages - # not always assigned (tail ends), and the None helps check it, ignoring - self.next: Page = None # type: ignore - self.previous: Page = None # type: ignore + self.mdate: str | None = None + self.mdate_list: str | None = None + self.mdate_list_sep: str | None = None + self.mdate_rss: str | None = None + self.mdate_sitemap: str | None = None + + self.next: Page | None = None + self.previous: Page | None = None # also from self.meta, but for og metadata self.og: dict[str, str] = dict() |