# Dotfiles My personal dotfiles for quick setup on new machines. Change once, update everywhere. ## What's Included | File | Description | |------|-------------| | `.bashrc` | Bash configuration with custom prompt, aliases, lazy-loaded conda/nvm | | `.vimrc` | Vim configuration with clipboard support, syntax highlighting, and sensible defaults | | `.config/kitty/kitty.conf` | kitty terminal config with tmux-style splits | | `setup.sh` | Bootstrap script for new Debian-like machines | ## Quick Install on a New Machine ```bash curl -fsSL https://gitea.sjhl.nz/james/dotfiles/raw/branch/main/setup.sh | bash ``` Or manually: ```bash git clone --bare https://gitea.sjhl.nz/james/dotfiles ~/.dotfiles dotfiles() { /usr/bin/git --git-dir="$HOME/.dotfiles/" --work-tree="$HOME" "$@" } dotfiles checkout dotfiles config --local status.showUntrackedFiles no ``` ## Managing Your Dotfiles ```bash dotfiles status dotfiles add .bashrc dotfiles commit -m "Update prompt" dotfiles push ``` ## kitty Usage kitty is the terminal emulator - open it from your desktop launcher or run `kitty`. **Basic Commands:** | Command | Action | |---------|--------| | `Ctrl+Shift+Enter` | New window | | `Ctrl+Shift+]` | Horizontal split | | `Ctrl+Shift+[` | Vertical split | | `Ctrl+Shift+h/j/k/l` | Navigate splits | | `Ctrl+Shift+Arrow` | Resize split | | `Ctrl+Shift+c` | Copy to clipboard | | `Ctrl+Shift+v` | Paste from clipboard | | `Ctrl+Shift+p` | Scrollback pager | | `Ctrl+Shift+h` | Show scrollback | **Copy mode** (in scrollback): vi keys to navigate, Enter to copy selection. **SSH**: When using kitty, run `ssh` normally - kitty intercepts it for a better experience. ## Vim Usage | Command | Action | |---------|--------| | `vi` or `vim` | Open editor | | `:w` | Save | | `:q` | Quit | | `:q!` | Force quit | | `/pattern` | Search | | `n` | Next search match | | `yy` | Yank (copy) line | | `p` | Paste | | `u` | Undo | | `Ctrl+r` | Redo | Clipboard is integrated - yanking/pasting works with system clipboard. ## Uninstall ```bash dotfiles checkout HEAD rm -rf ~/.dotfiles ~/.dotfiles-backup ```