Я использую watchman
для просмотра каталога файлов LaTeX. Когда файл LaTeX редактируется, срабатывает триггер, который (1) перестраивает pdf из отредактированного файла LaTeX, а затем (2) снова открывает новый pdf в Preview. (Это на macOS 10.15.3, и я использую сторож 4.9.0_3, который я установил через brew
.) Ниже представлен триггер и небольшой скрипт оболочки, который вызывает триггер:
[
"trigger", "./", {
"name": "rebuild-tex",
"expression": [ "match", "*.tex" ],
"command": [ "do-it" ],
"append_files": true
}
]
#!/usr/local/bin/bash
set -e
target="${1##*/}"
target="${target%.tex}"
osascript -e 'quit app "Preview"' && make "${target}" && open "${target}.pdf"
(Мне все это кажется неуклюжим, поэтому, если у кого-то есть идея для самого триггера, отлично!)
Это работает, когда я сохраняю правку, например, crito.tex
, триггер (1) выходит из режима предварительного просмотра, (2) вызывает make
с crito
в качестве аргумента и (3) открывает заново только что построенный crito.pdf
с предварительным просмотром.
Однако есть зомб ie событие. Когда я запускаю свой компьютер, указанный c pdf файл (meno.pdf
из meno.tex
) перестраивается и открывается в Preview даже до того, как я отредактировал этот файл, или я нахожусь в соответствующем каталоге . Кроме того, если я удаляю триггер, останавливаю watchman
, перезапускаю watchman
и перезагружаю триггер, то boom: meno.pdf
немедленно перестраивается и открывается в Preview. Опять же, это вообще без моего редактирования этого файла.
Я вижу вызов make
в моих watchman
журналах, но я не вижу почему watchman
думает, что это должно сработать Поэтому я понятия не имею, как, так сказать, убить событие зомба ie навсегда. Есть предложения?