dotfiles/bin/sh/uxnget.sh

80 lines
1.6 KiB
Bash

#!/bin/sh
function add_alias() {
local alias_name="$1"
local alias_cmd="$2"
local shell_config
local alias_line
case "$SHELL" in
*/fish)
shell_config="$HOME/.config/fish/config.fish"
alias_line="alias $alias_name '$alias_cmd'"
;;
*/bash)
shell_config="$HOME/.bashrc"
alias_line="alias $alias_name='$alias_cmd'"
;;
*/zsh)
shell_config="$HOME/.zshrc"
alias_line="alias $alias_name='$alias_cmd'"
;;
*)
echo "Unknown shell: $SHELL"
return 1
;;
esac
if [ ! -f "$shell_config" ]; then
mkdir -p "$(dirname "$shell_config")"
touch "$shell_config"
fi
if grep -q "^alias $alias_name" "$shell_config"; then
echo "Alias '$alias_name' already exists in $shell_config"
return
fi
echo "$alias_line" >> "$shell_config"
echo "Added alias '$alias_name' to $shell_config"
}
gui_programs=(
calendar
notepad
noodle
oekaki
turye
theme
left
nasu
nebu
dexe
cccc
m291
drif
)
cli_programs=(
drifblim
drifloon
uxnfor
uxnlin
hx
)
for s in "${gui_programs[@]}"; do
echo "$s.tal.txt > $s.rom"
wget -qP /tmp "https://wiki.xxiivv.com/etc/$s.tal.txt"
uxnasm "/tmp/$s.tal.txt" "$HOME/roms/uxn/$s.rom"
add_alias "$s" "uxn11 $HOME/roms/uxn/$s.rom"
done
for s in "${cli_programs[@]}"; do
echo "$s.tal.txt > $s.rom"
wget -qP /tmp "https://wiki.xxiivv.com/etc/$s.tal.txt"
uxnasm "/tmp/$s.tal.txt" "$HOME/roms/uxn/$s.rom"
add_alias "$s" "uxncli $HOME/roms/uxn/$s.rom"
done