-
Notifications
You must be signed in to change notification settings - Fork 0
bash
Justin Puah edited this page Jul 13, 2026
·
1 revision
Bash shell configuration.
| Tool | Purpose | Install |
|---|---|---|
| bash 4+ | Shell | ships with Linux; brew install bash on macOS |
| fzf | Required by fzf_functions.sh
|
system package manager |
| File | Installed as | Notes |
|---|---|---|
bashrc |
~/.bashrc |
Main interactive shell config |
profile |
~/.profile |
Login shell — sets PATH and exports |
inputrc |
~/.inputrc |
GNU Readline config (applies to bash, psql, python REPL, etc.) |
bash_aliases |
~/.bash_aliases |
Sourced from bashrc
|
bash_profile |
~/.bash_profile |
Login shell; sources ~/.profile and ~/.bashrc
|
sensible.bash |
sourced by bashrc
|
Sane defaults (from mrzool/bash-sensible) |
fzf_functions.sh |
~/.fzf_functions.sh |
Git+fzf helper functions — source from ~/.bashrc
|
inputrc
- Vi edit mode for all readline-enabled programs
- Case-insensitive tab completion
- Single
Tabshows all matches (no double-tap needed)
sensible.bash
-
HISTCONTROL=ignoreboth— no duplicate or space-prefixed entries in history -
HISTSIZE=500000,HISTFILESIZE=100000 shopt -s histappend checkwinsize globstar-
PROMPT_COMMANDappends history after every command
fzf_functions.sh — git+fzf helpers (source from ~/.bashrc):
| Function | Description |
|---|---|
fco |
Fuzzy checkout a branch or tag |
fco_preview |
Fuzzy checkout with commit log preview |
fcoc_preview |
Fuzzy checkout a specific commit with diff preview |
Requires fzf and diff-so-fancy (npm install -g diff-so-fancy) for commit previews.
./setup.sh -m bash # Linux / WSL onlyNot applicable on Windows — use the powershell module instead.
Source: bash/README.md in the dotfiles repo.
Getting started
Core (Windows)
Cross-platform
Claude Code & AI
Reference
Legacy (Linux)
Troubleshooting