mei-friend Cheat Sheet

Navigating through notation

Select next note, rest, or mRest
Select previous note, rest, or mRest
Select note, rest, or mRest one layer up
Select note, rest, or mRest one layer down
Select note, rest, mRest in next measure
Selected note, rest, mRest in previous measure
Go to next page (or )
Go to previous page (or )
Go to first page (or END)
Go to last page (or HOME)

Zooming/Display

+, Zoom notation in/out (or Mouse wheel)
0, 5 Zoom to 100%, 50%, respectively

Selecting elements

click Select multiple notes by mouse click
click Select the chord when clicking onto a note

Manipulating elements

X Invert att.placement (dir, dynam, trill, tuplet number, ...), att.curvature (slur, tie, ...), att.stems (note, chord) from above to below or below to above for selected element
X Set att.placement (dir, dynam, trill, ...) to @place="between" and determine staff attribute from staff group of selected element (has to contain exactly two staves)
V Insert vertical group (@vgrp) attribute to selected elements

Moving elements

Move note, rest, mRest, multiRest one tone upwards
Move note, rest, mRest, multiRest one tone downwards
Move note, rest, mRest, multiRest one octave upwards
Move note, rest, mRest, multiRest one octave downwards
Move note, rest, mRest, multiRest one staff downwards
Move note, rest, mRest, multiRest one staff upwards

Deleting elements

BACKSPACE or DELETE Delete control elements, clef change, accid, artic, beam

MEI encoding manipulation

Renumber measures (counts successive measures with @metcon="false" as one, counts multiple endings with same numbering)
R Test renumbering (output to console)
R Execute renumbering
C Remove @accid.ges when @accid is present

Inserting elements

Key bindings insert elements without a placement attribute. To insert or invert the placement, use X shortcut after inserting the element. The elements are inserted using @startid and @endid attributes.

T Insert tempo at selected note(s)
I Insert directive at selected note(s)
D Insert dynamics at selected note, with extender if two notes selected
S Insert slur starting/ending on selected notes
T Insert tie starting/ending on selected notes
H Insert crescendo hairpin starting/ending at selected notes
H Insert diminuendo hairpin starting/ending at selected notes
B Insert beam on selected notes/chords sharing identical parent
B Insert beamSpan element on selected elements
U Surround selected elements with a supplied element; responsibility attribute to be selected in settings
U Make artic attribute a separate element and surround it with a supplied element; responsibility attribute to be selected in settings
U Make accid attribute a separate element and surround it with a supplied element; responsibility attribute to be selected in settings
A Insert arpeggio for selected note(s) (default with @order="up"; with CTRL: order="down")
F Insert fermata at selected note
G Insert glissando starting at first, ending at last selected note
P Insert pedal down for (first) selected note (and pedal up for last selected note)
P Insert pedal up for selected note
L Insert trill at selected note(s)
N Insert turn at selected note(s) (with SHIFT: lower form)
M Insert mordent at selected note(s) (with SHIFT: upper form)
O Insert octave shift above (8va), spanning two selected notes/chords (below with CTRL)
O Insert octave shift above (15va), spanning two selected notes/chords (below with CTRL)
G Insert G clef before selected element
G Insert G clef after selected element
F Insert F clef before selected element
F Insert F clef after selected element
C Insert C clef before selected element

Toggle articulation

S Toggle staccato on note/chord
V Toggle accent on note/chord
E Toggle tenuto on note/chord
O Toggle marcato on note/chord
I Toggle staccatissimo on note/chord
C Toggle spiccato on note/chord

MIDI Playback

SPACE Play/pause (opens player if required)
ESC Stop playback and hide player

URL Parameters

mei-friend may be called with several parameters passed through the URL in the form of https://mei-friend.mdw.ac.at/?file=fileURL&select=beamId.

file=fileURL Open specified file URL
scale=number Specify scaling of notation (default: 55; min: 10; max: 200)
breaks=none|line|encoded|auto Specify breaks option of Verovio
select=n1,n2,n3&
select=ch1&
select=slur1
Specify selected elements (pass multiple comma-separated xml:ids and/or repeat select parameter); notation and encoding will page-flip and scroll to first selected element; overrides page parameter
page=number Specify a page number to be displayed (depends on breaks settings; overridden by select, see above)
speed=true|false Set speed mode
fork=true|false If a https://raw.githubusercontent.com URL is supplied via the file parameter (see above), direct the user to fork the corresponding repository and open their forked version (logging them in first if necessary)
autoValidate=true|false Activate (default) or deactivate automatic validation upon MEI text input
notationOrientation=top|right|bottom|left Set relative position of notation in window
notationProportion=0.5–0.95 Size of notation panel relative to window
facsimileOrientation=top|right|bottom|left Set relative position of facsimile relative to notation panel
facsimileProportion=0.5–0.95 Size of facsimile panel relative to notation panel
Example:

Schumann piece with several elements selected in the middle

Beethoven Op.76 containing facsimile elements with measure-wise zones