Problem: compile() unconditionally resolved the reload command, so
:Preview build on a provider with reload = function/table (e.g. typst)
would start a long-running process (typst watch) instead of a one-shot
compile (typst compile). Error diagnostics were also lost because
typst watch does not exit non-zero on input errors.
Solution: add an opts parameter to compile() with a oneshot flag.
M.build() passes { oneshot = true } so resolve_reload_cmd() is
skipped and the one-shot path is always taken. toggle() continues
to call compile() without the flag, preserving long-running behavior
for watch mode.
|
||
|---|---|---|
| .. | ||
| commands.lua | ||
| compiler.lua | ||
| diagnostic.lua | ||
| health.lua | ||
| init.lua | ||
| log.lua | ||
| presets.lua | ||
| reload.lua | ||