added _remove_cword()
This commit is contained in:
parent
461df636e6
commit
68f63fc9ed
@ -3158,6 +3158,37 @@ else
|
|||||||
complete -F _cd $nospace $filenames cd
|
complete -F _cd $nospace $filenames cd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
_remove_comp_word()
|
||||||
|
{
|
||||||
|
if [[ COMP_CWORD -eq 0 ]]; then
|
||||||
|
return
|
||||||
|
elif [[ ${#COMP_WORDS[@]} -ge 2 ]]; then
|
||||||
|
local old_cw0="${COMP_WORDS[0]}"
|
||||||
|
local new_cw0="${COMP_WORDS[1]}"
|
||||||
|
local old_length="${#COMP_LINE}"
|
||||||
|
COMP_LINE=${COMP_LINE#${old_cw0}}
|
||||||
|
local head=${COMP_LINE:0:${#new_cw0}}
|
||||||
|
local i=1
|
||||||
|
while [[ $head != $new_cw0 ]]; do
|
||||||
|
COMP_LINE=${COMP_LINE:1}
|
||||||
|
head=${COMP_LINE:0:${#new_cw0}}
|
||||||
|
if (( ++i > 10 )); then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
local new_length="${#COMP_LINE}"
|
||||||
|
COMP_POINT=$(( COMP_POINT + new_length - old_length ))
|
||||||
|
|
||||||
|
COMP_CWORD=$(( COMP_CWORD - 1 ))
|
||||||
|
for (( i=0; i < ${#COMP_WORDS[@]} - 1; ++i )); do
|
||||||
|
COMP_WORDS[i]="${COMP_WORDS[i+1]}"
|
||||||
|
done
|
||||||
|
unset COMP_WORDS[${#COMP_WORDS[#]}-1]
|
||||||
|
else
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# A meta-command completion function for commands like sudo(8), which need to
|
# A meta-command completion function for commands like sudo(8), which need to
|
||||||
# first complete on a command, then complete according to that command's own
|
# first complete on a command, then complete according to that command's own
|
||||||
# completion definition - currently not quite foolproof (e.g. mount and umount
|
# completion definition - currently not quite foolproof (e.g. mount and umount
|
||||||
|
3
debian/changelog
vendored
3
debian/changelog
vendored
@ -2,6 +2,7 @@ bash-completion (20080617.4) UNRELEASED; urgency=low
|
|||||||
|
|
||||||
* Merged Ubuntu changes:
|
* Merged Ubuntu changes:
|
||||||
- added quote(), quote_readline(), dequote() helper functions.
|
- added quote(), quote_readline(), dequote() helper functions.
|
||||||
|
- added _remove_cword()
|
||||||
- fixed _get_cword()
|
- fixed _get_cword()
|
||||||
- refactored _filedir using quote_readline()
|
- refactored _filedir using quote_readline()
|
||||||
- fixed COMPREPLY's in _iwconfig
|
- fixed COMPREPLY's in _iwconfig
|
||||||
@ -9,7 +10,7 @@ bash-completion (20080617.4) UNRELEASED; urgency=low
|
|||||||
- _known_hosts(): use files from UserKnownHostsFile options in
|
- _known_hosts(): use files from UserKnownHostsFile options in
|
||||||
addition to standard ones.
|
addition to standard ones.
|
||||||
|
|
||||||
-- David Paleino <d.paleino@gmail.com> Mon, 23 Jun 2008 11:26:28 +0200
|
-- David Paleino <d.paleino@gmail.com> Mon, 23 Jun 2008 11:33:28 +0200
|
||||||
|
|
||||||
bash-completion (20080617.3) unstable; urgency=low
|
bash-completion (20080617.3) unstable; urgency=low
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user