[Bash-completion-devel] improvements for tar, cryptsetup, imagemagick completions and the _parse_help function
Frank Harwald
franki777 at xmail.net
Sat Apr 30 21:15:00 UTC 2011
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=ISO-8859-1
I have made some improvements on the bash-completions for tar, cryptsetup, imagemagick
and the _parse_help function. I've also written completions for some rarely used
programs, if someone is interested.
The improved completion for tar is much more thoroughly implemented than the original
one from the bash-completion package and almost fully featured, the only thing that may
not complete correctly are some suboptions of the multi-volume option -M as I never use
it and I don't know how that works. It does proper argument counting and completes
accordingly.
The improved version of the cryptsetup completion honors options before the action
argument and completes on keyslot numbers for actions that uses them and it only
completes on usable block devices instead of everything under /dev amongst other
improvements.
The improved verion of the imagemagick tools completions uses a more flexible approach
of getting all of the options than the one in the bash-completion package by replacing
most of the static option chunks with dynamic options loading.
The improved version of the _parse_help function is backwards drop-in compatible with
the one in the bash-completion package version 1.2-3. It creates less processes and
works for more completions:
bzip2 gcc genisoimage gzip imagemagick k3b lzma lzop make man net-tools pm-utils tar xz
everything is in the gzipped tar ball attached to this mail. The _parse_help function
is in a diff -u.
-------------- next part --------------
Content-Transfer-Encoding: base64
Content-Type: application/x-gzip
Content-Disposition: attachment
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
More information about the Bash-completion-devel
mailing list