diff options
author | EuAndreh <eu@euandre.org> | 2022-11-17 21:38:46 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2022-11-17 21:38:46 -0300 |
commit | f4e53481a195ed06d01ec7b9a5aac0333dde7274 (patch) | |
tree | 48d4bed3254b79f7c5bfc3008ce2a2d48fb90420 | |
parent | Merge remote-tracking branch 'dotfiles/main' (diff) | |
download | dotfiles-f4e53481a195ed06d01ec7b9a5aac0333dde7274.tar.gz dotfiles-f4e53481a195ed06d01ec7b9a5aac0333dde7274.tar.xz |
bin/menu: Use ad-hoc function to replace clipmenu(1)
-rwxr-xr-x | bin/menu | 16 |
1 files changed, 14 insertions, 2 deletions
@@ -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')" |