Suggested Workflows¶
This page is optimized for speed and low mental overhead. If you only remember one thing: use the Start Here flow.
Start Here (Default Loop)¶
Open and pin working files:
<leader>ofopen files<leader>jaadd current file to Harpoon<leader>j1..``<leader>j4`` jump pinned files
Keep structure visible:
<leader>lotoggle outline (Aerial)Breadcrumbs in winbar show your current symbol path
Validate while coding:
Save file (auto background tests run for supported filetypes)
<leader>mnrun nearest test (Go/Python)<leader>mtrun test task<leader>mlrun lint task<leader>mbrun build task
Handle failures fast:
Quickfix opens automatically on failures
<leader>qoopen quickfix<leader>qcclose quickfix
Commit/rebase:
<leader>gRmrebase on top oforigin/master<leader>gRccontinue when conflicts are resolved
Daily Coding Loop¶
Open project files and mark hotspots:
<leader>ofopen files<leader>jaadd current file to Harpoon<leader>j1..``<leader>j4`` jump marked files<leader>jn/<leader>jpcycle marks
Navigate symbols quickly:
<leader>lotoggle Aerial outline<leader>lOtoggle Aerial nav windowWinbar breadcrumbs show current symbol context
Code + validate continuously:
Save file to trigger background auto test runner
<leader>mnrun nearest test quickly<leader>mtrun project test task<leader>mlrun lint task<leader>mbrun build taskFailed runs open quickfix automatically, success closes it
<leader>qoopen quickfix,<leader>qcclose quickfix
Stuck/Debug Loop¶
Find exactly what broke:
<leader>qoopen quickfix]q/[qmove between failures<leader>xoshow last auto-test output
Inspect nearby code faster:
<leader>looutline<leader>fftreesitter functions<leader>rgproject search
Fix and verify:
write fix, save
<leader>trrerun auto test now<leader>mtfull test task if needed
Go Workflow¶
Test and iterate:
<leader>Gttest all packages (go test ./...)<leader>Gptest current package<leader>Gztest function under cursor<leader>Gbrun package benchmarks
Keep project clean:
<leader>Gvgo vet ./...<leader>Gmgo mod tidy<leader>GFgo fmt ./...
Use snippets:
iferrstandard error guardttesttable-driven test skeletonctxcontext timeout boilerplate
Python Workflow¶
Fast test runs:
<leader>pyrun current file<leader>pzrun test under cursor<leader>pcfile coverage
Refactor safely:
<leader>lnincremental rename<leader>Rarefactor picker
Use snippets:
pytestfbasic pytest functionpytestpparametrize test templatetryxtry/except skeleton
Git Rebase On Top of Master¶
Start rebase:
<leader>gRmfetch + rebase ontoorigin/master(fallbackmaster)<leader>gFfetchupstream(fork workflow)
Resolve conflicts:
<leader>gRllist unresolved files in quickfix<leader>gRouse base branch version for current file<leader>gRtuse current commit version for current file<leader>gRAmark current file resolved (git add)<leader>gRdopen Diffview
Finish flow:
<leader>gRccontinue<leader>gRsskip current patch<leader>gRaabort rebase
Refactor Workflow¶
Rename safely:
<leader>lnincremental rename<leader>lNprompt-based rename
Structural refactors:
<leader>Rarefactor pickerVisual select then
<leader>Reextract functionVisual select then
<leader>Rvextract variable
Verify:
<leader>mnnearest test<leader>mttests<leader>mllint
tmux + Neovim¶
<C-h/j/k/l>navigate between tmux and Neovim panesKeep Harpoon marks for your active files and jump without pane churn
Use Aerial in a side window for symbol-level movement while coding in the main pane
Memory Cheat Sheet¶
<leader>j...file jumps (Harpoon)<leader>l...language/LSP actions<leader>m...test/lint/build tasks<leader>gR...rebase flow<leader>q...quickfix
Project Overrides¶
Generate template:
:ProjectInitcreates.nvim/tasks.lua
Trust overrides for current repo:
:ProjectOverrideTrust
Typical customization:
set
test,lint,buildcommands per language or default