#Drake's Early Shit #Apparently, P10k removes tty access, so we need to define it up here to fix that export GPG_TTY=$(tty) [[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)" SCRIPT_SOURCE=$(readlink -f ~/.zshrc) SCRIPT_SOURCE=${SCRIPT_SOURCE:a:h} source $SCRIPT_SOURCE/boilerplate.zsh # Set editor default keymap to emacs (`-e`) or vi (`-v`) bindkey -e #Drake's shit #Setup Zoxide alias alias cd="z" #Setup doas alias alias sudo="doas" #Setup $PATH PATH="./node_modules/.bin:/usr/lib/jvm/graalvm16/bin:$PATH:/home/ruthenic/.local/bin:/usr/share/code" #Set up general-use aliases alias npm="pnpm" alias xbps-search="xbps-query -Rs" alias cat="bat" #alias micro="nvim" alias cls="/usr/bin/clear" alias ssh="kitty +kitten ssh -XY" #alias clear="clear;ls" function fullpath() { local fptmp=${PWD} for x ($*); do local fptmp="$fptmp/$x"; done echo $fptmp } function mkcd() { mkdir $1 cd $1 } _zsh_autosuggest_strategy_histdb_top() { local query="select commands.argv from history left join commands on history.command_id = commands.rowid left join places on history.place_id = places.rowid where commands.argv LIKE '$(sql_escape $1)%' group by commands.argv order by places.dir != '$(sql_escape $PWD)', count(*) desc limit 1" suggestion=$(_histdb_query "$query") } ZSH_AUTOSUGGEST_STRATEGY=histdb_top #prompt autoload -Uz add-zsh-hook _git_full= function _git_info() { if [[ -v DISABLE_GIT ]]; then return fi local modified=0; local new=0; _git_full= git status --porcelain 2>/dev/null 1>/dev/null if [ $? != 0 ]; then return else _git_full+="| " fi branch=$(git branch --show-current) if [[ -n $branch ]]; then _git_full+=$'%{\e[0;32m%}' _git_full+="$branch " _git_full+=$'%{\e[0m%}' fi for x in $(git status --porcelain); do x=$(echo $x | cut -c1) if [ $x = "M" ] || [ $x = "D" ]; then let modified+=1 elif [ $x = "?" ]; then let new+=1 fi done if [[ $modified -gt 0 ]]; then _git_full+=$'%{\e[0;33m%}' _git_full+="!$modified " _git_full+=$'%{\e[0m%}' fi if [[ $new -gt 0 ]]; then _git_full+=$'%{\e[0;36m%}' _git_full+="?$new " _git_full+=$'%{\e[0m%}' fi } alias disable_git_status="DISABLE_GIT=1" alias enable_git_status="unset DISABLE_GIT" add-zsh-hook precmd _git_info PS1=$'\n| %{\e[0;31m%}%~ %{\e[0m%}| %{\e[0;34m%}%n %{\e[0m%}$_git_full \n\\\_%(!.#.$) ' RPS1=$'%{\e[A%}%{\e[0;31m%}$(date +%I:%M:%S%P)%{\e[0m%} |%{\e[B%}'