Files
sxbm/extra/sxbm_dmenu
2024-01-19 16:36:26 +01:00

37 lines
793 B
Bash
Executable File

#!/bin/sh
# Description: dmenu/rofi wrapper around sxbm
# Dependency: sxbm, dmenu/rofi, xclip (optional)
#
# Author: NRK
## Copyright 2021 NRK
## Licensed under GPL v3. See LICENSE for more details.
# Change "dmenu" to "rofi -dmenu" if you wish to use rofi
# NOTE: i do not use rofi, and haven't tested if it works or not
prompt="dmenu -i -l 24"
bm_open() {
link_num="$(sxbm ls -c "$@" | $prompt | cut -d ")" -f 1)"
[ -n "$link_num" ] && sxbm open "$link_num"
}
bm_yank() {
link="$(sxbm ls -c "$@" | $prompt | cut -d " " -f 2)"
[ -n "$link" ] && echo "$link" | xclip -in -selection clipboard
}
bm_add() {
echo | $prompt -p "Add bookmark:" | xargs sxbm add | dmenu
}
case "$1" in
"-a"|"--add")
shift && bm_add "$@"
;;
"-y"|"--yank")
shift && bm_yank "$@"
;;
*)
bm_open "$@"
;;
esac