summaryrefslogtreecommitdiff
path: root/web_search
diff options
context:
space:
mode:
Diffstat (limited to 'web_search')
-rwxr-xr-xweb_search58
1 files changed, 58 insertions, 0 deletions
diff --git a/web_search b/web_search
new file mode 100755
index 0000000..60a1f2a
--- /dev/null
+++ b/web_search
@@ -0,0 +1,58 @@
+#!/bin/sh
+
+BROWSER="firefox"
+QUERY=$(tac ~/.config/sarc/search.txt | sort -u | dmenu -l 20 -p "Search or enter URL: ")
+SEARCH=$(echo $QUERY | sed 's/ /+/g; s/-e//')
+
+open_search() {
+ URL="duckduckgo.com/?q=$SEARCH"
+ CMD="$BROWSER $URL"
+
+ $CMD
+}
+
+open_url() {
+ CMD="$BROWSER $SEARCH"
+
+ $CMD
+}
+
+save_query() {
+ query=$(echo $SEARCH | sed 's/-e//; s/+/ /g')
+ echo $query >> ~/.config/sarc/search.txt
+}
+
+case $SEARCH in
+ *.com)
+ save_query
+ open_url
+ ;;
+ *.net)
+ save_query
+ open_url
+ ;;
+ *.org)
+ save_query
+ open_url
+ ;;
+ *.xyz)
+ save_query
+ open_url
+ ;;
+ *.me)
+ save_query
+ open_url
+ ;;
+ *.cooking)
+ save_query
+ open_url
+ ;;
+ "")
+ exit
+ ;;
+ *)
+ save_query
+ open_search
+ ;;
+esac
+