summaryrefslogtreecommitdiffstats
path: root/.local/bin/i3cmds/ducksearch
diff options
context:
space:
mode:
Diffstat (limited to '.local/bin/i3cmds/ducksearch')
-rwxr-xr-x.local/bin/i3cmds/ducksearch20
1 files changed, 20 insertions, 0 deletions
diff --git a/.local/bin/i3cmds/ducksearch b/.local/bin/i3cmds/ducksearch
new file mode 100755
index 0000000..7b5bca6
--- /dev/null
+++ b/.local/bin/i3cmds/ducksearch
@@ -0,0 +1,20 @@
+#!/bin/sh
+# Gives a dmenu prompt to search DuckDuckGo.
+# Without input, will open DuckDuckGo.com.
+# URLs will be directly handed to the browser.
+# Anything else, it search it.
+browser=${BROWSER:-firefox}
+
+pgrep -x dmenu && exit
+
+choice=$(echo "🦆" | dmenu -i -p "Search DuckDuckGo:") || exit 1
+
+if [ "$choice" = "🦆" ]; then
+ $browser "https://duckduckgo.com"
+else
+ if echo "$choice" | grep "^(http:\/\/|https:\/\/)?[a-zA-Z0-9]+\.[a-zA-Z]+(/)?.*$"; then
+ $browser "$choice"
+ else
+ $browser "https://duckduckgo.com/?q=$choice&t=ffab&atb=v1-1"
+ fi
+fi