Files
dotfiles/README.md
1jamesthompson1 f0f70cddf0 Add kitty.conf to dotfiles and set as default terminal
- Add .config/kitty/kitty.conf
- setup.sh now sets kitty as default terminal via update-alternatives
- README updated to include kitty.conf
2026-03-23 09:40:25 +13:00

87 lines
2.1 KiB
Markdown

# 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
dotfiles clean -fd
rm -rf ~/.dotfiles ~/.dotfiles-backup
```