Persistence and Limits#
Fold state is saved with your layout#
Nash records which panes are folded as part of your window layout.
- Session restore. Nash stores each folded pane with its fold, next to the normal (unfolded) split sizes. A restore rebuilds the layout first and then folds the panes again. Your strips come back where they were, and unfolding them returns the panes to their real sizes. See Session Restore.
- Multiplexer sessions. In a multiplexer session the server owns the layout, and it keeps the fold state. A fold you make in a client window runs on the server. When you reconnect, the strips are there. See the Multiplexer.
Both need Nash 0.7.0 or newer.
Behavior with other features#
| Feature | What to expect |
|---|---|
| Maximize | Folding a pane while another is maximized restores the layout first. Maximizing an unfolded pane preserves existing folds; the strips return when you restore the layout. |
| Search, Copy Mode, Quick Select | Nash unfolds the pane first. These overlays need the pane's text on screen. |
| Closing a pane | The confirmation prompt unfolds the pane. Closing a folded pane drops its fold. |
| Moving a pane to a new tab or window | The pane arrives unfolded. |
| Swap and rotate | A folded pane keeps its fold in its new place. |
| Coding agents | See below. |
Coding agents in a folded pane#
Folding changes how a pane is drawn, not what its program does. An agent in a folded pane keeps working, and the tab title keeps showing its state. See Connect Your Coding Agent.
Since Nash 0.11.4:
- Folded strips deliberately suppress the corner badge. Instead, the agent's status icon replaces the fold glyph in either orientation: a working spinner, paused solid circle, completed check circle, or failed alert circle, using the same status colors as the tab. Without a status, the ordinary fold glyph shows.
- In a focused window, the working spinner animates even with the tab bar hidden or another pane's status taking precedence in the tab.
- Completed and failed icons stay until input reaches that pane. Selecting, folding, or unfolding it does not clear them. The strip has no timestamp; unfolding shows the ordinary badge with its completion time.
indicator = "none"under[agent.status]disables corner badges only, not the folded-strip icon or tab indicator.
The tab's unread state is separate: Nash counts a selected strip as a pane you are watching, so a successful turn there is not marked unread in the tab.
Limits#
- A fold needs another visible pane. You cannot fold the only pane in a tab or the last unfolded one.
- You cannot resize a strip. A divider beside a strip does not move, by mouse or by keyboard. Dividers between unfolded panes still move.
- A strip shows a label and status, not terminal content. The title is the
one the program sets, for example with the
OSC 2escape sequence. If it sets none, Nash uses the name of the foreground process. Nash shows the folder only for a local directory. - Mouse input stops at the strip. A strip reacts to the left button, with one click to select and a double-click to unfold. Nash never forwards a mouse event to the program.
- Keyboard input does not stop. Keys that nothing else uses reach the program in a selected strip, and you cannot see the result.
- A strip takes no highlight. There is no active pane outline and no pane switch animation on a strip. The fill shows which strip has focus.
- The program keeps its size. Nash does not shrink the pane's terminal to match the strip. This protects full-screen programs from a resize at every fold.
Troubleshooting#
SUPER+SHIFT+E does nothing#
- Check that the tab has another unfolded pane. Nash refuses to fold the last visible pane.
- If a pane is maximized,
SUPER+SHIFT+Erestores the layout first. Press it again to fold. - If the pane is already folded, Shrink Pane does nothing. Press
SUPER+Eto unfold it. - Look in
~/.config/nash/commands.tomlfor another command bound to the same key. See Keys and Commands. - Run
nash cli fold-panein the pane. It prints the reason for a refusal.
The keys or options are missing after an upgrade#
Nash 0.7.3 and newer merge new commands and options into your files on the first
launch after an update. On Nash 0.7.0 to 0.7.2, run nash config sync --all.
See Configuration Sync.
Enter does not unfold a strip#
Enter unfolds the pane only when the selected pane is folded. Select the
strip first, by clicking it or with the pane direction keys. Also check that you
did not comment out the keys line of unfold_pane in commands.toml. In an
overlay such as copy mode, Enter keeps the meaning that the overlay gives it.
SUPER+M does not minimize the window#
SUPER+M and SUPER+SHIFT+M walk the
size ladder. Minimize Window has no
default key. Bind one in commands.toml, or use the Window menu.
The strip title is empty or cut short#
Nash cuts a title that does not fit and ends it with …. Lower
font_size, or turn off show_cwd under [pane.folded] to give the title
more room. If the title is empty, the program set none. Nash then shows the
foreground process name. See
Configuration.
I cannot tell which strip has focus#
The strip with focus uses color under [pane.folded]. Every other strip uses
the dimmed color. Set color and inactive_color to colors that differ more.