Skip to content

Keyboard Shortcuts

Throughout this page, Mod means Ctrl on Windows and Linux, and Cmd on macOS and iPadOS. Bindings are stored in a platform-independent form and displayed with the right label for the platform you are on, so the same stored binding reads correctly everywhere. Ctrl and Cmd are treated as the same modifier when recording a new binding.

Bindings are stored with your application preferences, not inside a project.

CategoryActionDefault bindingWhat it does
FileSave ProjectMod+SSave the current project to disk
FileOpen ProjectunboundOpen an existing project from disk
FileNew ProjectunboundCreate a new project
FileGo to HubunboundReturn to the project hub
FileExport TexturesMod+EOpen the export dialog for the graph’s best output node
EditorOpen SettingsF1Open the settings window
EditorToggle Command PaletteMod+PShow or hide the command palette
EditorToggle Left PanelMod+Collapse or expand the left panel
EditorToggle Right PanelMod+Collapse or expand the right panel
EditorToggle Bottom PanelMod+Collapse or expand the bottom panel
EditorToggle Focus ModeMod+Hide all panels to focus on the canvas
GraphUndoMod+ZUndo the last graph change
GraphRedoMod+YRedo the last undone graph change
GraphSelect AllMod+ASelect all nodes in the graph
GraphDelete SelectedDeleteDelete the selected nodes
GraphDuplicate SelectedMod+DDuplicate the selected nodes
GraphCopy SelectedMod+CCopy the selected nodes to the clipboard
GraphPaste NodesMod+VPaste nodes from the clipboard
CanvasZoom to FitunboundZoom the canvas to fit all nodes
CanvasZoom to SelectionTabZoom the canvas to fit the selected nodes
CanvasZoom InunboundZoom the canvas in
CanvasZoom OutunboundZoom the canvas out
CanvasToggle MinimapMod+MShow or hide the canvas minimap
CanvasOpen Node PickerSpaceOpen the node picker to add a node
CanvasPlace CommentCPlace a new comment at the center of the viewport
CanvasFrame SelectionFCreate an empty comment box sized around the selected nodes
CanvasToggle Annotation ModeunboundSwitch between drawing annotations and normal canvas input

Seven actions are unbound out of the box: Open Project, New Project, Go to Hub, Zoom to Fit, Zoom In, Zoom Out and Toggle Annotation Mode. All of them can be reached another way (the hub, the toolbar’s Zoom In, Zoom Out and annotation buttons, the zoom field) and all can be given a binding.

On the Shortcuts page key names are shown in lower case (mod+s, f1, delete, mod+arrowleft); modifier names keep their capitals. The Space binding on Open Node Picker displays as a blank space rather than a word.

A preset is a bundle of overrides layered on the Surface Labs defaults, a muscle-memory bridge from another node tool. Applying one replaces your current overrides entirely. Only the differences are listed here; every action not shown keeps its Surface Labs default.

PresetChanges
Surface Labs(the defaults above)
Substance DesignerZoom to Selection F, Frame Selection Shift+F, Zoom to Fit Home
BlenderSelect All A, Delete Selected X, Duplicate Selected Shift+D, Zoom to Fit Home, Toggle Command Palette F3, Redo Mod+Shift+Z
HoudiniOpen Node Picker Tab, Zoom to Selection G, Zoom to Fit H
NukeOpen Node Picker Tab, Zoom to Selection F, Frame Selection Shift+F, Zoom to Fit Home
CustomNot selectable. This label appears automatically once you remap anything by hand

The Custom chip is only drawn while Custom is the active state, and the note under the row reads Presets preload familiar bindings from other tools. Remapping any shortcut afterwards switches to Custom.

  1. Open Settings → Shortcuts.
  2. Click a row’s binding. It is replaced by a pulsing Press a key… box.
  3. Press the combination you want, holding modifiers first. Modifier keys pressed on their own are ignored while the row is listening, so you can hold Shift and then choose the key. The combination is captured on the first non-modifier key press.
  4. Press Escape while the row is listening to cancel without changing anything.

Recorded modifiers are the primary modifier (Ctrl/Cmd), Shift and Alt.

A row that carries an override grows a × control beside its binding, which clears that one override and restores the registry default.

Any manual remap, or a per-row reset, flips the stored preset label to Custom.

Reset All Shortcuts to Defaults at the bottom of the list clears every override at once and returns the preset to Surface Labs. It asks first, Reset all shortcuts?, and explains: This restores every keyboard shortcut to its default binding. This action cannot be undone.

Below that button, the same page carries the Controller section: the enable toggle, the live connection status and the three tuning sliders. See Input Devices.

If the combination you press is already assigned to another action, the row stops listening and shows an inline warning: Already used by the other action’s name, Reassign?, with Reassign and Cancel buttons.

  • Reassign gives the combination to the action you were editing and unbinds the other action.
  • Cancel abandons the remap.

Once the warning is showing, the row is no longer listening for keys, so Escape at that point closes Settings instead of canceling. Use Cancel.

Shortcuts are deliberately suppressed while a text field has keyboard focus: the comment box inline editor, the toolbar search field, the toolbar zoom field, the Jump Node label editor, a panel’s search box. Typing C in a comment writes a c instead of placing another comment, and typing space in the toolbar search field types a space instead of opening the node picker. Escape is the exception: it is never routed through the shortcut system, so it always reaches whatever it needs to cancel.

Which actions are live also depends on where you are. Go to Hub, Toggle Command Palette, New Project and Open Project are registered application-wide, so they work in the hub as well as the editor. Save, Export Textures, the three panel toggles and Focus Mode are registered by the editor. Undo, Redo, Select All, Delete, Duplicate, Copy, Paste and the canvas actions are registered by the canvas. An action whose handler is not currently registered simply does nothing.

A few keys belong to a panel rather than to the shortcut system, so they are not listed above and cannot be remapped. In the 3D preview, [ and ] cycle through the material’s maps and Tab shows or hides the corner toolbar; both only fire while that viewport holds focus, which it claims on pointer-down. See 3D Material Preview.

Mod+P opens a small overlay in the upper part of the window with a search field, focused automatically, and the hint line Run any action or jump to a shortcut. It works in the hub and in the editor.

Under the field is the action list, and it runs what you pick:

  • With the field empty, every action available right now is listed under its category heading, in the order of the table above.
  • Typing filters by subsequence match over the action name and its category, so tfm finds Toggle Focus Mode. Filtered results drop the headings and label each row with its category instead. Nothing matching reads No matching actions.
  • Each row shows the action’s current binding, so the palette doubles as a way to look one up.
  • and move the highlight, wrapping at both ends and scrolling the highlighted row into view. Enter or a tap runs the highlighted action through the same path a keyboard shortcut takes.
  • Choosing Toggle Command Palette from inside the palette just closes it.

Only actions with a handler registered right now appear, so the canvas and graph actions are absent in the hub. Mod+P again or Escape closes it (Escape also clears the typed text; Mod+P leaves it in place for next time).