我正在处理一个 latex 文档(使用 pdflatex、cygwin、acrobat reader),我厌倦了制作-关闭-打开过程。
在 osx 上Preview
我没有这个问题,因为我可以编译文件.tex
,同时生成的pdf在查看器中打开(在构建过程后会更新)。
而在 Win7 上使用 Acrobat Reader 时,我的pdflatex
(tex-live 2012)抱怨说,[...] can't write on file xxx.pdf.
我猜阅读器锁定了 pdf 文件。
如何高效制作/编辑.texWin7 上如何创建文件?我更愿意坚持使用 makefile 和文本编辑器,而不是使用 Windows Latex 构建环境。
答案1
答案2
自 2017 年起,Firefox/Chrome 也可以完成这项工作。Firefox 甚至在 F5 - 刷新后保留当前页面。
答案3
尽管已经有提供本机非阻塞 Windows PDF 阅读器的答案,但我还是遵循了该cygwin/xpdf
方法并编写了一个小脚本。
它基于xpdf
的-remote
选项,可以重新加载已打开的文件。因此,我们只需要检测文件何时更改。由于没有本机inotify
在窗户上你需要安装inotify-win,这是一个C#
程序。
我的脚本xpdf-f
似乎运行良好,但是xpdf
一旦完成观看 PDF,您就必须关闭这两者,然后关闭脚本(通过 Strg+C)。
#!/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