Support shebangs in scripts.

This commit is contained in:
Stephen Chung
2021-03-28 16:36:56 +08:00
parent ea970631ff
commit 7825cb1c56
4 changed files with 31 additions and 7 deletions

View File

@@ -58,13 +58,20 @@ fn main() {
exit(1);
}
if let Err(err) = engine.consume(&contents) {
let contents = if contents.starts_with("#!") {
// Skip shebang
&contents[contents.find('\n').unwrap_or(0)..]
} else {
&contents[..]
};
if let Err(err) = engine.consume(contents) {
eprintln!("{:=<1$}", "", filename.len());
eprintln!("{}", filename);
eprintln!("{:=<1$}", "", filename.len());
eprintln!("");
eprint_error(&contents, *err);
eprint_error(contents, *err);
}
}
}