#!/bin/sh #{{{ printhelp printhelp () { printf "qbc: qutebrowser menu interface.\n" printf " -u URL ) pass URL to browser\n" printf " -d ARG ) pass ARGS to menu command\n" exit } #}}} #{{{ getopts while getopts "hd:u:" o; do case "${o}" in d) ARG=${ARG:+"$ARG "}"$OPTARG" ;; u) URL="$OPTARG" ;; *) printhelp ;; esac done #}}} #{{{ Get Sessions SESSIONS=$(qbpm list) [ -z "$SESSIONS" ] && qutebrowser "$@" && exit #}}} #{{{ Select Session CHOSEN=$(printf "default\n%s" "$SESSIONS" | dmenu -l 15 -p "qutebrowser" ${ARG:+"$ARG"}) [ -z "$CHOSEN" ] && exit 2 if [ -n "$CHOSEN" ]; then if [ "$CHOSEN" = "default" ]; then qutebrowser "$URL" else if echo "$SESSIONS" | { ! grep -q "$CHOSEN" ; }; then qbpm new "$CHOSEN" fi qbpm launch "$CHOSEN" "$URL" #qutebrowser -B "$HOME/.local/share/$CHOSEN" fi fi #}}}