mupdf가 자동으로 문서를 새로 고치도록 하는 방법

mupdf가 자동으로 문서를 새로 고치도록 하는 방법

PDF를 열고 evince문서를 변경한 후(LaTeX에서 다시 컴파일) evince자동으로 문서의 최신 버전으로 새로 고쳐집니다.

mupdf하지만 그렇게 되지는 않습니다. 원래 열었던 버전이 계속 표시됩니다. 이 명령을 사용하여 최신 버전을 로드할 수 있지만 , 이렇게 작동하도록 r하는 방법이 있습니까 ? 지침에는 이에 대한 언급이 없습니다.mupdfevince

답변1

문서가 변경된 후 신호로 스탬프를 찍습니다 mupdf(예: 재컴파일 후 또는 파일 시스템 변경을 기록하기 위해 무언가를 사용한 후).HUPentr

pkill -HUP mupdf

아니면 좀 더 복잡한 경우가 있을 수도 있습니다공개 또는 신호 mupdf스크립트 작성.

답변2

thrig의 답변에 추가하기 위해 이것이 내가 생각해 낸 것입니다.

f=file.pdf; mupdf $f & while inotifywait -e close_write $f; do pkill -HUP mupdf; done

그러면 mupdf를 사용하여 PDF 파일이 열리고 PDF를 작성하는 동안 새로 고쳐집니다.

inotify를 사용하려는 아이디어는 다음에서 나왔습니다.이 답변

답변3

이 내 꺼야:

#!/usr/bin/fish

set f $argv[1]
mupdf $f &
set mu_pid $last_pid
while true
    inotifywait --event close_write $f &
    set in_pid $last_pid
    wait --any $mu_pid $in_pid
    if not jobs --query $mu_pid
        exit 0
    end
    kill -HUP $mu_pid
end

모든 인스턴스를 플러시하는 대신 파일이 실제로 변경된 mupdf 인스턴스의 특정 PID만 새로 고칩니다.

관련 정보