synopsis:
IMPORTANT: There is no easy way to resume Pi at a previous session based on its session name (session names are just non-unique labels).
- Do not execute the
generatecommand if the current branch is not main or its working tree is not clean. - If the
generatecommand is specified with the-c, --continueoption then do not put the-Coption in the Gitswitchcommand. - The
generatecommand should executegit switchbefore (not after) thepicommand.
—
pi --model openrouter/anthropic/claude-haiku-5.5 @PROMPT.md
pi --name 'claude: rename the `create` command to `generate`' --print --model openrouter/anthropic/claude-haiku-5.5 @PROMPT.md
git switch -C pi/claude
git add -A
git commit -m 'claude: generate pi-trial-solutions.sh'
git switch main
git switch main
git merge --squash pi/claude
git commit -m 'rename the `create` command to `generate`'
17-Sep-2024
- `,fn` - replace `$HOME` with `~`.
- `,fN` - file name only.
- `,fp` - file directory path only.
- ✅`,bd` - If buffer is modified prompt user "Save changes? (y/N)".
- ✅`,eq` - check for running terminal window process before exiting an prompt user "Running job(s) in terminal window. Close? (y/N)".
- ✅ `O` - in outline window to go to and close outline window, equals `o<Esc>`.
## Applications
Here's the list of some of the application configurations managed by Chezmoi (run `git ls-files` for a full list):
- bash
- GNOME desktop shortcuts (installed manually)
- Helix
- lazygit
- mise
- neovim
- nushell
- recoll
- Remmina
- tmux
- Vim
- Vimium (installed manually)
- zsh
## Installing and updating on secondary machines from Github repository
My desktop machines NFS-mount my shared documents directory to `~/share`; the local chezmoi repository is in `~/share/projects/chezmoi` and it's just a matter of:
1. Copying the `~/.config/chezmoi/chezmoi.toml` file from the primary desktop PC which points chezmoi to the shared NFS location.
2. Run `chezmoi apply` to copy the chezmoi source files to their target locations.
### 24-Oct-2026
Weird error (non-repeatable):
This error occurs when I start a Neovim session in herdr (it does not occur outside herdr):
E5108: Lua: [string "vim/_core/editor"]:355: nvim_exec2(), line 1: Vim(normal):E756: Spell checking is not possible stack traceback: [C]: in function 'nvim_exec2' [string "vim/_core/editor"]:355: in function 'cmd' /home/srackham/.config/nvim/lua/keymaps.lua:7: in function 'n' /home/srackham/.config/nvim/lua/keymaps.lua:14: in function </home/srackham/.config/nvim/lua/keymaps.lua:5>
### Machines that do not have access to the NFS projects directory mounts
See _Using chezmoi across multiple machines_ in `~/share/notes/chezmoi-notes.md`.
## Manually Exported/Imported Configurations
The `resources` directory contains files that are managed manually:
### Browser Bookmarks
Exported from Brave browser.
- Open [Bookmarks Manager](brave://bookmarks/) (C-S-o).
- Run the _Export bookmarks_ command in the ⋮ menu (vertical ellipsis menu, top right) and save bookmarks file to `~/.local/share/chezmoi/resources/bookmarks.html`.
### GNOME Desktop key bindings
- Export GNOME custom key bindings with:
chezmoi-dump-gnome-bindings # Alias
dconf dump /org/gnome/desktop/wm/keybindings/ > resources/wm-keybindings.dconf &&
dconf dump /org/gnome/shell/keybindings/ > resources/shell-keybindings.dconf
- Use the dconf load command to restore custom GNOME key binding from the dump file. See `./resources/post-install-config.sh` for details.
dconf load /org/gnome/desktop/wm/keybindings/ < resources/wm-keybindings.dconf &&
dconf load /org/gnome/shell/keybindings/ < resources/shell-keybindings.dconf
### Vimium Options
The Vimium browser extension options are in the `vimium-options.json` file. Manually save and restore them using the backup and restore commands on the _Backup and Restore_ section of the Vimium extension Options page.