60 lines
1.4 KiB
Bash
60 lines
1.4 KiB
Bash
#!/bin/zsh
|
|
|
|
function voicesed() { sed 's/\([^ ]*\) .*/\1/;'; }
|
|
function voicelist() { say -v ? | voicesed; }
|
|
function voicelistenglish() { say -v ? | grep 'en_' | voicesed; }
|
|
function voicerandom() { voicelistenglish | shuf -n 1; }
|
|
|
|
function voicelistnormal() {
|
|
voicelistenglish |
|
|
sed '/Trinoids/d;/Zarvox/d;/Deranged/d;/Hysterical/d;/Bahh/d;/Bubbles/d'
|
|
}
|
|
function voicerandomnormal() { voicelistnormal | shuf -n 1; }
|
|
|
|
function sayvoices() {
|
|
for voice in $(voicelist); do
|
|
say -v "$voice" $(say -v ? | grep $voice | sed 's/[^#]*# //');
|
|
done
|
|
}
|
|
|
|
function sayone() {
|
|
local voice=$(voicerandom);
|
|
say -v "$voice" $(say -v ? | grep $voice | sed 's/[^#]*# //');
|
|
}
|
|
|
|
|
|
function meme {
|
|
local DIRECTORY="$HOME/Pictures/jest";
|
|
|
|
[ ! -d $DIRECTORY ] && echo "No meme directory found :c";
|
|
|
|
echo;
|
|
imgcat $DIRECTORY/$1
|
|
echo;
|
|
}
|
|
_meme () { # autocompletion
|
|
# Set
|
|
local cur=${COMP_WORDS[COMP_CWORD]}
|
|
COMPREPLY=( $(compgen -W "$(ls $HOME/Pictures/jest)" -- $cur) )
|
|
}
|
|
complete -F _meme meme;
|
|
|
|
function pika {
|
|
local DIRECTORY="$HOME/Pictures/pika";
|
|
|
|
[ ! -d $DIRECTORY ] && echo "Pikachu directory required." && exit 1;
|
|
|
|
# count the pikas
|
|
IMAGE_COUNT=$(ls -l $DIRECTORY | wc -l);
|
|
let "IMAGE_COUNT=IMAGE_COUNT-1";
|
|
|
|
# pick a random gif from the pikachu directory
|
|
IMAGE="$DIRECTORY/$((RANDOM % $IMAGE_COUNT)).gif";
|
|
|
|
echo;
|
|
imgcat $IMAGE
|
|
echo;
|
|
}
|
|
|
|
alias pikabox='while true; do reset; pika; sleep 120; done'
|