Skip to content
Reference Template4 columns · 10 sample rows· Updated

Application Keyboard Shortcuts Markdown Table Template

A shortcut table has two audiences with opposite habits. New users skim it once, inside a help dialog or a README, looking for the three or four combinations that will save them time this week. Power users and support staff come back to it to check an exact combination, which scope it works in, or why it does nothing on a colleague’s Mac. Both need rows they can trust without trying every key.

Edit This Template

Edit cells, add rows, or sort — the Markdown updates live
Row
1
Tab
Tab
2
Shift + Tab
Shift + Tab
3
Enter
Enter
4
Shift + Enter
Shift + Enter
5
Ctrl + B / Ctrl + I / Ctrl + E
Cmd + B / Cmd + I / Cmd + E
6
Ctrl + Shift + X
Cmd + Shift + X
7
Ctrl + K
Cmd + K
8
Ctrl + D
Cmd + D
9
Alt + ↑ / Alt + ↓
Option + ↑ / Option + ↓
10
Ctrl + F
Cmd + F
Output
| Action Description                                 |           Windows / Linux            |               macOS               | Editor Scope                |
| :------------------------------------------------- | :----------------------------------: | :-------------------------------: | :-------------------------- |
| Move to next cell (adds a row after the last cell) |                `Tab`                 |               `Tab`               | Grid cell                   |
| Move to previous cell                              |            `Shift + Tab`             |           `Shift + Tab`           | Grid cell                   |
| Move to cell below (adds a row on the last row)    |               `Enter`                |              `Enter`              | Grid cell                   |
| Move to cell above                                 |           `Shift + Enter`            |          `Shift + Enter`          | Grid cell                   |
| Bold / italic / inline code                        | `Ctrl + B` / `Ctrl + I` / `Ctrl + E` | `Cmd + B` / `Cmd + I` / `Cmd + E` | Grid cell                   |
| Strikethrough                                      |          `Ctrl + Shift + X`          |         `Cmd + Shift + X`         | Grid cell                   |
| Insert Markdown link                               |              `Ctrl + K`              |             `Cmd + K`             | Grid cell                   |
| Duplicate current row                              |              `Ctrl + D`              |             `Cmd + D`             | Grid cell                   |
| Move row up / down                                 |        `Alt + ↑` / `Alt + ↓`         |    `Option + ↑` / `Option + ↓`    | Grid cell                   |
| Toggle find panel                                  |              `Ctrl + F`              |             `Cmd + F`             | Editor, outside text fields |
10 rows × 4 columns
Rendered Preview
Action DescriptionWindows / LinuxmacOSEditor Scope
Move to next cell (adds a row after the last cell)TabTabGrid cell
Move to previous cellShift + TabShift + TabGrid cell
Move to cell below (adds a row on the last row)EnterEnterGrid cell
Move to cell aboveShift + EnterShift + EnterGrid cell
Bold / italic / inline codeCtrl + B / Ctrl + I / Ctrl + ECmd + B / Cmd + I / Cmd + EGrid cell
StrikethroughCtrl + Shift + XCmd + Shift + XGrid cell
Insert Markdown linkCtrl + KCmd + KGrid cell
Duplicate current rowCtrl + DCmd + DGrid cell
Move row up / downAlt + ↑ / Alt + ↓Option + ↑ / Option + ↓Grid cell
Toggle find panelCtrl + FCmd + FEditor, outside text fields

When to Use This Table

The table is only as accurate as its source. Shortcuts written from memory drift away from the code: a binding gets reassigned, a feature is removed, or a combination that works on Windows is swallowed by the browser or the operating system elsewhere. The reliable approach is to read bindings from the handler or keymap that implements them, then test each row on every platform you list.

The macOS column is where most tables go wrong. Swapping Ctrl for Cmd works for common commands such as copy and save, but not everywhere: redo is conventionally Cmd + Shift + Z rather than a translation of Ctrl + Y, macOS text fields already use Control for Emacs-style cursor movement, and Option combined with a letter types a special character on many layouts. A good table records what the app really does on each OS, with the scope where it applies.

What Goes in Each Column

ColumnAlignmentWhat to put here
Action Descriptionleft :---Start with a verb and describe the outcome, not the mechanism: “Insert link around selection”, “Move row up”. Left-aligned. Keep wording identical to the menu item or command name when one exists, so people can search for it in the app.
Windows / Linuxcenter :---:The combination with modifiers in a fixed order — Ctrl, Alt, Shift, then the key — in backticks or <kbd> tags. Centered. If Linux differs because a desktop environment reserves the combination, split this into separate Windows and Linux columns rather than adding footnotes.
macOScenter :---:Write what the app actually binds, using either words (Cmd + Shift + Z) or Apple symbols (⇧⌘Z) consistently, with a legend if you choose symbols. Apple lists modifiers in the order Control, Option, Shift, Command (⌃⌥⇧⌘). Centered to match the Windows column.
Editor Scopeleft :---Where the shortcut is active: a focused grid cell, the whole window, a dialog, or anywhere outside text inputs. Left-aligned. The same keys often mean different things in different scopes, and a row without scope sends users hunting for a shortcut that is working exactly as designed.

How to Fill It In

  1. 1Extract every binding from the source of truth: a keymap file, a command registry, or a search of the code for keydown handlers and ctrlKey / metaKey checks. Record the scope each handler is attached to, such as a cell input versus window.
  2. 2Test each row on Windows, macOS and Linux in every browser you support. Some combinations never reach a web page — Chrome, for instance, keeps Ctrl + N, Ctrl + T and Ctrl + W for itself — and Cmd + Space and Ctrl + Space are taken by Spotlight and input-source switching on a default Mac.
  3. 3Check layout dependence. Shortcuts on punctuation keys move or need extra modifiers on non-US layouts, and Option-letter combinations produce characters on macOS. Handlers that should follow the physical key position can read KeyboardEvent.code instead of key.
  4. 4Group rows by scope (Navigation, Editing, File) and order each group by how often people need the action. Put a legend above the table explaining the notation.
  5. 5Escape pipes and watch backslashes: a shortcut on the | key must be written \| inside a table cell, even in a code span (escaping pipes). Then keep the table honest with a test that fails when a documented binding disappears from the code.

Ready-to-Paste Variations

README version with <kbd> tags (VS Code defaults)

GitHub renders <kbd> as key caps. These are long-standing VS Code default bindings; note that Go to Line uses Control, not Command, on macOS.

| Action | Windows / Linux | macOS |
| :--- | :---: | :---: |
| Show Command Palette | <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> | <kbd>⇧</kbd><kbd>⌘</kbd><kbd>P</kbd> |
| Quick Open file | <kbd>Ctrl</kbd>+<kbd>P</kbd> | <kbd>⌘</kbd><kbd>P</kbd> |
| Toggle line comment | <kbd>Ctrl</kbd>+<kbd>/</kbd> | <kbd>⌘</kbd><kbd>/</kbd> |
| Go to line | <kbd>Ctrl</kbd>+<kbd>G</kbd> | <kbd>⌃</kbd><kbd>G</kbd> |
| Find in files | <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>F</kbd> | <kbd>⇧</kbd><kbd>⌘</kbd><kbd>F</kbd> |

Grid editor shortcuts grouped by scope

Bindings as implemented in this site’s table editor, with scope stated per row. The last row shows a pipe written as \| so it does not split the cell.

| Action | Windows / Linux | macOS | Scope |
| :--- | :---: | :---: | :--- |
| Next / previous cell | `Tab` / `Shift + Tab` | `Tab` / `Shift + Tab` | Grid cell |
| Cell below (adds a row on the last row) | `Enter` | `Enter` | Grid cell |
| Bold / italic / inline code | `Ctrl + B` / `Ctrl + I` / `Ctrl + E` | `Cmd + B` / `Cmd + I` / `Cmd + E` | Grid cell |
| Insert link | `Ctrl + K` | `Cmd + K` | Grid cell |
| Duplicate row | `Ctrl + D` | `Cmd + D` | Grid cell |
| Move row up / down | `Alt + ↑` / `Alt + ↓` | `Option + ↑` / `Option + ↓` | Grid cell |
| Toggle find | `Ctrl + F` | `Cmd + F` | Editor, outside text fields |
| Type a literal pipe | `Shift + \` (US layout) | `Shift + \` (US layout) | Grid cell; exported as `\|` |

Three operating systems when Linux differs

For desktop-level documentation, where GNOME, Windows and macOS genuinely diverge. Linux bindings vary by desktop environment, so name the one you tested.

| Action | Windows | macOS | Linux (GNOME) |
| :--- | :---: | :---: | :---: |
| Search apps and files | `Win` | `Cmd + Space` | `Super` |
| Switch applications | `Alt + Tab` | `Cmd + Tab` | `Super + Tab` |
| Lock screen | `Win + L` | `Ctrl + Cmd + Q` | `Super + L` |
| Close window | `Alt + F4` | `Cmd + W` | `Alt + F4` |

Common Mistakes

  • Generating the macOS column by replacing every Ctrl with Cmd.

    Check platform conventions row by row — redo, Go to Line and Emacs-style text movement all differ — and test on a Mac before publishing.

  • Writing <kbd>\</kbd> for the backslash key, which Markdown reads as an escaped < and prints the closing tag as text.

    Double the backslash inside the tag (<kbd>\\</kbd>) or put the combination in a code span, where backslashes are literal.

  • Documenting combinations that the browser or OS intercepts, so the shortcut silently fails for most readers.

    Test in each supported browser and platform, choose alternatives for reserved combinations, and drop rows you cannot make work.

  • Leaving out scope, so Ctrl + F is listed once although it toggles the editor’s find panel outside text fields and falls through to the browser’s own find inside a cell.

    Give each scope its own row, or add the scope column the template provides, and order rows by scope.

Browse all 50 templates
FAQ

Application Keyboard Shortcuts: Frequently Asked Questions

Should I write Cmd or the ⌘ symbol?

Mac users read symbols instantly and they keep columns narrow, but people switching from Windows often do not know ⌥ or ⌃. Use symbols with a one-line legend above the table, or spell out Cmd, Option and Control. Never mix both styles in one table.

In what order should modifier keys be listed?

On macOS, Apple’s convention is Control, Option, Shift, Command, so ⌃⌥⇧⌘ followed by the key. On Windows the common order is Ctrl, Alt, Shift, then the key. Consistent ordering lets readers compare rows without parsing each one.

Does <kbd> work in Markdown tables?

On GitHub and in most renderers that allow inline HTML, yes: <kbd> is permitted and drawn as a key cap. Renderers that strip HTML will show only the key text, so the table still reads correctly without the styling.

Are Linux shortcuts always the same as Windows?

Inside cross-platform applications they usually are. At the desktop level they diverge: GNOME, KDE and other environments reserve the Super key and several Ctrl + Alt combinations, and users customise them freely. Name the environment you tested and split the column when bindings differ.