#!/bin/zsh # s/alias \([^-]\)/alias -g \1 # Zsh specific aliases if [ $SHELL = "/bin/zsh" ] then # googoo aliases alias o~='o $HOME' alias o/='o /' alias o/s='o /srv' alias go~='go $HOME' alias go/='go /' alias go/s='go /srv' alias ogo~='ogo $HOME' alias ogo/='ogo /' alias ogo/s='ogo /srv' alias calc='bc <<<' if [ -z "$WAYLAND_DISPLAY" ] then if which devour > /dev/null 2>&1 then alias mpv='devour mpv' alias zathura='devour zathura' fi fi alias clipic='clipo > /tmp/pic.png' alias -g '...'='../..' alias -g '....'='../../..' alias -g bg='&; disown' alias -g hl='--help |& less -r' fi if grep -qi "debian\|ubuntu" /etc/os-release 2> /dev/null then alias aptup='apt update && apt upgrade -y' alias ufwd='while echo y | ufw delete "$(ufw status numbered | tail -n +5 | fzf | cut -f2 -d'\''['\'' | cut -f1 -d'\'']'\'')" > /dev/null 2>&1 && >&2 echo "deleted."; do :; done' fi # Programs alias nb='newsboat' alias sr='surfraw' alias ccu='calcurse' alias pf='profanity' alias gurk='pgrep gurk > /dev/null && printf "Already Running.\n" || gurk' alias arduino-cli='arduino-cli --config-file $XDG_CONFIG_HOME/arduino15/arduino-cli.yaml' if [ -x /usr/bin/dircolors ] || [ -x $HOME/../usr/bin/dircolors ] then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" # alias ls='ls -h --color --group-directories-first' #alias dir='dir --color=auto' #alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' alias ip='ip -color=auto' alias ipa='ip -br a' fi alias l='ls -l' alias l1='ls -1' alias ll='ls -la' alias la='ls -aF' alias lst='ls --tree' alias lst1='ls --tree -L1' alias lst2='ls --tree -L2' alias lst3='ls --tree -L3' alias ls.='ls -dl .*' which exa >/dev/null 2>&1 && alias ls='exa --sort extension --group-directories-first' || alias ls='ls --color --group-directories-first --sort=extension' # pacman aliases alias pac='pacman' alias pacsi='pac -Si' alias pacs='pac -Ss' alias pacq='pac -Q' alias pacql='pac -Ql' alias pacqs='pac -Qs' alias paci='pac -Qi' alias pacup='dopac -Syu' alias dopac='doas pacman' alias orpac='pacman -Qtdq | dopac -Rns - 2> /dev/null || echo "No orphans."' alias dopacs='dopac -S' alias dopacc='dopac -Sc' alias doprm='dopac -Rns' alias mpkg='makepkg -si' which pikaur > /dev/null 2>&1 && alias yay='pikaur' alias yup='yay -Syu' alias ysi='yay -Si' alias yss='yay -Ss' alias yqs='yay -Qs' alias yql='yay -Ql' alias yays='yay -S' alias yrm='yay -Rns' alias pkb='pkgfile -b' # transmission alias trr='transmission-remote debuc.com' alias trls='transmission-remote debuc.com -t all -l' alias tradd='transmission-remote debuc.com -a' alias trclipo='transmission-remote debuc.com -a "$(clipo)"' alias grub-update='doas grub-mkconfig -o /boot/grub/grub.cfg' # vim alias vimp="vim '+PlugInstall'" alias nvimp="nvim '+PackerSync'" alias nvg='git status > /dev/null 2>&1 && nvim "+Git"' alias nvn='nvim "+Telekasten panel"' alias xrandr-rpgmaker='xrandr --auto --output VGA-1 --mode 1024x768 --left-of HDMI-1 && ~/.fehbg' alias xrandr-default='xrandr --auto --output VGA-1 --mode 1920x1080 --left-of HDMI-1 --output HDMI-1 --mode 1920x1080 && ~/.fehbg' alias d='du -d 0 -h' alias dud='du .* * -d 0 -h 2>/dev/null | sort -h' alias df='df -h' alias diff='diff -u --color' alias shred='shred -uz' alias lsblk='lsblk -o name,type,fsused,fsavail,size,fstype,label,mountpoint' alias sxt='sxiv -t' alias wgsh='wget --quiet --show-progress' alias wgc='wgsh "$(clipo)"' alias ss4='ss -tln4p' alias mdb='mariadb -u admin -ppass admindb' alias mdbw='mariadb -h 0.0.0.0 -u padmin -pbulbizarre padmindb' alias mdbwa='mariadb -h 10.3.50.5 -u padmin -pbulbizarre padmindb' alias tmux='tmux a || tmux' # ssh alias sha='ssh-add' alias sshs='eval "$(ssh-agent)" && ssh-add' alias vidlen='ffprobe -show_entries format=duration -v quiet -of csv="p=0" -i' alias whatsmyip='curl -s "ifconfig.co"' alias icognito='unset HISTFILE' alias webcam='v4l2-ctl --set-fmt-video=width=1280,height=720; mpv --demuxer-lavf-format=video4linux2 --demuxer-lavf-o-set=input_format=mjpeg av://v4l2:/dev/video0 --profile=low-latency --untimed --no-resume-playback' alias capture='echo "Y" | wf-recorder -o "$(hyprctl -j monitors | jq -r '\''.[].name'\'' | fzf)" --codec=vp8_vaapi --device=/dev/dri/renderD128 -f output.webm -D' alias qrclipo='qrencode -s 16 "$(clipo)" -o - | imv -w "imv - $(clipo)" -' alias airpods='bluetoothctl connect 60:93:16:24:00:10' alias hotpsot='nmcli dev wifi hotspot ifname wlan0 ssid wiefie password "peepeepoopoo"' alias wtip='wt ip -c -brief addr' alias fusephone='sshfs myphone: /media/phone' alias ttyper='ttyper -l english1000 -w 100' alias wgup='doas wg-quick up wg0' alias wgdown='doas wg-quick down wg0' # NPM alias npi="npm init --yes" # Python alias penv='python3 -m venv env' alias phttp='python3 -m http.server' alias pipreq='pip install -r requirements.txt' alias ch='chown ${USER}:${USER} -R' alias kll='killall' alias pi='ping 9.9.9.9 -c4' alias sba='source env/bin/activate || source bin/activate' alias zsr='source ${ZDOTDIR:-~}/.zshrc && rehash' alias rh='rehash' alias wf='doas wipefs -a' alias dmci="doas make clean install" alias rmd='rm -f *.{orig,rej}' alias cdzot='mkdir -p /tmp/zottesite && cd /tmp/zottesite' alias gdate='date +%y_%m_%d-%T' alias tpid='tail -f /dev/null --pid' alias pwdcp='pwd | clipp' alias gw="grep -ri" alias srcsupd='echo ~/src/{installdrier,dotfiles,password-store} ~/.config/emacs | supd' # systemctl aliases alias smc='systemctl' alias smcs='systemctl status' alias smcst='systemctl start' alias smcS='systemctl stop' alias smcr='systemctl restart' alias smcrl='systemctl reload' alias smcd='systemctl daemon-reload' alias smce='systemctl edit' alias smcen='systemctl enable' #user alias smcu='systemctl --user' alias smcus='systemctl --user status' alias smcust='systemctl --user start' alias smcuS='systemctl --user stop' alias smcur='systemctl --user restart' alias smcurl='systemctl --user reload' alias smcud='systemctl --user daemon-reload' alias smcue='systemctl --user edit' alias smcuen='systemctl --user enable' #doas alias dsmc='doas systemctl' alias dsmcs='doas systemctl status' alias dsmcst='doas systemctl start' alias dsmcS='doas systemctl stop' alias dsmcr='doas systemctl restart' alias dsmcrl='doas systemctl reload' alias dsmcd='doas systemctl daemon-reload' alias dsmce='doas systemctl edit' alias dsmcen='doas systemctl enable' # virtualbox aliases alias vbm='vboxmanage' alias vbls='vbm list vms' alias vblsr='vbm list runningvms' alias vb='vbm startvm' # quick config alias ez='$EDITOR ${ZDOTDIR:-~}/.zshrc' alias eza='$EDITOR ${ZDOTDIR}/aliases.sh' alias ezf='$EDITOR ${ZDOTDIR}/functions.zsh' alias eto='$EDITOR ~/sync/TODO' alias edw='$EDITOR ~/proj/suckless/dwm/config.def.h' alias edm='$EDITOR ~/proj/suckless/dmenu/config.def.h' alias ehst='$EDITOR $ZDOTDIR/histfile' alias ezh=' $EDITOR $HISTFILE' alias est='$EDITOR ~/proj/suckless/st/config.def.h' alias esl='$EDITOR ~/proj/suckless/slock/config.def.h' alias esls='$EDITOR ~/proj/suckless/slstatus/config.def.h' alias ehy='$EDITOR ~/.config/hypr/hyprland.conf' alias ehyb='$EDITOR ~/.config/hypr/binds.conf' alias ewbj='$EDITOR ~/.config/waybar/config.jsonc' alias ewbs='$EDITOR ~/.config/waybar/style.css' alias cfd='$EDITOR config.def.h' # /# quick cd jV}k:!sort -t "'" -k 2 alias cdl='cd ~/dl' alias cdoc='cd ~/docs' alias czk='cd ~/docs/zk' alias cda='cd ~/docs/android/projects' alias csv='cd ~/docs/school/Vakken' alias cdm='cd ~/music' alias cdp='cd ~/pics' alias cdpa='cd ~/pics/ai-outputs/' alias cdpp='cd ~/proj/personal/' alias chom='cd ~/proj/personal/homepage' alias lov='cd ~/proj/personal/lola' alias cdsh='~/proj/personal/scheduler' alias cdsw='cd ~/proj/personal/WheelAdvisor' alias cddm='cd ~/proj/suckless/dmenu' alias cdw='cd ~/proj/suckless/dwm' alias cdslo='cd ~/proj/suckless/slock' alias cdsl='cd ~/proj/suckless/slstatus' alias cdst='cd ~/proj/suckless/st' alias cdsta='cd ~/proj/suckless/stable-diffusion-webui' alias cdsu='cd ~/proj/suckless/surf' alias cds='cd ~/src/' alias cdsb='cd ~/src/build' alias cdsc='cd ~/src/comfyui/' alias cdo='cd ~/src/dotfiles' alias cdi='cd ~/src/installdrier' alias cdia='cd ~/src/installdrier/arch' alias cdib='cd ~/src/installdrier/deb' alias czo='cd ~/zot/' alias cdpw='cd ${PASSWORD_STORE_DIR:-~/.password-store}' alias cdng='cd /etc/nginx' alias cdrs='cd /srv/' alias cdv='cd ~/vids' alias god='cd "$(find . -mindepth 1 -maxdepth 1 -type d | fzf)"' alias gov='go ~/vids d' # fzf aliases alias ppj='cd ~/proj/personal/"$(find ~/proj/personal -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | fzf)"' alias ppjs='cd ~/proj/personal/scripts/"$(find ~/proj/personal/scripts -mindepth 1 -maxdepth 1 -type d -printf "%f\n" | fzf)"' alias scr='edit_in_dir ~/proj/personal/scripts/' alias fil='edit_in_dir ~/docs/filios/' alias fzps='ps aux | tail +2 | fzf | tee /dev/stderr | awk '\''{print $2}'\'' | clipp' alias asf='alias | fzf' alias fzh="fzf --tac < $HISTFILE | tee /dev/stderr | clipp" alias ffwin='hyprctl clients -j | jq '\''.[].pid'\'' | fzf --preview "hyprctl clients -j | jq '\''.[] | select(.pid == {}) | {class, title, workspace, xwayland}'\''"' alias pff='find ${PASSWORD_STORE_DIR:=~/src/password-store/} -name "*.gpg" | sed -e "s@$PASSWORD_STORE_DIR/@@" -e '\''s/\.gpg$//'\'' | fzf | xargs pass show -c' alias fzps='fzf --print0 | xargs -0I{}' alias ytdl='yt-dlp --restrict-filenames --embed-chapters -f "b" -S "res:1080" -P "$HOME/vids/youtube/" -o "%(channel)s/%(title)s.%(ext)s"' # emacs aliases alias emacsd='emacs --daemon' alias emacsdbg='emacs --debug-init' alias e='emacsclient -c -a "emacs"' # docker aliases alias dcb='docker build' alias dcbt='docker build -t' alias dce='docker exec' alias dcet='docker exec -it' alias dcmp='docker compose up -d' # dotnet aliases alias dncns='dotnet new console --use-program-main -o' # debuc aliases alias dbadd='ssh db dladd "'\''$(clipo)'\''"' alias dbcons='ssh -t db dlcons' alias dbinf='ssh db dlinfo' alias sshdb='ssh -t db "tmux a || tmux"' alias dbsmu='rsync -aPz db:/media/basilisk/music/ /media/kilimanjaro/music' # oh-my-zsh git aliases alias config='GIT_WORK_TREE=~/src/dotfiles/ GIT_DIR=~/src/dotfiles/.git' alias cfg='$EDITOR ~/src/dotfiles/"$(config git ls-files | fzf || exit)"' alias gmod='git status --short | sed '\''/^\s*M/!d;s/^\s*M\s*//'\'' | fzf | xargs $EDITOR' alias g='git' alias ga='git add' alias gaa='git add --all' alias gapa='git add --patch' alias gau='git add --update' alias gav='git add --verbose' alias gap='git apply' alias gapt='git apply --3way' alias gb='git branch' alias gba='git branch --all' alias gbd='git branch --delete' alias gbda='git branch --no-color --merged | command grep -vE "^([+*]|\s*($(git_main_branch)|$(git_develop_branch))\s*$)" | command xargs git branch --delete 2>/dev/null' alias gbD='git branch --delete --force' alias gbg='git branch -vv | grep ": gone\]"' alias gbgd='local res=$(gbg | awk '"'"'{print $1}'"'"') && [[ $res ]] && echo $res | xargs git branch -d' alias gbgD='local res=$(gbg | awk '"'"'{print $1}'"'"') && [[ $res ]] && echo $res | xargs git branch -D' alias gbl='git blame -b -w' alias gbnm='git branch --no-merged' alias gbr='git branch --remote' alias gbs='git bisect' alias gbsb='git bisect bad' alias gbsg='git bisect good' alias gbsr='git bisect reset' alias gbss='git bisect start' alias gc='git commit --verbose' alias gc!='git commit --verbose --amend' alias gcn!='git commit --verbose --no-edit --amend' alias gca='git commit --verbose --all' alias gca!='git commit --verbose --all --amend' alias gcan!='git commit --verbose --all --no-edit --amend' alias gcans!='git commit --verbose --all --signoff --no-edit --amend' alias gcam='git commit --all --message' alias gcsm='git commit --signoff --message' alias gcas='git commit --all --signoff' alias gcasm='git commit --all --signoff --message' alias gcb='git checkout -b' alias gcf='git config --list' alias gcl='git clone' alias gclc='git clone "$(clipo)"' alias gclr='git clone --recurse-submodules' alias gc1='git clone --depth 1' alias gclean='git clean --interactive -d' alias gpristine='git reset --hard && git clean --force -dfx' alias grsf='git reset --soft HEAD~' alias gcm='git checkout $(git_main_branch)' alias gcd='git checkout $(git_develop_branch)' alias gcmsg='git commit --message' alias gco='git checkout' alias gcor='git checkout --recurse-submodules' alias gcount='git shortlog --summary --numbered' alias gcp='git cherry-pick' alias gcpa='git cherry-pick --abort' alias gcpc='git cherry-pick --continue' alias gcs='git commit --gpg-sign' alias gcss='git commit --gpg-sign --signoff' alias gcssm='git commit --gpg-sign --signoff --message' alias gd='git diff' alias gdca='git diff --cached' alias gdcw='git diff --cached --word-diff' alias gdct='git describe --tags $(git rev-list --tags --max-count=1)' alias gds='git diff --staged' alias gdt='git diff-tree --no-commit-id --name-only -r' alias gdup='git diff @{upstream}' alias gdw='git diff --word-diff' alias gdl='git diff HEAD^ HEAD' alias gf='git fetch' alias gfo='git fetch origin' alias gfg='git ls-files | grep' alias gg='git gui citool' alias gga='git gui citool --amend' alias ggpur='ggu' alias ggpull='git pull origin "$(git_current_branch)"' alias ggpush='git push origin "$(git_current_branch)"' alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)' alias gpsup='git push --set-upstream origin $(git_current_branch)' alias ghh='git help' alias gignore='git update-index --assume-unchanged' alias gignored='git ls-files -v | grep "^[[:lower:]]"' alias git-svn-dcommit-push='git svn dcommit && git push github $(git_main_branch):svntrunk' alias gk='\gitk --all --branches &!' alias gke='\gitk --all $(git log --walk-reflogs --pretty=%h) &!' alias gl='git pull' alias glg='git log --stat' alias glgp='git log --stat --patch' alias glgg='git log --graph' alias glgga='git log --graph --decorate --all' alias glgm='git log --graph --max-count=10' alias glo='git log --oneline --decorate' alias glol="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset'" alias glols="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --stat" alias glod="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset'" alias glods="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short" alias glola="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --all" alias glog='git log --oneline --decorate --graph' alias gloga='git log --oneline --decorate --graph --all' alias glp="_git_log_prettily" alias gm='git merge' alias gmom='git merge origin/$(git_main_branch)' alias gmtl='git mergetool --no-prompt' alias gmtlvim='git mergetool --no-prompt --tool=vimdiff' alias gmum='git merge upstream/$(git_main_branch)' alias gma='git merge --abort' alias gp='git push' alias gpd='git push --dry-run' alias gpf!='git push --force' alias gpoat='git push origin --all && git push origin --tags' alias gpod='git push origin --delete' alias gpr='git pull --rebase' alias gpu='git push upstream' alias gpv='git push --verbose' alias gr='git remote' alias gra='git remote add' alias grb='git rebase' alias grba='git rebase --abort' alias grbc='git rebase --continue' alias grbd='git rebase $(git_develop_branch)' alias grbi='git rebase --interactive' alias grbm='git rebase $(git_main_branch)' alias grbom='git rebase origin/$(git_main_branch)' alias grbo='git rebase --onto' alias grbs='git rebase --skip' alias grev='git revert' alias grh='git reset' alias grhh='git reset --hard' alias groh='git reset origin/$(git_current_branch) --hard' alias grm='git rm' alias grmc='git rm --cached' alias grmv='git remote rename' alias grrm='git remote remove' alias grs='git restore' alias grset='git remote set-url' alias grss='git restore --source' alias grst='git restore --staged' alias grt='cd "$(git rev-parse --show-toplevel || echo .)"' alias gru='git reset --' alias grup='git remote update' alias grv='git remote --verbose' alias gsb='git status --short --branch' alias gsd='git svn dcommit' alias gsh='git show' alias gsi='git submodule init' alias gsps='git show --pretty=short --show-signature' alias gsr='git svn rebase' alias gss='git status --short' alias gst='git status' alias gstaa='git stash apply' alias gstc='git stash clear' alias gstd='git stash drop' alias gstl='git stash list' alias gstp='git stash pop' alias gsts='git stash show --text' alias gstu='gsta --include-untracked' alias gstall='git stash --all' alias gsu='git submodule update' alias gsw='git switch' alias gswc='git switch --create' alias gswm='git switch $(git_main_branch)' alias gswd='git switch $(git_develop_branch)' alias gts='git tag --sign' alias gtv='git tag | sort -V' alias gtl='gtl(){ git tag --sort=-v:refname -n --list "${1}*" }; noglob gtl' alias gunignore='git update-index --no-assume-unchanged' alias gunwip='git log --max-count=1 | grep -q -c "\--wip--" && git reset HEAD~1' alias gup='git pull --rebase' alias gupv='git pull --rebase --verbose' alias gupa='git pull --rebase --autostash' alias gupav='git pull --rebase --autostash --verbose' alias gupom='git pull --rebase origin $(git_main_branch)' alias gupomi='git pull --rebase=interactive origin $(git_main_branch)' alias glum='git pull upstream $(git_main_branch)' alias gluc='git pull upstream $(git_current_branch)' alias gwch='git whatchanged -p --abbrev-commit --pretty=medium' alias gwip='git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign --message "--wip-- [skip ci]"' alias gwt='git worktree' alias gwta='git worktree add' alias gwtls='git worktree list' alias gwtmv='git worktree move' alias gwtrm='git worktree remove' alias gam='git am' alias gamc='git am --continue' alias gams='git am --skip' alias gama='git am --abort' alias gamscp='git am --show-current-patch'