소스 검색

Updated keybinding manual

Björn Ritzl 11 달 전
부모
커밋
12156a45a4
2개의 변경된 파일76개의 추가작업 그리고 30개의 파일을 삭제
  1. 34 20
      docs/en/manuals/editor-keyboard-shortcuts.md
  2. 42 10
      tools/parse_keymap.lua

+ 34 - 20
docs/en/manuals/editor-keyboard-shortcuts.md

@@ -11,13 +11,15 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 |---------|---------|-------|-------|
 | Add | <kbd>A</kbd> | <kbd>A</kbd> | <kbd>A</kbd> |
 | Add secondary | <kbd>Shift</kbd>+<kbd>A</kbd> | <kbd>Shift</kbd>+<kbd>A</kbd> | <kbd>Shift</kbd>+<kbd>A</kbd> |
+| Async reload | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Y</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>Y</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Y</kbd> |
 | Backwards tab trigger | <kbd>Shift</kbd>+<kbd>Tab</kbd> | <kbd>Shift</kbd>+<kbd>Tab</kbd> | <kbd>Shift</kbd>+<kbd>Tab</kbd> |
 | Beginning of file | <kbd>Ctrl</kbd>+<kbd>Home</kbd> | <kbd>Cmd</kbd>+<kbd>Up</kbd> | <kbd>Ctrl</kbd>+<kbd>Home</kbd> |
 | Beginning of line |  | <kbd>Ctrl</kbd>+<kbd>A</kbd> |  |
-| Beginning of line text | <kbd>Home</kbd> | <kbd>Home</kbd> | <kbd>Home</kbd> |
+| Beginning of line text | <kbd>Home</kbd> | <kbd>Cmd</kbd>+<kbd>Left</kbd> | <kbd>Home</kbd> |
 | Build | <kbd>Ctrl</kbd>+<kbd>B</kbd> | <kbd>Cmd</kbd>+<kbd>B</kbd> | <kbd>Ctrl</kbd>+<kbd>B</kbd> |
 | Close | <kbd>Ctrl</kbd>+<kbd>W</kbd> | <kbd>Cmd</kbd>+<kbd>W</kbd> | <kbd>Ctrl</kbd>+<kbd>W</kbd> |
 | Close all | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>W</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>W</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>W</kbd> |
+| Close engine | <kbd>Ctrl</kbd>+<kbd>J</kbd> | <kbd>Cmd</kbd>+<kbd>J</kbd> | <kbd>Ctrl</kbd>+<kbd>J</kbd> |
 | Continue | <kbd>F5</kbd> | <kbd>F5</kbd> | <kbd>F5</kbd> |
 | Copy | <kbd>Ctrl</kbd>+<kbd>C</kbd> | <kbd>Cmd</kbd>+<kbd>C</kbd> | <kbd>Ctrl</kbd>+<kbd>C</kbd> |
 | Cut | <kbd>Ctrl</kbd>+<kbd>X</kbd> | <kbd>Cmd</kbd>+<kbd>X</kbd> | <kbd>Ctrl</kbd>+<kbd>X</kbd> |
@@ -26,7 +28,7 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | Delete line |  | <kbd>Ctrl</kbd>+<kbd>D</kbd> |  |
 | Delete next word | <kbd>Ctrl</kbd>+<kbd>Delete</kbd> | <kbd>Alt</kbd>+<kbd>Delete</kbd> | <kbd>Ctrl</kbd>+<kbd>Delete</kbd> |
 | Delete prev word | <kbd>Ctrl</kbd>+<kbd>Backspace</kbd> | <kbd>Alt</kbd>+<kbd>Backspace</kbd> | <kbd>Ctrl</kbd>+<kbd>Backspace</kbd> |
-| Delete to end of line | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Delete</kbd> | <kbd>Cmd</kbd>+<kbd>Delete</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Delete</kbd> |
+| Delete to end of line | <kbd>Ctrl</kbd>+<kbd>K</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>Delete</kbd> | <kbd>Ctrl</kbd>+<kbd>K</kbd> |
 | Documentation | <kbd>F1</kbd> | <kbd>F1</kbd> | <kbd>F1</kbd> |
 | Down | <kbd>Down</kbd> | <kbd>Down</kbd> | <kbd>Down</kbd> |
 | Edit breakpoint | <kbd>Alt</kbd>+<kbd>F9</kbd> | <kbd>Alt</kbd>+<kbd>F9</kbd> | <kbd>Alt</kbd>+<kbd>F9</kbd> |
@@ -35,14 +37,16 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | Enter | <kbd>Enter</kbd> | <kbd>Enter</kbd> | <kbd>Enter</kbd> |
 | Erase tool | <kbd>Shift</kbd>+<kbd>E</kbd> | <kbd>Shift</kbd>+<kbd>E</kbd> | <kbd>Shift</kbd>+<kbd>E</kbd> |
 | Escape | <kbd>Esc</kbd> | <kbd>Esc</kbd> | <kbd>Esc</kbd> |
-| Find next | <kbd>Ctrl</kbd>+<kbd>G</kbd>, <kbd>Enter</kbd> | <kbd>Cmd</kbd>+<kbd>G</kbd>, <kbd>Enter</kbd> | <kbd>Ctrl</kbd>+<kbd>G</kbd>, <kbd>Enter</kbd> |
-| Find prev | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>G</kbd>, <kbd>Shift</kbd>+<kbd>Enter</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>G</kbd>, <kbd>Shift</kbd>+<kbd>Enter</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>G</kbd>, <kbd>Shift</kbd>+<kbd>Enter</kbd> |
+| Find next | <kbd>Ctrl</kbd>+<kbd>G</kbd> | <kbd>Cmd</kbd>+<kbd>G</kbd> | <kbd>Ctrl</kbd>+<kbd>G</kbd> |
+| Find prev | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>G</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>G</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>G</kbd> |
 | Find references | <kbd>Shift</kbd>+<kbd>F12</kbd> | <kbd>Shift</kbd>+<kbd>F12</kbd> | <kbd>Shift</kbd>+<kbd>F12</kbd> |
 | Find text | <kbd>Ctrl</kbd>+<kbd>F</kbd> | <kbd>Cmd</kbd>+<kbd>F</kbd> | <kbd>Ctrl</kbd>+<kbd>F</kbd> |
+| Flip brush horizontally | <kbd>X</kbd> | <kbd>X</kbd> | <kbd>X</kbd> |
+| Flip brush vertically | <kbd>Y</kbd> | <kbd>Y</kbd> | <kbd>Y</kbd> |
 | Frame selection | <kbd>F</kbd> | <kbd>F</kbd> | <kbd>F</kbd> |
 | Goto definition | <kbd>F12</kbd> | <kbd>F12</kbd> | <kbd>F12</kbd> |
 | Goto line | <kbd>Ctrl</kbd>+<kbd>L</kbd> | <kbd>Cmd</kbd>+<kbd>L</kbd> | <kbd>Ctrl</kbd>+<kbd>L</kbd> |
-| Hide selected | <kbd>Ctrl</kbd>+<kbd>E</kbd> | <kbd>Cmd</kbd>+<kbd>E</kbd> | <kbd>Ctrl</kbd>+<kbd>E</kbd> |
+| Hide toggle selected | <kbd>Ctrl</kbd>+<kbd>E</kbd> | <kbd>Cmd</kbd>+<kbd>E</kbd> | <kbd>Ctrl</kbd>+<kbd>E</kbd> |
 | Hot reload | <kbd>Ctrl</kbd>+<kbd>R</kbd> | <kbd>Cmd</kbd>+<kbd>R</kbd> | <kbd>Ctrl</kbd>+<kbd>R</kbd> |
 | Left | <kbd>Left</kbd> | <kbd>Left</kbd> | <kbd>Left</kbd> |
 | Move down | <kbd>Alt</kbd>+<kbd>Down</kbd> | <kbd>Alt</kbd>+<kbd>Down</kbd> | <kbd>Alt</kbd>+<kbd>Down</kbd> |
@@ -51,7 +55,8 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | New file | <kbd>Ctrl</kbd>+<kbd>N</kbd> | <kbd>Cmd</kbd>+<kbd>N</kbd> | <kbd>Ctrl</kbd>+<kbd>N</kbd> |
 | Next word | <kbd>Ctrl</kbd>+<kbd>Right</kbd> | <kbd>Alt</kbd>+<kbd>Right</kbd> | <kbd>Ctrl</kbd>+<kbd>Right</kbd> |
 | Open | <kbd>Ctrl</kbd>+<kbd>O</kbd> | <kbd>Cmd</kbd>+<kbd>O</kbd> | <kbd>Ctrl</kbd>+<kbd>O</kbd> |
-| Open asset | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>R</kbd> | <kbd>Cmd</kbd>+<kbd>P</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>R</kbd> |
+| Open asset | <kbd>Ctrl</kbd>+<kbd>P</kbd> | <kbd>Cmd</kbd>+<kbd>P</kbd> | <kbd>Ctrl</kbd>+<kbd>P</kbd> |
+| Open recent file | <kbd>Alt</kbd>+<kbd>R</kbd> | <kbd>Ctrl</kbd>+<kbd>R</kbd> | <kbd>Alt</kbd>+<kbd>R</kbd> |
 | Page down | <kbd>Page Down</kbd> | <kbd>Page Down</kbd> | <kbd>Page Down</kbd> |
 | Page up | <kbd>Page Up</kbd> | <kbd>Page Up</kbd> | <kbd>Page Up</kbd> |
 | Paste | <kbd>Ctrl</kbd>+<kbd>V</kbd> | <kbd>Cmd</kbd>+<kbd>V</kbd> | <kbd>Ctrl</kbd>+<kbd>V</kbd> |
@@ -62,14 +67,15 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | Realign camera | <kbd>Period</kbd> | <kbd>Period</kbd> | <kbd>Period</kbd> |
 | Rebuild | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>B</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>B</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>B</kbd> |
 | Rebundle | <kbd>Ctrl</kbd>+<kbd>U</kbd> | <kbd>Cmd</kbd>+<kbd>U</kbd> | <kbd>Ctrl</kbd>+<kbd>U</kbd> |
-| Recent files | <kbd>Alt</kbd>+<kbd>R</kbd> | <kbd>Ctrl</kbd>+<kbd>R</kbd> | <kbd>Alt</kbd>+<kbd>R</kbd> |
 | Redo | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Z</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>Z</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Z</kbd> |
 | Reindent | <kbd>Ctrl</kbd>+<kbd>I</kbd> | <kbd>Ctrl</kbd>+<kbd>I</kbd> | <kbd>Ctrl</kbd>+<kbd>I</kbd> |
 | Rename | <kbd>F2</kbd> | <kbd>F2</kbd> | <kbd>F2</kbd> |
-| Reopen closed file | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>T</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>T</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>T</kbd> |
+| Reopen recent file | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>T</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>T</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>T</kbd> |
 | Replace next | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>H</kbd> | <kbd>Alt</kbd>+<kbd>Cmd</kbd>+<kbd>G</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>H</kbd> |
 | Replace text |  | <kbd>Alt</kbd>+<kbd>Cmd</kbd>+<kbd>F</kbd> |  |
 | Right | <kbd>Right</kbd> | <kbd>Right</kbd> | <kbd>Right</kbd> |
+| Rotate brush 90 degrees |  |  | <kbd>Z</kbd> |
+| Rotate brush 90 degrees] | <kbd>Z</kbd> | <kbd>Z</kbd> |  |
 | Rotate tool | <kbd>E</kbd> | <kbd>E</kbd> | <kbd>E</kbd> |
 | Save all | <kbd>Ctrl</kbd>+<kbd>S</kbd> | <kbd>Cmd</kbd>+<kbd>S</kbd> | <kbd>Ctrl</kbd>+<kbd>S</kbd> |
 | Scale tool | <kbd>R</kbd> | <kbd>R</kbd> | <kbd>R</kbd> |
@@ -77,17 +83,17 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | Search in files | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>F</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>F</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>F</kbd> |
 | Select all | <kbd>Ctrl</kbd>+<kbd>A</kbd> | <kbd>Cmd</kbd>+<kbd>A</kbd> | <kbd>Ctrl</kbd>+<kbd>A</kbd> |
 | Select beginning of file | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Home</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>Up</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Home</kbd> |
-| Select beginning of line |  | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>A</kbd> |  |
+| Select beginning of line |  | <kbd>Shift</kbd>+<kbd>Alt</kbd>+<kbd>Up</kbd> |  |
 | Select beginning of line text | <kbd>Shift</kbd>+<kbd>Home</kbd> | <kbd>Shift</kbd>+<kbd>Home</kbd> | <kbd>Shift</kbd>+<kbd>Home</kbd> |
 | Select down | <kbd>Shift</kbd>+<kbd>Down</kbd> | <kbd>Shift</kbd>+<kbd>Down</kbd> | <kbd>Shift</kbd>+<kbd>Down</kbd> |
 | Select end of file | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>End</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>Down</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>End</kbd> |
-| Select end of line | <kbd>Shift</kbd>+<kbd>End</kbd> | <kbd>Shift</kbd>+<kbd>Alt</kbd>+<kbd>Down</kbd> | <kbd>Shift</kbd>+<kbd>End</kbd> |
+| Select end of line | <kbd>Shift</kbd>+<kbd>End</kbd> | <kbd>Shift</kbd>+<kbd>End</kbd> | <kbd>Shift</kbd>+<kbd>End</kbd> |
 | Select left | <kbd>Shift</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Left</kbd> |
 | Select next occurrence | <kbd>Ctrl</kbd>+<kbd>D</kbd> | <kbd>Cmd</kbd>+<kbd>D</kbd> | <kbd>Ctrl</kbd>+<kbd>D</kbd> |
-| Select next word | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Alt</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Right</kbd> |
+| Select next word | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Right</kbd> |
 | Select page down | <kbd>Shift</kbd>+<kbd>Page Down</kbd> | <kbd>Shift</kbd>+<kbd>Page Down</kbd> | <kbd>Shift</kbd>+<kbd>Page Down</kbd> |
 | Select page up | <kbd>Shift</kbd>+<kbd>Page Up</kbd> | <kbd>Shift</kbd>+<kbd>Page Up</kbd> | <kbd>Shift</kbd>+<kbd>Page Up</kbd> |
-| Select prev word | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Left</kbd> |
+| Select prev word | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Alt</kbd>+<kbd>Left</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Left</kbd> |
 | Select right | <kbd>Shift</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Right</kbd> | <kbd>Shift</kbd>+<kbd>Right</kbd> |
 | Show last hidden | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>E</kbd> | <kbd>Shift</kbd>+<kbd>Cmd</kbd>+<kbd>E</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>E</kbd> |
 | Show palette | <kbd>Space</kbd> | <kbd>Space</kbd> | <kbd>Space</kbd> |
@@ -96,14 +102,9 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 | Step out | <kbd>Shift</kbd>+<kbd>F11</kbd> | <kbd>Shift</kbd>+<kbd>F11</kbd> | <kbd>Shift</kbd>+<kbd>F11</kbd> |
 | Step over | <kbd>F10</kbd> | <kbd>F10</kbd> | <kbd>F10</kbd> |
 | Stop debugger | <kbd>Shift</kbd>+<kbd>F5</kbd> |  | <kbd>Shift</kbd>+<kbd>F5</kbd> |
-| Switch to next tab | <kbd>Ctrl</kbd>+<kbd>Tab</kbd> | <kbd>Ctrl</kbd>+<kbd>Tab</kbd> | <kbd>Ctrl</kbd>+<kbd>Tab</kbd> |
-| Switch to previous tab | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Tab</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Tab</kbd> | <kbd>Shift</kbd>+<kbd>Ctrl</kbd>+<kbd>Tab</kbd> |
 | Tab | <kbd>Tab</kbd> | <kbd>Tab</kbd> | <kbd>Tab</kbd> |
-| Tilemap brush clockwise rotation | <kbd>Z</kbd> | <kbd>Z</kbd> | <kbd>Z</kbd> |
-| Tilemap brush horizontal flipping | <kbd>X</kbd> | <kbd>X</kbd> | <kbd>X</kbd> |
-| Tilemap brush vertical flipping | <kbd>Y</kbd> | <kbd>Y</kbd> | <kbd>Y</kbd> |
 | Toggle breakpoint | <kbd>F9</kbd> | <kbd>F9</kbd> | <kbd>F9</kbd> |
-| Toggle comment | <kbd>Ctrl</kbd>+<kbd>Slash</kbd> | <kbd>Cmd</kbd>+<kbd>Slash</kbd> | <kbd>Ctrl</kbd>+<kbd>Slash</kbd> |
+| Toggle comment | <kbd>Ctrl</kbd>+<kbd>'/'</kbd> | <kbd>Cmd</kbd>+<kbd>'/'</kbd> | <kbd>Ctrl</kbd>+<kbd>'/'</kbd> |
 | Toggle component guides | <kbd>Ctrl</kbd>+<kbd>H</kbd> | <kbd>Ctrl</kbd>+<kbd>Cmd</kbd>+<kbd>H</kbd> | <kbd>Ctrl</kbd>+<kbd>H</kbd> |
 | Toggle pane bottom | <kbd>F7</kbd> | <kbd>F7</kbd> | <kbd>F7</kbd> |
 | Toggle pane left | <kbd>F6</kbd> | <kbd>F6</kbd> | <kbd>F6</kbd> |
@@ -118,6 +119,19 @@ brief: This manual shows the current keyboard shortcuts and how to customize the
 
 ## Customizing shortcuts
 
-You can customize keyboard shortcuts by creating a configuration file (e.g. `keymap.edn` in your home directory). Then go into <kbd>File ▸ Preferences</kbd>, and set <kbd>Path to custom keymap</kbd> to the created file. You need to restart Defold after setting this setting, and every time you edit the keymap file.
+You can override default keyboard shortcuts by providing a configuration file with your own shortcuts. The configuration file should be in the Extensible Data Notation (EDN) format with extension `.edn`:
 
-You can see and download keymaps for: [Windows](examples/keymap_win.edn), [MacOS](examples/keymap_macos.edn) and [Linux](examples/keymap_linux.edn)
+```
+[
+ ["A" :add]
+ ["Alt+Backspace" :delete-prev-word]
+ ["Alt+Delete" :delete-next-word]
+ ["Alt+Down" :end-of-line]
+ ["Alt+Down" :move-down]
+ ["Alt+Left" :prev-word]
+]
+```
+
+Each entry defines the key or key combination and the editor action it should correspond to. Available actions can be seen in [`keymap.clj`](https://github.com/defold/defold/blob/dev/editor/src/clj/editor/keymap.clj#L34-L161).
+
+When the file has been created go into <kbd>File ▸ Preferences</kbd>, and set <kbd>Path to custom keymap</kbd> to the created file (it has to be an absolute path). You need to restart Defold after setting this setting, and every time you edit the keymap file.

+ 42 - 10
tools/parse_keymap.lua

@@ -1,13 +1,14 @@
 -- parse Lua modified keymap.clj into Markdown table
 
 local keymaps = {
-	darwin = {
+	macos = {
 		["A"] = "add",
 		["Alt+Backspace"] = "delete-prev-word",
 		["Alt+Delete"] = "delete-next-word",
 		["Alt+Down"] = "end-of-line",
 		["Alt+Down"] = "move-down",
 		["Alt+Left"] = "prev-word",
+		["Alt+F9"] = "edit-breakpoint",
 		["Alt+Meta+E"] = "select-next-occurrence",
 		["Alt+Meta+F"] = "replace-text",
 		["Alt+Meta+G"] = "replace-next",
@@ -21,7 +22,7 @@ local keymaps = {
 		["Ctrl+I"] = "reindent",
 		["Ctrl+K"] = "delete-to-end-of-line",
 		["Ctrl+Meta+H"] = "toggle-component-guides",
-		["Ctrl+R"] = "reload-stylesheet",
+		["Ctrl+R"] = "open-recent-file",
 		["Ctrl+Space"] = "proposals",
 		["Delete"] = "delete",
 		["Down"] = "down",
@@ -40,6 +41,7 @@ local keymaps = {
 		["F7"] = "toggle-pane-bottom",
 		["F8"] = "toggle-pane-right",
 		["F9"] = "toggle-breakpoint",
+		["F12"] = "goto-definition",
 		["Home"] = "beginning-of-line-text",
 		["Left"] = "left",
 		["Meta+'+'"] = "zoom-in",
@@ -51,7 +53,7 @@ local keymaps = {
 		["Meta+D"] = "select-next-occurrence",
 		["Meta+Delete"] = "delete-to-end-of-line",
 		["Meta+Down"] = "end-of-file",
-		["Meta+E"] = "hide-selected",
+		["Meta+E"] = "hide-toggle-selected",
 		["Meta+F"] = "filter-form",
 		["Meta+F"] = "find-text",
 		["Meta+G"] = "find-next",
@@ -64,9 +66,10 @@ local keymaps = {
 		["Meta+R"] = "hot-reload",
 		["Meta+Right"] = "end-of-line",
 		["Meta+S"] = "save-all",
-		["Meta+Slash"] = "toggle-comment",
+		["Meta+'/'"] = "toggle-comment",
 		["Meta+T"] = "scene-stop",
 		["Meta+U"] = "rebundle",
+		["Meta+J"] = "close-engine",
 		["Meta+Up"] = "beginning-of-file",
 		["Meta+V"] = "paste",
 		["Meta+W"] = "close",
@@ -82,6 +85,7 @@ local keymaps = {
 		["Shift+Alt+Left"] = "select-prev-word",
 		["Shift+Alt+Right"] = "select-next-word",
 		["Shift+Alt+Up"] = "select-beginning-of-line",
+		["Shift+Backspace"] = "delete-backward",
 		["Shift+Ctrl+A"] = "select-beginning-of-line",
 		["Shift+Ctrl+E"] = "select-end-of-line",
 		["Shift+Ctrl+Left"] = "select-prev-word",
@@ -91,6 +95,7 @@ local keymaps = {
 		["Shift+E"] = "erase-tool",
 		["Shift+End"] = "select-end-of-line",
 		["Shift+F11"] = "step-out",
+		["Shift+F12"] = "find-references",
 		["Shift+Home"] = "select-beginning-of-line-text",
 		["Shift+Left"] = "left-major",
 		["Shift+Left"] = "select-left",
@@ -105,8 +110,10 @@ local keymaps = {
 		["Shift+Meta+Left"] = "select-beginning-of-line-text",
 		["Shift+Meta+R"] = "open-asset",
 		["Shift+Meta+Right"] = "select-end-of-line",
+		["Shift+Meta+T"] = "reopen-recent-file",
 		["Shift+Meta+Up"] = "select-beginning-of-file",
 		["Shift+Meta+W"] = "close-all",
+		["Shift+Meta+Y"] = "async-reload",
 		["Shift+Meta+Z"] = "redo",
 		["Shift+Page Down"] = "select-page-down",
 		["Shift+Page Up"] = "select-page-up",
@@ -120,10 +127,15 @@ local keymaps = {
 		["Tab"] = "tab",
 		["Up"] = "up",
 		["W"] = "move-tool",
+		["X"] = "flip-brush-horizontally",
+		["Y"] = "flip-brush-vertically",
+		["Z"] = "rotate-brush-90-degrees]",
 	},
 	win32 = {
 		["A"] = "add",
 		["Alt+Down"] = "move-down",
+		["Alt+F9"] = "edit-breakpoint",
+		["Alt+R"] = "open-recent-file",
 		["Alt+Up"] = "move-up",
 		["Backspace"] = "delete-backward",
 		["Ctrl+'+'"] = "zoom-in",
@@ -135,7 +147,7 @@ local keymaps = {
 		["Ctrl+Comma"] = "preferences",
 		["Ctrl+D"] = "select-next-occurrence",
 		["Ctrl+Delete"] = "delete-next-word",
-		["Ctrl+E"] = "hide-selected",
+		["Ctrl+E"] = "hide-toggle-selected",
 		["Ctrl+End"] = "end-of-file",
 		["Ctrl+F"] = "filter-form",
 		["Ctrl+F"] = "find-text",
@@ -154,10 +166,11 @@ local keymaps = {
 		["Ctrl+R"] = "hot-reload",
 		["Ctrl+Right"] = "next-word",
 		["Ctrl+S"] = "save-all",
-		["Ctrl+Slash"] = "toggle-comment",
+		["Ctrl+'/'"] = "toggle-comment",
 		["Ctrl+Space"] = "proposals",
 		["Ctrl+T"] = "scene-stop",
 		["Ctrl+U"] = "rebundle",
+		["Ctrl+J"] = "close-engine",
 		["Ctrl+V"] = "paste",
 		["Ctrl+W"] = "close",
 		["Ctrl+X"] = "cut",
@@ -179,6 +192,7 @@ local keymaps = {
 		["F7"] = "toggle-pane-bottom",
 		["F8"] = "toggle-pane-right",
 		["F9"] = "toggle-breakpoint",
+		["F12"] = "goto-definition",
 		["Home"] = "beginning-of-line-text",
 		["Left"] = "left",
 		["Page Down"] = "page-down",
@@ -187,6 +201,7 @@ local keymaps = {
 		["R"] = "scale-tool",
 		["Right"] = "right",
 		["Shift+A"] = "add-secondary",
+		["Shift+Backspace"] = "delete-backward",
 		["Shift+Ctrl+B"] = "rebuild",
 		["Shift+Ctrl+Delete"] = "delete-to-end-of-line",
 		["Shift+Ctrl+E"] = "show-last-hidden",
@@ -200,13 +215,16 @@ local keymaps = {
 		["Shift+Ctrl+Left"] = "select-prev-word",
 		["Shift+Ctrl+R"] = "open-asset",
 		["Shift+Ctrl+Right"] = "select-next-word",
+		["Shift+Ctrl+T"] = "reopen-recent-file",
 		["Shift+Ctrl+W"] = "close-all",
+		["Shift+Ctrl+Y"] = "async-reload",
 		["Shift+Ctrl+Z"] = "redo",
 		["Shift+Down"] = "down-major",
 		["Shift+Down"] = "select-down",
 		["Shift+E"] = "erase-tool",
 		["Shift+End"] = "select-end-of-line",
 		["Shift+F11"] = "step-out",
+		["Shift+F12"] = "find-references",
 		["Shift+F5"] = "stop-debugger",
 		["Shift+Home"] = "select-beginning-of-line-text",
 		["Shift+Left"] = "left-major",
@@ -223,10 +241,15 @@ local keymaps = {
 		["Tab"] = "tab",
 		["Up"] = "up",
 		["W"] = "move-tool",
+		["X"] = "flip-brush-horizontally",
+		["Y"] = "flip-brush-vertically",
+		["Z"] = "rotate-brush-90-degrees]",
 	},
 	linux = {
 		["A"] = "add",
 		["Alt+Down"] = "move-down",
+		["Alt+F9"] = "edit-breakpoint",
+		["Alt+R"] = "open-recent-file",
 		["Alt+Up"] = "move-up",
 		["Backspace"] = "delete-backward",
 		["Ctrl+'+'"] = "zoom-in",
@@ -238,7 +261,7 @@ local keymaps = {
 		["Ctrl+Comma"] = "preferences",
 		["Ctrl+D"] = "select-next-occurrence",
 		["Ctrl+Delete"] = "delete-next-word",
-		["Ctrl+E"] = "hide-selected",
+		["Ctrl+E"] = "hide-toggle-selected",
 		["Ctrl+End"] = "end-of-file",
 		["Ctrl+F"] = "filter-form",
 		["Ctrl+F"] = "find-text",
@@ -257,10 +280,11 @@ local keymaps = {
 		["Ctrl+R"] = "hot-reload",
 		["Ctrl+Right"] = "next-word",
 		["Ctrl+S"] = "save-all",
-		["Ctrl+Slash"] = "toggle-comment",
+		["Ctrl+'/'"] = "toggle-comment",
 		["Ctrl+Space"] = "proposals",
 		["Ctrl+T"] = "scene-stop",
 		["Ctrl+U"] = "rebundle",
+		["Ctrl+J"] = "close-engine",
 		["Ctrl+V"] = "paste",
 		["Ctrl+W"] = "close",
 		["Ctrl+X"] = "cut",
@@ -282,6 +306,7 @@ local keymaps = {
 		["F7"] = "toggle-pane-bottom",
 		["F8"] = "toggle-pane-right",
 		["F9"] = "toggle-breakpoint",
+		["F12"] = "goto-definition",
 		["Home"] = "beginning-of-line-text",
 		["Left"] = "left",
 		["Page Down"] = "page-down",
@@ -290,6 +315,7 @@ local keymaps = {
 		["R"] = "scale-tool",
 		["Right"] = "right",
 		["Shift+A"] = "add-secondary",
+		["Shift+Backspace"] = "delete-backward",
 		["Shift+Ctrl+B"] = "rebuild",
 		["Shift+Ctrl+Delete"] = "delete-to-end-of-line",
 		["Shift+Ctrl+E"] = "show-last-hidden",
@@ -303,13 +329,16 @@ local keymaps = {
 		["Shift+Ctrl+Left"] = "select-prev-word",
 		["Shift+Ctrl+R"] = "open-asset",
 		["Shift+Ctrl+Right"] = "select-next-word",
+		["Shift+Ctrl+T"] = "reopen-recent-file",
 		["Shift+Ctrl+W"] = "close-all",
+		["Shift+Ctrl+Y"] = "async-reload",
 		["Shift+Ctrl+Z"] = "redo",
 		["Shift+Down"] = "down-major",
 		["Shift+Down"] = "select-down",
 		["Shift+E"] = "erase-tool",
 		["Shift+End"] = "select-end-of-line",
 		["Shift+F11"] = "step-out",
+		["Shift+F12"] = "find-references",
 		["Shift+F5"] = "stop-debugger",
 		["Shift+Home"] = "select-beginning-of-line-text",
 		["Shift+Left"] = "left-major",
@@ -326,6 +355,9 @@ local keymaps = {
 		["Tab"] = "tab",
 		["Up"] = "up",
 		["W"] = "move-tool",
+		["X"] = "flip-brush-horizontally",
+		["Y"] = "flip-brush-vertically",
+		["Z"] = "rotate-brush-90-degrees",
 	}
 }
 
@@ -361,7 +393,7 @@ for _,bindings in ipairs(sorted_commands) do
 	command = command:gsub("-", " ")
 	command = command:sub(1,1):upper() .. command:sub(2)
 	local win32 = fix_binding(bindings.win32)
-	local darwin = fix_binding(bindings.darwin)
+	local macos = fix_binding(bindings.macos)
 	local linux = fix_binding(bindings.linux)
-	print(("| %s | %s | %s | %s |"):format(command, win32, darwin, linux))
+	print(("| %s | %s | %s | %s |"):format(command, win32, macos, linux))
 end