aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/.local/bin/menuwebsurf
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/.local/bin/menuwebsurf')
-rwxr-xr-xdotfiles/.local/bin/menuwebsurf21
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