summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile6
-rwxr-xr-xwatch.sh17
2 files changed, 22 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index ab5803b..1671523 100644
--- a/Makefile
+++ b/Makefile
@@ -18,4 +18,8 @@ $(NAMES): $(%:.pdf=.tex)
clean:
@rm *.pdf
@rm -r /tmp/*-sts-build
-.PHONY: all clean \ No newline at end of file
+
+watch: watch.sh
+ ./watch.sh
+
+.PHONY: all clean watch \ No newline at end of file
diff --git a/watch.sh b/watch.sh
new file mode 100755
index 0000000..c591037
--- /dev/null
+++ b/watch.sh
@@ -0,0 +1,17 @@
+#!/bin/env bash
+
+# We first generate the PDFs from the start
+make all
+
+# We then listen for changes
+inotifywait -r -m -e modify . |
+ while read file_path file_event file_name; do
+ extension="${file_name##*.}"
+ # If the changed file is a TEX file
+ if [[ "$extension" == "tex" ]]
+ then
+ name="${file_name%%.*}"
+ # We call the make target in order to build it
+ make "$name.pdf"
+ fi
+ done