acn/rtx
acn
/
rtx
1
0
Fork 0

erster Test eines Seitengenerators, noch ohne Ersetzungstabelle

This commit is contained in:
acn 2018-05-30 15:57:37 +02:00
parent f2dad7338d
commit 59fc63e94e
1 changed files with 66 additions and 0 deletions

66
tools/makePage.py Executable file
View File

@ -0,0 +1,66 @@
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
'''
rtx - RetroText
by Anna Christina Naß <acn@acn.wtf>
released under GPL
makePage.py: konvertiert eine Pseudo-CEPT-Seite mit "Tags" in das CEPT-Format
und ersetzt diese "Tags" durch CEPT-Bytes.
Damit sollte es einfacher sein, eigene CEPT-Seiten zu erstellen.
Dabei kommt ein relativ einfaches Suchen-und-Ersetzen-System zum Einsatz,
keine komplexen Tags im Stil von HTML mit Beginn und Ende
'''
import getopt
import sys
import os
ersetzungsListe = [
(b"CR", b"\x0d"),
(b"AA", b"BBB"),
]
# Kommandozeilenparameter verarbeiten:
def OptionsError():
""" nicht alle Parameter wurden angegeben; zeigt diese an und beendet Programm """
print("Aufrufparamter:\n -i <Eingabedatei>\n -o <Ausgabedatei>")
sys.exit()
infilename = None
outfilename = None
try:
opts, args = getopt.gnu_getopt(sys.argv[1:], 'i:o:')
except getopt.GetoptError as err:
OptionsError()
for opt, arg in opts:
if opt == "-i":
infilename = arg
if opt == "-o":
outfilename = arg
if not infilename or not outfilename:
OptionsError()
# Eingabedaten lesen:
with open(infilename, 'rb') as infile:
indata = infile.read()
# Daten verarbeiten:
outdata = indata
for el in ersetzungsListe:
old = b'<' + el[0] + b'>'
# 'new' ist el[1]
outdata = outdata.replace(old, el[1])
# Ausgabedatei öffnen und Daten schreiben:
outfile = open(outfilename, 'wb')
outfile.write(outdata)
# Wir sind fertig:
outfile.close()