Personal configuration files for a terminal-focused development environment on Linux. Features consistent theming across applications, keyboard-driven workflow optimizations, and persistent session management.
| File/Directory | Application | Description |
|---|---|---|
.bashrc |
Bash | Shell configuration with git, docker, and editor aliases |
.tmux.conf |
Tmux | Terminal multiplexer with session persistence |
.emacs, .emacs.d/ |
Emacs | Text editor with daemon support |
alacritty.toml |
Alacritty | GPU-accelerated terminal emulator |
keyd/ |
keyd | System-wide keyboard remapping |
Autostart/ |
Desktop | XDG autostart entries |
Consistent dark theme across all applications:
- Color scheme: Miasma (dark background with warm earth tones)
- Font: JetBrainsMono Nerd Font, size 22
- Alacritty: Miasma colors, no window decorations
- Emacs: Miasma theme
- Tmux: Gruvbox dark theme
Key aliases defined in .bashrc:
Editor:
e <file>- Open file in emacsclient (terminal)es <file>- Open file in emacsclient (GUI frame)
Git:
gs- git statusgd- git diffgpo- git push origin (current branch)gfo- git fetch origin (current branch)glp- git log with patchgcam- git commit -amgrba- git rebase --abort
Docker:
dcu- docker compose up -ddcd- docker compose down
Other:
s- sudocl- claude (Claude CLI)clr- claude --resumexc- xclip -selection clipboard
Prefix key: Ctrl+z (instead of default Ctrl+b)
Plugins (managed via tpm):
- tmux-sensible - Sensible defaults
- tmux-gruvbox - Dark theme
- tmux-resurrect - Save/restore sessions
- tmux-continuum - Auto-save sessions every 1 minute
Key bindings:
Prefix + c- Show clockPrefix + t- New window (swapped from defaults)- Windows and panes start at index 1, not 0
- Automatic window renumbering on close
System-wide keyboard remapping via keyd daemon.
Tmux window switching (Right Alt layer):
Alt+1throughAlt+8- Switch to tmux window 1-8Alt+s- Open tmux session switcher
Typographic characters (Meta/Compose key layer):
`- Left single quote (‘)'- Right single quote (’)Shift + [- Left double quote (“)Shift + ]- Right double quote (”)-- En-dash (–)Shift+-- Em-dash (—)n- ñ
Home directory dotfiles:
Create symbolic links for top-level dotfiles:
ln -s `find $(pwd) -maxdepth 1 -not -type d -name "\.*" -not -name "\.gitignore"` ~Alacritty:
ln -s $(pwd)/alacritty.toml ~/.config/alacritty/alacritty.tomlkeyd:
sudo ln -s $(pwd)/keyd/default.conf /etc/keyd/default.conf
sudo systemctl enable keyd
sudo systemctl start keydAutostart (Alacritty with Tmux):
ln -s $(pwd)/Autostart/alacritty.desktop ~/.config/autostart/alacritty.desktopSystemd (Emacs daemon):
sudo ln -s $(pwd)/systemd/emacs.service /lib/systemd/system/emacs.service
sudo systemctl enable emacs
sudo systemctl start emacsEmacs runs as a daemon via systemd for instant startup.
Usage:
emacsclient -t <file>- Open in terminal (aliased toe)emacsclient -c <file>- Open in GUI frame (aliased toes)
Packages:
- sudo-edit - Edit files with elevated privileges
Configuration:
- Line numbers enabled globally
- Menu bar disabled
- Python mode: PEP 8 compliant (spaces, whitespace cleanup on save)
- XML mode: Whitespace cleanup on save
Install plugins after cloning:
# Clone TPM if not present
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
# Start tmux and press Prefix + I to install plugins