# Add user configurations here
# For HyDE to not touch your beloved configurations,
# we added a config file for you to customize HyDE before loading zshrc
# Edit $ZDOTDIR/.user.zsh to customize HyDE before loading zshrc

#  Plugins 
# oh-my-zsh plugins are loaded  in $ZDOTDIR/.user.zsh file, see the file for more information

#  Aliases 
# Override aliases here in '$ZDOTDIR/.zshrc' (already set in .zshenv)

# # Helpful aliases
alias c='clear'                                                        # clear terminal
alias l='eza -lh --icons=auto'                                         # long list
alias ls='eza -1 --icons=auto'                                         # short list
alias ll='eza -lha --icons=auto --sort=name --group-directories-first' # long list all
alias ld='eza -lhD --icons=auto'                                       # long list dirs
alias lt='eza --icons=auto --tree'                                     # list folder as tree
alias un='paru -Rns'                                             # uninstall package
alias up='paru -Syu'                                             # update system/package/aur
alias pl='paru -Qs'                                              # list installed package
alias pa='paru -Ss'                                              # list available package
alias pc='paru -Sc'                                              # remove unused cache
alias po='paru -Qtdq | paru -Rns -'                        # remove unused packages, also try > paru -Qqd | paru -Rsu --print -
alias fastfetch='fastfetch --logo arch2'
alias  l='eza -1h  --icons=auto --sort=name --group-directories-first' # long list
alias ls='eza -l   --icons=auto --sort=name --group-directories-first' # short list
alias ll='eza -lha --icons=auto --sort=name --group-directories-first' # long list all
alias дд='eza -lha --icons=auto --sort=name --group-directories-first' # sometimes i forget to change keyboard layout


# # Directory navigation shortcuts
alias ..='cd ..'
alias ...='cd ../..'
alias .3='cd ../../..'
alias .4='cd ../../../..'
alias .5='cd ../../../../..'

# # Always mkdir a path (this doesn't inhibit functionality to make a single dir)
alias mkdir='mkdir -p'

#  This is your file 
# Add your configurations here
export EDITOR=nvim
#export EDITOR=code

# unset -f command_not_found_handler # Uncomment to prevent searching for commands not found in package manager
#

# My own helpful aliases
alias icat='kitten icat' # display images in terminal
alias ssh='kitten ssh' # functional ssh with kitty
alias snv='sudo -E nvim' # sudo nvim
alias nv='nvim'
alias pi='ssh omoelle'
alias pi_tl='ssh omoelle-tl'
alias pi-mount='sshfs omoelle:/home/elleoma ~/mnt && cd ~/mnt'
alias pi_tl-mount='sshfs omoelle-tl:/home/elleoma ~/mnt && cd ~/mnt'
alias wifi="nmcli d wifi show-password | grep 'Password' | awk -F': ' '{ print \$2 }'"
alias pivpn="wg-quick up laptop"
alias config='git --git-dir=/home/elleoma/.config --work-tree=/home/elleoma'
alias wp='git --git-dir=$HOME/shit/wallpapers/.wp --work-tree=$HOME/shit/wallpapers'
alias killwayvnc='killall wayvnc'

# git aliases
alias gs='git status '
alias ga='git add '
alias gb='git branch '
alias gc='git commit'
alias gd='git diff'
alias gco='git checkout '
alias gk='gitk --all&'
alias gx='gitx --all'
alias got='git '
alias get='git '
alias gut='git '

# Syntax highlighting for man pages
export MANPAGER='nvim +Man!'

# Setting Ruby path
export GEM_HOME="$(ruby -e 'puts Gem.user_dir')"
export PATH="$PATH:$GEM_HOME/bin"

# Created by `pipx` on 2025-02-01 15:08:39
export PATH="$PATH:/home/elleoma/.local/bin"

# Setting up Rust
export PATH="$HOME/.cargo/bin:$PATH"

#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="$HOME/.sdkman"
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
export PATH=~/.npm-global/bin:$PATH

# go binaries path
export PATH=~/go/bin:$PATH
