declare -A alias_list=( # ZSH [ll]='ls -alF' [ls]='ls -lah --color' [grep]='grep --color=auto' [vi]='nvim' [lpg]='cd ~/git/lucidpoint' [ppg]='cd ~/git/personal' [downloads]='cd ~/Downloads' [desktop]='cd ~/Desktop' [docs]='cd ~/Documents' [pip]='pip3' [python]='python3' # PYTHON [act]='source venv/bin/activate' [p]='ipython' [dea]='deactivate' # GIT [gaa]='git add --all' [gcm]='git commit --all --message' [glo]='git log --oneline --decorate --graph --all' [gl]='git pull' [gp]='git push' [gpd]='git push --dry-run' [gpv]='git push --verbose' [grb]='git rebase' [grv]='git remote --verbose' [gs]='git show --pretty=short' [gst]='git status --short' [gss]='git status --long --show-stash' [gd]='git diff' [gdca]='git diff --cached' [gdcw]='git diff --cached --word-diff' [gds]='git diff --staged' [gdw]='git diff --word-diff' # SSH [ed]='ssh errol@edesktop.sancaktar.net' [fs]='ssh errol@fs1.sancaktar.net' # KUBERNETES [k]='kubectl' [kgc]='kubectl config get-contexts' [kuc]='kubectl config use-context' # TERRAFORM [t]='tofu' # GCLOUD [gcl]='gcloud config configurations list' [gca]='gcloud config configurations activate' # SPOTIFY [spo]='spotify_player' ) # Alias Functions gc() { git add --all if [ -n "$1" ] then git commit --all --message "$1" else git commit -m update fi git push --verbose } # Alias Loop if [[ -d '/proc' ]]; then current_shell=`cat /proc/$$/comm` else current_shell=`echo $SHELL | cut -d/ -f3` fi #Bash if [[ "$current_shell" == 'bash' ]]; then for alias_def in "${!alias_list[@]}"; do alias $alias_def="${alias_list[$alias_def]}" done fi if [[ "$current_shell" == 'zsh' ]]; then #Zsh for alias_def in "${(k@)alias_list[@]}"; do alias $alias_def="${alias_list[$alias_def]}" done fi