summary refs log tree commit diff
path: root/Completion/User/_arp
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2000-07-04 21:58:09 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2000-07-04 21:58:09 +0000
commit7f2ee10ba77b1bd44270704f4b2de78f1819649a (patch)
tree5541023af3e15f96a95e95ead6d540a530a38408 /Completion/User/_arp
parente1fe756d146dbc5e739e867c89ab2c35aeac8de1 (diff)
downloadzsh-7f2ee10ba77b1bd44270704f4b2de78f1819649a.tar.gz
zsh-7f2ee10ba77b1bd44270704f4b2de78f1819649a.tar.xz
zsh-7f2ee10ba77b1bd44270704f4b2de78f1819649a.zip
new completion function for arp (12165)
Diffstat (limited to 'Completion/User/_arp')
-rwxr-xr-xCompletion/User/_arp15
1 files changed, 15 insertions, 0 deletions
diff --git a/Completion/User/_arp b/Completion/User/_arp
new file mode 100755
index 000000000..b550bba63
--- /dev/null
+++ b/Completion/User/_arp
@@ -0,0 +1,15 @@
+#compdef arp
+
+local state line expl curcontext="$curcontext"
+
+_arguments -C \
+ '(-d -s -f 1)-a[show entries for all or specified hosts]:host:->hostintable' \
+ '(-a -s -f 1)-d[delete entry from table]:host:->hostintable' \
+ '(-a -d -f 1)-s[create an arp entry]:host:_hosts:ethernet address::*:option:(temp trail pub)' \
+ '(-a -d -s 1)-f[read multiple entries from file]:file:_files' \
+ '(-a)1:host:->hostintable' && return 0
+
+if [[ "$state" = hostintable ]]; then
+  _wanted hosts expl 'host' compadd ${${${(f)"$(${words[1]} -a)"}##[ ?(]#}%%[ )]*}
+fi
+