馃敡 Where my dotfiles lives in harmony and peace, most of the time
1# Bash
2
3# shellcheck shell=bash
4
5# If not running interactively, don't do anything
6[[ $- != *i* ]] && return
7
8# Starship
9eval "$(starship init bash)"
10
11# History
12export HISTSIZE=50000
13export HISTFILESIZE=50000
14export HISTCONTROL=ignoreboth:erasedups
15export HISTIGNORE="ls:ll:cd:pwd:exit:clear"
16
17# Shell options
18shopt -s checkwinsize
19shopt -s globstar
20
21# Modern navigation
22shopt -s autocd cdspell dirspell
23
24# Better completion
25shopt -s no_empty_cmd_completion direxpand
26
27# Enhanced history
28shopt -s histappend cmdhist lithist
29
30# FZF
31eval "$(fzf --bash)"
32
33# Zoxide
34eval "$(zoxide init bash)"
35
36# PATH
37export PATH="$HOME/projects/dotfiles/scripts:$HOME/.cargo/bin:$HOME/.local/bin:$PATH"
38
39# Shared shell config
40source "$(cd -- "$(dirname -- "$(readlink -f -- "${BASH_SOURCE[0]}")")" && pwd)/shared.sh"