Only watch if 'watch' passed as argument

main
Charlotte Som 2021-07-13 03:32:52 +01:00
parent 079a581c69
commit 68209baa77
1 changed files with 15 additions and 12 deletions

View File

@ -45,21 +45,24 @@ fn build() {
} }
fn main() { fn main() {
println!("Watching...\n"); build();
if matches!(std::env::args().nth(1).as_deref(), Some("watch")) {
use notify::*; use notify::*;
let (tx, rx) = std::sync::mpsc::channel(); let (tx, rx) = std::sync::mpsc::channel();
let mut watcher = watcher(tx, Duration::from_millis(100)).unwrap(); let mut watcher = watcher(tx, Duration::from_millis(100)).unwrap();
build();
watcher.watch("./src", RecursiveMode::Recursive).unwrap(); watcher.watch("./src", RecursiveMode::Recursive).unwrap();
println!();
log_info("Watching…\n");
loop { loop {
match rx.recv() { match rx.recv() {
Ok(_) => build(), Ok(_) => build(),
Err(_) => break, Err(_) => break,
} }
} }
}
} }