Add option -r to remove link via dmenu. Trim whitespaces when -c.

This commit is contained in:
Petr Hrdina
2024-01-20 18:35:19 +01:00
parent 86003ac69f
commit 98f03e2f55
2 changed files with 12 additions and 3 deletions

View File

@ -23,6 +23,12 @@ bm_add() {
echo | $prompt -p "Add bookmark:" | xargs sxbm add | dmenu echo | $prompt -p "Add bookmark:" | xargs sxbm add | dmenu
} }
bm_remove() {
link_num="$(sxbm ls -c "$@" | $prompt | cut -d ")" -f 1)"
link_title="$(sxbm ls -c | sed -n "${link_num}p" | cut -d ' ' -f 3)"
[ -n "$link_num" ] && printf "y\nn" | $prompt -p "Delete this link? $link_title" | sxbm rm "$link_num"
}
case "$1" in case "$1" in
"-a"|"--add") "-a"|"--add")
shift && bm_add "$@" shift && bm_add "$@"
@ -30,6 +36,9 @@ case "$1" in
"-y"|"--yank") "-y"|"--yank")
shift && bm_yank "$@" shift && bm_yank "$@"
;; ;;
"-r"|"--remove")
shift && bm_remove "$@"
;;
*) *)
bm_open "$@" bm_open "$@"
;; ;;

6
sxbm
View File

@ -131,11 +131,11 @@ bm_list() {
if [ -n "$query_tag" ] && [ -n "$query_title" ]; then if [ -n "$query_tag" ] && [ -n "$query_title" ]; then
{ __awk_search "$query_tag" & __awk_search "$query_title"; } | { __awk_search "$query_tag" & __awk_search "$query_title"; } |
sort | uniq -d sort | uniq -d | tr -s " "
elif [ -n "$query_title" ] && [ -z "$query_tag" ]; then elif [ -n "$query_title" ] && [ -z "$query_tag" ]; then
__awk_search "$query_title" __awk_search "$query_title" | tr -s " "
else else
__awk_search "$query_tag" __awk_search "$query_tag" | tr -s " "
fi fi
} }