aboutsummaryrefslogtreecommitdiff
path: root/tools/clipboard
diff options
context:
space:
mode:
Diffstat (limited to 'tools/clipboard')
-rwxr-xr-xtools/clipboard106
1 files changed, 0 insertions, 106 deletions
diff --git a/tools/clipboard b/tools/clipboard
deleted file mode 100755
index 79ad150..0000000
--- a/tools/clipboard
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/bin/bash
-#
-# Clipboard menu
-#
-# usage:
-# clipboard init - clear all buffers
-# clipboard menu_paste - pop up a menu to select which buffer to paste
-# clipboard menu_set - pop up a menu to select which buffer to save
-# the current X selection to
-# clipboard paste N - N is buffer 1-9
-# clipboard set N - N is buffer 1-9
-# clipboard push - stack/queue push (push to buffer 1)
-# clipboard pop - stack pop (last in first out - pop from buffer 1)
-# clipboard pop_queue - queue pop (first in first out - pop from top of stack)
-#
-# Current stack depth is held in slot 10, and slot 0 is used as temp space for
-# stack rotation.
-#
-command=$1
-option=$2
-source ~/.colors
-
-function entries() {
- # title entry
- if [ $command = menu_paste ]; then
- echo -n "\"Paste from slot:\" /bin/true "
- else
- echo -n "\"Yank to slot:\" /bin/true "
- fi
-
- for i in $(seq 1 9); do
- repr=$(xcb -p $i | tr '\n$*?"'\''' ' ' | cut --bytes 1-59)
- if [ $command = menu_paste ]; then
- cmd_item="$0 paste $i"
- else
- cmd_item="$0 set $i"
- fi
- #printf '%q %q ' $i "$repr" "$cmd_item"
-# echo -n "\"$i: $repr\" \"$cmd_item\" "
- echo -n "\"$i:$repr \" \"$cmd_item\" "
- done
-}
-
-function menu() {
- echo ~/.tools/ratmenu -label "\"clipboard $command\"" \
- -style dreary -fg \"$COLOR11\" -bg \"$COLOR0\" -io 2 $(entries) | sh
-}
-
-function get_stack_depth() {
- stack_depth=$(xcb -p 10)
- echo "stack_depth=$stack_depth" >/dev/stderr
-}
-
-function set_stack_depth() {
- echo "setting stack_depth=$1" >/dev/stderr
- echo $1 | xcb -n 11 -s 10
-}
-
-function increment_stack_depth() {
- get_stack_depth
- set_stack_depth $[ $stack_depth + 1 ]
-}
-
-function decrement_stack_depth() {
- get_stack_depth
- set_stack_depth $[ $stack_depth - 1 ]
-}
-
-if [ $command = init ]; then
- # Clear all buffers
- xcb -n 10 -s 0-9 </dev/null
- set_stack_depth 0
-elif [ $command = menu_paste -o $command = menu_set ]; then
- menu
-elif [ $command = paste ]; then
- xcb -p $option | xclip
- ~/bin/paste
-
-elif [ $command = set ]; then
- xclip -o | xcb -n 10 -s $option
-elif [ $command = push ]; then
- get_stack_depth
- if [ $stack_depth -lt 9 ]; then
- xcb -n 10 -r 1
- $0 set 1
- increment_stack_depth
- fi
-elif [ $command = pop ]; then
- get_stack_depth
- if [ $stack_depth -gt 0 ]; then
- $0 paste 1
- # Clear buffer 0 so that rotation won't put its contents into spot 9
- xcb -n 10 -s 0 < /dev/null
- xcb -n 10 -r -1
- decrement_stack_depth
- fi
-elif [ $command = pop_queue ]; then
- get_stack_depth
- if [ $stack_depth -gt 0 ]; then
- $0 paste $stack_depth
- # Clear buffer at top of stack
- xcb -n 10 -s $stack_depth < /dev/null
- decrement_stack_depth
- fi
-fi
-