aboutsummaryrefslogtreecommitdiff
path: root/bin/menu
diff options
context:
space:
mode:
Diffstat (limited to 'bin/menu')
-rwxr-xr-xbin/menu16
1 files changed, 14 insertions, 2 deletions
diff --git a/bin/menu b/bin/menu
index 90af758..d6ec4de 100755
--- a/bin/menu
+++ b/bin/menu
@@ -93,6 +93,15 @@ pass_list() {
LANG=POSIX.UTF-8 sort
}
+CLIP_DIR="$XDG_RUNTIME_DIR"/clipmenu.6."$(whoami)"
+clip_list() {
+ CACHE_FILE="$CLIP_DIR"/line_cache
+ LANG=POSIX.UTF-8 sort -rnk 1 < "$CACHE_FILE" |
+ cut -d' ' -f2- |
+ awk '!seen[$0]++'
+}
+
+
case "$ACTION" in
emoji)
DATA | show 'emoji' | awk '{print $(NF)}' | copy -n
@@ -124,8 +133,11 @@ case "$ACTION" in
clipboard)
# For a potential improved version, see:
# https://github.com/cdown/clipmenu/pull/162
- clipmenu -i -l 20 -fn Monospace-18 -p "$1:"
- notify-send -t 5000 -u low -- 'copied to clipboard'
+ CHOICE="$(clip_list | show 'clipboard:' | cksum)"
+ if [ -n "$CHOICE" ]; then
+ copy < "$CLIP_DIR"/"$CHOICE"
+ notify-send -t 5000 -u low -- 'copied to clipboard'
+ fi
;;
yubikey)
CHOICE="$(ykman oath accounts list | show 'OTP')"