Das VplToZefaniaXML Powershellscript ist das Schweizer Taschenmesser für Modulmacher. Es erstellt aus Textdateien, die Bibeltexte in der Form VPL (= Ein Vers pro Zeile) enthalten, gültige Zefania XML Bibelmodule. Das Besondere an diesem Script ist die Möglichkeit mit Hilfe einer Filterdatei (MyFilter.csv) während der Konvertierung Suchen/Ersetzen Operationen mit regulären Ausdrücken auszuführen. Damit kann man flexibel auf die Eigenarten des Ursprungstexts reagieren und eine saubere Zefania XML Moduldatei erstellen. Hier ein erster Überblick über das Arbeiten mit dem VplTOZefaniaXML Script:
Download des aktuellen Scriptes
Die Installation des Skriptes gestaltet sich sehr einfach es
genügt den Inhalt des zip-Archives in ein Verzeichnis eigener Wahl zu entpacken
wir erhalten darin insgesamt vier Dateien wie folgt.
Wir starten nun die Power Shell und navigieren zu dem Ordner
mit unseren ausgepackten Script-Dateien und geben als erstes den folgenden Befehl
ein . .\VplToZefaniaXML.ps1 (man beachte
zwischen den Punkten ist ein Leerzeichen!) und drücken Enter.
Zur Übung sollte man mal die beigefügte testbible.txt in ein
Zefania XML Modul konvertieren dazu den Befehl
czm .\testbible.txt eintippen und Enter drücken, wenn alles gutgeht wird
jetzt die Konvertierung anlaufen. Das fertige Zefania XML Modul befindet sich
danach als testbible.xml im obigen Verzeichnis.
Wie oben schon erwähnt kann die VPL-Datei noch mit den Suchen/Ersetzen Operationen, die in der Filterdatei MyFilter.csv während der Konvertierung bearbeitet werden. Standardmäßig beinhaltet die Filterdatei schon folgende Operationen.
title~search~replace
RemoveSpaceCharacters in front of punctations~([\p{L}])[ ]{1,}([\p{P}])~$1$2
RemoveDoubleSpaceCharacters~[\p{Zs}]{2,}~
Set space after punctation before letter~([,?:;.])([\p{L}])~$1 $2
Set style super for nummerics~([\p{L}])([\d]+)~$1<style fs="super">$2</style>
Try to get references~([ ]*[\d]*[.]*[A-Z][a-zA-Z]+[ ][\d]*[,.:]*[\d]+[-]*[\d]*)~<xref fscope="$1">$1</xref>
Selbstverständlich kann man auch noch eigene Operationen in der Filterdatei hinterlegen, um die Verarbeitung entsprechend anzupassen. Die Operationen werden von oben nach unten auf jede einzelne Zeile der VPL-Datei angewendet.
Wer jetzt Lust auf Scripting bekommen hat dem empfehle ich als Lektüre:
Windows Powershell 2.0 - Der Crashkurs




