diff options
Diffstat (limited to 'config/essentials/zsh')
-rw-r--r-- | config/essentials/zsh/.zshrc | 38 | ||||
-rw-r--r-- | config/essentials/zsh/aliases.sh | 5 | ||||
-rw-r--r-- | config/essentials/zsh/functions.zsh | 12 |
3 files changed, 29 insertions, 26 deletions
diff --git a/config/essentials/zsh/.zshrc b/config/essentials/zsh/.zshrc index 1260bb0..9b6fa48 100644 --- a/config/essentials/zsh/.zshrc +++ b/config/essentials/zsh/.zshrc @@ -25,24 +25,9 @@ zle -N add-surround surround zle -N change-surround surround compinit -if grep -qi "debian\|ubuntu" /usr/lib/os-release /etc/os-release 2>/dev/null -then - sfiles=( - /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh - /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh - ) -else - sfiles=( - /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh - /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh) -fi -sfiles+=( - ~/.config/zsh/functions.zsh - ~/.config/zsh/aliases.sh -) -for f in "${sfiles[@]}"; do - test -f "$f" && source "$f" -done +# Source files +. $ZDOTDIR/functions.zsh +. $ZDOTDIR/aliases.sh bindkey -v bindkey -a cs change-surround @@ -137,6 +122,23 @@ parse_git_status() { git status --short 2> /dev/null | head -n1 | awk '{print $1 " "}' } +# Completion +_dotnet_zsh_complete() +{ + local completions=("$(dotnet complete "$words")") + + # If the completion list is empty, just continue with filename selection + if [ -z "$completions" ] + then + _arguments '*::arguments: _normal' + return + fi + + # This is not a variable assignment, don't remove spaces! + _values = "${(ps:\n:)completions}" +} +compdef _dotnet_zsh_complete dotnet + export REPORTTIME=2 export TIMEFMT="-> %*E" # override built-in time command diff --git a/config/essentials/zsh/aliases.sh b/config/essentials/zsh/aliases.sh index ea1c719..a1a6723 100644 --- a/config/essentials/zsh/aliases.sh +++ b/config/essentials/zsh/aliases.sh @@ -206,6 +206,7 @@ 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 ~/src/dotfiles/config/hyprland/waybar/config.jsonc' alias ewbs='$EDITOR ~/src/dotfiles/config/hyprland/waybar/style.css' alias cfd='$EDITOR config.def.h' @@ -213,6 +214,7 @@ alias cfd='$EDITOR config.def.h' alias cdl='cd ~/dl' alias cdoc='cd ~/docs' 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/' @@ -241,7 +243,8 @@ alias cdng='cd /etc/nginx' alias cdrs='cd /srv/' # fzf aliases -alias ppj='cd ~/proj/personal/"$(find ~/proj/personal -mindepth 1 -maxdepth 1 -type d -printf "%f\n"| fzf)"' +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 fil='$EDITOR ~/docs/filios/"$(find ~/docs/filios -type f -printf "%f\n" | fzf)"' alias cfg='find -L ~/src/dotfiles -type f 2> /dev/null | fzf | xargs -r $EDITOR' alias fzps='ps aux | tail +2 | fzf | tee /dev/stderr | awk '\''{print $2}'\'' | clipp' diff --git a/config/essentials/zsh/functions.zsh b/config/essentials/zsh/functions.zsh index 35aaf58..fda80fb 100644 --- a/config/essentials/zsh/functions.zsh +++ b/config/essentials/zsh/functions.zsh @@ -32,6 +32,7 @@ ranger() { test -z "$RANGER_LEVEL" && /usr/bin/ranger "$@" || exit } # googoo aliases _googoo_fzf_opt() { + unset dest opt if [ "$1" ] then [ -d "$1" ] && dest="$1" || opt="-q $1" @@ -99,9 +100,7 @@ clip() { } unzipp() { - file=$1 - shift - unzip $file $@ || exit 1 + unzip -- "$(readlink -f -- "$1")" || return 1 rm $file } @@ -243,10 +242,9 @@ pacsize() mime-default () { logn "Setting '$1' as default for its mimetypes" - grep "MimeType=" /usr/share/applications/"$1" | - cut -d '=' -f 2- | - tr ';' '\n' | - xargs -I {} xdg-mime default "$1" "{}" + grep "MimeType=" /usr/share/applications/"$1".desktop | + cut -d '=' -f 2- | tr ';' '\0' | + xargs -0I{} xdg-mime default "$1".desktop "{}" logn "Done." } |