diff options
author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-08-03 18:08:22 +0200 |
---|---|---|
committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-08-03 18:08:22 +0200 |
commit | d4c8bfd6f9fc4617b8abf7296cf65bcf5f7cc395 (patch) | |
tree | 8ae948332bcd44edc7c48e2d0698326dde6a66f2 /build/latex/academia/watch.sh | |
parent | chore(templates): Use new common files (diff) | |
download | flake-templates-d4c8bfd6f9fc4617b8abf7296cf65bcf5f7cc395.tar.gz flake-templates-d4c8bfd6f9fc4617b8abf7296cf65bcf5f7cc395.zip |
chore(build): Regenerate
Diffstat (limited to '')
-rwxr-xr-x | build/latex/academia/watch.sh | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/build/latex/academia/watch.sh b/build/latex/academia/watch.sh new file mode 100755 index 0000000..e5147f2 --- /dev/null +++ b/build/latex/academia/watch.sh @@ -0,0 +1,70 @@ +#!/usr/bin/env sh + +help() { + cat <<EOF +An simple watch script, useful to see the changes in the document as it evolves. + +USAGE: + watch.sh [OPTIONS] [COMMAND] + +OPTIONS: + --help | -h + Display this help and exit. + + --open [READER] | -o [READER] + Open the build PDF in READER before waiting for changes. + READER defaults to the READER environment variable or + 'zathura' if the env variable is unset. + --sleeptime [T] | -s [T] + How long to sleep between each build attempt in seconds. The + time defaults to 10 seconds. +ARGUMENTS: + READER := [[echo "\${READER-zathura}"]] + The reader to open the build PDF with. + + T := [[seq 1 100]] + The time to sleep between each build attempt. +EOF +} + +reader="" +time="10" +for arg in "$@"; do + case "$arg" in + "--help" | "-h") + help + exit 0 + ;; + + "--open" | "-o") + shift 1 + reader="$1" + if [ -z "$reader" ]; then + reader="${READER-zathura}" + else + shift 1 + fi + ;; + + "--sleeptime" | "-s") + shift 1 + time="$1" + if [ -z "$time" ]; then + time=10 + else + shift 1 + fi + ;; + *) + echo "'$1' is not a recognized option! See '--help' for more detail." 1>&2 + exit 1 + ;; + esac +done + +[ -n "$reader" ] && "$reader" ./build/%INIT_APPLICATION_NAME.pdf & + +while true; do + ./build.sh + sleep "$time" +done |