summary refs log tree commit diff
path: root/Functions/Misc
diff options
context:
space:
mode:
Diffstat (limited to 'Functions/Misc')
-rw-r--r--Functions/Misc/run-help-ip42
1 files changed, 42 insertions, 0 deletions
diff --git a/Functions/Misc/run-help-ip b/Functions/Misc/run-help-ip
new file mode 100644
index 000000000..3f15b01fb
--- /dev/null
+++ b/Functions/Misc/run-help-ip
@@ -0,0 +1,42 @@
+#! zsh -f
+#
+# Install this function by placing it in your FPATH and then
+# adding to your .zshrc the line if you use run-help function:
+#       autoload -Uz run-help-ip
+
+if [ $# -eq 0 ]; then
+    man ip
+    return
+fi
+
+if ! man -w ip-address >/dev/null 2>&1; then
+    man ip
+    return
+fi
+
+while [[ $# != 0 && $1 == -* ]]; do
+    shift
+done
+
+case $1 in
+    (addr*) man ip-address ;;
+    (addrlabel) man ip-addrlabel ;;
+    (l2*) man ip-l2tp ;;
+    (li*) man ip-link ;;
+    (ma*) man ip-maddress ;;
+    (mo*) man ip-monitor ;;
+    (mr*) man ip-mroute ;;
+    (nei*) man ip-neighbour ;;
+    (netc*) man ip-netconf ;;
+    (netn*) man ip-netns ;;
+    (nt*) man ip-ntable ;;
+    (ro*) man ip-route ;;
+    (ru*) man ip-rule ;;
+    (tcp*) man ip-tcp_metrics ;;
+    (to*) man ip-token ;;
+    (tu*) man ip-tunnel ;;
+    (xf*) man ip-xfrm ;;
+    (*) man ip ;;
+esac
+
+return $?