draw.io (diagrams.net) keyboard shortcuts
The diagrams.net editor has keyboard commands for document work, canvas views, selection, shapes, labels, styling, and tables, plus modifier-and-pointer gestures for precise diagram construction. Focus and the selected object determine which command runs.
Windows, macOS, Linux · 112 shortcutsDocument and tools
Document commands save, print, undo, redo, or cancel. Single letters insert the five published basic elements when focus is on the canvas.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| SaveThe Shift alternative opens Save As. | CtrlSorCtrlShiftS | CmdSorCmdShiftS | CtrlSorCtrlShiftS |
| Undo | CtrlZ | CmdZ | CtrlZ |
| Redo | CtrlY | CmdShiftZ | CtrlShiftZ |
| CtrlP | CmdP | CtrlP | |
| Toggle the grid | CtrlShiftG | CmdShiftG | CtrlShiftG |
| Toggle connection arrows | AltShiftA | OptionShiftA | AltShiftA |
| Ignore handles under the pointer | AltHold | AltHold | AltHold |
| Add text | A | A | A |
| Add a note | S | S | S |
| Add a rectangle | D | D | D |
| Add an ellipse | F | F | F |
| Add a line | C | C | C |
| Toggle Freehand mode | X | X | X |
| Open the context menu | CtrlorRight click | CmdorRight click | CtrlorRight click |
| Cancel editing or the current action | EscorCtrlEscorShiftEsc | EscorCtrlEscorShiftEsc | EscorCtrlEscorShiftEsc |
| Open in draw.io | CtrlShiftK | CmdShiftK | CtrlShiftK |
Canvas and view
Wheel commands scroll or zoom the canvas. Fit and zoom commands change only the viewport, while Space or right-drag pans it.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Zoom the canvas with the mouse wheel | AltWheelorCtrlShiftWheel | AltWheelorCtrlShiftWheel | AltWheelorCtrlShiftWheel |
| Scroll the canvas vertically | Wheel | Wheel | Wheel |
| Scroll the canvas horizontally | ShiftWheel | ShiftWheel | ShiftWheel |
| Pan the drawing canvas | SpaceDragorRight clickDragorMouse wheelDrag | SpaceDragorRight clickDragorMouse wheelDrag | SpaceDragorRight clickDragorMouse wheelDrag |
| Create or remove space in the diagram | AltCtrlShiftDrag | OptionCmdShiftDrag | AltCtrlShiftDrag |
| Move or resize while ignoring the grid | AltDrag | OptionDrag | AltDrag |
| Go to the canvas home position | Home | Home | Home |
| Refresh the canvas | ShiftHome | ShiftHome | ShiftHome |
| Reset the view | End | End | End |
| Fit the diagram to the window | Enter | Enter | Enter |
| Fit one page | Home | Home | Home |
| Fit two pages | CtrlShiftH | CmdShiftH | CtrlShiftH |
| Open custom zoom | CtrlJ | CmdJ | CtrlJ |
| Zoom in | Ctrl+ | Cmd+ | Ctrl+ |
| Zoom out | Ctrl- | Cmd- | Ctrl- |
| Reset zoom | Ctrl0 | Cmd0 | Ctrl0 |
| Toggle the Layers panel | CtrlShiftL | CmdShiftL | CtrlShiftL |
| Toggle the Outline panel | CtrlShiftO | CmdShiftO | CtrlShiftO |
| Edit diagram metadata | CtrlM | CmdM | CtrlM |
| Toggle the Format panel | CtrlShiftP | CmdShiftP | CtrlShiftP |
| Edit vertex geometry | CtrlShiftM | CmdShiftM | CtrlShiftM |
| Toggle Tags | CtrlK | CmdK | CtrlK |
| Find or replace | CtrlF | CmdF | CtrlF |
| Toggle the Shapes panel | CtrlShiftK | CmdShiftK | CtrlShiftK |
Selection and movement
Tab cycles selection; cursor keys move selected cells or pan when nothing is selected. Control and Shift change movement to resizing or page selection.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Select the next cell | Tab | Tab | Tab |
| Select the previous cell | ShiftTab | ShiftTab | ShiftTab |
| Select the parent | AltShiftPorAltTab | OptionShiftPorOptionTab | AltShiftPorAltTab |
| Select children or siblings | AltShiftXorAltShiftCorAltShiftS | OptionShiftXorOptionShiftCorOptionShiftS | AltShiftXorAltShiftCorAltShiftS |
| Start a selection box or select intersecting shapes | AltDrag | AltDrag | AltDrag |
| Select all or deselect all | CtrlAorCtrlShiftA | CmdAorCmdShiftA | CtrlAorCtrlShiftA |
| Select all vertices or all edges | CtrlShiftIorCtrlShiftE | CmdShiftIorCmdShiftE | CtrlShiftIorCtrlShiftE |
| Toggle a shape's selection state | CtrlClickorShiftClickorCtrlDragorShiftDrag | CmdClickorShiftClickorCmdDragorShiftDrag | CtrlClickorShiftClickorCtrlDragorShiftDrag |
| Select the cell beneath the current cell | AltClick | OptionClick | AltClick |
| Move a selected cell by one point or scroll | Arrow keys | Arrow keys | Arrow keys |
| Move a selected cell by one grid step or select a page | ShiftArrow keys | ShiftArrow keys | ShiftArrow keys |
| Resize a selected cell by one point | CtrlArrow keys | CmdArrow keys | CtrlArrow keys |
| Resize a selected cell by one grid step | CtrlShiftArrow keys | CmdShiftArrow keys | CtrlShiftArrow keys |
| Clone and connect in the arrow direction | AltShiftArrow keys | OptionShiftArrow keys | AltShiftArrow keys |
| Scroll the page | AltArrow keys | OptionArrow keys | AltArrow keys |
| Go to the previous page | CtrlShiftPage Up | CmdShiftPage Up | CtrlShiftPage Up |
| Go to the next page | CtrlShiftPage Down | CmdShiftPage Down | CtrlShiftPage Down |
Shapes and arrangement
These commands act on selected cells. Rows that combine several closely related actions retain the exact alternatives grouped in the official one-page reference.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Cut selected cells | CtrlX | CmdX | CtrlX |
| Copy selected cells | CtrlC | CmdC | CtrlC |
| Copy selected cells as an image | CtrlAltX | CmdOptionX | CtrlAltX |
| Paste | CtrlV | CmdV | CtrlV |
| Paste unformatted text | CtrlShiftV | CmdShiftV | CtrlShiftV |
| Group selected cells | CtrlG | CmdG | CtrlG |
| Ungroup selected cells | CtrlShiftU | CmdShiftU | CtrlShiftU |
| Lock, unlock, or edit a link | CtrlLorAltShiftL | CmdLorOptionShiftL | CtrlLorAltShiftL |
| Duplicate selected cells | CtrlEnterorD | CmdEnterorD | CtrlEnterorD |
| Delete selected cells | BackspaceorDelete | BackspaceorDelete | BackspaceorDelete |
| Delete selected cells with connections or labels | CtrlDeleteorShiftDelete | CmdDeleteorShiftDelete | CtrlDeleteorShiftDelete |
| Turn or rotate selected cells 90 degrees clockwise | CtrlR | CmdR | CtrlR |
| Maintain proportions while resizing | ShiftResize | ShiftResize | ShiftResize |
| Resize around the center | CtrlResize | CmdResize | CtrlResize |
| Collapse the selected container | CtrlHome | CmdHome | CtrlHome |
| Expand the selected container | CtrlEnd | CmdEnd | CtrlEnd |
| Enter or exit the selected group | CtrlShiftEndorCtrlShiftHome | CmdShiftEndorCmdShiftHome | CtrlShiftEndorCtrlShiftHome |
| Bring to front or send to back | AltCtrlShiftForAltCtrlShiftB | OptionCmdShiftForOptionCmdShiftB | AltCtrlShiftForAltCtrlShiftB |
| Bring forward or send backward | CtrlShiftForCtrlShiftB | CmdShiftForCmdShiftB | CtrlShiftForCtrlShiftB |
| Copy or paste size or data | AltShiftForAltShiftVorAltShiftBorAltShiftE | OptionShiftForOptionShiftVorOptionShiftBorOptionShiftE | AltShiftForAltShiftVorAltShiftBorAltShiftE |
| Clear waypoints or edit a tooltip or note | AltShiftRorAltShiftTorAltShiftN | OptionShiftRorOptionShiftTorOptionShiftN | AltShiftRorAltShiftTorAltShiftN |
| Autosize selected cells | CtrlShiftY | CmdShiftY | CtrlShiftY |
| Clone, swap, or constrain while dragging | CtrlDragorShiftDrag | CmdDragorShiftDrag | CtrlDragorShiftDrag |
| Move selected remote shapes and connectors | ShiftAltDrag | ShiftOptionDrag | ShiftAltDrag |
| Increase or decrease selected text size | CtrlShiftNum +orCtrlShiftNum - | CmdShiftNum +orCmdShiftNum - | CtrlShiftNum +orCtrlShiftNum - |
| Increase or decrease the selected shape size | CtrlShiftArrow keys | CmdShiftArrow keys | CtrlShiftArrow keys |
| Clear all extra connector waypoints | AltShiftR | OptionShiftR | AltShiftR |
Labels and styles
Label commands require text editing or a selected cell. Style commands copy appearance without copying the underlying shape content.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Insert a new line in a formatted label | EnterorShiftEnter | EnterorShiftEnter | EnterorShiftEnter |
| Insert a line break, tab, or indent in a label | EnterorTab | EnterorTab | EnterorTab |
| Start editing the selected cell's label | EnterorF2 | EnterorF2 | EnterorF2 |
| Stop editing the label | CtrlEnterorShiftTaborF2orEsc | CmdEnterorShiftTaborF2orEsc | CtrlEnterorShiftTaborF2orEsc |
| Toggle bold on selected label text | CtrlB | CmdB | CtrlB |
| Toggle italic on selected label text | CtrlI | CmdI | CtrlI |
| Toggle underline on selected label text | CtrlU | CmdU | CtrlU |
| Apply superscript to selected label text | Ctrl. | Cmd. | Ctrl. |
| Apply subscript to selected label text | Ctrl, | Cmd, | Ctrl, |
| Clear the default style | CtrlShiftR | CmdShiftR | CtrlShiftR |
| Edit the selected shape or connector style | CtrlE | CmdE | CtrlE |
| Set the selected cell's style as the default | CtrlShiftD | CmdShiftD | CtrlShiftD |
| Copy style | AltC | OptionC | AltC |
| Paste style | AltV | OptionV | AltV |
Shape libraries and connectors
These commands combine a modifier with clicking or dragging a library shape or connector endpoint. Mac uses Option where Windows and Linux use Alt.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Disable replace and connect behavior on drop targets | AltDragorAltShiftDrag | OptionDragorOptionShiftDrag | AltDragorAltShiftDrag |
| Insert and connect the selected library item | AltClickorAltShiftClickorAltCtrlClick | OptionClickorOptionShiftClickorOptionCmdClick | AltClickorAltShiftClickorAltCtrlClick |
| Replace the selected shape with a library shape | ShiftClick | ShiftClick | ShiftClick |
| Connect a library shape to an unconnected selected edge | Click | Click | Click |
| Ignore a shape or connect to a fixed point | AltConnectorShiftConnect | OptionConnectorShiftConnect | AltConnectorShiftConnect |
| Clone a shape | CtrlDrag | CmdDrag | CtrlDrag |
Table shapes
Table shortcuts require a selected row, column, cell, or entire table. Modifier-drag operations resize, duplicate, distribute, or overlay table contents.
| Action | Windows | macOS | Linux |
|---|---|---|---|
| Resize a row or column border | ShiftDrag | ShiftDrag | ShiftDrag |
| Resize all rows or columns equally | CtrlDrag | CmdDrag | CtrlDrag |
| Distribute all rows or columns equally | ShiftCtrlDrag | ShiftCmdDrag | ShiftCtrlDrag |
| Duplicate the selected row | Enter | Enter | Enter |
| Duplicate a selected row or column while moving it | CtrlDrag | CmdDrag | CtrlDrag |
| Duplicate the entire selected table | CtrlEnter | CmdEnter | CtrlEnter |
| Delete the selected row or column | Delete | Delete | Delete |
| Overlay a shape on a table cell | AltDrag | OptionDrag | AltDrag |