Handbuch durchsuchen:

- Startseite
- Einleitung
- Hallo Welt!
- Grundlagen
  - Erstellen eines Layoutregelwerks
  - Aufbau der Datendatei und des Layoutregelwerks
  - Objekte ausgeben
  - Raster
  - Bereiche auf der Seite (PositioningArea)
  - Dateiorganisation
  - Silbentrennung / Spracheinstellungen
  - Einbinden von Schriftarten
  - Textformate
  - Textformatierung
  - Farben
- Programmierung
- Bilder einbinden
- Tabellen
- Fortgeschrittene Themen
  - Lesezeichen (Bookmarks)
  - Erzeugen von XML-Strukturen
  - Druckausgabe / Schnittmarken
  - CSS
  - Gruppen (virtuelle Objekte)
  - Virtuelle Seiten
  - Rotieren von Inhalten
  - Sortieren von Daten
  - Umfließen von Bildern
  - Seitentypen
  - Starten des Publishers über den Hotfolder
  - Lua-Filter / Datenvorverarbeitung
  - Schemavalidierung
  - Qualitätssicherung (PDF-Vergleich)
  - Fehlersuche / Debugging
  - Servermodus
  - Steuerung des Layouts beim Aufruf des Publishers
  - Bilder mit MetaPost erstellen und einbinden
- Kochbuch
  - Daumenregister
  - Mehrseitige PDF-Dateien einbinden
  - Layoutoptimierung mithilfe von Gruppen
  - Aufzählungslisten nachahmen
  - Verzeichnisse erstellen
  - Inhaltsverzeichnis in einem Durchlauf erstellen
  - Seitenzahlen: Seite x von y
- Installationsanleitung
- Dateinamen im Publisher
- Voreinstellungen im speedata Publisher
- Starten des Publishers über die Kommandozeile
- Konfiguration des Publishers
- Längenangaben und Maßeinheiten
- XPath- und Layoutfunktionen
- Interne Variablen
- XML Editor mit Schema verbinden
  - Visual Studio Code
  - OxygenXML
- Liste der Änderungen
- Glossar
- Kompatibilität mit anderer Software
- Befehlsreferenz
  - A
  - Action
  - AddSearchpath
  - AtPageCreation
  - AtPageShipout
  - AttachFile
  - Attribute
  - B
  - Barcode
  - Bold
  - BoldItalic
  - Bookmark
  - Box
  - Br
  - Case
  - Circle
  - ClearPage
  - Color
  - Column
  - Columns
  - Compatibility
  - Contents
  - Copy-of
  - DefineColor
  - DefineColorprofile
  - DefineFontalias
  - DefineFontfamily
  - DefineGraphic
  - DefineMatter
  - DefineTextformat
  - Element
  - Fallback
  - Fontface
  - ForAll
  - Frame
  - Grid
  - Group
  - Groupcontents
  - HSpace
  - Hyphenation
  - I
  - Image
  - Include
  - Initial
  - InsertPages
  - Italic
  - Layout
  - Li
  - LoadDataset
  - LoadFontfile
  - Loop
  - Makeindex
  - Margin
  - Mark
  - Message
  - NewPage
  - NextFrame
  - NextRow
  - NoBreak
  - Ol
  - Options
  - Otherwise
  - Output
  - Overlay
  - Pageformat
  - Pagetype
  - Paragraph
  - PDFOptions
  - PlaceObject
  - Position
  - PositioningArea
  - PositioningFrame
  - ProcessNode
  - Record
  - Regular
  - Rule
  - SaveDataset
  - SavePages
  - SetGrid
  - SetVariable
  - SortSequence
  - Stylesheet
  - Span
  - Sub
  - Sup
  - Switch
  - Table
  - TableNewPage
  - Tablefoot
  - Tablehead
  - Tablerule
  - Td
  - Text
  - Textblock
  - Tr
  - Trace
  - Transformation
  - U
  - Ul
  - Until
  - URL
  - Value
  - VSpace
  - While

Version 4.10.0
Handbuch durchsuchen

- Startseite
- Einleitung
- Hallo Welt!
- Grundlagen
  - Erstellen eines Layoutregelwerks
  - Aufbau der Datendatei und des Layoutregelwerks
  - Objekte ausgeben
  - Raster
  - Bereiche auf der Seite (PositioningArea)
  - Dateiorganisation
  - Silbentrennung / Spracheinstellungen
  - Einbinden von Schriftarten
  - Textformate
  - Textformatierung
  - Farben
- Programmierung
- Bilder einbinden
- Tabellen
- Fortgeschrittene Themen
  - Lesezeichen (Bookmarks)
  - Erzeugen von XML-Strukturen
  - Druckausgabe / Schnittmarken
  - CSS
  - Gruppen (virtuelle Objekte)
  - Virtuelle Seiten
  - Rotieren von Inhalten
  - Sortieren von Daten
  - Umfließen von Bildern
  - Seitentypen
  - Starten des Publishers über den Hotfolder
  - Lua-Filter / Datenvorverarbeitung
  - Schemavalidierung
  - Qualitätssicherung (PDF-Vergleich)
  - Fehlersuche / Debugging
  - Servermodus
  - Steuerung des Layouts beim Aufruf des Publishers
  - Bilder mit MetaPost erstellen und einbinden
- Kochbuch
  - Daumenregister
  - Mehrseitige PDF-Dateien einbinden
  - Layoutoptimierung mithilfe von Gruppen
  - Aufzählungslisten nachahmen
  - Verzeichnisse erstellen
  - Inhaltsverzeichnis in einem Durchlauf erstellen
  - Seitenzahlen: Seite x von y
- Installationsanleitung
- Dateinamen im Publisher
- Voreinstellungen im speedata Publisher
- Starten des Publishers über die Kommandozeile
- Konfiguration des Publishers
- Längenangaben und Maßeinheiten
- XPath- und Layoutfunktionen
- Interne Variablen
- XML Editor mit Schema verbinden
  - Visual Studio Code
  - OxygenXML
- Liste der Änderungen
- Glossar
- Kompatibilität mit anderer Software
- Befehlsreferenz
  - A
  - Action
  - AddSearchpath
  - AtPageCreation
  - AtPageShipout
  - AttachFile
  - Attribute
  - B
  - Barcode
  - Bold
  - BoldItalic
  - Bookmark
  - Box
  - Br
  - Case
  - Circle
  - ClearPage
  - Color
  - Column
  - Columns
  - Compatibility
  - Contents
  - Copy-of
  - DefineColor
  - DefineColorprofile
  - DefineFontalias
  - DefineFontfamily
  - DefineGraphic
  - DefineMatter
  - DefineTextformat
  - Element
  - Fallback
  - Fontface
  - ForAll
  - Frame
  - Grid
  - Group
  - Groupcontents
  - HSpace
  - Hyphenation
  - I
  - Image
  - Include
  - Initial
  - InsertPages
  - Italic
  - Layout
  - Li
  - LoadDataset
  - LoadFontfile
  - Loop
  - Makeindex
  - Margin
  - Mark
  - Message
  - NewPage
  - NextFrame
  - NextRow
  - NoBreak
  - Ol
  - Options
  - Otherwise
  - Output
  - Overlay
  - Pageformat
  - Pagetype
  - Paragraph
  - PDFOptions
  - PlaceObject
  - Position
  - PositioningArea
  - PositioningFrame
  - ProcessNode
  - Record
  - Regular
  - Rule
  - SaveDataset
  - SavePages
  - SetGrid
  - SetVariable
  - SortSequence
  - Stylesheet
  - Span
  - Sub
  - Sup
  - Switch
  - Table
  - TableNewPage
  - Tablefoot
  - Tablehead
  - Tablerule
  - Td
  - Text
  - Textblock
  - Tr
  - Trace
  - Transformation
  - U
  - Ul
  - Until
  - URL
  - Value
  - VSpace
  - While

- This manual in English

# Starten des Publishers über die Kommandozeile

Der speedata Publisher wird über die Kommandozeile (auch: Terminal, Befehlsfenster) gestartet. Einerseits gibt es Befehle, anderseits lassen sich die Befehle über Parameter steuern.

    $ sp <Befehl>  <Parameter> <Parameter> ...

Der Standardbefehl ist `run`. So ist der Aufruf von

    $ sp

dasselbe wie

    $ sp run

Neben dem Befehl `run` gibt es noch weitere Befehle (s.u.).

Mit

    $ sp --help

kann man sich eine Liste der erlaubten Befehle und Parameter ausgeben lassen.

## Erklärung der Befehle

`clean`

  Löscht alle generierten Zwischendateien und behält die PDF-Datei.

`clearcache`

  Löscht den Bildcache.

`compare`

  Vergleicht PDF-Dateien für die Qualitätssicherung. Siehe Qualitätssicherung (PDF-Vergleich).

`doc`

  Öffnet das Referenzhandbuch im Browser (lokale HTML-Dateien).

`list-fonts`

  Listet alle Schriftdateien auf, die in den Publisher-Verzeichnissen gefunden werden. Zusammen mit `--xml` erlaubt dieses Kommando die Ausgabe per Copy&Paste in das Layoutregelwerk zu übernehmen. Siehe Einbinden von Schriftarten.

`new [VERZEICHNIS]`

  Erstellt ein einfaches Gerüst (`layout.xml` und `data.xml`) für einen Publishing-Lauf im aktuellen Verzeichnis, sofern kein anderes angegeben ist.

`run`

  Startet den Publisher Lauf. Das ist die Voreinstellung, so dass das Kommando `sp` reicht, um den Publikationsprozess zu starten.

`server`

  Startet im Servermodus. Siehe den Abschnitt Servermodus.

`watch`

  Startet den internen Hotfolder. Siehe Starten des Publishers über den Hotfolder.

## Erklärung der Kommandozeilenparameter

`--address=IPADDRESS`

  Adresse des Servers für den Servermodus. Voreingestellt ist 127.0.0.1

`--autoopen`

  Öffnet die PDF-Datei nach dem Publisher-Durchlauf. Kann auch in der Konfigurationsdatei eingestellt werden.

`--cache=METHOD`

  Caching-Strategie für http(s) Bilddateien. Entweder `fast`, dann wird nur geschaut, ob die Bilddatei im Dateisystem vorhanden ist oder `optimal` (Voreinstellung), dann wird bei jedem Zugriff auf das Bild geprüft, ob das Bild aktualisiert werden muss. Bei `none` werden die Bilder immer herunter geladen.

`-c, --config=NAME`

  Liest die angegebene Konfigurationsdatei ein. Voreinstllung ist `publisher.cfg`.

`--credits`

  Zeigt credits an und beendet das Programm.

`--[no]-cutmarks`

  Zeigt die Schnittmarken an. Einstellbar im Layout (Befehl Options).

`--data=NAME`

  Gibt den Namen der XML-Daten an. Voreinstellung ist `data.xml`. Wird als Dateiname ein Strich (`-`) angegeben, liest der Publisher die XML-Daten aus der Standard-Eingabe (STDIN). Es kann auch eine externe Ressource angegeben werden (`http://`).

`--dummy`

  Führt nur das Layoutregelwerk aus. Als Dateninhalt wird `<data />` angenommen. Dient zum schnellen Testen von Layoutregelwerken.

`-x`, `--extra-dir=DIR`

  Bindet zusätzliche Verzeichnisse in den Publisherlauf ein. In diesen Verzeichnissen werden alle Daten gesucht: Bilddaten, Layoutregelwerke, Datendateien und Schriftdateien. Dieses Argument kann mehrfach angegeben werden und per Konfigurationsdatei mit Werten vorbelegt werden. Mehrere Verzeichnisse können auch in einem Parameter und mit den systemweiten Trenner (Semikolon für Windows und Doppelpunkt für alle anderen Betriebssysteme) getrennt angegeben werden.

`--extra-xml=NAME`

  Diese Datei den Layoutanweisungen hinzufügen. Ähnlich wie das Einbinden einer Datei über xinclude. Mehrere Dateien werden mit Komma separiert.

`--filter=FILTER`

  Führt die angegebene Lua-Datei aus. Siehe Kapitel Lua-Filter / Datenvorverarbeitung.

`--grid`

  Zeichnet das Raster. Mit `--no-grid` wird es ausgeschaltet. Konfigurierbar auch im Layout über den Befehl `<Trace>`.

`--ignore-case`

  Ignoriere die Groß- und Kleinschreibung für Dateizugriff.

`--imagecache=PATH`

  Setzt das Verzeichnis für den Bildzwischenspeicher (image cache). Das Verzeichnis wird bei Bedarf erstellt.

`--inkscape=PATH`

  Set the path to the inkscape program.

`--layout=NAME`

  Gibt den Namen des Layoutregelwerks an. Voreinstellung ist `layout.xml`. Es kann auch eine externe Ressource angegeben werden (`http://`).

`--[no]-local`

  Das aktuelle Verzeichnis wird (nicht) rekursiv dem Suchpfad hinzugefügt. Voreingestellt ist, dass das aktuelle Verzeichnis und seine Unterverzeichnisse beachtet werden.

`--logfile=NAME`

  Logdatei im Server-Modus. Voreinstellung ist 'publisher.protocol'. Benutze STDOUT für Standardausgabe und STDERR für Standardfehlerausgabe.

`--jobname=NAME`

  Bestimmt den Ausgabenamen. Voreinstellung ist `publisher`.

`--mainlanguage=NAME`

  Bestimmt die Hauptsprache des Dokuments für die Silbentrennung. Mögliche Werte sind: `af`, `as`, `bg`, `ca`, `cs`, `cy`, `da`, `de`, `el`, `en`, `en_GB`, `en_US`, `eo`, `es`, `et`, `eu`, `fi`, `fr`,`ga`, `gl`, `gu`, `hi`, `hr`, `hu`, `hy`, `ia`, `id`, `is`, `it`,`ku`, `kn`, `la`, `lo`, `lt`, `ml`, `lv`, `ml`, `mn`, `mr`, `nb`, `nl`, `nn`, `or`, `pa`, `pl`, `pt`, `ro`, `ru`, `sa`, `sk`, `sl`,`sr`, `sv`, `ta`, `te`, `tk`, `tr`, `uk` und `zh`. Siehe Codeliste der Sprachen.

`--mode=NAME[,NAME…​]`

  Setzt einen Modus für die Verabeitung. Kann im Layout mit `sd:mode()` abgefragt werden. Mehrere Modi werden durch Komma getrennt angegeben. Siehe Steuerung des Layouts beim Aufruf des Publishers.

`--option=OPTION`

  Setze Optionen, die keine eigenen Kommandozeilenparameter haben.

`--outputdir=VERZEICHNIS`

  Die resultierende PDF-Datei und Protokolldatei wird in das angegebene Verzeichnis kopiert. Das Verzeichnis wird erstellt, falls es noch nicht existiert.

`--port=PORT`

  Portnummer für den Servermodus. Voreinstellung ist 5266.

`--prepend-xml=NAME`

  Diese Datei vor der Layout-XML einfügen.

`--pdfversion=VERSION`

  Setzt die PDF Version. Voreinstellung ist 1.6.

`--quiet`

  Unterdrückt alle Ausgaben des Publishers.

`--runs = NUM`

  Überschreibt die Anzahl der Durchläufe des Publishers.

`--startpage = NUM`

  Die Seitennummer der ersten Seite.

`--show-gridallocation`

  Markiert die belegten Rasterzellen in Gelb. Doppelt belegte Zellen werden rot gekennzeichnet. Siehe den Befehl `<Trace>`.

`--systemfonts`

  Lädt zusätzlich Systemschriftarten. Funktioniert nicht unter Windows XP.

`--tempdir`

  Benutze dieses Verzeichnis anstelle des Systemverzeichnisses für temporäre Dateien.

`--timeout=SEC`

  Beendet den Lauf nach SEC Sekunden mit Statuscode 1, sofern er nicht vorher fertig ist.

`--trace`

  Gibt zusätzliche Ausgaben auf der Standardausgabe aus.

`-v`, `--var=value`

  Übergibt zusätzliche Variablen an den Publisher-Lauf. Diese können wie üblich mit `select="$variable"` benutzt werden. Beispiel: `sp --var myvar=hello` setzt `$myvar` auf `hello`.

`--varsfile=NAME`

  Liest eine Datei ein, in der in jeder Zeile in der Form `variable=wert` Variablen definiert werden.

`--verbose`

  Gibt mehr Informationen aus, also notwendig.

`--wd=DIR`

  Wechselt in das angegebene Verzeichnis. Verhält sich genau so, als ob man vorher mit cd in dieses Verzeichnis gewechselt hat.

`--xml`

  Die Ausgabe des Befehls `list-fonts` werden als (Pseudo-)XML dargestellt, um sie in das Layoutregelwerk zu übernehmen.

- Voreinstellungen im speedata Publisher
- Konfiguration des Publishers