=================== 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) ========================= 1. Open and pin working files: - ``of`` open files - ``ja`` add current file to Harpoon - ``j1``..``j4`` jump pinned files 2. Keep structure visible: - ``lo`` toggle outline (Aerial) - Breadcrumbs in winbar show your current symbol path 3. Validate while coding: - Save file (auto background tests run for supported filetypes) - ``mn`` run nearest test (Go/Python) - ``mt`` run test task - ``ml`` run lint task - ``mb`` run build task 4. Handle failures fast: - Quickfix opens automatically on failures - ``qo`` open quickfix - ``qc`` close quickfix 5. Commit/rebase: - ``gRm`` rebase on top of ``origin/master`` - ``gRc`` continue when conflicts are resolved Daily Coding Loop ================= 1. Open project files and mark hotspots: - ``of`` open files - ``ja`` add current file to Harpoon - ``j1``..``j4`` jump marked files - ``jn`` / ``jp`` cycle marks 2. Navigate symbols quickly: - ``lo`` toggle Aerial outline - ``lO`` toggle Aerial nav window - Winbar breadcrumbs show current symbol context 3. Code + validate continuously: - Save file to trigger background auto test runner - ``mn`` run nearest test quickly - ``mt`` run project test task - ``ml`` run lint task - ``mb`` run build task - Failed runs open quickfix automatically, success closes it - ``qo`` open quickfix, ``qc`` close quickfix Stuck/Debug Loop ================ 1. Find exactly what broke: - ``qo`` open quickfix - ``]q`` / ``[q`` move between failures - ``xo`` show last auto-test output 2. Inspect nearby code faster: - ``lo`` outline - ``ff`` treesitter functions - ``rg`` project search 3. Fix and verify: - write fix, save - ``tr`` rerun auto test now - ``mt`` full test task if needed Go Workflow =========== 1. Test and iterate: - ``Gt`` test all packages (``go test ./...``) - ``Gp`` test current package - ``Gz`` test function under cursor - ``Gb`` run package benchmarks 2. Keep project clean: - ``Gv`` ``go vet ./...`` - ``Gm`` ``go mod tidy`` - ``GF`` ``go fmt ./...`` 3. Use snippets: - ``iferr`` standard error guard - ``ttest`` table-driven test skeleton - ``ctx`` context timeout boilerplate Python Workflow =============== 1. Fast test runs: - ``py`` run current file - ``pz`` run test under cursor - ``pc`` file coverage 2. Refactor safely: - ``ln`` incremental rename - ``Ra`` refactor picker 3. Use snippets: - ``pytestf`` basic pytest function - ``pytestp`` parametrize test template - ``tryx`` try/except skeleton Git Rebase On Top of Master =========================== 1. Start rebase: - ``gRm`` fetch + rebase onto ``origin/master`` (fallback ``master``) - ``gF`` fetch ``upstream`` (fork workflow) 2. Resolve conflicts: - ``gRl`` list unresolved files in quickfix - ``gRo`` use base branch version for current file - ``gRt`` use current commit version for current file - ``gRA`` mark current file resolved (``git add``) - ``gRd`` open Diffview 3. Finish flow: - ``gRc`` continue - ``gRs`` skip current patch - ``gRa`` abort rebase Refactor Workflow ================= 1. Rename safely: - ``ln`` incremental rename - ``lN`` prompt-based rename 2. Structural refactors: - ``Ra`` refactor picker - Visual select then ``Re`` extract function - Visual select then ``Rv`` extract variable 3. Verify: - ``mn`` nearest test - ``mt`` tests - ``ml`` lint tmux + Neovim ============= - ```` navigate between tmux and Neovim panes - Keep 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 ================== - ``j...`` file jumps (Harpoon) - ``l...`` language/LSP actions - ``m...`` test/lint/build tasks - ``gR...`` rebase flow - ``q...`` quickfix Project Overrides ================= 1. Generate template: - ``:ProjectInit`` creates ``.nvim/tasks.lua`` 2. Trust overrides for current repo: - ``:ProjectOverrideTrust`` 3. Typical customization: - set ``test``, ``lint``, ``build`` commands per language or default