Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
PATCH: _nslookup
- X-seq: zsh-workers 9388
- From: Sven Wischnowsky <wischnow@xxxxxxxxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxxxxxx
- Subject: PATCH: _nslookup
- Date: Thu, 20 Jan 2000 16:23:37 +0100 (MET)
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
This at least tries to get sensible values for the domains, either
from the domains style or from /etc/resolv.conf.
Bye
Sven
diff -ru ../z.old/Completion/User/.distfiles Completion/User/.distfiles
--- ../z.old/Completion/User/.distfiles Thu Jan 20 11:00:53 2000
+++ Completion/User/.distfiles Thu Jan 20 16:16:55 2000
@@ -1,7 +1,7 @@
DISTFILES_SRC='
.distfiles
_a2ps _archie _bison _bunzip2 _bzip2 _chown _compress _configure _cvs
- _dd _dir_list _dirs _dvi _find _flex _gcc _gdb _gprof _groups _gs
+ _dd _dir_list _dirs _domains _dvi _find _flex _gcc _gdb _gprof _groups _gs
_gunzip _gv _gzip _hosts _ispell _killall _lp _lynx _mailboxes _make _man
_mh _mount _mutt _my_accounts _netscape _nslookup _other_accounts
_pack _patch _pbm _pdf _perl_basepods _perl_builtin_funcs
diff -ru ../z.old/Completion/User/_domains Completion/User/_domains
--- ../z.old/Completion/User/_domains Thu Jan 20 16:17:16 2000
+++ Completion/User/_domains Thu Jan 20 16:15:37 2000
@@ -0,0 +1,20 @@
+#autoload
+
+local expl domains tmp
+
+if ! zstyle -a ":completion${curcontext}:domains" domains domains; then
+ if (( ! $+_cache_domains )); then
+ _cache_domains=()
+ if [[ -f /etc/resolv.conf ]]; then
+ while read tmp; do
+ [[ "$tmp" = (domain|search)* ]] &&
+ _cache_domains=( "$_cache_domains[@]" "${=${tmp%%[ ]#}#*[ ]}" )
+ done < /etc/resolv.conf
+ _cache_domains=( "${(@)_nslookup_domains:#[ ]#}" )
+ fi
+ fi
+ domains=( "$_cache_domains[@]" )
+fi
+
+_wanted domains expl domain &&
+ compadd -M 'm:{a-zA-Z}={A-Za-z} r:|.=* r:|=*' "$@" "$expl[@]" - "$domains[@]"
diff -ru ../z.old/Completion/User/_nslookup Completion/User/_nslookup
--- ../z.old/Completion/User/_nslookup Thu Jan 20 11:00:55 2000
+++ Completion/User/_nslookup Thu Jan 20 16:16:39 2000
@@ -38,7 +38,7 @@
'(noignoretc)ignoretc[ignore packet truncation errors]' \
'(ignoretc)noignoretc[don'"'"'t ignore packet truncation errors]' \
'class[change query class]:query class:((in\:Internet\ class chaos\:CHAOS\ class hesiod\:MIT\ Athena\ Hesiod\ class any\:wildcard\ \(any\ of\ the\ above\)))'
- 'domain[change default domain]:default domain:_hosts'
+ "domain[change default domain]:default domain:_domains"
'srchlist[change default domain and search list]: :->srchlist'
'port[change name server port]:name server port:'
{query,}type'[change type of information query]:query information type:((a\:internet\ address cname\:canonical\ name\ for\ alias hinfo\:CPU\ and\ operating\ system\ type minfo\:mailbox\ or\ mail\ list\ information mx\:mail\ exchanger ns\:name\ server\ for\ zone ptr\:host\ name\ or\ other\ information soa\:domain\'"'"'s\ \`start-of-authority\'"'"'\ information txt\:text\ information uinfo\:user\ information wks\:supported\ well-known\ services))'
@@ -53,8 +53,8 @@
_funcall ret _nslookup_command && return ret
_alternative \
- 'commands:command:compadd server lserver root finger ls view help set' \
- 'hosts:: _host' && ret=0
+ 'commands:command:(server lserver root finger ls view help set exit)' \
+ 'hosts:: _hosts' && ret=0
return ret
elif [[ "$compstate[context]" = redirect ]]; then
@@ -103,7 +103,7 @@
'-d[all records]' \
'-h[CPU and operating system information]' \
'-s[well-known services]' \
- ':domain:_hosts'
+ ":domain:_domains"
return
;;
view)
@@ -141,17 +141,17 @@
# This is completion after `srchlist' for both types.
if [[ -n "$state" ]]; then
- _tags hosts || return 1
+ _tags domains || return 1
if compset -P '*/'; then
- _description hosts expl 'search list entry'
+ _description domains expl 'search list entry'
else
- _description hosts expl 'default domain name and first search list entry'
+ _description domains expl 'default domain name and first search list entry'
fi
if [[ -n "$_vals_cache_multi" ]]; then
- _hosts "$expl[@]" -qS/ -r "/\\- \\t\\n$_vals_cache_multi"
+ _domains "$expl[@]" -qS/ -r "/\\- \\t\\n$_vals_cache_multi"
else
- _hosts "$expl[@]" -qS/
+ _domains "$expl[@]" -qS/
fi
return
fi
diff -ru ../z.old/Doc/Zsh/compsys.yo Doc/Zsh/compsys.yo
--- ../z.old/Doc/Zsh/compsys.yo Thu Jan 20 10:47:47 2000
+++ Doc/Zsh/compsys.yo Thu Jan 20 16:20:13 2000
@@ -453,6 +453,9 @@
item(tt(displays))(
for X display names
)
+item(tt(domains))(
+for network domains
+)
item(tt(expansions))(
used by the tt(_expand) completer for possible expansions
)
@@ -706,6 +709,11 @@
This is used with the tt(cvs) tag by the function completing for the
tt(cvs) command to decide if the tt(zsh/stat) module should be used to
generate only names of modified files in the appropriate places.
+)
+item(tt(domains))(
+If set, gives the names of network domains that should be
+completed. If this is not set by the user domain names mentioned in
+tt(/etc/resolv.conf) will be used.
)
item(tt(expand))(
Like tt(cursor), this style is used with the tt(paths) tag. If its
--
Sven Wischnowsky wischnow@xxxxxxxxxxxxxxxxxxxxxxx
Messages sorted by:
Reverse Date,
Date,
Thread,
Author