bm

Lazy bookmark system
git clone git://gtms.dev/bm.git
Log | Files | Refs | README | LICENSE

commit 84f64bf3739e4ba4051ed110761e3e7be6f308b7
parent 4a923802ef9cf8d7dc95f270e774840d67e4af53
Author: Tomas Nemec <nemi@skaut.cz>
Date:   Mon,  7 Mar 2022 18:44:15 +0100

feat: simplify

Get rid of tags and simplify format for `<url> <name>` per line

Diffstat:
Mbmadd | 5++---
Mbmmenu | 45+++++++++++----------------------------------
2 files changed, 13 insertions(+), 37 deletions(-)

diff --git a/bmadd b/bmadd @@ -1,7 +1,7 @@ #!/usr/bin/env zsh # Add bookmark -usage="usage: <name> <url> [<tags>]" +usage="usage: <name> <url>" if [[ ! -f ${BOOKMARK} ]]; then echo "BOOKMARK env is not set or not a file" >&2 @@ -11,12 +11,11 @@ fi function add() { name=$1 url=$2 - tags=$3 if [[ -z "$name" || -z "$url" ]]; then echo $usage >&2 exit 1 fi - printf "[%s](%s)%s\n" $name $url $tags >&1 >> $BOOKMARK + printf "%s %s\n" $url $name >&1 >> $BOOKMARK } add "$@" diff --git a/bmmenu b/bmmenu @@ -5,41 +5,18 @@ if [[ ! -f ${BOOKMARK} ]]; then exit 1 fi -key="templates" -newwin="" -while test $# -gt 0; do - case "$1" in - --new-window) - newwin="--new-window" - shift - ;; - *) - break - ;; - esac -done - -[[ $DEBUG == 1 ]] && echo "newwin=$newwin" +launcher="$BROWSER" +if command -v browser >/dev/null; then + launcher='browser' +fi function open() { - bmark=$1 - [[ -n $bmark ]] || return - - title="$(awk 'BEGIN{FS=" "} {print $1}' <<< $bmark)" - url="$(awk 'BEGIN{FS=" "} {print $2}' <<< $bmark)" - tags="$(awk 'BEGIN{FS=" "} {print $3}' <<< $bmark)" - - if [[ "$tags" =~ "$key" ]]; then - add=$(echo "" | dmenu -p $url) - $BROWSER $newwin $url$add - else - $BROWSER $newwin $url - fi + echo "$1" | read url title + $launcher $url } -sed -E 's/\[(.*)\]\((.*)\) ?(.*)?/\1 \2 \3/' $BOOKMARK | dmenu -i -p bmark: -l 8 | -while IFS= read -r line -do - [[ $DEBUG == 1 ]] && echo "line=$line" - open "$line" -done +cat $BOOKMARK | dmenu -i -p bmark: -l 8 | + while IFS= read -r line; do + [[ $DEBUG == 1 ]] && echo "line=$line" + open "$line" + done