diff options
author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-10-04 12:31:16 +0200 |
---|---|---|
committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-10-04 12:31:16 +0200 |
commit | 1cb8504a4dfcf5977411267c80d4ee62a180c2d6 (patch) | |
tree | 69c696740bdc1a8c6b9c205ec0d3c2c47cd2e32b /build/latex/presentation/watch.sh | |
parent | fix(templates/latex/academia/main.tex): Default to `draft` mode (diff) | |
download | flake-templates-1cb8504a4dfcf5977411267c80d4ee62a180c2d6.tar.gz flake-templates-1cb8504a4dfcf5977411267c80d4ee62a180c2d6.zip |
chore(build): Regenerate
Diffstat (limited to '')
-rwxr-xr-x | build/latex/presentation/watch.sh | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/build/latex/presentation/watch.sh b/build/latex/presentation/watch.sh new file mode 100755 index 0000000..e5147f2 --- /dev/null +++ b/build/latex/presentation/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 |