mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-22 16:20:23 +02:00
accept -g option in _urls and use _urls in _rpm (11756)
This commit is contained in:
parent
4e9967dcca
commit
0d0a134822
3 changed files with 19 additions and 11 deletions
|
@ -1,5 +1,8 @@
|
|||
2000-06-05 Oliver Kiddle <opk@zsh.org>
|
||||
|
||||
* 11756: Completion/User/_urls, Completion/Linux/_rpm: accept -g
|
||||
option in _urls and use _urls in _rpm
|
||||
|
||||
* 11755: test/comptest: fix wording in error messages
|
||||
|
||||
2000-06-05 Peter Stephenson <pws@pwstephenson.fsnet.co.uk>
|
||||
|
|
|
@ -211,12 +211,14 @@ while [[ -n "$state" ]]; do
|
|||
_files -g \*.spec && ret=0
|
||||
;;
|
||||
package_file)
|
||||
if compset -P '(f|ht)tp://'; then
|
||||
_hosts -S/ && ret=0
|
||||
_wanted files expl 'RPM package file' \
|
||||
_files -g '*.(#i)rpm' && ret=0
|
||||
if [[ -prefix 1 (f|ht)tp:// ]]; then
|
||||
_wanted urls expl 'URL of RPM package file' \
|
||||
_urls -f -g '*.(#i)rpm' "${expl[@]}" && ret=0
|
||||
else
|
||||
_alternative \
|
||||
'files:RPM package file:_files -g \*.\(\#i\)rpm' \
|
||||
'prefixes:URL prefix:compadd ftp:// http://' && ret=0
|
||||
_wanted urls expl 'URL of RPM package file' \
|
||||
compadd -S '' "${expl[@]}" ftp:// http:// && ret=0
|
||||
fi
|
||||
;;
|
||||
package_src)
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
# E.g.:
|
||||
# zstyle ':completion:*:urls' local www /usr/local/apache/htdocs public_html
|
||||
|
||||
local ipre scheme host user uhosts ret=1 expl match
|
||||
local ipre scheme host user uhosts ret=1 expl match glob
|
||||
local urls_path localhttp
|
||||
zstyle -s ":completion:${curcontext}:urls" path urls_path ||
|
||||
urls_path="${ZDOTDIR:-$HOME}/.zsh/urls"
|
||||
|
@ -52,6 +52,9 @@ if [[ "$1" = -f ]]; then
|
|||
_wanted -C -f files expl file _files "$@" && return 0
|
||||
fi
|
||||
|
||||
zparseopts -D -E 'g:=glob'
|
||||
(( $#glob )) || glob=( -g '*(^/)' )
|
||||
|
||||
ipre="$IPREFIX"
|
||||
|
||||
if ! compset -P '(#b)([-+.a-z0-9]#):'; then
|
||||
|
@ -82,7 +85,7 @@ case "$scheme" in
|
|||
while _tags; do
|
||||
while _next_label files expl 'local file'; do
|
||||
if [[ -prefix / ]]; then
|
||||
_path_files "$expl[@]" -S '' -g '*(^/)' && ret=0
|
||||
_path_files "$expl[@]" -S '' "${glob[@]}" && ret=0
|
||||
_path_files "$expl[@]" -S/ -r '/' -/ && ret=0
|
||||
elif [[ -z "$PREFIX" ]]; then
|
||||
compadd -S '/' -r '/' "$expl[@]" "$@" - "${PWD%/}" && ret=0
|
||||
|
@ -103,7 +106,7 @@ case "$scheme" in
|
|||
_tags -C bookmark files
|
||||
while _tags; do
|
||||
while _next_label files expl 'bookmark'; do
|
||||
_path_files -W "$urls_path/$scheme" "$expl[@]" -S '' -g '*(^/)' &&
|
||||
_path_files -W "$urls_path/$scheme" "$expl[@]" -S '' "${glob[@]}" &&
|
||||
ret=0
|
||||
_path_files -W "$urls_path/$scheme" -S/ -r '/' "$expl[@]" -/ && ret=0
|
||||
done
|
||||
|
@ -145,7 +148,7 @@ if [[ "$localhttp_servername" = "$host" ]]; then
|
|||
user="$match[1]"
|
||||
while _tags; do
|
||||
while _next_label files expl 'local file'; do
|
||||
_path_files "$expl[@]" "$@" -W ~$user/$localhttp_userdir -g '*(^/)' && ret=0
|
||||
_path_files "$expl[@]" "$@" -W ~$user/$localhttp_userdir "${glob[@]}" && ret=0
|
||||
_path_files -S/ -r '/' "$expl[@]" -W ~$user/$localhttp_userdir-/ && ret=0
|
||||
done
|
||||
(( ret )) || return 0
|
||||
|
@ -153,7 +156,7 @@ if [[ "$localhttp_servername" = "$host" ]]; then
|
|||
else
|
||||
while _tags; do
|
||||
while _next_label files expl 'local file'; do
|
||||
_path_files "$expl[@]" "$@" -W $localhttp_documentroot -g '*(^/)' && ret=0
|
||||
_path_files "$expl[@]" "$@" -W $localhttp_documentroot "${glob[@]}" && ret=0
|
||||
_path_files -S/ -r '/' "$expl[@]" -W $localhttp_documentroot -/ && ret=0
|
||||
done
|
||||
(( ret )) || return 0
|
||||
|
@ -162,7 +165,7 @@ if [[ "$localhttp_servername" = "$host" ]]; then
|
|||
else
|
||||
while _tags; do
|
||||
while _next_label files expl 'local file'; do
|
||||
_path_files "$expl[@]" "$@" -W $urls_path/$scheme/$host -g '*(^/)' && ret=0
|
||||
_path_files "$expl[@]" "$@" -W $urls_path/$scheme/$host "${glob[@]}" && ret=0
|
||||
_path_files -S/ -r '/' "$expl[@]" -W $urls_path/$scheme/$host -/ && ret=0
|
||||
done
|
||||
(( ret )) || return 0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue