Freddy Vulto a écrit : > On Thu, Feb 26, 2009 at 12:33 PM, David Paleino <d.pale...@gmail.com> wrote: >> On Wed, 25 Feb 2009 23:05:33 +0100, Freddy Vulto wrote: >>> Do we have a standardized way in bash-completion for selecting alternative >>> completions? >> No :/ >> >> I believe we could do something a _get_alternative() function > > Guillaume, does the command underneath work on your distribution? And > if so, what's the output? > > $ readlink -f "$(which vncviewer)" /usr/bin/vncviewer
> Maybe this command is enough to detect the used alternative on any > distribution, i.e. _get_alternative()? If we do this from within the > completion it's not slowing down completion-installation: > > have vncviewer && { > _vncviewer_bootstrap() { > case "$(readlink -f "$(which vncviewer)")" in > *xvnc4viewer) fname=_xnvc4viewer ;; > *tightvncviewer|*) fname=_tightvncviewer ;; vncviewer) fname=_vncviewer > esac > > # Install real completion for subsequent completions > complete -F $fname vncviewer > $fname # Generate completions once for now > } > } && complete -F _vncviewer_bootstrap vncviewer This only works in this case, but assume we can distinguish between case using executable name. We'll have the same issue for command having exactly the same name, but implemented differently across distributions, such as mkinitrd, for instance. -- BOFH excuse #66: bit bucket overflow _______________________________________________ Bash-completion-devel mailing list Bash-completion-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/bash-completion-devel