# PATH variable declaration as array # -U means unique, which tells the shell not to add anything to the array if it's # already there. typeset -U PATH path # Add /usr/local dirs to PATH path=("/usr/local/bin" "/usr/local/sbin") path+=("/bin" "/sbin" "/usr/bin" "/usr/sbin") # Set Go path if it exist [ -d "${HOME}/go" ] && GOPATH="${HOME}/go" && path+=("${GOPATH}/bin") # Set Cargo path for Rust binaries [ -d "${HOME}/.cargo/bin" ] && path+=("${HOME}/.cargo/bin") # If ~/bin exists, add it to PATH [ -d "${HOME}/bin" ] && path+=("${HOME}/bin") # If ~/.local/bin exists, add it to path [ -d "${HOME}/.local/bin" ] && path+=("${HOME}/.local/bin") export PATH # Setup pager export PAGER="less -X" # Setup manpages export MANWIDTH="88" export MANROFFOPT="-c" export MANPAGER="less -X" # Have less display colours # from: https://wiki.archlinux.org/index.php/Color_output_in_console#man export LESS_TERMCAP_mb=$'\e[1;31m' # begin bold export LESS_TERMCAP_md=$'\e[1;34m' # begin blink export LESS_TERMCAP_so=$'\e[01;0;33m' # begin reverse video export LESS_TERMCAP_us=$'\e[01;31m' # begin underline export LESS_TERMCAP_me=$'\e[0m' # reset bold/blink export LESS_TERMCAP_se=$'\e[0m' # reset reverse video export LESS_TERMCAP_ue=$'\e[0m' # reset underline export GROFF_NO_SGR=1 # for konsole and gnome-terminal # Editor - emacs else nano if test -x "$(command -v emacs)"; then EDITOR="emacs" else EDITOR=nano fi export EDITOR # Set TERM if in tmux if (( ${+TMUX} )); then export TERM="screen-256color" else export TERM="xterm-256color" fi # Directory for elogs if test -d "${HOME}/Nextcloud/elogs"; then export ELOG_DIR="${HOME}/Nextcloud/elogs" fi # Format of process time reports with 'time' # %% A '%' # %U CPU seconds spent in user mode # %S CPU seconds spent in kernel mode # %E Elapsed time in seconds # %P CPU percentage, computed as (%U+%S)/%E # %J The name of this job # Default is: # %E real %U user %S system %P %J TIMEFMT="\ The name of this job : %J CPU seconds spent in user mode : %U CPU seconds spent in kernel mode : %S Elapsed time in seconds : %E CPU percentage : %P" # HISTSIZE is the number of lines of history that is kept within any given # running zsh instance. SAVEHIST is the number of lines of history that is # written out to the HISTFILE when that event occurs. If you use the # HIST_EXPIRE_DUPS_FIRST option, setting this value larger than the SAVEHIST # size will give you the difference as a cushion for saving duplicated history # events. HISTSIZE=100000 SAVEHIST=65536 # Name of the file used to store command history HISTFILE=~/.zsh_history # If nonnegative, commands whose combined user and system execution times # (measured in seconds) are greater than this value have timing stats printed # for them. REPORTTIME=10 # reply-to email address export REPLYTO="hyperreal@fedoraproject.org" # Language export LANG="en_US.UTF-8" # Manpages export MANPATH="${MANPATH:-/usr/share/man:/usr/local/share/man}" if [ -d "${HOME}/.fzf/man" ]; then export MANPATH="${MANPATH}:${HOME}/.fzf/man" fi # Bat theme export BAT_THEME="Catppuccin" # Automatically remove duplicates from these arrays typeset -gU path cdpath manpath fpath . "$HOME/.cargo/env"