[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