| Action | Shortcut | Notes |
|---|---|---|
| Toggle note input mode | N | |
| Set duration: 64th | 1 | |
| Set duration: 32nd | 2 | |
| Set duration: 16th | 3 | |
| Set duration: eighth | 4 | |
| Set duration: quarter | 5 | |
| Set duration: half | 6 | |
| Set duration: whole | 7 | |
| Set duration: double whole | 8 | |
| Set duration: longa | 9 | |
| Toggle dot | . | |
| Enter rest of selected duration | 0 | |
| Add tied note | T | |
| Enter pitch | A–G | Closest pitch to previous note entered |
| Toggle flat / natural / sharp | - / = / + | Applies to next note entered |
| Halve selected duration | Shift+Q | Includes dotted values |
| Double selected duration | Shift+W | Includes dotted values |
| Enter tuplet (duplet…nonuplet) | Ctrl+2 … Ctrl+9 |
| Action | Shortcut | Notes |
|---|---|---|
| Move pitch by semitone | Up / Down arrow | |
| Move pitch up/down an octave | Ctrl+Up / Ctrl+Down | Verified against MuseScore's own handbook — this is the one that's actually correct (not Alt+Shift, see below) |
| Move pitch diatonically (by scale step, staying in key) | Alt+Shift+Up / Alt+Shift+Down | |
| Change enharmonic spelling | J |
| Action | Shortcut | Notes |
|---|---|---|
| Switch to voice 1 / 2 / 3 / 4 | Ctrl+Alt+1 / 2 / 3 / 4 | Color-coded: 1=blue, 2=green, 3=orange, 4=purple |
| Move selected note(s) to another voice | Ctrl+Alt+1–4 | Fits notes into destination voice as space allows |
| Paste without overwriting other voices | View → Selection Filter, uncheck voices to protect, then paste | MuseScore always pastes into the same voice notes were copied from — no direct “paste into voice X” command |
| Action | Shortcut | Notes |
|---|---|---|
| Flip direction | X | Universal flip — works on ties, slurs, stems, etc. |
| Delete note (leaves a rest) | Delete | |
| Undo | Ctrl+Z | Virtually unlimited history |
| Go to a specific measure | Ctrl+F | Opens “Go to measure” box |
| Action | How | Notes |
|---|---|---|
| Insert N measures at a point | Add → Measures → Insert Measures (or [ctrl][ins]) | Type the count, inserts before/after selection |
| Delete selected measures | select measures then [ctrl][del] | |
| Collapse empty measures into a multimeasure rest | Ctrl+Shift+M | 4.4+; plain M on older 4.x |
| Multimeasure rest settings | Format → Style → Rests | Tab location has moved across 4.x versions — if not under “Rests,” check what tabs are actually in your Style dialog |
| Add a title/text frame mid-score | Select first measure of the section → Add → Frames → Insert Vertical Frame, then select the frame → Add → Text → Title | A vertical frame can hold multiple text blocks (Title + Composer, etc.) — a plain text frame holds only one |
| Action | How | Notes |
|---|---|---|
| Open Instruments panel | Press I, or the Layout tab | press F7 if not visible |
| Add instrument | Instruments panel → Add → search/select → Add | |
| Duplicate/copy an instrument within a score | No built-in feature | Workaround: add a new instrument of the same type, then Ctrl+A / Ctrl+C the source instrument's part, click first measure of new instrument, Ctrl+V. Doesn't carry custom staff text/formatting. |
| Action | Shortcut | Notes |
|---|---|---|
| Play / stop | Space | |
| Play only a MIDI keyboard's live sound (no note entry) | Make sure Note Input (N) is off | If notes keep entering anyway, check Edit → Preferences → Note Input for a MIDI auto-start setting |
| Export audio | File → Export → Audio | mp3/wav |
| Export MIDI | File → Export → MIDI | For bringing into a DAW |
| Isolate just the metronome click as audio | Mixer (F10) → Solo the Metronome channel → File → Export → Audio | export as WAV, not mp3, to avoid encoder padding/artifacts if you need to analyze click timing precisely |
| Action | How | Notes |
|---|---|---|
| Pizzicato → arco change | Apply “arco” from the Text palette (same place “pizz.” lives) | This is a “Playing Technique” annotation, not plain text — it actually changes MIDI/audio playback. Typing “arco” via Ctrl+T is just visual text and does nothing to sound. Check the status bar when a technique text is selected to confirm which kind it is. |
| Swing feel | Add “Swing” marking — filed under the Tempo palette in MS4, not Text (a commonly-flagged confusing placement) | Right-click the inserted Swing text → System Text Properties → Swing Settings tab → set note value + ratio. Add another marking and set it to “Off” to return to straight. Don't combine with the separate Format → Style → Score → Swing Settings global option — pick one method. |
| Issue | Explanation |
|---|---|
| Flatpak sandboxing hides real file paths | Writing to /tmp from the MuseScore flatpak actually lands in ~/.var/app/org.musescore.MuseScore/tmp, not the real /tmp. Fix: flatpak override --user org.musescore.MuseScore --filesystem=/tmp, or just save to ~/Documents instead. |
MuseScore 4 has no built-in Album/Join feature (it existed in MS2/3, not restored as of testing).
Community PowerShell script — combines full .mscz files sequentially (concatenates the raw staff XML from each score, inserting a barline + section/page break between each), rather than doing a manual copy/paste per instrument:
.ps1 because the forum blocks script uploads directly — rename back to .ps1 after downloading)pwsh) unmodified — it's pure zip/XML text manipulation via built-in cmdlets, no Windows-only APIs and no dependency on the mscore binary itselfpwsh MusescoreCombine.ps1 file1.mscz file2.mscz file3.mscz ... — order = argument order, not filename or directory order. First file's header/style/instrument list becomes the whole merged score's. Output is MergedSore.mscz (script's own naming) in whatever directory you ran the command from.
Installing PowerShell (pwsh) on Ubuntu 24.04 — standalone .deb, no need to add the Microsoft apt repo for a one-off task:
POWERSHELL_VERSION=$(curl -s "https://api.github.com/repos/PowerShell/PowerShell/releases/latest" | grep -Po '"tag_name": "v\K[0-9.]+') wget -qO powershell.deb "https://github.com/PowerShell/PowerShell/releases/latest/download/powershell_${POWERSHELL_VERSION}-1.deb_amd64.deb" sudo apt install -y ./powershell.deb
If apt complains about _apt sandbox permission denied on the local file, move the .deb somewhere _apt can read first: sudo cp powershell.deb /tmp/ && sudo apt install -y /tmp/powershell.deb. This usually means your home directory's permissions are blocking the _apt user from traversing into it.