# # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac # don't put duplicate lines or lines starting with space in the history. # See bash(1) for more options HISTCONTROL=ignoreboth if [[ -n "$BASH_VERSION" ]]; then shopt -s histappend eval "$(starship init bash)" eval "$(zoxide init bash)" # check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. shopt -s checkwinsize fi # append to the history file, don't overwrite it # for setting history length see HISTSIZE and HISTFILESIZE in bash(1) HISTSIZE=1000 HISTFILESIZE=2000 # If set, the pattern "**" used in a pathname expansion context will # match all files and zero or more directories and subdirectories. #shopt -s globstar # make less more friendly for non-text input files, see lesspipe(1) [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" # set variable identifying the chroot you work in (used in the prompt below) if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi # set a fancy prompt (non-color, unless we know we "want" color) case "$TERM" in xterm-color|*-256color) color_prompt=yes;; esac # colored GCC warnings and errors #export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' # some more ls aliases alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' alias tmux='tmux -u' # Add an "alert" alias for long running commands. Use like so: # sleep 10; alert alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' #---------------------------------- Alias ----------------------------------------- alias tmux='tmux -u' alias clear="TERM=xterm /usr/bin/clear" alias cht="cht.sh" # alias ls="lsd" alias ls="eza --group-directories-first --icons" alias lt="eza --group-directories-first --icons -T -L1" alias ll="ls -lagh" alias bless="bat --paging=auto" alias rename-pane="~/dotfiles/scripts/rename-pane.sh" alias cat="bat -pf" alias gl="git log" alias gC="git commit" alias gCa="git commit --amend" alias gs='git status ' alias ga='git add ' alias gb='git branch ' alias gd='git diff' alias gc='git checkout ' alias go="git log --oneline" alias gk='gitk --all&' alias gn="git log -n2" alias f="fzf --preview 'fzf-preview.sh {}'" alias t="fzf-tmux" alias tfn="~/scripts/nvim-fzf.sh" #--------------------------------- Exports --------------------------------------- export STARSHIP_CONFIG_BACKGROUND_COLOR="dark" export EDITOR='nvim' # export MANPAGER="sh -c 'col -bx | bat -l man -pfn --paging always'" # export MANPAGER='nvim +Man!' export MANROFFOPT="-c" # Key bindings # bind '"\C-f":"tmux-sessionizer\n"' # # if [[ $- =~ i ]] && [[ -z "$TMUX" ]] && [[ -n "$SSH_TTY" ]]; then # tmux attach-session -t 0|| tmux new-session -s 0 # fi [ -f ~/.fzf.bash ] && source ~/.fzf.bash # --------------------------------- Starship -------------------------------------- # colorscript -r # neofetch