Package: bash
Version: 4.2+dfsg-0.1

Take the following simple completion script, not very different from what udisks
ships upstream, but simpler, and showing the same problem:

alias rmount='udisks --mount'
_removables() {
    local IFS=$'\n'
    _get_comp_words_by_ref cur prev
    COMPREPLY=( $(compgen -W "$(udisks --enumerate-device-files)" -- $cur) )
}
complete -F _removables -o filenames rmount

Note: _get_comp_words_by_ref comes from git, and is used instead of local 
cur="${COMP_WORDS[COMP_CWORD]}"
in case the problem would have been Bug#601632, but does not appear to change 
anything.

If I hit "TAB" after entering "rmount ", I do get the "/dev/" unique prefix 
completed,
and if I enter myself eg. "dis" + TAB, I get "/dev/disks/by-".  But if after 
"/dev/" I
hit TAB twice to see the available completions, I get shown only the basenames 
of the
files, which happen to be correct for eg /dev/sd*, but is completely wrong for 
/dev/disks/*,
as follows:

$ rmount /dev/
ata-XXXXXXXXXXXXXXX_XXXXXXXXXXXXXX                                            
dm-1
ata-XXXXXXXXXXXXXXX_XXXXXXXXXXXXXX-part1                                      
dm-2
ata-XXXXXXXXXXXXXXX_XXXXXXXXXXXXXX-part2                                      
nbd0
[...]
dm-0                                                                          
sr0
$ rmount /dev/

-- 
Yann Dirson - Bertin Technologies


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to