Skip to content

Keyboard Shortcuts ​

VMark is designed for keyboard-first workflows. Most shortcuts can be customized in Settings. A small number of primitives are fixed: the multi-cursor selectors Mod+D (Select Next Occurrence) and Mod+Shift+L (Select All Occurrences), and the global Undo/Redo bindings. The other multi-cursor shortcuts (Skip Occurrence, Soft Undo Cursor, Add Cursor Above/Below) are configurable. Shortcuts marked (context-aware) are handled inside the editor for specific structures (e.g., task list checkbox toggle) and are not exposed in the customization registry.

Notation ​

  • Mod = Cmd on macOS, Ctrl on Windows/Linux
  • Alt = Option on macOS

Function Keys on macOS ​

VMark uses function keys (F2–F10) for quick mode toggles. On macOS, these keys are mapped to system functions (brightness, volume, etc.) by default.

To use F-keys directly without holding Fn:

  1. Open System Settings → Keyboard
  2. Enable "Use F1, F2, etc. keys as standard function keys"

Alternatively, hold the Fn key when pressing F2–F10 to trigger VMark shortcuts.

TIP

If you prefer keeping system functions on F-keys, you can customize VMark shortcuts in Settings (Mod + ,) to use different key combinations.

F-Key Quick Reference ​

KeyAction
F2Next Issue
Shift + F2Previous Issue
F3Toggle Invisibles
F4Sort Lines Ascending (Source mode only; does nothing in WYSIWYG)
Shift + F4Sort Lines Descending (Source mode only; does nothing in WYSIWYG)
F5Source Peek
F6Source view (Markdown: WYSIWYG ⇄ Source; other formats: Source ⇄ Split)
Shift + F6Split / Preview (Markdown: split view; other formats: Preview ⇄ Split)
F7Toggle Status Bar
F8Focus Mode
F9Typewriter Mode
F10Read-Only Mode

Edit ​

ActionShortcut
UndoMod + Z
RedoMod + Shift + Z

Text Formatting ​

ActionShortcut
BoldMod + B
ItalicMod + I
UnderlineMod + U
StrikethroughMod + Shift + X
Inline CodeMod + Shift + `
HighlightMod + Shift + M
SubscriptAlt + Mod + =
SuperscriptAlt + Mod + Shift + =
LinkMod + K
Open Link (Source mode)Cmd + Click
Remove LinkAlt + Shift + K
Wiki LinkAlt + Mod + K
Bookmark LinkAlt + Mod + B
Clear FormattingMod + \

Block Formatting ​

ActionShortcut
Heading 1-6Mod + 1 through Mod + 6
ParagraphMod + Shift + 0
Increase Heading LevelAlt + Mod + ]
Decrease Heading LevelAlt + Mod + [
BlockquoteAlt + Mod + Q
Code BlockAlt + Mod + C
Bullet ListAlt + Mod + U
Ordered ListAlt + Mod + O
Task ListAlt + Mod + X
Toggle Task CheckboxMod + Shift + Enter (context-aware; not customizable)
IndentMod + ]
OutdentMod + [
Horizontal LineAlt + Mod + -

Line Operations ​

ActionShortcut
Move Line UpAlt + Up
Move Line DownAlt + Down
Duplicate LineShift + Alt + Down
Delete LineMod + Shift + K
Join LinesMod + J
Sort Lines AscendingF4 (Source mode only)
Sort Lines DescendingShift + F4 (Source mode only)

Text Transformations ​

ActionmacOSWindows/Linux
UPPERCASECtrl + Shift + UAlt + Shift + U
lowercaseCtrl + Shift + LAlt + Shift + L
Title CaseCtrl + Shift + TAlt + Shift + T
Toggle Case(customizable)(customizable)
Remove Blank Lines(customizable)(customizable)
Toggle Quote StyleShift + Mod + 'Shift + Mod + '

Insert ​

ActionShortcut
Insert ImageMod + Shift + I
Insert Video—
Insert Audio—
Insert TableMod + Shift + T
Table of Contents(customizable)
Inline MathAlt + Mod + M
Math BlockAlt + Mod + Shift + M
Insert NoteAlt + Mod + N
Insert TipAlt + Mod + Shift + T
Insert WarningMod + Shift + W
Insert ImportantAlt + Mod + Shift + I
Insert CautionMod + Shift + U
Insert CollapsibleAlt + Mod + D
Insert DiagramAlt + Mod + Shift + D
Insert Graphviz Diagram(customizable)
Insert MindmapAlt + Mod + Shift + K
Toggle CommentMod + /

Selection & Multi-Cursor ​

ActionShortcut
Select LineMod + L
Select All Occurrences in BlockAlt + Mod + Shift + L
Expand SelectionCtrl + Shift + Up
Select Next OccurrenceMod + D
Skip OccurrenceMod + Shift + D
Select All OccurrencesMod + Shift + L
Soft Undo CursorAlt + Mod + Z
Add Cursor AboveMod + Alt + Up
Add Cursor BelowMod + Alt + Down
Collapse Multi-CursorEscape

Find & Replace ​

ActionShortcut
Find & ReplaceMod + F
Find NextMod + G
Find PreviousMod + Shift + G
Use Selection for FindMod + E
Find in FilesMod + Shift + H

View & Mode ​

ActionShortcut
Source view (Markdown ⇄ Source; other formats Source ⇄ Split)F6
Split / Preview (Markdown split; other formats Preview ⇄ Split)Shift + F6
Split Editor — Two DocumentsAlt + Mod + \
Toggle Status BarF7
Focus ModeF8
Typewriter ModeF9
Read-Only ModeF10
Actual SizeMod + 0
Zoom InMod + =
Zoom OutMod + -
Word WrapAlt + Z
Last Used TabCtrl + Tab
Split Editor — Two DocumentsAlt + Mod + \
Close PaneAlt + Mod + Shift + \
Focus Other PaneAlt + Mod + Shift + O
Toggle SidebarCtrl + Shift + 0
Toggle OutlineCtrl + Shift + 1
Toggle File ExplorerCtrl + Shift + 2
Toggle HistoryCtrl + Shift + 3
Toggle Knowledge BaseCtrl + Shift + 4
Toggle Window StatusCtrl + Shift + 5
Toggle Line Numbers (code blocks)Alt + Mod + L
Toggle TerminalCtrl + `
Focus Terminal or EditorCtrl + Shift + ` (Alt + Shift + ` on Windows/Linux)
Toggle Diagram PreviewAlt + Mod + P
Fit Tables to Width(customizable)
Open Universal ToolbarMod + Shift + B
Source PeekF5
Check MarkdownAlt + Mod + V
Next IssueF2
Previous IssueShift + F2

Toggle Knowledge Base

Ctrl + Shift + 4 is hidden by default, along with the View → Knowledge Base menu item and the palette command. No release build on any platform ships the content-server runtime the feature needs, so the entry points appear only when Settings → Advanced → Developer tools is on — see Knowledge Base & Slidev. The shortcut stays listed and customizable in Settings → Shortcuts either way.

File Operations ​

ActionShortcut
New FileMod + N
Quick OpenMod + O (fuzzy file browser)
Open Command PaletteMod + Shift + P
Open File...Menu only (native file picker)
Open WorkspaceMod + Shift + O
SaveMod + S
Save AsMod + Shift + S
Save All and QuitAlt + Mod + Shift + Q
Move toMenu only
CloseMod + W
Export HTMLMenu only
PrintMod + P
Export PDF—
SettingsMod + ,

Clipboard ​

ActionShortcut
Copy as HTMLMod + Shift + C
Paste Plain TextMod + Shift + V

AI Genies ​

ActionShortcut
Open AI GeniesMod + Y
Accept suggestionEnter
Reject suggestionEscape
Next suggestionTab
Previous suggestionShift + Tab
Accept all suggestionsMod + Shift + Enter
Reject all suggestionsMod + Shift + Escape

CJK Formatting ​

ActionShortcut
Format SelectionMod + Shift + F
Format DocumentAlt + Mod + Shift + F

Window & Tabs ​

ActionShortcut
New WindowMod + Shift + N
New TabMod + T
New Browser TabAlt + Mod + Shift + B
Next TabMod + Shift + ]
Previous TabMod + Shift + [
Close TabMod + W
Reopen Closed Tab(customizable)
Toggle Hidden FilesMod + Shift + .
Toggle All FilesMod + Shift + A

Windows/Linux Note

Toggle Hidden Files uses Ctrl + H on Windows and Linux.

Toggle Sidebar uses Alt + Shift + 0 on Windows and Linux, because Mod is Ctrl there — so the macOS chord Ctrl + Shift + 0 would collide with Paragraph's Mod + Shift + 0.

New Browser Tab

Alt + Mod + Shift + B opens an embedded browser tab, and also appears in the File menu. The embedded browser is on by default on macOS; if you turn it off under Settings → Advanced → Embedded browser, the menu item is hidden (not greyed out) until you turn it back on. The browser is macOS-only, so the item never appears on Windows or Linux.

It is a real menu item rather than only a keyboard binding, and that matters: once a web page has keyboard focus, the browser engine consumes key presses before VMark sees them, so an in-app shortcut cannot fire. A menu accelerator is dispatched by macOS itself, so it still works while you are browsing.

Help (macOS only) ​

ActionShortcut
Search MenusCmd + Shift + /

TIP

This is a native macOS system shortcut that searches all menu items. Type a keyword to find and execute any menu action.

Smart Tab Navigation ​

Tab and Shift+Tab are context-aware — they escape brackets, quotes, formatting marks, and links.

ContextTab Action
Before ), ], }, quotesJump past closing character
Before CJK brackets 」, 』, etc.Jump past closing bracket
Inside bold, italic, codeJump after formatting
Inside a linkJump after link
ContextShift+Tab Action
After (, [, {, quotesJump before opening character
After CJK brackets 「, 『, etc.Jump before opening bracket
Inside bold, italic, codeJump before formatting
Inside a linkJump before link

TIP

See Smart Tab Navigation for the complete guide including CJK brackets, curly quotes, and settings.

Table Editing ​

When cursor is inside a table:

ActionShortcut
Next CellTab
Previous CellShift + Tab
Add Row BelowMod + Enter
Add Row AboveMod + Shift + Enter
Delete RowMod + Backspace
Format TableAlt + Mod + T
Exit TableArrow keys at table edge

When a popup is open (link, image, math, etc.):

ActionShortcut
Close PopupEscape
Confirm/SaveEnter
Navigate FieldsTab / Shift + Tab

Math Block Editing ​

When editing a math block:

ActionShortcut
Commit & ExitMod + Enter
Cancel & ExitEscape

Terminal ​

When the integrated terminal is focused:

ActionShortcut
Toggle TerminalCtrl + `
Focus Terminal or EditorCtrl + Shift + ` (Alt + Shift + ` on Windows/Linux)
CopyMod + C (with selection); on Linux also Ctrl + Shift + C or Ctrl + Insert
PasteMod + V; on Linux also Ctrl + Shift + V or Shift + Insert
Select All (terminal output only)Mod + A (Ctrl + Shift + A on Linux)
ClearMod + K (Ctrl + Shift + K on Linux)
SearchMod + F (Ctrl + Shift + F on Linux)
Switch to session 1–5Mod + 1 through Mod + 5
Terminal font biggerMod + =
Terminal font smallerMod + -
Terminal font default sizeMod + 0
Previous command promptMod + ↑
Next command promptMod + ↓
Newline in the input line (Claude Code and similar tools)Shift + Enter

While the terminal is focused, Mod + =, Mod + - and Mod + 0 resize the terminal's font instead of the editor's.

Prompt navigation jumps between command prompts in the scrollback and requires shell integration (zsh or bash).

On macOS the terminal also translates the usual text-editing chords for the shell:

ActionShortcut
Move one word left / rightOption + ← / Option + →
Move to line start / endCmd + ← / Cmd + →
Delete the input line (sends Ctrl + U)Cmd + Backspace

Ctrl chords such as Ctrl + A, Ctrl + R and Ctrl + W go straight to the shell on macOS.

On Linux the terminal follows the usual Linux terminal convention: plain Ctrl + letter chords go to the shell, so readline keys such as Ctrl + A, Ctrl + E, Ctrl + K, Ctrl + F, Ctrl + U and Ctrl + W work as in any other Linux terminal, and the terminal's own actions move to Ctrl + Shift — Ctrl + Shift + A selects all, Ctrl + Shift + K clears, Ctrl + Shift + F searches, and Ctrl + Shift + C / Ctrl + Shift + V copy and paste. Ctrl + Insert and Shift + Insert also copy and paste. Two plain Ctrl chords stay with the terminal: Ctrl + C copies a selection (and sends SIGINT when nothing is selected), and Ctrl + V pastes. Ctrl + 1 through Ctrl + 5 still switch sessions.

When the terminal search bar is open:

ActionShortcut
Next MatchEnter
Previous MatchShift + Enter
Close SearchEscape

TIP

Mod + C without a selection sends SIGINT to the running process. See Integrated Terminal for the full guide.

Customizing Shortcuts ​

  1. Open Settings with Mod + ,
  2. Navigate to the Shortcuts tab (type in the search box to filter by name, category, description or key)
  3. Click the key shown next to a shortcut — or Unassigned for one with no key yet
  4. Press your desired key combination, then click Assign (Escape cancels)

The dialog warns you before you assign a combination:

  • Conflict — the combination is already used by another shortcut, which it names. You can still choose Assign Anyway.
  • Not supported — VMark cannot use that combination, so it cannot be assigned. Try another.

A customized shortcut is highlighted and gets a Reset to default button. Reset All restores every default after asking for confirmation. Export saves your shortcuts as a JSON file (vmark-shortcuts.json) and Import loads one; if any entry in the file is invalid, nothing is imported and the problems are listed.

TIP

Shortcuts sync with menu accelerators when applicable, so menu items will show your customized shortcuts.