Generate a blog htmlpage from a markdownfile. v0.01

This commit is contained in:
Wolfgang Nowak 2021-04-14 01:26:24 +02:00
commit 6dd9be7f99
3 changed files with 92 additions and 0 deletions

22
Socialmedia.html Normal file
View file

@ -0,0 +1,22 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Socialmedia</title>
<meta name="Generator" content="Vim/8.1">
<meta name="plugin-version" content="vim8.1_v1">
<meta name="syntax" content="markdown">
<meta name="settings" content="use_css,pre_wrap,no_foldcolumn,expand_tabs,prevent_copy=">
<meta name="colorscheme" content="none">
<style type="text/css"> <!--
* { font-family: monospace; color: #00f020; background-color: #1c1414; font-size: 1.1em; text-decoration: none; }
body { font-family: monospace; }
pre { white-space: pre-wrap; font-family: monospace; color: #00f020; background-color: #1c1414; }
.Statement { color: #00f020; font-weight: bold; }
-->
</style> </head><body>
<a href="../" >Go back to upper folder</a><p>** Gleich mal vorab:</p><p>Ich bin nicht socialmediasüchtig. Nur um das mal eben klarzustellen. Reallife, Freunde, Musik oder n bischen programmieren haben Vorfahrt. Und wenn du auf den Trichter kommen solltest, mich zu Facebook, WarzAb und ähnlichen Soziogrammdealern einzuladen, sinkt mein Interesse an weiterer Kommunikation immens. Probiers doch mal mit XMPP statt Whatsäpp, Mastodon statt Twitter, Email statt nerviger Sprachnachrichten und vielleicht ein bischen Hirn statt nutzloser Anpassung. </p><ul>
<li>Blablubber mit minuszeichen</li>
</ul><hr /><ul>
<li>Murmelgrunz mit sternchen</li>
</ul><p>** Zappp mit zwei sternchen</p><p><em>oink</em> </p></body> </html>

10
Socialmedia.md Normal file
View file

@ -0,0 +1,10 @@
** Gleich mal vorab:
Ich bin nicht socialmediasüchtig. Nur um das mal eben klarzustellen. Reallife, Freunde, Musik oder n bischen programmieren haben Vorfahrt. Und wenn du auf den Trichter kommen solltest, mich zu Facebook, WarzAb und ähnlichen Soziogrammdealern einzuladen, sinkt mein Interesse an weiterer Kommunikation immens. Probiers doch mal mit XMPP statt Whatsäpp, Mastodon statt Twitter, Email statt nerviger Sprachnachrichten und vielleicht ein bischen Hirn statt nutzloser Anpassung.
- Blablubber mit minuszeichen
------------
* Murmelgrunz mit sternchen
** Zappp mit zwei sternchen
*oink*

60
webgen.py Executable file
View file

@ -0,0 +1,60 @@
#!/usr/bin/env python3
import sys, os, re, markdown, datetime
try:
mark_down_file = sys.argv[1]
except:
sys.exit(
sys.argv[0]
+ ": Bitte eine Text oder Markdowndatei angeben.\ Dieses Tool wandelt eine entsprechende Datei in eine einfache Webseite"
)
creationtime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M")
if re.match(".*\.md$", mark_down_file):
new_file_name = creationtime + " " + re.sub(".md$", ".html", mark_down_file)
html_out_file = open(new_file_name, "w")
title_of_text = re.sub(".md$", "", mark_down_file)
else:
html_out_file = sys.stdout
head1 = (
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\n\
<html>\n\
<head>\n\
<meta http-equiv="content-type" content="text/html; charset=UTF-8">\n\
<title>'
+ title_of_text
+ '</title>\n\
<meta name="Generator" content="Vim/8.1">\n\
<meta name="plugin-version" content="vim8.1_v1">\n\
<meta name="syntax" content="markdown">\n\
<meta name="settings" content="use_css,pre_wrap,no_foldcolumn,expand_tabs,prevent_copy=">\n\
<meta name="ctime" content="'
+ creationtime
+ '">\n\
<style type="text/css"> '
)
styles = " <!--\n\
* { font-family: monospace; color: #00f020; background-color: #1c1414; font-size: 1.1em; text-decoration: none; }\n\
body { font-family: monospace; }\n\
pre { white-space: pre-wrap; font-family: monospace; color: #00f020; background-color: #1c1414; }\n\
.Statement { color: #00f020; font-weight: bold; }\n\
-->\n"
head2 = "</style> </head><body>\n"
body1 = '<a href="../" >Go back to upper folder</a>'
foot = "</body> </html>"
html_out_file.write(head1 + styles + head2 + body1)
with open(mark_down_file) as infile:
for line in infile:
a = markdown.markdown(line)
html_out_file.write(a)
html_out_file.write(foot)