diff options
Diffstat (limited to 'dot_config/zsh')
-rw-r--r-- | dot_config/zsh/aliasrc | 62 | ||||
-rw-r--r-- | dot_config/zsh/dot_zshrc | 42 |
2 files changed, 71 insertions, 33 deletions
diff --git a/dot_config/zsh/aliasrc b/dot_config/zsh/aliasrc new file mode 100644 index 0000000..0b2b91d --- /dev/null +++ b/dot_config/zsh/aliasrc @@ -0,0 +1,62 @@ +#!/bin/sh + +# Use neovim for vim if present. +[ -x "$(command -v nvim)" ] && alias vim="nvim" vimdiff="nvim -d" + +# Use $XINITRC variable if file exists. +[ -f "$XINITRC" ] && alias startx="startx $XINITRC" + +# sudo not required for some system commands +for x in mount umount sv emerge apt pacman updatedb su ; do + alias $x="sudo $x" +done + +if command -v doas &>/dev/null +then + alias sudo='doas' +else + alias sudo='sudo ' +fi + +# Verbosity and settings that you pretty much just always are going to want. +alias \ + cp="cp -iv" \ + mv="mv -iv" \ + rm="rm -vI" \ + bc="bc -ql" \ + mkdir="mkdir -pv" \ + yt="yt-dlp --add-metadata -i" \ + yta="yt -x -f bestaudio/best" \ + ffmpeg="ffmpeg -hide_banner" \ + df="df -h" \ + du="dust -r" \ + free="free -m" \ + gdb='gdb -q -nh -x "$XDG_CONFIG_HOME/gdb/init"' \ + +# Colorize commands when possible. +alias \ + ls="eza -aF --group-directories-first" \ + ll="eza -alg --group-directories-first" \ + lt='eza -aTF --group-directories-first' \ + lr='eza -aRF' \ + grep="rg --color=auto" \ + diff="delta" \ + cat='bat --paging=never --style=plain' \ + +# These common commands are just too long! Abbreviate them. +alias \ + ka="killall" \ + g="git" \ + trem="transmission-remote" \ + YT="youtube-viewer" \ + sdn="sudo shutdown -h now" \ + e="$EDITOR" \ + v="$EDITOR" \ + em="sudo emerge" \ + p="sudo pacman" \ + xi="sudo xbps-install" \ + xr="sudo xbps-remove -R" \ + xq="xbps-query" \ + z="zathura" + +alias adb='HOME="$XDG_DATA_HOME"/android adb' diff --git a/dot_config/zsh/dot_zshrc b/dot_config/zsh/dot_zshrc index 4cd42fe..829b5a7 100644 --- a/dot_config/zsh/dot_zshrc +++ b/dot_config/zsh/dot_zshrc @@ -4,25 +4,24 @@ [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]] && source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" # add .local/bin to PATH export PATH="${XDG_BIN_HOME:-$HOME/.local/bin}:$PATH" -#export PATH="${$(find ~/.local/bin -type d -printf %p:)%%:}:$PATH" - -eval "$(antidot init)" -#eval "$(lesspipe.sh)" - -# Luke's config for the Zoomer Shell if [ -f /etc/os-release ] then . /etc/os-release else - ID=`uname -s` + ID=$(uname -s) fi case "$ID" in Darwin ) source /usr/local/share/powerlevel10k/powerlevel10k.zsh-theme ;; * ) - [ -f /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme ] && source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme || source ${XDG_DATA_HOME:-$HOME/.local/share}/powerlevel10k/powerlevel10k.zsh-theme + if [ -f /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme ] + then + source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme + else + source ${XDG_DATA_HOME:-$HOME/.local/share}/powerlevel10k/powerlevel10k.zsh-theme + fi ;; esac @@ -53,9 +52,7 @@ setopt HIST_VERIFY # Don't execute immediately upon history expans setopt HIST_BEEP # Beep when accessing nonexistent history. # Load aliases and shortcuts if existent. -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc" -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" -[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/zshnameddirrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/zshnameddirrc" +[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/zsh/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/zsh/aliasrc" [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/zsh/.zshopts" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/zsh/.zshopts" # Basic auto/tab complete: @@ -71,27 +68,7 @@ _comp_options+=(globdots) # Include hidden files. [[ ! -f ~/.config/zsh/.p10k.zsh ]] || source ~/.config/zsh/.p10k.zsh [[ ! -f ~/.config/zsh/keybindings.zsh ]] || source ~/.config/zsh/keybindings.zsh -# zsh parameter completion for the dotnet CLI -_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 - -[[ -f ~/.config/tabtab/zsh/__tabtab.zsh ]] && . ~/.config/tabtab/zsh/__tabtab.zsh || true - -if [ -n $WSL_DISTRO_NAME ] +if [ -n "$WSL_DISTRO_NAME" ] then command_not_found_handler() { if [ -x "$(command -v $0.exe)" ]; then @@ -105,7 +82,6 @@ then } fi - case "$ID" in debian | ubuntu ) source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh |