bikeshed watch script

This commit is contained in:
xenia 2022-12-01 01:02:24 -05:00
parent e2fee2f19a
commit 0b5ff3eab5
1 changed files with 18 additions and 16 deletions

View File

@ -12,9 +12,11 @@
(define (watch-forever file) (define (watch-forever file)
(sleep 0.2) (sleep 0.2)
(define chg-evt (filesystem-change-evt file (lambda () (match (filesystem-change-evt file (λ () #f))
[#f
(displayln "error watching file...") (displayln "error watching file...")
(sleep 1) (watch-forever file)))) (sleep 1)]
[chg-evt
(define runner (thread (lambda () (reinvoke file)))) (define runner (thread (lambda () (reinvoke file))))
(define (handle-break _) (define (handle-break _)
@ -29,7 +31,7 @@
(with-handlers ([exn:break? handle-break]) (with-handlers ([exn:break? handle-break])
(sync chg-evt) (sync chg-evt)
(kill-thread runner)) (kill-thread runner))])
(watch-forever file)) (watch-forever file))
(define-runtime-path aoc "aoc.rkt") (define-runtime-path aoc "aoc.rkt")