#compdef dd

_values -w 'option' \
  'if[specify input file]:input file:_tilde_files' \
  'of[specify output file]:output file:_tilde_files' \
  '(bs)ibs[input block size]:block size (bytes)' \
  '(bs)obs[output block size]:block size (bytes)' \
  '(ibs obs)bs[block size]:block size (bytes)' \
  'cbs[conversion buffer size]:buffer size (bytes)' \
  'skip[input blocks initially skipped]:blocks' \
  'seek[output blocks initially skipped]:blocks' \
  'files[specify number of input files to copy and concatenate]:number of files' \
  'count[number of input blocks to copy]:blocks' \
  'conv[specify conversions to apply]:conversion:_values -s , conversion
    "(ebcdic ibm)ascii" "(ascii ibm)ebcdic" "(ascii ebcdic)ibm"
    "(unblock)block" "(block)unblock"
    "(ucase)lcase" "(lcase)ucase" swab noerror sync'
