PDFのライブ更新を処理するPDFビューア/ファイルをロックしません


17

私はラテックスドキュメント(pdflatex、cygwin、acrobatリーダーを使用)に取り組んでおり、make - close - openプロセスにうんざりしてます。

osxではPreview.texファイルをコンパイルできるので、その問題はありませんが、結果のpdfはビューアーで開きます(ビルドプロセス後に更新されます)。

一方、Win7では、Acrobat Readerを使用して、私のpdflatex(tex-live 2012)[...] can't write on file xxx.pdf.は、リーダーがpdfファイルをロックすると推測します。

Win7で.texファイルを効率的に生成/編集するにはどうすればよいですか?Windowsラテックスビルド環境の代わりに、メイクファイルとテキストエディターを使用することをお勧めします。


それがあなたのためのオプションであるなら:私は思う(今それをチェックできない)xpdfvia cygwinはそのように働く。ただし、表示されたファイルを更新するには、ページを前後に切り替える必要があります。
mpy

Thx、それは初心者に適しています。しかし、Macでの処理方法がわかっているので、他のソリューションがあればうれしいです。
マイク

回答:


16

SumatraPDFは、現在のワークフローで使用できます。ファイルをロックしません。また、エディターとpdfドキュメント間の同期もサポートしています。


1
少し前に同じことを投稿したかったのですが、自分の質問に10人未満で答えることができませんでした... :)とにかく、ありがとう!
マイク

2

ネイティブのノンブロッキングWindows PDFリーダーを提供する回答が既にありますが、私はこのcygwin/xpdfアプローチに従って小さなスクリプトを一緒にハッキングしました。

これは、既に開いているファイルをリロードすることが可能なxpdf-remoteオプションに基づいています。そのため、ファイルがいつ変更されたかを検出するだけで済みます。inotifyWindowsにはネイティブがないため、プログラムであるinotify-winをインストールする必要がありますC#

私のスクリプトxpdf-fは正常に動作するように見えますが、両方を閉じなければならずxpdf、スクリプトは(Strg + Cを介して)PDFの視聴を終了します。

#!/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

2017年の時点で、Firefox / Chromeもその役割を果たします。FirefoxはF5-更新後も現在のページを保持します。


2
回答に詳細を追加できますか?「Xは仕事をする」と言うのは、あまりにもあいまいすぎて役に立ちません。貢献してくれてありがとう。
私は、モニカを復活させる

1
一般に、Webブラウザは動作するはずです。RESTクライアントのデフォルト/通常/予想される動作は、URLのコンテンツをロードしてから接続を閉じることです。
user560822
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.