added some of rwxrob's scripts

This commit is contained in:
Solomon Laing 2023-02-10 08:18:09 +10:30
parent 760b781d93
commit d9c4bee8f8
6 changed files with 1566 additions and 0 deletions

70
scripts/bashmatrix Executable file
View File

@ -0,0 +1,70 @@
#!/usr/bin/env bash
# Courtesy of @bvierra and company (long ago, pre-cPanel)
### Customization:
blue="\033[0;34m"
brightblue="\033[1;34m"
cyan="\033[0;36m"
brightcyan="\033[1;36m"
green="\033[0;32m"
brightgreen="\033[1;32m"
red="\033[0;31m"
brightred="\033[1;31m"
white="\033[1;37m"
black="\033[0;30m"
grey="\033[0;37m"
darkgrey="\033[1;30m"
# Choose the colors that will be used from the above list
# space-separated list
# e.g. `colors=($green $brightgreen $darkgrey $white)`
colors=($green $brightgreen)
### End customization
### Do not edit below this line
spacing=${1:-100} # the likelihood of a character being left in place
scroll=${2:-0} # 0 for static, positive integer determines scroll speed
screenlines=$(expr `tput lines` - 1 + $scroll)
screencols=$(expr `tput cols` / 2 - 1)
# chars=(a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 ^)
# charset via Carl:
chars=(ア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン)
count=${#chars[@]}
colorcount=${#colors[@]}
trap "tput sgr0; clear; exit" SIGTERM SIGINT
if [[ $1 =~ '-h' ]]; then
echo "Display a Matrix(ish) screen in the terminal"
echo "Usage: matrix [SPACING [SCROLL]]"
echo "Example: matrix 100 0"
exit 0
fi
clear
tput cup 0 0
while :
do for i in $(eval echo {1..$screenlines})
do for i in $(eval echo {1..$screencols})
do rand=$(($RANDOM%$spacing))
case $rand in
0)
printf "${colors[$RANDOM%$colorcount]}${chars[$RANDOM%$count]} "
;;
1)
printf " "
;;
*)
printf "\033[2C"
;;
esac
done
printf "\n"
# sleep .005
done
tput cup 0 0
done

4
scripts/duck Executable file
View File

@ -0,0 +1,4 @@
#!/bin/sh
url="https://lite.duckduckgo.com/lite?kd=-1&kp=-1&q=$(urlencode "$*")" # 🦆
exec lynx "$url"

1449
scripts/fishies Executable file

File diff suppressed because it is too large Load Diff

4
scripts/google Executable file
View File

@ -0,0 +1,4 @@
#!/bin/sh
url="https://google.com/search?q=$(urlencode "$*")"
exec lynx "https://google.com/search?q=$url"

35
scripts/urlencode Executable file
View File

@ -0,0 +1,35 @@
#!/usr/bin/env bash
# yeah, i totally stole this from stack exchange, no shame
# - rwxrob
# and I stole it from rwxrob
# - inkletblot
rawurlencode() {
local string="${1}"
local strlen=${#string}
local encoded=""
local pos c o
for ((pos = 0; pos < strlen; pos++)); do
c=${string:$pos:1}
case "$c" in
[-_.~a-zA-Z0-9]) o="${c}" ;;
*) printf -v o '%%%02x' "'$c'" ;;
esac
encoded+="${o}"
done
echo "${encoded}" # You can either set a return variable (FASTER)
REPLY="${encoded}" #+or echo the result (EASIER)... or both... :p
}
if test -n "$1"; then
rawurlencode "$*"
exit
fi
IFS=
while read -r line; do
rawurlencode "$line"
done

4
scripts/vic Executable file
View File

@ -0,0 +1,4 @@
#!/bin/sh
cmd=$(command -v $1)
test -n "$cmd" && exec vi "$cmd"