diff options
Diffstat (limited to 'dotfiles/.local/bin/menuwebsurf')
-rwxr-xr-x | dotfiles/.local/bin/menuwebsurf | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/dotfiles/.local/bin/menuwebsurf b/dotfiles/.local/bin/menuwebsurf index bef9890..9e1a7a9 100755 --- a/dotfiles/.local/bin/menuwebsurf +++ b/dotfiles/.local/bin/menuwebsurf @@ -5,18 +5,27 @@ # Source settings from .bemenurc . ~/.config/bemenurc -prompt="🌐" +searchurl="https://srx.yaroslavps.com/search?q=" # Have to use this "hack" because bemenu doesn't know how to paste if [ "$1" = "paste" ]; then - prompt="$(wl-paste)" + prompt="$(wl-paste)" +else + qmarks="$HOME/.config/qutebrowser/quickmarks" + hist="$HOME/.local/share/qutebrowser/history.sqlite" + prompt="$(sqlite3 -separator ' ' "$hist" \ + 'select title, url from CompletionHistory' | + cat "$qmarks" -)" fi -choice=$(echo "$prompt" | bemenu -i -p "Enter link or query:" --tf="$BEMENU_TF" --tb="$BEMENU_NB" --fb="$BEMENU_NB" --fn="$BEMENU_FN" --nb="$BEMENU_NB" --nf="$BEMENU_NF" --hf="$BEMENU_HF" --hb="$BEMENU_HB" --monitor="$BEMENU_MONITOR") || exit 1 +choice=$(printf "%s" "$prompt" | + bemenu -i -l 25 -p "Enter link or query:" --tf="$BEMENU_TF" --tb="$BEMENU_NB" --fb="$BEMENU_NB" --fn="$BEMENU_FN" --nb="$BEMENU_NB" --nf="$BEMENU_NF" --hf="$BEMENU_HF" --hb="$BEMENU_HB" --monitor="$BEMENU_MONITOR") || exit 1 -if [ "$choice" = "🌐" ]; then - $BROWSER +if echo "$choice" | egrep ".*://.*" >/dev/null 2>&1; then + choice="$(echo "$choice" | sed -E 's/[^ ]+ +//g' | + grep -E "https?:" || echo "$choice")" + mimeo "$choice" else - mimeo "$choice" + $BROWSER "$choice" fi |