Hallo,

ich experimentiere mit LuaLaTeX um das selnolig-Paket zu testen. Ich nutze MiKTeX. Jetzt dauert die Übersetzung mit LuaLaTeX jedes Mal sehr lange, manchmal über eine Minute. Ist das normal oder kann man das irgendwie beschleunigen?

Viele Grüße Tom

gefragt 07 Jan '15, 17:54

tom75's gravatar image

tom75
2.2k277984
Akzeptiert-Rate: 57%

bearbeitet 08 Jan '15, 10:22

saputello's gravatar image

saputello
11.1k174365

Eine Minute ist doch gut. Meine Dokumente brauchen teilweise 7 Minuten. ;-)

(08 Jan '15, 09:38) Johannes

Aber damit lässt es sich doch nicht produktiv arbeiten!

(08 Jan '15, 10:12) tom75

@tom Warum denn nicht? Es gibt \input und Kollegen. Außerdem habe ich einen Switch, welche entweder fontspec, selnolig und anderes LuaZeugs lädt, oder eben halt input- und fontenc für das schnelle Kompilieren zwischendurch mit pdflatex. Und wenn man wirklich alles sehen will, dann kann man mit Hilfe von latexmk oder arara gern auch mal ne Kaffeepause machen ;-)

(08 Jan '15, 10:29) Johannes

Naja, wie man so einen Switch einfügt, weiß ich nicht. Ich hab das manuell versucht und \usepackage{fontspec} hinzugefügt und \usepackage[utf8]{inputenc} und \usepackage{fontenc} auskommentiert. Aber dann gibt es Unterschiede im Schriftbild, z.B. im Mathemodus in TikZ-Nodes sind die Klammern () dünner dargestellt. Es scheint wohl nicht so einfach zu sein, die Datei einmal mit pdflatex und einem mit lualatex zu übersetzen.

(08 Jan '15, 13:28) tom75

So:

\usepackage{ifluatex}

\ifluatex

%fontspec,selnolig

\else

%fontenc,inputenc

\fi

Unterschiede in Schrift und anderen Kleinigkeiten nehme ich für nur mal schnell schauen in Kauf. Jede Medaille hat nun mal zwei Seiten.

(08 Jan '15, 15:00) Johannes

@tom75 @Johannes Codeblöcke in Kommentaren machen noch Probleme, ich habe zu inline code mit backticks umgewandelt.

(08 Jan '15, 18:36) stefan ♦♦

Ah ok, danke! Kann ich aus dem ganzen eine neue Frage machen, hab da jetzt verschiedenes getestet.

(08 Jan '15, 18:37) tom75

@tom Na klar, spezifische Fragen sind super ;-)

@stefan: Danke, werd ich mir merken.

(08 Jan '15, 18:42) Johannes
Ergebnis 5 von 8 show 3 more comments

Das ist leider normal.

Angeblich hat es nur etwas damit zu tun, dass LuaLaTeX sehr lange braucht, um die Fontdatenbank zu lesen und die Fonts einzustellen. Nach meinen eigenen Tests, wird aber jede einzelne Seite der Dokumente langsamer aufgebaut. Ich vermute, dass es daran liegt, dass für jeden einzelnen Node mehrfach die Lua-Maschine die Kontrolle bekommt. Auch wenn das immer nur ganz kurz ist, um ggf. nur zu erkennen, dass kein Callback aufzurufen ist, dürfte es Zeit kosten. Die LuaTeX-Leute hören das nicht so gerne.

Besonders lange – der Hinweis auf über eine Minute deutet auf diesen Fall hin – dauert es, wenn die Font-Datenbank bzw. der Font-Cache neu aufgebaut werden muss. Im Terminal kann man das an der Ausgabe auch ablesen.

Angeblich ist übrigens die JIT-Version von LuaTeX schneller, obwohl die JIT-Fähigkeit bisher nicht genutzt wird. Die JIT-Version (luajittex) wird zumindest bei TeX-Live bisher aber nicht für LuaLaTeX verwendet. Das hat AFAIK etwas damit zu tun, dass die JIT-Version noch auf einer älteren Lua-Version basiert und deshalb nicht komplett kompatibel ist.

Du kannst also auch eher wenig tun, um das ganze zu beschleunigen.

Eine Alternative zu selnolig könnte übrigens rmligs oder delig sein. Da diese beiden nicht auf Ebene des TeX-Prozesses arbeiten, sondern als Zusatzprogramme direkt den Quellcode verändern, funktionieren sie auch mit PDFLaTeX und XeLaTeX. Dafür benötigt das eine Perl und das andere Java.

Permanenter link

beantwortet 07 Jan '15, 18:20

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

bearbeitet 08 Jan '15, 10:19

Auch wenn mir die Antwort nicht "gefällt" :-)... danke. Dann bleibt wohl nur zu hoffen, dass diese schnellere JIT-Version irgendwann zum Einsatz kommt, falls es stimmt, dass LuaLaTeX der Nachfolger werden soll. Und so lange werd ich auf selnolig wohl verzichten müssen und alles von Hand ändern.

(08 Jan '15, 10:14) tom75
1

@tom75: Ich habe mal noch zwei Alternativen zu selnolig in die Antwort eingefügt, die das manuelle Brechen unerwünschter Ligaturen automatisieren helfen und nicht auf LuaLaTeX angewiesen sind.

(08 Jan '15, 10:20) saputello

Das delig scheint mir interessant. Das schau ich mir mal näher an. Danke.

(08 Jan '15, 13:29) tom75

@tom75 LuaTeX wird sicherlich nicht "der" Nachfolger von PDFTeX. Es gibt zu viele inkompatibilitäten zwischen LuaTeX und PDFTeX.

@saputello Die JIT-Version ist deutlich schneller als die reguläre LuaTeX Variante. Schade, dass sie noch nicht benutzt wird. Der langsame Seitenaufbau hat damit zu tun, dass die Absätze noch einmal per Lua verarbeitet werden, um die komplizierteren OpenType-Ligaturen zu verarbeiten. (Es passieren aber auch noch andere Dinge). Ein kurzer Check, ob ein Callback aufgerufen werden soll, dürfte nicht messbar den Lauf verzögern.

(08 Jan '15, 15:07) topskip
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×29
×4

gestellte Frage: 07 Jan '15, 17:54

Frage wurde gesehen: 10,218 Mal

zuletzt geändert: 08 Jan '15, 19:06