Kaynağa Gözat

Seperate URL prefix from search function

master
= 3 yıl önce
ebeveyn
işleme
f7dd93f5e1
1 değiştirilmiş dosya ile 39 ekleme ve 16 silme
  1. +39
    -16
      prompt

+ 39
- 16
prompt Dosyayı Görüntüle

@@ -11,7 +11,7 @@ launch() {
Music Music
Browser Browser
Email Email
Processes" | tr '\t' |
Processes" | tr -d '\t' |
dmenu -i -p "Launcher") dmenu -i -p "Launcher")


case $app in case $app in
@@ -35,6 +35,8 @@ action() {
Toggle Music Toggle Music
Command Command
Command to clipboard Command to clipboard
Search github
Search ddg
Select VPN Select VPN
Disable VPN Disable VPN
Enable VPN Enable VPN
@@ -51,6 +53,8 @@ case $action in
'Rebind Keys') setup-xbindkeys;; 'Rebind Keys') setup-xbindkeys;;
'Disable Bar') tmux set -g status off;; 'Disable Bar') tmux set -g status off;;
'Enable Bar') tmux set -g status on;; 'Enable Bar') tmux set -g status on;;
'Search github') github;;
'Search ddg') ddg;;
'Command') cmd;; 'Command') cmd;;
'Command to clipboard') cmd_clip;; 'Command to clipboard') cmd_clip;;
esac esac
@@ -80,7 +84,7 @@ both" |
fi fi
} }


ddg() {
search_type() {
search_string="$(printf "New window\nBookmarks\nHistory" | dmenu -p "ddg")" search_string="$(printf "New window\nBookmarks\nHistory" | dmenu -p "ddg")"
search_mode='tab' search_mode='tab'


@@ -88,9 +92,28 @@ ddg() {
'New window') search_mode='window'; search_string=$(printf '' | dmenu -p 'new ddg');; 'New window') search_mode='window'; search_string=$(printf '' | dmenu -p 'new ddg');;
'Bookmarks');; 'Bookmarks');;
'History') ;; 'History') ;;
*) printf "Invalid argument";;
# *) printf "Invalid argument";;
esac esac
printf "$search_string|$search_mode"
}


brave_search() {
search_prefix="$1"
search_info="$(search_type)"
search_string=$(printf "$search_info" | cut -d'|' -f1)
search_mode=$(printf "$search_info" | cut -d'|' -f2)
if [ -z "$search_string" ]; then exit; fi
new_string=$(rawurlencode "$search_string")
search="$search_prefix$new_string"
case "$search_mode" in
tab) brave-browser "$search";;
window) brave-browser --new-window "$search";;
esac
}

rawurlencode() {
#Takes the first argument and encodes it
search_string="$1"
string_length=$(expr length "$search_string") string_length=$(expr length "$search_string")
char=''; new_string=''; char=''; new_string='';


@@ -98,23 +121,22 @@ ddg() {
while [ $i -le $string_length ] while [ $i -le $string_length ]
do do
char=$(expr substr "$search_string" $i 1) char=$(expr substr "$search_string" $i 1)
new_string="$new_string$(rawurlencode "$char")"
# printf "this is newstring %s\n" "$new_string"
# new_string="$new_string$(rawurlencode "$char")"
case "$char" in
[-_.~a-zA-Z0-9] ) new_string="$new_string$char";;
* ) new_string="$new_string%$(printf '%%%02x' "'$char")";;
esac
i=$(expr $i + 1) i=$(expr $i + 1)
done done
search="https://duckduckgo.com/?q=$new_string"
printf "$new_string"
}


case "$search_mode" in
tab) brave-browser "$search";;
window) brave-browser --new-window "$search";;
esac
ddg() {
brave_search "https://duckduckgo.com/?q="
} }


rawurlencode() {
case "$1" in
[-_.~a-zA-Z0-9] ) result=$1; printf $result;;
* ) result=$(printf '%%%02x' "'$1"); printf %$result;;
esac
github() {
brave_search "https://github.com/search?q="
} }


cmd() { cmd() {
@@ -133,6 +155,7 @@ case $1 in
action) action;; action) action;;
cmd) action;; cmd) action;;
cmd_clip) cmd_clip;; cmd_clip) cmd_clip;;
ddg) ddg;;
ddg) brave_search "https://duckduckgo.com/?q=";;
github) brave_search "https://github.com/search?q=";;
*) printf "Invalid argument";; *) printf "Invalid argument";;
esac esac

Yükleniyor…
İptal
Kaydet