diff --git a/citty.ts b/citty.ts index fc4272c..4219475 100644 --- a/citty.ts +++ b/citty.ts @@ -96,8 +96,11 @@ export default function tab(mainCommand) { if (toComplete.startsWith("--")) { if (toComplete === "--") { const allFlags = [...flagMap.keys()]; + const specifiedFlags = previousArgs.filter(arg => arg.startsWith('--')); + const availableFlags = allFlags.filter(flag => !specifiedFlags.includes(flag)); + completions.push( - ...allFlags.map( + ...availableFlags.map( (flag) => `${flag}\t${matchedCommand.args[flag.slice(2)]?.description ?? "Option"}` )