Package: dpkg-dev
Version: 1.20.8
Severity: wishlist
Tags: patch upstream

Dear Maintainer,

   * What led up to the situation?

«dpkg-parsechangelog -S <TAB>» and «dpkg-parsechangelog -F <TAB>» don't
currently have zsh completion.

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

I wrote a completion function implementing this.

Please consider installing it to 
«/usr/share/zsh/vendor-completions/_dpkg-parsechangelog».

Thanks,

Daniel

[[[
#compdef dpkg-parsechangelog 

local -a args
args=(
  '(-l --file)'{-l+,--file=}'[specify path to d/changelog]: :_files'
  # Note: We have to use "= " since _perl_modules in zsh ≤5.8 assumes 
${words[1]} is a perl. (See workers/48321)
  '-F+[specify changelog format]:changelog format:= _perl_modules 
--strip-prefix --perl-hierarchy=Dpkg\:\:Changelog'
  '!-L+'
  '(-S --show-field)'{-S+,--show-field=}'[show only one field]:changelog 
field:(Source Version Distribution Urgency Maintainer Date Timestamp Closes 
Changelog)' 
  '(-)'{-\?,--help}'[show the usage message]'
  '(-)--version[show the version information]'
  '--format=[set the output format]:output format:((dpkg\:classic rfc822))'
  '(--all)--reverse[print all changes, oldest to newest]'
  '(--reverse)--all[print all changes, newest to oldest]'
  # TODO: all these should complete version numbers from 
${(Q)opt_args[-l]:-debian/changelog}
  '(-s --since -v)'{-s+,--since=,-v+}'[specify strict lower bound]:version 
number'
  '(-u --until)'{-u+,--until=}'[specify strict upper bound]:version number'
  '(-f --from)'{-f+,--from=}'[specify weak lower bound]:version number'
  '(-t --to)'{-t+,-to=}'[specify weak upper bound]:version number'
  '(-c --count -n)'{-c+,-n+,--count=}'[specify number of entries to 
print]:limit (integer)'
  '(-o --offset)'{-o+,--offset=}'[offset the number of entries to print]:offset 
(integer)'
)
_arguments : "${args[@]}"
]]]

Reply via email to