PDF-Viewer, der die Live-Aktualisierung von PDF / Dateien übernimmt, sperrt die Datei nicht

4625
mike

Ich arbeite gerade an einem Latex - Dokument (mit pdflatex, Cygwin, Acrobat Reader), und ich bin bin müde von der Make - nah - offen Prozess.

Bei osx mit habe Previewich dieses Problem nicht, da ich die .texDateien kompilieren kann, während das resultierende PDF im Viewer geöffnet wird (der nach dem Build-Vorgang aktualisiert wird).

Während unter Win7 mit Acrobat Reader mein pdflatex(tex-live 2012) sich darüber beschwert, dass [...] can't write on file xxx.pdf.der Leser die PDF-Datei sperrt.

Wie können Sie .tex- Dateien auf Win7 effizient erstellen / bearbeiten ? Ich würde lieber Makefiles und einen Texteditor anstelle einer Windows-Latex-Build-Umgebung verwenden.

13
Wenn das eine Option für Sie ist: Ich denke (kann es jetzt nicht überprüfen) `xpdf` via` cygwin` funktioniert so. Sie müssen jedoch die Seite vor und zurück drehen, um die angezeigte Datei zu aktualisieren. mpy vor 11 Jahren 0
Thx, es ist gut für den Anfang. Aber da ich weiß, wie es auf dem Mac gehandhabt wird, wäre ich froh, andere Lösungen zu haben. mike vor 11 Jahren 0
Siehe http://tex.stackexchange.com/q/2006/5763 Martin Schröder vor 11 Jahren 2

3 Antworten auf die Frage

12
Mattias

SumatraPDF kann in Ihrem aktuellen Workflow verwendet werden. Die Datei wird dadurch nicht gesperrt. Es unterstützt auch die Synchronisation zwischen Editor und PDF-Dokument.

Ich wollte dasselbe vor einer Minute posten, aber ich konnte meine eigene Frage nicht mit weniger als 10 Wiederholungen beantworten ... :) Wie auch immer, danke! mike vor 11 Jahren 1
1
mpy

Obwohl es bereits eine Antwort gibt, die einen nativen nicht blockierenden Windows-PDF-Reader bietet, folgte ich dem cygwin/xpdfAnsatz und hackte ein kleines Skript zusammen.

Es basiert auf xpdfder -remoteOption, mit der es möglich ist, eine bereits geöffnete Datei erneut zu laden. Wir müssen also nur feststellen, wann die Datei geändert wird. Da es inotifyunter Windows keine native Version gibt, müssen Sie inotify-win installieren, ein C#Programm.

Mein Skript xpdf-fscheint gut zu funktionieren, aber Sie müssen beide schließen, xpdfund das Skript (über Strg + C) ist fertig, sobald Sie die PDF-Datei angesehen haben.

#!/bin/bash  if [[ "$1" = "" ]]; then echo Usage: $0 FILE exit 1 fi  if [[ ! -e "$1" ]]; then echo Error: File $1 does not exist. exit 2 fi  xpdf -remote filewatch "$1" & XPDFPID=$!  while [[ -e /proc/$XPDFPID ]]; do inotifywait `dirname $1` | grep "MODIFY $1" [[ $? = 0 ]] && xpdf -remote filewatch -reload done 
-1
isti_spl

Ab 2017 kann auch Firefox / Chrome die Arbeit erledigen. Firefox behält sogar die aktuelle Seite nach F5 - Refresh bei.

Können Sie Ihrer Antwort mehr Details hinzufügen? "X macht den Job" ist zu vage, um hilfreich zu sein. Vielen Dank für Ihren Beitrag. Twisty Impersonator vor 7 Jahren 0