(mount) Make it clear that $' strings are not supported

This commit is contained in:
Crestez Dan Leonard 2010-02-08 08:35:46 +02:00
parent 6e0dc07ee2
commit c0b77a03f5
2 changed files with 6 additions and 15 deletions

View File

@ -26,19 +26,11 @@ _reply_compgen_array()
# We also have to add another round of escaping to $cur.
local ecur="$cur"
ecur="${ecur//\\/\\\\}"
ecur="${ecur/#$\'/\$\'}"
# Actually generate completions.
local oldifs="$IFS"
local oldifs=$IFS
IFS=$'\n' eval 'COMPREPLY=(`compgen -W "$wlist" -- "${ecur}"`)'
IFS="$oldifs"
# Strip starting $' in reply if present in cur.
# This is necesarry because readline interprets everything after ' as a
# separate word for completion.
if [[ $cur == $\'* ]]; then #'
COMPREPLY=( "${COMPREPLY[@]/#$\'}" )
fi
IFS=$oldifs
}
# Complete linux fstab entries.

View File

@ -76,11 +76,10 @@ sync_after_int
assert_complete {/mnt/nice\$test-path} {mnt /mnt/nice\$}
sync_after_int
assert_complete {$'/mnt/nice-test-path'} {mnt $'/mnt/nice-}
sync_after_int
assert_complete {$'/mnt/nice\ntest-path'} {mnt $'/mnt/nice\n}
sync_after_int
# This does not work. Proper support for this requires smarter parsing of
# $COMP_LINE and it's not worth doing just for mount.
#assert_complete {$'/mnt/nice\ntest-path'} {mnt $'/mnt/nice\n}
#sync_after_int
teardown