Using gamr

A quick guide to getting the most out of the tool.

Layout

The Two Panes

tabswitch pane
Mouse: Drag the splitter between panes to resize

gamr has two panes: a file tree on the left and a preview on the right. Press tab to move focus between them. Between the panes is a draggable splitter — grab it with the mouse to resize. Your split position is remembered between sessions.

File Pane

Navigation

↑ ↓navigate j knavigate expand collapse spacetoggle
Mouse: Click to select, click directories to expand/collapse, scroll wheel to navigate

Move between files with / or j/k. Open directories with or space, close them with or space. Press on a file to jump to its parent directory.

Search

/search

Fuzzy filename search powered by RapidFuzz. Start typing and the tree filters instantly. Works across all view modes. Press Esc to clear and return to the full tree.

File View Modes

vview mode

Cycle between three ways to see your files:

  • Tree — hierarchical directory structure with expand/collapse
  • Flat (name) — all files in a flat list by filename, ideal for searching
  • Flat (path) — flat list showing relative paths, for seeing full locations

TUI Status Bar: 🌳 tree📄 flat📁 path. Click to cycle.

Columns

1-7columns
Mouse: Click column headers to sort ascending / descending / none

Keys 17 toggle individual columns on and off: status, lines, size, rows, mtime, author, and git time.

Git Filtering

ggit filter

Toggle to show only files with git changes — modified, added, deleted, or untracked. Everything unchanged disappears. One keypress to cut through the noise of a large repo.

TUI Status Bar: 🔸 git (N/M) when active, showing matching file count. Click to toggle.

Preview Pane

Navigation

↑ ↓scroll j kscroll spacepage down PgUp/Dnpage
Mouse: Scroll wheel to scroll, drag scrollbar on right edge

When the preview pane is focused, / and j/k scroll line by line. space pages down. Page Up and Page Down also work.

Jumping Between Hunks

J nnext hunk K Nprev hunk

J or n jumps to the next diff hunk — even if it's offscreen. K or N jumps to the previous one. This lets you quickly step through all changes in a file without manually scrolling.

Diff Modes

ddiff mode

Cycle between three inline diff styles:

  • Full file — entire file with added/removed lines highlighted. Best for understanding context.
  • Gutter — full file with subtle change markers in the margin. Minimal noise.
  • Unified — only changed lines with context, like git diff.

TUI Status Bar: full 👓gutter 👓unified 👓. Click to cycle.

Side-by-Side Diff

sside-by-side

Opens a modal showing the old and new versions of the file aligned side by side. Character-level change highlighting makes it easy to spot exactly what was modified. Press s again or Esc to close.

Overview Modes

ooverview

Cycles the diff overview bar on the right edge of the preview — a minimap showing where changes are in the file. Five modes: off, line (1×), quadrant (2×), sextant (3×), and braille (4×).

TUI Status Bar: overview 1xoverview 2xoverview 3xoverview ⣿overview ·. Click to cycle.

Follow Mode

Watching Agents Work

ffollow

When enabled, gamr automatically selects whichever file was last modified. As your agent writes code, you see it happen in real-time.

Combine with g (git filter) for a focused live view of exactly what's changing.

TUI Status Bar: follow 👀 when active. Click to toggle.

Actions

Opening Files

eedit Odefault app

e opens the selected file in your terminal editor — it checks $VISUAL first, then $EDITOR. O opens it in your OS default application (your GUI markdown editor, image viewer, etc).

Copy File References

Mouse: Double-click or drag to select lines and copy reference

Select lines in the preview and the file reference is copied to your clipboard as src/app.py:81-85. Paste it straight into your agent's chat to ask about specific code.

Settings

Configuration

Preferences live in ~/.config/gamr/preferences.toml. Session state — collapsed directories, scroll position, column widths, active filters — is saved automatically between runs.

File icons load from ~/.config/lsd/icons.yaml if present (same format as lsd).

For Contributors

gamr is built with Textual and Dulwich (pure Python git). No compiled dependencies, no git binary required.