Keyboard shortcuts

Everything with a binding, including the two nobody finds on their own.

Ctrl on Linux and Windows, Cmd on macOS — DataGripe accepts either, everywhere, so a keyboard that travels between machines does not have to be relearned.

The two people miss

These are the shortcuts worth reading this page for. Neither is written on a button, and both are the ones a DataGrip or IntelliJ user reaches for without thinking.

Ctrl/Cmd Enter Run. The selection if there is one, otherwise the statement the caret is in — you do not have to select a statement to run it.
Ctrl Alt L Reformat. The whole document, or just the selection if there is one. IntelliJ's binding, and DataGrip's, on every platform.

Ctrl+Alt+L formats SQL, JSON and Markdown. Inside a Markdown document it reformats only the fenced block the caret is in, and leaves the prose alone.

Editor

Ctrl/Cmd Enter Run the selection, else the statement at the cursor
Ctrl/Cmd Shift Enter Run the whole document
Ctrl/Cmd S Save the document
Ctrl Alt L Reformat the document, or the selection

Run and save are window-level and routed to the editor that last had text focus, so they work from the results panel and the sidebar too — not only from inside the editor.

Middle-click and drag makes a columnar, multi-line selection, the way IntelliJ does. Monaco can do it and normally gives the middle button to Linux's primary clipboard instead; a browser tab has no primary clipboard to paste from, so DataGripe takes the gesture back.

Everything else is Monaco's own, unmodified: Ctrl/Cmd+F to find, Ctrl/Cmd+D for the next occurrence, Alt+Up/Alt+Down to move a line, F1 for the command palette, and multi-cursor on Alt+Click.

Cell selection in table and result views

Gesture Action
Click Start a new selection with one cell
Shift-click Select the rectangle from the original cell to this one
Drag Select a rectangle across rows and columns
Ctrl/Cmd-click Add or remove any individual cell, keeping the others selected
Shift+arrow Extend the rectangle in table view
Ctrl/Cmd+C Copy selected cells as tab-separated rows

With more than one cell selected, the bottom bar shows cell count and sum, avg, min, max for numeric values; nonnumeric selections show distinct, and nulls are counted separately. Numeric strings count as numbers. Only highlighted cells on the current page contribute.

Shift-click returns a disjoint selection to a rectangle from its original anchor, including when Ctrl/Cmd is held too. Disjoint copies contain only selected cells in row/column order, with gaps and empty rows omitted. In results, Escape clears the selection.

Table view

A focused cell behaves like a spreadsheet cell. It is a button, not a text selection, so the browser's own copy has nothing to act on — these shortcuts are what make it work.

Enter or F2 Edit the focused cell
Ctrl/Cmd C Copy selected cells, or the focused cell’s value
Ctrl/Cmd V Paste into the cell
Ctrl/Cmd Backspace Set the cell to NULL
Enter Commit the edit
Escape Abandon the edit

NULL has its own gesture on purpose: an empty string and a NULL are different values, and a grid that cannot tell you which one you just wrote is a grid you cannot trust.

Everywhere

Escape Close the open menu, popover or editor
Ctrl/Cmd Click Add an object to a multi-selection in the explorer
← → Resize the sidebar, when its divider has focus

Tabs, splits and panels are all reachable by keyboard: the layout is Dockview's, and every control in it is a real focusable element rather than a div that listens for clicks.

This page as Markdown, for an agent or a diff.