make completions that use _command also work with file names

This commit is contained in:
Igor Murzov 2011-06-26 03:38:20 +04:00
parent 17a316bfca
commit b13ee019d0
2 changed files with 19 additions and 2 deletions

View File

@ -1581,8 +1581,9 @@ _command_offset()
_get_comp_words_by_ref cur
if [[ $COMP_CWORD -eq 0 ]]; then
local IFS=$'\n'
compopt -o filenames
COMPREPLY=( $( compgen -c -- "$cur" ) )
COMPREPLY=( $( compgen -d -c -- "$cur" ) )
else
cmd=${COMP_WORDS[0]} compcmd=${COMP_WORDS[0]}
# Do we have full path completion for $cmd?

View File

@ -4,7 +4,7 @@ proc setup {} {
proc teardown {} {
assert_env_unmodified
assert_env_unmodified {/OLDPWD=/d}
}
@ -17,4 +17,20 @@ assert_complete_any "time set"
sync_after_int
set test "-p find -typ should complete find's options"
assert_complete "-type" "time -p find -typ" $test
sync_after_int
set test "it should be possible to complete file paths"
set dir $::srcdir/fixtures/shared
set files [split [exec bash -c "cd $dir/bin && ls -p"] "\n"]
assert_complete_dir $files "time ./bin/" $dir $test
sync_after_int
teardown