document td time-tracking and deploy_bin in CLAUDE.md

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Paul Trowbridge 2026-04-20 21:03:51 -04:00
parent f71458a34f
commit f27b5656c0

View File

@ -37,9 +37,9 @@ git pushall # Push to all remotes
### Dotfile Management System ### Dotfile Management System
The repository uses **symlink-based configuration deployment**. When `setup_env.sh` runs: The repository uses **symlink-based configuration deployment**. When `setup_env.sh` runs:
1. Each dotfile in `dotfiles/` is backed up if it exists (to `.backup`) 1. `deploy_configs` symlinks each dotfile in `dotfiles/` to `~/.<filename>` (backing up any existing file)
2. A symlink is created from `~/.<filename>` to the repository's `dotfiles/.<filename>` 2. `deploy_bin` symlinks every file in `dotfiles/bin/` to `~/.local/bin/<filename>`
3. This allows version control of configs while keeping them in their expected locations 3. This allows version control of configs and user-local scripts while keeping them in their expected locations
**Critical Files:** **Critical Files:**
- `dotfiles/.bashrc` - Main bash configuration with extensive aliases and functions - `dotfiles/.bashrc` - Main bash configuration with extensive aliases and functions
@ -50,6 +50,7 @@ The repository uses **symlink-based configuration deployment**. When `setup_env.
- `dotfiles/.gitconfig` - Git configuration with custom log format and vimdiff - `dotfiles/.gitconfig` - Git configuration with custom log format and vimdiff
- `dotfiles/.psqlrc` - PostgreSQL client configuration - `dotfiles/.psqlrc` - PostgreSQL client configuration
- `dotfiles/.pspgconf` - pspg (PostgreSQL pager) configuration - `dotfiles/.pspgconf` - pspg (PostgreSQL pager) configuration
- `dotfiles/bin/td` - Python CLI for time-tracking markdown todos (see Time tracking section)
### Custom Bash Workflow ### Custom Bash Workflow
@ -83,13 +84,20 @@ General:
- `gd` - git difftool - `gd` - git difftool
- `gl` - Pretty git log with colors - `gl` - Pretty git log with colors
**Todo tracking:** **Todo grep aliases (rg-based):**
- `td` - Find unchecked todo items using ripgrep - `td` - Find unchecked todo items using ripgrep
- `tdp` - Find priority todos (with 🔼 or ⏫) - `tdp` - Find priority todos (with 🔼 or ⏫)
- `tdtp` - Find top priority todos (⏫ only) - `tdtp` - Find top priority todos (⏫ only)
- `tdo` - Open todo in nvim at exact line - `tdo` - Open todo in nvim at exact line
- `tdop` - Open priority todo in nvim at exact line - `tdop` - Open priority todo in nvim at exact line
**Time tracking (functions wrapping `dotfiles/bin/td`):**
- `tstart <tid>` - Start a timer on a task identified by a `^tid-*` block-ref
- `tstop` - Stop the running timer
- `treport [filter]` - Show totals per tid, filterable by tid or filename
- Wrappers use `command td` to bypass the `td` rg alias. The CLI writes one row per entry to `$TD_LOG` (default `./time.csv`, cwd-scoped).
- Companion nvim integration (in the separate `~/.config/nvim` repo) adds `<leader>ts/tp/tr` keymaps with auto-generated tids.
**Other useful aliases:** **Other useful aliases:**
- `nv` - Launch Neovim from custom installation path - `nv` - Launch Neovim from custom installation path
- `cj` - Navigate to journal directory - `cj` - Navigate to journal directory