Keyboard shortcuts
Every command can have keys, and you can change them all. This page lists the default bindings and shows how to change them. The keys the editor handles itself, such as moving by words, are on The editor.
On macOS, the defaults use Cmd where this page says Ctrl.
File
| Command | Keys |
|---|---|
| New File | CtrlN |
| New Project... | CtrlShiftN |
| Open File... | CtrlO |
| Open Folder... | CtrlShiftO |
| Save | CtrlS |
| Save As... | CtrlShiftS |
| Save All | CtrlAltS |
| Close Editor | CtrlW or CtrlF4 |
| Close Folder | |
| Settings | Ctrl, |
| Exit | CtrlQ |
Edit
| Command | Keys |
|---|---|
| Undo | CtrlZ |
| Redo | CtrlY or CtrlShiftZ |
| Cut | CtrlX |
| Copy | CtrlC |
| Paste | CtrlV |
| Find | CtrlF |
| Replace | CtrlH |
| Find Next | F3 |
| Find Previous | ShiftF3 |
| Find in Files | CtrlShiftF |
| Toggle Line Comment | Ctrl/ |
| Show Code Actions | AltEnter |
| Rename Symbol | F2 |
| Format Document | ShiftAltF |
| Format Selection | |
| Rollback Lines | CtrlAltZ |
Selection
| Command | Keys |
|---|---|
| Select All | CtrlA |
| Move Line Up | Alt↑ |
| Move Line Down | Alt↓ |
| Duplicate Line | ShiftAlt↓ |
| Delete Line | CtrlShiftK |
| Indent | Tab in the editor |
| Outdent | ShiftTab in the editor |
View
| Command | Keys |
|---|---|
| Command Palette | CtrlK, CtrlShiftP or F1 |
| Show Explorer | CtrlShiftE |
| Show Search | |
| Show Problems | CtrlShiftM |
| Show Output | CtrlShiftU |
| Toggle Light and Dark Theme | CtrlShiftT |
| Zoom In | Ctrl= or CtrlShift= |
| Zoom Out | Ctrl- |
| Reset Zoom | Ctrl0 |
| Reset Layout |
Go
| Command | Keys |
|---|---|
| Search Everywhere | Shift twice, or CtrlShiftA |
| Go to File... | CtrlP |
| Go to Line... | CtrlG |
| Go to Definition | F12 |
| Back | Alt← |
| Forward | Alt→ |
| Next Change | F7 |
| Previous Change | ShiftF7 |
| Show Changes |
Run
| Command | Keys |
|---|---|
| Run | ShiftF10 |
| Debug | ShiftF9 |
| Stop | CtrlF2 |
| Edit Configurations... |
Git
| Command | Keys |
|---|---|
| Commit... | CtrlAltK |
| Push... | CtrlAltShiftK |
| Pull... | CtrlT |
| Fetch, New Branch..., Branches..., Show History, Show File History, Show Diff | |
| Roll Back..., Add to .gitignore, Stash Changes..., Unstash Changes..., Initialize Repository |
In the Commit window's message box, CtrlEnter commits and CtrlShiftEnter commits and pushes.
Editor, build and help
| Command | Keys |
|---|---|
| Trigger Suggestions | CtrlSpace |
| Show Parameter Hints | CtrlShiftSpace |
| Build | CtrlShiftB |
| Cancel Build | CtrlBreak |
| Welcome, Keyboard Shortcuts, Documentation, About Runesmith | |
| Restart Language Servers, Show Language Server Output |
Commands without keys run from the menus or the command palette.
Change a binding
- Choose Help › Keyboard Shortcuts. The page lists every command by category, with its id and its keys; the search box finds commands by name, id or key.
- Click the keys of a command, or Add a binding when it has none.
- Type the keys, such as
Ctrl+Alt+Down, and press Enter. Separate several with|. Leave the box empty to remove the binding.
Write modifiers first, then one key: Ctrl, Shift, Alt (or Option) and Cmd (or Meta), and keys such as A, F5, Enter,
Space, Up, PageDown, /, = or ,.
keybindings.json
Your bindings are saved in keybindings.json, next to your settings.json. It is a JSON object of command ids and keys; an empty value
removes a command's default binding:
{
"edit.toggleComment": "Ctrl+Shift+7",
"view.commandPalette": "Ctrl+Shift+P | F1",
"file.exit": ""
}
Runesmith reads the file when it starts. The ids are on the Keyboard Shortcuts page beside each command.
Keys in text boxes
While a text box has the focus, such as the find bar's, keys without Ctrl, Alt or Cmd type into the box; function keys still run their commands. Undo, redo, cut, copy, paste and select all work on the text box or editor that has the focus.