#!/bin/zsh
#history settings
HISTFILE=$HOME/.cache/zsh/history
SAVEHIST=100000000
HISTSIZE=$SAVEHIST
setopt appendhistory
#completion
autoload -U compinit
zstyle ':completion:*' menu select
zmodload zsh/complist
compinit
comp_options+=(globdots)
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh && fpath=(/usr/share/zsh/stie-functions $fpath) && source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
#colors & prompt
autoload -U colors && colors && setopt prompt_subst
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=5"
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=12"
[ "$(id -u)" = 0 ] && PS1ICON="#" || PS1ICON='%'
PROMPT='%{$(echo -e "\e[38;2;120;160;200m")%}[%{$(echo -e "\e[38;2;197;198;200m")%}%n%{$(echo -e "\e[38;2;120;160;200m")%}@core %{$(echo -e "\e[38;2;197;198;200m")%}%~%{$(echo -e "\e[38;2;120;160;200m")%}]%$PS1ICON%{$(echo -e "\e[0m")%} '
#aliases
alias xi="doas xbps-install -S $1"
alias nf="clear && fastfetch"
alias ascdis="fastfetch --logo $1"
alias forge="su forgejo"
alias emoji="cat ~/.local/share/emoji | grep $1"
alias cst="swallow emacsd ~/.config/st/config.h"
alias ls="ls --color=auto"
alias lasal="ls -al"
alias ahl="ls -ahl"
alias resmacs="systemctl --user restart emacsd"
alias smi="nvidia-smi"
alias src="source ~/.zshrc"
alias bat="sb-battery"
alias battery="sb-battery"
alias vimrc="vim .vimrc"
alias ri="ranger"
alias rim="ranger"
alias quit="exit"
alias :q="exit"
alias :q!="exit"
alias :Q="exit"
alias :Q!="exit"
alias :quit="exit"
alias :quit!="exit"
alias :QUIT="exit"
alias :QUIT!="exit"
alias q="exit"
alias fnl="fennel"
alias "push"="git push"
alias irc="irssi"
alias hsw="home-manager switch --flake ~/.config/home-manager"
alias hsc="swallow emacsd ~/.config/home-manager/home.nix"
alias yell="echo"
alias chm="ecop cat ~/.config/home-manager/home.nix"
alias weather="curl wttr.in/masjedsoleyman"
alias emacs="swallow emacsd $1"
alias emacsd="swallow emacsd $1"
alias las="ls"
alias lasa="ls -a"
alias c="clear"
alias cear="clear"
alias "cd.."="cd .."
alias claer="clear"
alias claer="clear"
alias clare="clear"
alias cleae="clear"
alias clera="clear"
alias hotp="htop"
#paths and environment
fpath=(~/.zsh/completions $fpath)
export PATH=$HOME/.local/bin:$PATH
export PATH=$HOME/.luarocks/bin:$PATH
export NIXPKGS_ALLOW_UNFREE=1
export EDITOR="emacs"
export PATH=/usr/pkg/sbin:/usr/pkg/bin:$PATH
export MANPATH=/usr/pkg/man:$MANPATH
