curl: New non-generic completion.
This commit is contained in:
parent
1daff31f2e
commit
b68cc0057f
@ -1693,7 +1693,7 @@ _longopt()
|
|||||||
}
|
}
|
||||||
# makeinfo and texi2dvi are defined elsewhere.
|
# makeinfo and texi2dvi are defined elsewhere.
|
||||||
for i in a2ps awk bash bc bison cat colordiff cp csplit \
|
for i in a2ps awk bash bc bison cat colordiff cp csplit \
|
||||||
curl cut date df diff dir du enscript env expand fmt fold gperf gprof \
|
cut date df diff dir du enscript env expand fmt fold gperf gprof \
|
||||||
grep grub head indent irb ld ldd less ln ls m4 md5sum mkdir mkfifo mknod \
|
grep grub head indent irb ld ldd less ln ls m4 md5sum mkdir mkfifo mknod \
|
||||||
mv netstat nl nm objcopy objdump od paste patch pr ptx readelf rm rmdir \
|
mv netstat nl nm objcopy objdump od paste patch pr ptx readelf rm rmdir \
|
||||||
sed seq sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
sed seq sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
||||||
|
@ -30,6 +30,7 @@ bashcomp_DATA = abook \
|
|||||||
cppcheck \
|
cppcheck \
|
||||||
crontab \
|
crontab \
|
||||||
cups \
|
cups \
|
||||||
|
curl \
|
||||||
cryptsetup \
|
cryptsetup \
|
||||||
cvs \
|
cvs \
|
||||||
cvsps \
|
cvsps \
|
||||||
|
91
completions/curl
Normal file
91
completions/curl
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
have curl || return
|
||||||
|
|
||||||
|
_curl()
|
||||||
|
{
|
||||||
|
local cur prev words cword
|
||||||
|
_init_completion || return
|
||||||
|
|
||||||
|
case $prev in
|
||||||
|
--ciphers|--connect-timeout|-C|--continue-at|--form|--form-string|\
|
||||||
|
--ftp-account|--ftp-alternative-to-user|-P|--ftp-port|-H|--header|-h|\
|
||||||
|
--help|--hostpubmd5|--keepalive-time|--krb|--limit-rate|--local-port|\
|
||||||
|
--mail-from|--mail-rcpt|--max-filesize|--max-redirs|-m|--max-time|\
|
||||||
|
--pass|--proto|--proto-redir|--proxy-user|--proxy1.0|-Q|--quote|-r|\
|
||||||
|
--range|-X|--request|--retry|--retry-delay|--retry-max-time|\
|
||||||
|
--socks5-gssapi-service|-t|--telnet-option|--tftp-blksize|-z|\
|
||||||
|
--time-cond|--url|-u|--user|-A|--user-agent|-V|--version|-w|--write-out)
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
-K|--config|-b|--cookie|-c|--cookie-jar|-D|--dump-header|--egd-file|\
|
||||||
|
--key|--libcurl|-o|--output|--random-file|-T|--upload-file)
|
||||||
|
_filedir
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--cacert|-E|--cert)
|
||||||
|
_filedir '@(c?(e)rt|cer|pem|der)'
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--capath)
|
||||||
|
_filedir -d
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--cert-type|--key-type)
|
||||||
|
COMPREPLY=( $( compgen -W 'DER PEM ENG' -- "$cur" ) )
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--crlfile)
|
||||||
|
_filedir crl
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
-d|--data|--data-ascii|--data-binary|--data-urlencode)
|
||||||
|
if [[ $cur == \@* ]]; then
|
||||||
|
cur=${cur:1}
|
||||||
|
_filedir
|
||||||
|
COMPREPLY=( "${COMPREPLY[@]/#/@}" )
|
||||||
|
fi
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--engine)
|
||||||
|
COMPREPLY=( $( compgen -W 'list' -- "$cur" ) )
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--ftp-method)
|
||||||
|
COMPREPLY=( $( compgen -W 'multicwd nocwd singlecwd' -- "$cur" ) )
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--ftp-ssl-ccc-mode)
|
||||||
|
COMPREPLY=( $( compgen -W 'active passive' -- "$cur" ) )
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--interface)
|
||||||
|
_available_interfaces -a
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
-x|--proxy|--socks4|--socks4a|--socks5|--socks5-hostname)
|
||||||
|
_known_hosts_real
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--pubkey)
|
||||||
|
_filedir pub
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
--stderr)
|
||||||
|
COMPREPLY=( $( compgen -W '-' -- "$cur" ) )
|
||||||
|
_filedir
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [[ $cur == -* ]]; then
|
||||||
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
|
||||||
|
fi
|
||||||
|
} &&
|
||||||
|
complete -F _curl curl
|
||||||
|
|
||||||
|
# Local variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-basic-offset: 4
|
||||||
|
# sh-indent-comment: t
|
||||||
|
# indent-tabs-mode: nil
|
||||||
|
# End:
|
||||||
|
# ex: ts=4 sw=4 et filetype=sh
|
1
test/completion/curl.exp
Normal file
1
test/completion/curl.exp
Normal file
@ -0,0 +1 @@
|
|||||||
|
assert_source_completions curl
|
20
test/lib/completions/curl.exp
Normal file
20
test/lib/completions/curl.exp
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
proc setup {} {
|
||||||
|
save_env
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
proc teardown {} {
|
||||||
|
assert_env_unmodified
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
setup
|
||||||
|
|
||||||
|
|
||||||
|
assert_complete_any "curl -"
|
||||||
|
|
||||||
|
|
||||||
|
sync_after_int
|
||||||
|
|
||||||
|
|
||||||
|
teardown
|
Loading…
x
Reference in New Issue
Block a user