openpencil/packages/docs/reference/keyboard-shortcuts.md

131 lines
4.9 KiB
Markdown
Raw Permalink Normal View History

---
title: Keyboard Shortcuts
description: Figma-compatible keyboard shortcut reference for OpenPencil tools, editing commands, view controls, and layer actions.
---
# Keyboard Shortcuts
Full Figma-compatible shortcut map. ✅ = implemented.
::: tip Symbol Legend
⌘ = Cmd (Mac) / Ctrl (Win/Linux) · ⇧ = Shift · ⌥ = Alt/Option · ⌃ = Ctrl · ⌫ = Backspace
:::
## Tools
| Key | Tool | Status |
|-----|------|--------|
| <kbd>V</kbd> | Move/Select | ✅ |
| <kbd>K</kbd> | Scale | 🔲 |
| <kbd>H</kbd> | Hand | ✅ |
| <kbd>F</kbd> | Frame | ✅ |
| <kbd>S</kbd> | Section | ✅ |
| <kbd>R</kbd> | Rectangle | ✅ |
| <kbd>O</kbd> | Ellipse | ✅ |
| <kbd>L</kbd> | Line | ✅ |
| — | Polygon | ✅ (flyout only) |
| — | Star | ✅ (flyout only) |
| <kbd></kbd><kbd>L</kbd> | Arrow | 🔲 |
| <kbd>P</kbd> | Pen | ✅ |
| <kbd></kbd><kbd>P</kbd> | Pencil | 🔲 |
| <kbd>T</kbd> | Text | ✅ |
| <kbd>C</kbd> | Comment | 🔲 |
| <kbd>I</kbd> | Eyedropper | 🔲 |
## File
| Shortcut | Action | Status |
|----------|--------|--------|
| <kbd></kbd><kbd>N</kbd> | New Tab | ✅ |
| <kbd></kbd><kbd>T</kbd> | New Tab | ✅ |
| <kbd></kbd><kbd>O</kbd> | Open File | ✅ |
| <kbd></kbd><kbd>W</kbd> | Close Tab | ✅ |
| <kbd></kbd><kbd>S</kbd> | Save | ✅ |
| <kbd></kbd><kbd></kbd><kbd>S</kbd> | Save As | ✅ |
| <kbd></kbd><kbd></kbd><kbd>E</kbd> | Export… | ✅ |
## Edit
| Shortcut | Action | Status |
|----------|--------|--------|
| <kbd></kbd><kbd>Z</kbd> | Undo | ✅ |
| <kbd></kbd><kbd></kbd><kbd>Z</kbd> | Redo | ✅ |
| <kbd></kbd><kbd>X</kbd> | Cut | ✅ |
| <kbd></kbd><kbd>C</kbd> | Copy | ✅ |
| <kbd></kbd><kbd>V</kbd> | Paste | ✅ |
| <kbd></kbd><kbd></kbd><kbd>V</kbd> | Paste Over Selection | 🔲 |
| <kbd></kbd><kbd>D</kbd> | Duplicate | ✅ |
| <kbd></kbd> | Delete | ✅ |
| <kbd></kbd><kbd>A</kbd> | Select All | ✅ |
| <kbd></kbd><kbd></kbd><kbd>A</kbd> | Select Inverse | ✅ |
| <kbd></kbd><kbd></kbd><kbd>C</kbd> | Copy as PNG | ✅ |
| <kbd></kbd><kbd></kbd><kbd>C</kbd> | Copy Properties | 🔲 |
| <kbd></kbd><kbd></kbd><kbd>V</kbd> | Paste Properties | 🔲 |
## View
| Shortcut | Action | Status |
|----------|--------|--------|
| <kbd></kbd><kbd>'</kbd> | Pixel Grid | 🔲 |
| <kbd></kbd><kbd>G</kbd> | Layout Guides | 🔲 |
| <kbd></kbd><kbd>R</kbd> | Rulers | 🔲 |
| <kbd></kbd><kbd>\\</kbd> | Show/Hide UI | ✅ |
| <kbd></kbd><kbd>=</kbd> | Zoom In | ✅ |
| <kbd></kbd><kbd>-</kbd> | Zoom Out | ✅ |
| <kbd></kbd><kbd>0</kbd> | Zoom to 100% | ✅ |
2026-03-09 14:43:11 +00:00
| <kbd></kbd><kbd>1</kbd> | Zoom to Fit | ✅ |
| <kbd></kbd><kbd>2</kbd> | Zoom to Selection | ✅ |
| <kbd></kbd><kbd>1</kbd> | Zoom to Fit (alt) | ✅ |
| <kbd></kbd><kbd>2</kbd> | Zoom to Selection (alt) | ✅ |
| <kbd></kbd><kbd>J</kbd> | Toggle AI Chat | ✅ |
## Object
| Shortcut | Action | Status |
|----------|--------|--------|
| <kbd></kbd><kbd></kbd><kbd>G</kbd> | Frame Selection | 🔲 |
| <kbd></kbd><kbd>G</kbd> | Group Selection | ✅ |
| <kbd></kbd><kbd></kbd><kbd>G</kbd> | Ungroup | ✅ |
| <kbd></kbd><kbd>A</kbd> | Add Auto Layout | ✅ |
| <kbd></kbd><kbd></kbd><kbd>K</kbd> | Create Component | ✅ |
| <kbd></kbd><kbd></kbd><kbd>K</kbd> | Create Component Set | ✅ |
| <kbd></kbd><kbd></kbd><kbd>B</kbd> | Detach Instance | ✅ |
| <kbd></kbd><kbd>R</kbd> | Rename Selection | ✅ |
| <kbd></kbd><kbd>]</kbd> | Bring Forward | ✅ |
| <kbd></kbd><kbd></kbd><kbd>]</kbd> | Bring to Front | 🔲 |
| <kbd>]</kbd> | Bring to Front | ✅ |
| <kbd></kbd><kbd>[</kbd> | Send Backward | ✅ |
| <kbd></kbd><kbd></kbd><kbd>[</kbd> | Send to Back | 🔲 |
| <kbd>[</kbd> | Send to Back | ✅ |
| <kbd></kbd><kbd>H</kbd> | Flip Horizontal | ✅ |
| <kbd></kbd><kbd>V</kbd> | Flip Vertical | ✅ |
| <kbd></kbd><kbd></kbd><kbd>H</kbd> | Toggle Visibility | ✅ |
| <kbd></kbd><kbd></kbd><kbd>L</kbd> | Toggle Lock | ✅ |
| <kbd></kbd><kbd>E</kbd> | Flatten | 🔲 |
## Text
| Shortcut | Action | Status |
|----------|--------|--------|
| <kbd></kbd><kbd>B</kbd> | Bold | ✅ |
| <kbd></kbd><kbd>I</kbd> | Italic | ✅ |
| <kbd></kbd><kbd>U</kbd> | Underline | ✅ |
| <kbd></kbd><kbd></kbd><kbd>X</kbd> | Strikethrough | 🔲 |
## Canvas Interaction
| Input | Action | Status |
|-------|--------|--------|
| Click | Select node | ✅ |
| <kbd>Shift</kbd>+Click | Add/remove from selection | ✅ |
| <kbd>Alt</kbd>+Drag | Duplicate and move | ✅ |
| <kbd>Shift</kbd>+Drag (draw) | Constrain to square/circle | ✅ |
| <kbd>Shift</kbd>+Drag (resize) | Maintain aspect ratio | ✅ |
| <kbd>Shift</kbd>+Drag (rotate) | Snap to 15° | ✅ |
| Middle mouse drag | Pan | ✅ |
| Scroll | Pan | ✅ |
| <kbd>Ctrl</kbd>+Scroll / Pinch | Zoom | ✅ |
| Double-click text | Edit text inline | ✅ |
| Drag onto frame | Reparent into frame | ✅ |
| <kbd>Escape</kbd> | Deselect / Cancel | ✅ |