about summary refs log tree commit diff
path: root/Completion/Darwin/Command/_pbcopy
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Darwin/Command/_pbcopy')
-rw-r--r--Completion/Darwin/Command/_pbcopy30
1 files changed, 30 insertions, 0 deletions
diff --git a/Completion/Darwin/Command/_pbcopy b/Completion/Darwin/Command/_pbcopy
new file mode 100644
index 000000000..fd60f00cc
--- /dev/null
+++ b/Completion/Darwin/Command/_pbcopy
@@ -0,0 +1,30 @@
+#compdef pbcopy pbpaste
+
+local ret=1
+local -a context line state state_descr args
+local -A opt_args val_args
+
+args=(
+  '(-)-help[display help information]'
+  '-pboard[specify pasteboard to copy to or paste from]: :->pboards'
+)
+[[ $service == pbpaste ]] & args+=(
+  '-Prefer[specify type of data to prefer when pasting]: :->dtypes'
+)
+
+_arguments : $args && ret=0
+
+case $state in
+  dtypes)
+    _values 'data type' \
+      'txt[plain text]' \
+      'rtf[rich text]' \
+      'ps[encapsulated PostScript]' \
+    && ret=0
+    ;;
+  pboards)
+    _values pasteboard general ruler find font && ret=0
+    ;;
+esac
+
+return ret