Hi,

ich bin auf der Suche nach einem LaTeX-Editor, der in der Lage ist, automatisch bei jeder neuen Eingabe das Latex-Dokument zu übersetzen und anzuzeigen.

Hintergrund meiner Frage ist, dass ich zur Zeit viel mit TikZ arbeite und beim erstellen der Grafiken oft manuell eine Übersetzung des LaTeX-Dokuments anstoßen muss, um mir das Ergebnis anzeigen zu lassen. Als Betriebsystem verwende ich Windows, sofern das bei meiner Frage eine Rolle spielen sollte.

gefragt 20 Dez '14, 18:10

jambaleija's gravatar image

jambaleija
67248
Akzeptiert-Rate: 0%

bearbeitet 04 Jan '15, 14:58

cgnieder's gravatar image

cgnieder
22.1k253463

2

So etwas ist immer schwierig, da während des Tippens kurzzeitig oft die Syntax fehlerhaft ist. Online-Editoren wie writerLaTeX versuchen so etwas zwar, landen aber hin und wieder eben in der Syntaxfalle. Oft sind manuelle Trigger wie das Verlassen der Umgebung (beispielsweise bei aucTeX mit aktiviertem preview) oder eben das Drücken einer Taste(nkombination) wie bei den meisten Editoren mit integriertem PDF-Viewer eine gute Lösung. Das integrierte Preview von emacs+aucTeX hat dabei den Vorteil, dass nicht das ganze Dokumente, sondern nur der relevante Teil neu übersetzt wird.

(20 Dez '14, 18:27) saputello

Es gibt einen Editor, welcher sich auf TikZ spezialisiert und immer wieder die Übersetzung startet. Allerdings ist die Zeit größer Null, die du brauchst um den Code einzutippen. Deswegen bekommst du immer wieder Fehler geschmissen, weil die Kompilation nicht erfolgreich ist. Das ging mir ziemlich schnell auf den Sender und ich hab das Ding runtergeschmissen.

(21 Dez '14, 12:39) Johannes

Gummi habe ich mal ausprobiert. Das Programm bietet in der Tat Echtzeit-Kompilierung. Sollte deinen Anforderungen also entsprechen.

(31 Dez '14, 16:48) an_hausmann

@an_hausmann Willkommen auf der TeXwelt! Ich habe Deine Antwort in einen Kommentar umgewandelt. Das passt besser für die kurze bestätigende Anmerkung (ausführlicher steht es schon Henris Antwort). Klare Trennung in Frage und Antworten/Lösungen verbessert die Übersicht für die Archivierung der Lösungen. Ungewohnt und anders als in Webforen, doch innovativ und nutzbarer. Bemerkungen gern wie hier als Kommentare. Wenn Du zu Gummi mehr sagen willst, als eine Bemerkung, gern als Antwort. :-)

(31 Dez '14, 16:59) stefan ♦♦

Easy: Schreib Dir einfach ein Script oder eine Batch oder ein c++-Programm, welche die Datei in definierten Zeitabständen wiederholt kompilieren. Öffne eine Konsole, starte das Script, öffne den Editor, öffne die PDF-Datei. Ordne alles übersichtlich auf dem Bildschirm an. Schreibe Deine Datei und speichere hin und wieder. Mehr braucht es nicht.

(02 Jan '15, 00:03) easy
2

So etwas, wie @easy beschreibt, gibt es bereits, heißt latexmk und macht den neuen LaTeX-Lauf immer dann, wenn man eine der Dateien, die zum Projekt gehören, speichert.

(03 Jan '15, 13:54) saputello
Ergebnis 5 von 6 show 1 more comments

[Die offiziellen Webseiten beider Projekte sind zurzeit offline. Ich hab daher andere Seiten auf die Bilder verlinkt, wo man auch ein wenig Information findet.]


Ich kenne zwei dieser Instant-Preview Editoren:

Gummi

Diesen benutze ich nicht, deshalb hier ein Ausschnitt aus der Wikipedia-Feature-Liste:

  • Live Preview: Ein PDF wird erzeugt ohne es manuell anstoßen zu müssen
  • Snippets
  • Grafischer Tabellen- und Bild-Einfüge-Assistent
  • Vorlagen für neue Dokumente
  • Projekt Management
  • Bibliograpie Management
  • SyncTeX Integration

alt text

QTikZ / KTikZ

QTikZ (KTikZ mit KDE-Integration) ist eigentlich ein Echtzeit-TikZ-Editor, kann aber umkonfiguriert werden sodass er jedes Dokument in Echtzeit anzeigt. Einfach eine Vorlage erstellen, die nur

Open in writeLaTeX
<>

enthält. Allerdings gibt es für alles außer TikZ keine Syntax-Vervollständigung.

Ich persönlich baue mit QTikZ immer meine TikZ-Bilder, die ich dann später in größere Dokumente einfüge.

alt text

latexmk

Das Tool latexmk bietet die Kommandozeilenoption -pvc an, die dazu führt, dass die zu kompilierende Datei auf Änderungen überwacht wird. Bei Änderung wird dann natürlich die Übersetzung angestoßen.

Open in writeLaTeX
latexmk -pdf -pvc test.tex

führt durch die -pdf Option pdflatex test.tex aus sobald die Datei gespeichert wird.

inotify (nur GNU/Linux)

Der Linux-Kernel hat ein Modul namens inotify, das Dateisystem-Events wie ändern, öffnen oder löschen einer Datei, eines Verzeichnisses, etc. verarbeiten kann. Das folgende Skript benutzt inotifywait aus den inotify-tools um das aktuelle Verzeichnis auf Änderungen zu überwachen.

Open in writeLaTeX
1
2
3
4
5
6
7
#!/bin/sh
FORMAT=$(echo "\033[1;33m%w%f written\033[0m")
"$@"
while inotifywait -qre close_write --format "$FORMAT" .
do
    "$@"
done

Speichern wir das Skript als inotifyrun und führen ./inotifyrun pdflatex test.tex aus, so startet das Skript pdflatex test.tex wenn sich eine Datei ändert.

Permanenter link

beantwortet 22 Dez '14, 14:39

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

bearbeitet 02 Jan '15, 11:44

Ui, es gibt auch einen "TikZ-Editor"? Und ich weiß wieder nix davon.

(22 Dez '14, 17:22) cis

@Henri: Die Idee mit inotify ist auf den ersten Blick nett. Allerdings ist das Compilieren nur die halbe Miete. Die Anzeige des zugehörigen PDFs muss auch noch aufgefrischt werden. Bei okular dürfte das automatisch gehen. Bei evince bin ich mir nicht sicher, ob man nicht Ctrl-r drücken muss. Beim (nicht mehr unterstützten) AdobeReader müsste man die Datei ev. sogar schließen und neu öffnen. Bei xpdf und diversen anderen PDF-Viewern (auch den in Editoren integrierten) habe ich keine Ahnung.

(04 Jan '15, 13:24) saputello

In Kile gibt es einen live preview, der sich noch in Entwicklung befindet.

Kile ist ein KDE-basierter umfangreicher LaTeX-Editor, der auch unter Windows läuft. Man kann direkt KDE auf Windows installieren einschließlich Kile-Paket. Alternativen sind z.B. Virtualisierung von Linux und andLinux auf Windows.

Permanenter link

beantwortet 04 Jan '15, 13:39

stefan's gravatar image

stefan ♦♦
18.3k163148
Akzeptiert-Rate: 50%

-4

Easys Antwort: Schreib Dir einfach ein Script oder eine Batch oder ein c++-Programm, welche die Datei in definierten Zeitabständen wiederholt kompilieren. Öffne eine Konsole, starte das Script, öffne den Editor, öffne die PDF-Datei. Ordne alles übersichtlich auf dem Bildschirm an. Schreibe Deine Datei und speichere hin und wieder. Mehr braucht es nicht.

Permanenter link

beantwortet 02 Jan '15, 22:35

easy's gravatar image

easy
-91
Akzeptiert-Rate: 0%

bearbeitet 04 Jan '15, 21:37

2

Wenn man manuell speichern muss, damit Änderungen beim Kompilieren wirksam werden, dann würde das zumindest mir nichts bringen. Wenn in meinem Editor das Kompilieren angestoßen wird, speichert er vor diesem automatisch. Das ist dann der gleiche Aufwand mit einem in der Regel schnelleren Ergebnis.

Vielleicht gibst Du einfach ein funktionierendes Skript für eines der gängigen Betriebssysteme an, damit man ausprobieren kann, was Du meinst.

(04 Jan '15, 01:56) esdd
2

@easy Ich glaube ehrlich gesagt auch nicht, dass es mit "öffne den Editor" und externem Compilieren "in definierten Zeitabständen" getan ist. Bei einem Editor mit integriertem Viewer heißt das nämlich noch lange nicht, dass der integrierte Viewer auch etwas davon mitbekommt, dass ggf. die Anzeige aufzufrischen ist. Auch nicht alle externen PDF-Viewer überwachen das PDF auf Änderungen und laden es ggf. neu und zeigen ggf. die aktuelle Seite neu an. Man müsste also bezüglich der verwendbaren Werkzeuge schon etwas konkreter werden oder erklären wie die Zusatzsoftware das sicherstellen kann.

(04 Jan '15, 13:20) saputello
2

@easy Mindestvoraussetzung ist nicht, dass das Betriebssystem eine Änderung der Datei bemerkt. Sondern dass der Editor eine Änderung im Objekt im RAM bemerkt und reagiert. Die Dateiänderung ist nur eine Folge. Speichern ist keine notwendige Nutzeraktion.

(04 Jan '15, 22:19) stefan ♦♦

@stefan Guter Hinweis. Genau das versuche ich gerade zu realisieren. Programmtechnisch ist es gleichwertig, ob das OS oder der Editor eine Änderung im Speicher oder auf der Festplatte bemerkt. Vollzogen(ge-speichert) werden muß die jeweilige Änderung auf jeden Fall, und ohne OS tut's ja auch kein Editor. Ausschlaggebend ist die Prozesskommunikation und letztendlich die Übergabe an das TeX-Programm. Ob das im RAM oder auf der Platte stattfindet, ist nur eine Frage der Datensicherheit. Wird schon... bye

(05 Jan '15, 00:20) easy
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:

×24
×20

gestellte Frage: 20 Dez '14, 18:10

Frage wurde gesehen: 23,578 Mal

zuletzt geändert: 06 Jan '15, 23:54