#compdef patch local comp_p='compadd "$expl[@]" -S0 -r "1-9" - ""' _arguments -s \ '(--strip)-p+:number:'"{$comp_p}" \ '(--fuzz)-F+:lines:' \ '(--context)-c' \ '(--ed)-e' \ '(--force)-f' \ '(--batch)-t' \ '(--ignore-whitespace)-l' \ '(--normal)-n' \ '(--forward)-N' \ '(--reverse)-R' \ '(--silent --quiet)-s' \ '(--skip)-S' \ '(--unified)-u' \ '(--version)-v' \ -{E,Z,T} \ '-i+:patch file:_files' \ '(--output)-o+:output file:_files' \ '(--reject-file)-r+:reject file:_files' \ '(--ifdef)-D+:name:' \ '(--version-control)-V+:version control style:(simple numbered existing)' \ '(--prefix)-B+:backup path prefix:' \ '(--suffix)-b:backup extension:' \ '-Y+:backup basename prefix:_files' \ '-z+:backup file suffix:(.bak)' \ '-g+:NUM:' \ '(--directory)-d+:chdir to:_files -/' \ ':original file:_files' \ ':patch file:_files' \ -- \ '*strip=NUM*:number:'"{$comp_p}" \ '*get=NUM*:get files from RCS etc:' \ '*=LINES*:lines:' \ '*=PATCHFILE*:patch file:_files' \ '*=FILE*:file:_files' \ '*=NAME*:name:' \ '*=WORD*:quoting style:(literal shell shell-always c escape)' \ '*=STYLE*:version control style:(simple numbered existing)' \ '*=SUFFIX*:backup file suffix:(.bak)' \ '*=DIR*:chdir to:_files -/'