도움말 만드는 게 생각보다 생각할 게 많구나. 사실 정형화되어 있으면 아주 쉬운 문제인데, 파서 컴비네이터를 만들어 놔서 도움말 예쁘게 출력하는 게 어려운 문제가 된 듯…
유시지(usage) 출력까지는 어떻게 구현 했다. 그런데 이건 쉬운 문제고, 도움말이 정말 어려운 문제인데…
optique <main?> $ deno run example.ts
Usage: example.ts one [-a/--allow] -v/--value INTEGER ARG
example.ts two [-f/--foo] -b/--bar VALUE
example.ts three [-d/--deny] -t/--test INTEGER [-z/--baz] -q/--qux QUX
example.ts nest foo [-a/--allow] -v/--value INTEGER ARG
example.ts nest bar [-f/--foo] -b/--bar VALUE
Error: No parser matched.