swc/bundler/tests/.cache/deno/ccd4913c44e4ed7a6ffc108d1a72704acf50d08d.ts
강동윤 fec189f2f3
fix(bundler): Fix stack overflow on Windows (#1464)
bundler:
 - Prevent stack overflow. (denoland/deno#9752)

testing:
 - Bump version
 - Fix handling of paths on windows.

testing_macros:
 - Bump version
 - Correctly ignore files.
2021-03-22 19:42:42 +09:00

32 lines
978 B
TypeScript

// Loaded from https://deno.land/x/cliffy@v0.18.0/command/completions/zsh.ts
import { Command } from "../command.ts";
import { dim, italic } from "../deps.ts";
import { ZshCompletionsGenerator } from "./_zsh_completions_generator.ts";
/** Generates zsh completions script. */
export class ZshCompletionsCommand extends Command<void> {
#cmd?: Command;
public constructor(cmd?: Command) {
super();
this.#cmd = cmd;
this.description(() => {
const baseCmd = this.#cmd || this.getMainCommand();
return `Generate shell completions for zsh.
To enable zsh completions for this program add following line to your ${
dim(italic("~/.zshrc"))
}:
${dim(italic(`source <(${baseCmd.getPath()} completions zsh)`))}`;
})
.action(() => {
const baseCmd = this.#cmd || this.getMainCommand();
Deno.stdout.writeSync(new TextEncoder().encode(
ZshCompletionsGenerator.generate(baseCmd),
));
});
}
}