Skip to main content

Sheet Stack and Split Screen

Every VisiData action that creates a derived view (frequency table, pivot table, describe sheet) pushes a new sheet onto the stack. Understanding how to navigate this stack is essential for a fluid workflow.

Learning Focus

Learn the Sheets Sheet (Shift+S), the direct sheet number jump (Alt+N), and split-screen mode (Z) as three complementary navigation strategies.

How the Sheet Stack Works

Think of it like browser tabs — each derived view opens as a new "tab" on top. Press q to go back, Shift+S to see all open "tabs" at once.

01-servers.csv (source sheet)
├──Shift+F──▶ Frequency Table ──q──▶ (back to source)
├──Shift+I──▶ Describe Sheet ──q──▶ (back to source)
├──Shift+C──▶ Columns Sheet ──q──▶ (back to source)
└──Shift+S──▶ Sheets Sheet ──Enter──▶ (jump to any sheet)
q # close current sheet (go back one level)
gq # close all sheets (exit VisiData)
Ctrl+^ # swap between current and previous sheet
Alt+1 # jump to sheet #1
Alt+2 # jump to sheet #2
# ... Alt+9 for sheets 1-9

View All Open Sheets (Shift+S)

Shift+S
# Opens the Sheets Sheet — every open sheet listed as a row

Inside the Sheets Sheet:

Enter jump to the sheet under cursor
g^R reload all selected sheets
g^S save selected sheets to files

Derived Sheet Chains

Derived sheets can themselves spawn further derived sheets:

servers.csv
└── Frequency Table (Shift+F)
└── Source rows for "webserver" (Enter on a row)
└── Filtered copy of servers.csv

Press q at each level to unwind:

q # close filtered copy → back to Frequency Table
q # close Frequency Table → back to servers.csv

Or jump directly with Shift+SEnter on any sheet.

Split Screen

View two sheets side by side:

vd ~/github/practice-folder/visidata/03-join/01-servers.csv

# Create a frequency table
Shift+F

# Split screen — frequency table appears in lower pane
Z

# Switch focus between panes
Tab

# Interact with each pane independently
# Top pane: servers.csv
# Bottom pane: Frequency Table

# Close split, restore single view
gZ

Core Keys

KeyAction
qClose current sheet (go back one level)
QClose current sheet and remove from CommandLog
gqClose all sheets and quit VisiData
Shift+SOpen the Sheets Sheet
Ctrl+^Swap between current and previous sheet
Alt+1Alt+9Jump to sheet by number
ZSplit screen (two panes)
TabSwitch focus between split panes
gZClose split screen

Troubleshooting

ProblemCauseFix
Cannot find original sheetDeep stack of derived sheetsShift+S → click source sheet
q exits VisiDataOnly one sheet in stackExpected — use gq intentionally
Split screen shows wrong sheetStack orderUse gTab to swap pane contents
Alt+N does nothingSheet count < NOnly works for sheets that exist

What's Next