Esc

    Files

    ⌘ ⇧ E opens Files in the right dock and moves focus to it. Press it again to return to the center. The tree reveals the active tab’s file as you switch tabs.

    What the tree shows

    • Always hidden: .git, target, node_modules and .DS_Store.
    • Ignored files are hidden by default. ⌘ ⇧ . shows them, muted. Nested .gitignore files apply.
    • Git status letters (M, A, D, R, U) mark changed files. Folders show the strongest status inside them.
    • Changes from outside Rexa, by agents or git, appear on their own.

    Open files

    • Click opens a temporary tab that the next click replaces. Double-click keeps it.
    • Space previews the file and keeps the keyboard in the tree.
    • ⌘ ↓ opens a kept tab and moves focus to it.

    Keyboard

    Action Shortcut
    Move ↑ ↓
    Expand / collapse → / ←
    Collapse all ⌘ ←
    Next / previous changed file ⌥ ↓ / ⌥ ↑
    New file / new folder A / ⇧ A
    Rename ↵
    Delete ⌫
    Cut / copy / paste ⌘ X / ⌘ C / ⌘ V
    Copy path / relative path ⌘ ⌥ ⇧ C / ⌘ ⌥ C
    Undo last create, rename or move ⌘ Z
    Back to the center Esc

    With Vim mode on, H J K L move, ]c and [c jump between changed files, and ⇧ R / ⇧ D rename and delete.

    ⌘-click marks several rows; ⇧ ↑ and ⇧ ↓ extend the marked range.

    Create, rename, move and delete

    • Names can contain /. src/new/file.ts creates the folders on the way; a trailing / makes a folder.
    • Renaming the folder part moves the item. Open tabs follow the rename.
    • Drag onto a folder to move into it; hold ⌥ to copy. Drag onto a terminal to insert the paths.
    • Delete asks first and moves items to the macOS Trash.
    • Pasting over an existing name creates name 2.

    Rename, move and delete are refused while a tab under that path has unsaved edits. Moving files between worktrees is not supported.

    Settings

    files.respect_gitignorebooleandefault: true

    Hide ignored files.

    files.git_statusbooleandefault: true

    Show git status letters.

    files.auto_foldbooleandefault: true

    Fold chains of single-child folders into one row.

    files.indent_guidesbooleandefault: true

    Draw indent guides.

    files.sticky_headersbooleandefault: false

    Pin parent folders while scrolling.

    files.search_nested_worktreesbooleandefault: false

    Include worktrees nested inside this one in quick open.

    Quick open

    ⌘ P opens the palette in files mode. Type part of a path; results are fuzzy-matched and capped at 100.

    • Jump to a line with path:line or path:line:col.
    • Switch modes by typing a prefix: > for commands, @ for sessions, ~ for worktrees. See Interface.

    Quick open follows the same ignore rules as the tree.

    Find in a file

    ⌘ F opens the find bar in an editor or a markdown preview.

    Action Shortcut
    Next / previous match ⌘ G / ⌘ ⇧ G
    Match case ⌘ ⌥ C
    Whole word ⌘ ⌥ W
    Regular expression ⌘ ⌥ R
    Search in selection ⌥ L
    Toggle replace (editor) ⌘ ⇧ H

    ⌘ ⇧ F opens Search in the right dock. With a single-line selection in the focused tab, that text fills the query and the search runs at once.

    • Results stream as you type, grouped by file. Click a match to open the file at that line.
    • Toggles: match case, whole word, regular expression.
    • Include and exclude globs sit behind the … button, comma-separated, such as *.ts, src/**/*.rs.
    • Replace with the replace toggle: one line, one file, or Replace all. Writes go to disk; open tabs without unsaved edits reload.

    Search respects .gitignore, skips binary files and files over 8 MB, and stops at 10,000 matches.