latexmk - запуск команды bash для остановки синхронизации Dropbox

Я использую latexmk, чтобы скомпилировать тезис LaTeX. Я сохраняю тезис на своем Dropbox, и, поскольку создаются десятки или сотни.aux и связанных файлов, индексация Dropbox вызывает значительные накладные расходы.

Таким образом, я хочу вставить следующий скрипт bash, прежде чем компиляция начнет останавливать Dropbox:

#!/usr/bin/env bash
dropbox_pid="$echo $(pgrep Dropbox)"
kill -STOP $dropbox_pid

и соответственно, чтобы перезапустить Dropbox в конце, я бы хотел:

#!/usr/bin/env bash
dropbox_pid="$echo $(pgrep Dropbox)"
kill -CONT $dropbox_pid

Как мне это сделать, отредактировав локальный latexmkrc?

2 ответа

Не уверен, что вы сможете отправить сигнал SIGCONT из latexmkrc; Разве этот файл не получен до компиляции?

Вы можете попробовать установить функцию bash, такую ​​как:

compile () {
pkill -STOP Dropbox;
# compile_command "$@"
pkill -CONT Dropbox
}

Установка рабочих каталогов ($aux_dir а также $out_dir) где-нибудь за пределами хранилища Dropbox, вы можете избежать чрезмерной синхронизации Dropbox.

Следующее из моего $HOME/.latexmk, Он находит рабочий каталог в ~/.tmp/tex/THE_NAME_OF_MY_WRITING_PROJECT и пытается создать его, если его нет.

$aux_dir            = "$ENV{HOME}/.tmp/tex/" . basename(getcwd);
$out_dir            = $aux_dir;
mkpath($aux_dir);
Другие вопросы по тегам