about summary refs log tree commit diff
path: root/Completion/Base/Utility/_guard
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Base/Utility/_guard')
-rw-r--r--Completion/Base/Utility/_guard17
1 files changed, 17 insertions, 0 deletions
diff --git a/Completion/Base/Utility/_guard b/Completion/Base/Utility/_guard
new file mode 100644
index 000000000..4c07fe1b9
--- /dev/null
+++ b/Completion/Base/Utility/_guard
@@ -0,0 +1,17 @@
+#autoload
+
+local mesg pat garbage
+
+mesg=()
+zparseopts -K -D -a garbage M: J: V: 1 2 n F: X:=mesg 
+
+[[ "$PREFIX$SUFFIX" != $~1 ]] && return 1
+
+if [[ $# -gt 1 || $#mesg -eq 0 ]]; then
+  shift
+  _message "$*"
+else
+  _message -r "$mesg[2]"
+fi
+
+[[ -n "$PREFIX$SUFFIX" ]]