diff options
Diffstat (limited to 'bin/latexmk')
| -rwxr-xr-x | bin/latexmk | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/bin/latexmk b/bin/latexmk new file mode 100755 index 0000000..61b68f5 --- /dev/null +++ b/bin/latexmk @@ -0,0 +1,46 @@ +#!/bin/bash + +set -e +[ -n "$DEBUG" ] && set -x + +reexec= +while getopts 1Rnh opt; do + case "$opt" in + 1) entr_args='-z' ;; + R) reexec=1 ;; + n) nocolor=1 ;; + h|?) printf "usage: %s [-h]\n" "$(basename "$0")" + printf "\n" + printf " -1 \t oneshot mode\n" + printf " -n \t no color\n" + printf "\n" + exit 2 ;; + esac +done +shift $((OPTIND - 1)) + +if [ -n "${reexec}" ]; then + pdf=$(readlink -f -- $(printf $1 | sed 's/\.tex/\.pdf/')); + log() { + if [ -n "${nocolor}" ]; then + printf "$(tput setaf 2)!>>>$(tput sgr0) $1\n" + else + printf "=> $1\n" + fi + } + log "running tectonic" + tectonic --chatter=minimal "$1" + if ! pgrep -fx "zathura $pdf" >/dev/null; then + log "running zathura" + swaymsg exec zathura "$pdf" >/dev/null + fi + printf -- '!! ' + exit 0 +fi + +if [ -z "$1" ]; then + ls *.tex +else + [ -f "$1" ] && printf "$1\n" + ls *.tex +fi | entr ${entr_args} -ns 'latexmk -R $0' |