diff --git a/share/completions/deno.fish b/share/completions/deno.fish index e5ad22dbb..1b1efceed 100644 --- a/share/completions/deno.fish +++ b/share/completions/deno.fish @@ -2,23 +2,18 @@ deno completions fish | source # complete deno task set searchForDenoFilesCode ' +// order matters const denoFile = ["deno.json", "deno.jsonc", "package.json"]; for (const file of denoFile) { try { Deno.statSync(file); // file exists - if (file === "package.json") { - console.log( - Object.keys(JSON.parse(Deno.readTextFileSync(file)).scripts).join("\n"), - ); - } else { - console.log( - Object.keys(JSON.parse(Deno.readTextFileSync(file)).tasks).join("\n"), - ); - } + const props = file === "package.json" ? "scripts" : "tasks"; + console.log( + Object.keys(JSON.parse(Deno.readTextFileSync(file))[props]).join("\n"), + ); break; - } catch { - } + } catch {} } ' complete -f -c deno -n "__fish_seen_subcommand_from task" -n "__fish_is_nth_token 2" -a "(deno eval '$searchForDenoFilesCode')"