summaryrefslogtreecommitdiff
path: root/scripts/br
blob: b0d1d4ee39b914b8cb1166b2e335467cafeb3ace (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
33
34
35
36
37
38
39
40
41
42
#!/bin/sh

help() {
cat << EOF
${0}: Open links from bookmarks through dmenu
options:
[link]		Open link
 -h 		Print this message and exit

NOTE: bookmarks file is located at ~/.config/sites/bookmarks
EOF
}

err() {
	for line in "${@}"; do
		echo "${line}" >&2
	done
	exit 1
}

[ -z "${BROWSER}" ] && browser="qutebrowser" || browser="${BROWSER}"

if [ "${#}" -eq 0 ]; then

	link_file="${HOME}/.config"/sites/bookmarks.txt

	[ command -v dmenu > /dev/null 2>&1 ] && err "${0}: dmenu must be installed"

	[ -z "${XDG_HOME_CONFIG}" ] || link_file="${XDG_HOME_CONFIG}"/sites/bookmarks.txt
	[ -e "${link_file}" ] || err "${0}: Couldn't find bookmarks file"

	link=$(< "${link_file}" dmenu)

	[ -z "${link}" ] || "${browser}" "${link}"

elif [ "${#}" -eq 1 ]; then 
	[ "${1}" = "-h" ] && help && exit 0

	"${browser}" "${1}"
else
	err "${0}: Invalid usage" "Try '${0} -h' for help."
fi