aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/.local/bin/menuwebsurf
blob: 8d63fc8eb37937d5d32d09e45d30826d2acdc764 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/sh

# menu prompt to open a link with mimeo

# Source settings from .bemenurc
. ~/.config/bemenurc

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)"
else
	qmarks="$HOME/.config/qutebrowser/quickmarks"
	bmarks="$HOME/.config/qutebrowser/bookmarks/urls"
	hist="$HOME/.local/share/qutebrowser/history.sqlite"
	prompt="$(sqlite3 -separator ' ' "$hist" \
		'select title, url from CompletionHistory' |
		cat "$qmarks" - | cat "$bmarks" -)"
fi

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 echo "$choice" | egrep ".*://.*" >/dev/null 2>&1; then
	choice="$(echo "$choice" | sed -E 's/[^ ]+ +//g' | 
		grep -E "https?:" || echo "$choice")"
	mimeo "$choice"
else
	$BROWSER "$choice"
fi