Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Maolan Shortcuts and Gestures

Last updated: 2026-07-09

Keyboard Shortcuts

Global / Session

  • Ctrl+N: New session
  • Ctrl+O: Open session
  • Ctrl+S: Save session
  • Ctrl+Shift+S: Save session as
  • Ctrl+I: Import files
  • Ctrl+E: Open export dialog
  • Ctrl+T: Add track
  • Ctrl+A: Select all (in pitch-correction view: selects all segments)
  • Ctrl+R: Toggle session record arm
  • Ctrl+L: Send transport panic / MIDI panic
  • Ctrl+Z: Undo
  • Ctrl+Shift+Z: Redo
  • Ctrl+Y: Redo
  • Delete or Backspace: Remove selected item(s)
  • Escape: Cancel or clear the current context-dependent interaction
  • S: Toggle the Shortcuts pane
  • M: Toggle the Modulators pane
  • C: Toggle the Clips pane
  • X: Toggle the cut indicator (a vertical guide line showing where a cut would land; only visible in workspace view)

Transport

  • Space: Toggle play/stop
  • Shift+Space: Pause (arrangement); stop all session clips when Session view is focused
  • Home: Rewind to start
  • End: Rewind to end

Session View

  • Tab: Toggle between Workspace and Session view
  • / / / : Navigate selected clip slot
  • Return: Launch or stop the selected slot
  • Shift+Space: Stop all session clips
  • Rec to Arr button: Start recording playing session clips into the arrangement

Piano Tools

  • Q: Quantize selected notes
  • H: Humanize selected notes
  • G: Groove selected notes

Mouse Actions and Gestures

Workspace / Track List

  • Left click track: Select track
  • Ctrl+Left click track: Add track to the current selection
  • Double click track: Open the track plugin/routing graph
  • Right click track: Open track context menu
    • Track actions such as automation lanes, rename, sends/returns, MIDI learn, freeze/flatten, and template save depending on track state
  • Drag track (grab track body): Reorder track
  • Drag bottom track edge: Resize track height

Timeline Clips

  • Left click clip: Select clip
  • Left click empty editor: Deselect clips
  • Left drag clip: Drag/move clip (or group if multi-selected)
  • Ctrl + drag clip: Copy clip while dragging
  • Drag clip left/right edge: Resize clip bounds
  • Shift + drag clip left/right edge: Stretch audio clip with the built-in timestretch renderer on drop
  • Snapping is applied during drag-and-drop based on the current snap mode; the “Clips” snap mode enables snapping to other clip start/end positions
  • Drag clip fade handles: Resize fade-in/fade-out
  • Middle click clip: Split clip at current cursor/snap position
  • Double click MIDI clip: Open MIDI piano roll
  • Double click audio clip: Open per-clip plugin graph on supported Unix builds
  • Right click clip: Open clip context menu
    • Clip actions such as group/ungroup, rename, take-lane controls, mute/unmute, pitch correction, fade toggle, and audio stretch actions for audio clips

Track Header Markers

  • Right click empty marker/header area: Open the create-marker dialog at the snapped timeline position
  • Left drag marker: Move marker horizontally; snapping is applied on drop (supports “Clips” snap mode)
  • Right click marker: Rename marker
  • Middle click marker: Delete marker

Selection Gestures

  • Left drag on empty editor: Marquee clip selection rectangle
  • Right drag on MIDI lane: Create empty MIDI clip

Automation Lanes

  • Right drag empty area: Draw a straight automation ramp between the press and release points (same interaction as the MIDI controller lane). A click without movement inserts a single point.
  • Right click point: Delete automation point

Ruler (Top Timeline)

  • Left click: Move transport playhead
  • Left drag: Set loop range (snap-aware, supports “Clips” snap mode)
  • Right drag inside loop range: Move the entire loop range
  • Middle drag loop edge: Adjust loop start or end point
  • Right click: Clear loop range

Zoom Controls

  • Main editor zoom: Bottom-right horizontal slider
  • Piano roll horizontal zoom: Bottom slider in the MIDI editor
  • Piano roll vertical zoom: Right-side vertical slider in the MIDI editor

Tempo / Time Signature Lane

  • Left click marker: Select marker
  • Shift+Left click marker: Add/remove marker from selection
  • Left drag selected marker(s): Move marker(s) in time (supports “Clips” snap mode)
  • Left click empty timing lane: Clear timing selection and move the playhead
  • Left drag empty timing lane: Clear timing selection and set punch range (supports “Clips” snap mode)
  • Right click marker: Open marker context menu
    • Duplicate
    • Reset to previous
    • Delete
  • Right click empty timing lane: Clear timing selection and clear punch range
  • Right drag empty timing lane: Clear timing selection and set punch range (supports “Clips” snap mode)
  • Middle click on tempo lane: Add tempo point (supports “Clips” snap mode)
  • Middle click on time-signature lane: Add time-signature point (supports “Clips” snap mode)
  • Middle drag an existing punch-range edge: Adjust punch start or end (supports “Clips” snap mode)
  • Mouse wheel over left control zone on tempo row: Adjust tempo
  • Mouse wheel over left control zone on time-signature row, left half: Adjust numerator
  • Mouse wheel over left control zone on time-signature row, right half: Adjust denominator

Piano Roll (Mouse)

  • Click/drag notes: Select and move notes
  • Drag note edge: Resize note start/end
  • Left drag empty area: Box-select notes
  • Right drag empty area: Create notes
  • Middle click note: Delete note
  • Mouse wheel over note: Adjust note velocity
  • Controller lanes: Left drag adjusts a point/value, middle click/drag erases, right drag draws
  • Mouse wheel over controller event: Adjust controller value
  • SysEx lane: Left drag moves SysEx event, double click opens SysEx editor

Pitch Correction

  • Right click audio clip -> Pitch Correction: Open the pitch-correction editor when transport is stopped
  • Left click pitch segment: Select one segment
  • Shift+Left click pitch segment: Add/remove a segment from the selection
  • Left drag selected pitch segment(s): Retarget one or many selected segments vertically
  • Left drag empty area: Box-select pitch segments
  • Shift+Left drag empty area: Add box-selected segments to the current selection
  • Double click pitch segment: Snap the clicked segment, or the current selected group, to the nearest semitone
  • Ctrl+A in pitch-correction view: Select all segments
  • Ctrl+Z / Ctrl+Shift+Z / Ctrl+Y in pitch-correction view: Undo/redo local pitch-segment edits

Plugin Graph

  • Drag plugin node: Move plugin node in graph
  • Drag from port to port: Create audio or MIDI connection
  • Select connection + delete: Remove selected graph connection
  • Select plugin + delete: Remove selected plugin instance

Shortcuts Pane

The in-app Shortcuts pane can be shown or hidden with S or via View → Shortcuts. It displays context-sensitive shortcuts for the active view (workspace, piano roll, pitch correction, or plugin graph) and highlights the relevant entry when hovering a widget that has a shortcut hint.

Clips Pane

The in-app Clips pane can be shown or hidden with C or via View → Clips. It lists every audio and MIDI clip in the session, grouped by track. Clips belonging to the currently selected track(s) are highlighted in the pane; this highlighting is only in the Clips pane and does not change the main editor or timeline.

Deleting a clip from a track does not discard it: the clip moves to the “Unused” section at the bottom of the Clips pane and stays part of the session. A clip counts as unused only when it is used in neither the edit view (no track holds it) nor the live view (no session slot references it) — a clip removed from the timeline but still assigned to a session slot keeps playing in the live view and does not appear in the Unused section until the slot is cleared. Clips in the pane can be dragged onto a track in the editor (placed at the drop position, using the current snap mode): dragging a track’s clip copies it with a fresh id, while dragging an unused clip moves it out of the Unused section. Pane clips can also be dragged directly onto a session slot in the live view to assign them to that slot. Re-adding an unused clip to a track via undo also removes it from the Unused section. File → Delete unused files permanently removes an unused clip — from the pane and from the session — and deletes its media, but only when no session slot of the current branch references the clip and no other branch/session file still references its media.

maolan-cli

Maolan also ships a maolan-cli binary that can play, pause, stop, send panic, and export the current session.

Notes

  • Current keyboard handling is Ctrl-based in code paths (including on macOS builds).
  • Some actions are context-dependent (current view/tool/selection state).
  • The Q / H / G piano shortcuts act on the current piano-roll note selection.
  • In pitch-correction view, undo/redo applies to the local correction editor instead of global engine history until you leave the view or press Apply.
  • Audio clip stretching is rendered in-process with the timestretch library.
  • The main editor zoom is geometric rather than linear, so equal slider movement produces equal zoom-ratio changes.
  • Group is only enabled when the current selection contains two or more non-group clips from the same track and clip type.
  • Split is blocked for grouped clips; ungroup first.
  • Per-clip plugin graphs are audio-only and are currently built for Unix non-macOS code paths.