Add morsy.sh
This commit is contained in:
commit
753180d172
1 changed files with 95 additions and 0 deletions
95
morsy.sh
Normal file
95
morsy.sh
Normal file
|
@ -0,0 +1,95 @@
|
|||
dit() { # This is a definition of dit, the sleep is how long It lasts
|
||||
curl https://lampy.dangrain.top/H
|
||||
sleep 0.1
|
||||
curl https://lampy.dangrain.top/L
|
||||
}
|
||||
|
||||
dah() { # same as abvoe just for dah
|
||||
curl https://lampy.dangrain.top/H
|
||||
sleep 0.3
|
||||
curl https://lampy.dangrain.top/L
|
||||
}
|
||||
|
||||
space() {
|
||||
sleep 0.1 # space :)
|
||||
}
|
||||
|
||||
|
||||
declare -A morse # we define the whole alphabet
|
||||
morse[a]=".-"
|
||||
morse[b]="-..."
|
||||
morse[c]="-.-."
|
||||
morse[d]="-.."
|
||||
morse[e]="."
|
||||
morse[f]="..-."
|
||||
morse[g]="--."
|
||||
morse[h]="...."
|
||||
morse[i]=".."
|
||||
morse[j]=".---"
|
||||
morse[k]="-.-"
|
||||
morse[l]=".-.."
|
||||
morse[m]="--"
|
||||
morse[n]="-."
|
||||
morse[o]="---"
|
||||
morse[p]=".--."
|
||||
morse[q]="--.-"
|
||||
morse[r]=".-."
|
||||
morse[s]="..."
|
||||
morse[t]="-"
|
||||
morse[u]="..-"
|
||||
morse[v]="...-"
|
||||
morse[w]=".--"
|
||||
morse[x]="-..-"
|
||||
morse[y]="-.--"
|
||||
morse[z]="--.."
|
||||
morse[1]=".----"
|
||||
morse[2]="..---"
|
||||
morse[3]="...--"
|
||||
morse[4]="....-"
|
||||
morse[5]="....."
|
||||
morse[6]="-...."
|
||||
morse[7]="--..."
|
||||
morse[8]="---.."
|
||||
morse[9]="----."
|
||||
morse[0]="-----"
|
||||
|
||||
|
||||
|
||||
send_letter() { # function that sends the letters (calls dit and dah)
|
||||
local letter=$1
|
||||
code=${morse[$letter]}
|
||||
|
||||
for ((i=0; i<${#code}; i++)); do
|
||||
char=${code:$i:1}
|
||||
if [[ $char == "." ]]; then
|
||||
dit
|
||||
elif [[ $char == "-" ]]; then
|
||||
dah
|
||||
fi
|
||||
space
|
||||
done
|
||||
}
|
||||
|
||||
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
||||
if [[ $# -gt 0 ]]; then
|
||||
"$@"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Input your text. Lowercase only"
|
||||
|
||||
read inputted_text
|
||||
curl https://lampy.dangrain.top/L # we ensure Lampy's off before sending
|
||||
my_string="${inputted_text}"
|
||||
|
||||
char_array=()
|
||||
|
||||
for (( i=0; i<${#my_string}; i++ )); do
|
||||
char_array+=("${my_string:$i:1}") # go through the string picking out letters and putting them into char_array
|
||||
done
|
||||
|
||||
|
||||
for char in "${char_array[@]}"; do
|
||||
send_letter "$char" # this is where we actually send the characters
|
||||
done
|
||||
fi
|
Loading…
Add table
Reference in a new issue