Lua Preprocessing: CSV nach XML-Konverter
Neu in Version 3.1.10
Die neue Funktionalität des Lua-Präprozessors habe ich um Schnittstellen zu CSV und XML erweitert. Man kann nun beliebige CSV-Dateien einlesen und nach XML konvertieren, ohne eine Zeile Code zu schreiben1.
CSV nach XML nach PDF
In dem neuen Beispiel (https://github.com/speedata/examples/tree/master/technical/csvreader) ist das ausführlich in einem lauffähigen Layout gezeigt. Grundlage ist eine CSV-Datei. In dem Verzeichnis liegt eine Datei mit ausgedachten Personen:
"First name","Last name","Company name", ...
"James", "Butt", "Benton", ...
"Josephine", "Darakjy", "Chanay, Jeffrey A Esq", ...
...
Um eine XML-Datei daraus zu erstellen, muss man als Präprozessor einfach nur das mitgelieferte Skript csv2xml.lua
aufrufen. Das geht mit dem Kommandozeilenparameter --filter csv2xml.lua
oder mit einem Eintrag in der Konfigurationsdatei publisher.cfg
(siehe Beispiel).
Das reicht aus, um die Datendatei zu erstellen. Die Form der Datendatei ist
<data>
<row>
<cell>First name</cell>
<cell>Last name</cell>
<cell>Company name</cell>
</row>
<row>
<cell>James</cell>
<cell>Butt</cell>
<cell>Benton, John B Jr</cell>
</row>
<row>
<cell>Josephine</cell>
<cell>Darakjy</cell>
<cell>Chanay, Jeffrey A Esq</cell>
</row>
....
Das, zusammen mit dem sehr einfach gehaltenen Layout, reicht aus, um beliebige CSV-Daten in eine Tabelle in PDF zu konvertieren.
-
Das Abändern eines Dateinamens in dem Lua-Skript kann nicht als »Code schreiben« gezählt werden. ↩︎