Musescore 2 Slides, Hammerons and Pulloffs (SHP) Musescore 2 needs a few tweaks in the way it handles slides, hammerons and pulloffs. The most important thing is to track slides, hammerons and pulloffs like bends -- they will have there own property pages some day. Terminology ----------- SHP stands for slides, hammerons and pulloffs. A 'Slide' and 'Legato Slide' are two different things in display and playback. A 'Slide' is picked twice and 'Legato Slide' is picked once. Most people use the term 'Slide' for both forms, which can be confusing. For example, banjo players use Legato Slides 99.9% of the time and you would be hard pressed to find any banjo player who uses the term Legato Slide. The little arc that connects ties and SHP is often called a 'Slur' and gets confused with the slur from music notation which has a different definition. I will refer to the little arc between SHP as an 'arc' and try not to use the term slur. A Slide uses a 'Glissando' to connect the two notes -- a tilted line. The line will tilt down if the second note of the slide is lower and vice versa. Although glissando can be straight or wavy, in tablature the straight line is used consistently. Requirements ------------ 1. Slide, Legato Slide, Hammeron and Pulloff properties need to be tracked for notes and persisted to output files like mscz and xml. Musescore should be able to read an XML input file and write it back without losing the SHP information. 2. Need a way in the UI to set SHP. The current approach used for bends would work perfectly. Need 4 new buttons on the 'Articulations' palette next to the 'Bend' button: Slide, Legato Slide, Hammeron and Pulloff. 3. The code that draws slurs between SHP notes needs to *always* connect the 2 related notes of a SHP. Currently, the slurs can connect unrelated notes if the first or second note is in a chord. This is because the end point of the 'arc' is currently set to the top of the chord. In tablature, a SHP 'arc' will always be horizontal like a tie. 4. When a user uses the 'Articulation Palette' to create a Slide or Legato Slide, a glissando should be created automatically. There should never be a reason to add a Glissando directly for a SHP. In addition, a 'Legato Slide', Hammeron and Pulloff should automatically create the connecting 'arc'. 5. Future: Add in a propeties dialog for Slides, Pulloffs and Hammerons. Support optional text markup for the little 's', 'p' and 'h'. Text markup will require location, alignment, font, etc. Provide a default style for SHP that can be altered. Add some playback options for SHP like how long to hold on to the first note -- a slide sounds better if the first note is held much longer than the rest. Irish fiddle players use a flavor of hammeron/pulloff that doesn't fully sound the second note -- the string is just touched or flicked. In other words, there will be all sort of options for SHP in the future so setting things up today to support a properties page would be a very good idea. Display ------- The following web page explains slides, hammerons and pulloffs for guitar/banjo tablature. If there is a standard for this stuff, this is it: http://www.songsterr.com/a/wa/howToReadTab Hammerons and pulloffs have been displayed consistently over the years in books and in music software using a horizontal 'arc' between the two related notes. The 'arc' is almost always an 'up' arc (i.e. shaped like a hill). Slides and Legato Slides have been, and still are, displayed inconsistently. However, the approach used in the above web page is the current standard that should be used. The notes of a 'Slide' are connected with a glissando. The notes of a 'Legato Slide' are connected with an 'arc' and a glissando. Some modern popular tab programs (e.g. tabledit) use a right arrow to denote a slide. This is non-standard. Most tablature systems also markup SHP with a little 's', 'p' or 'h' most commonly drawn halfway between the two notes just above the 'arc' or 'arrow'. These programs let you change the text to anything you want (e.g. 'sl', 'po'). Some tab systems give you an option to place this text below the staff, usually under the stems and beams, or just to the right/left of the note stem. Some instruments, like lute, require special symbols to denote SHP which may require some special handling. If SHP are tracked in Musescore, a properties page could be used to handle the optional SHP text -- similar to the Bend property page. The SHP text option is not a show stopper if it is not supported. MusicXml -------- MusicXml distinguishes between SHP by providing markup to flag the start note and end note. XML markup for slides may be 'GLISSANDO" or 'SLIDE', the first defaults to a wavy line and the second defaults to a straight line. The other XML markup is 'HAMMER-ON' and 'PULL-OFF'. The following is the typical markup for the two notes of SHP: ---- in note 1 ---- in note 2 The SLIDE, GLISSANDO, HAMMER-ON and PULL-OFF markup is usually combined with SLUR markup. For example, a 'Legato Slide' would use SLIDE and SLUR markup, and a 'Slide' would only use SLIDE. Hammers and pulloffs would use HAMMER-ON/PULL-OFF and SLUR. Lilypond -------- Lilypond uses 'glissando' and slur '()' for SHP. It is best explained with examples using an 'a' and 'b' note: Slide: a/glissando b Legato Slide: a/glissando( b) Hammeron: a( b) Pulloff: a( b) So Lilypond has no concept of SHP and focuses entirely on the graphics. Dealing with chords and SHP in Lilypond is a nightmare -- you need to do the SHP in one voice and the chord notes in an other voice to get the arcs to connect the notes properly. This works OK until you actually use Voices for other things. Lilypond desperately needs /slide, /hammeron and /pulloff. Sibilius -------- I know very little about Sibilius, however I downloaded the free trial and loaded in some MusicXML files that had a lot of SHP and here is what happened: Sibilius does not seem to track Hammerons and Pulloffs. Instead it just creates some graphics between two notes. A pulloff is marked with an arc and the letter 'P'. A hammeron is marked with an arc and the letter 'H'. For both, the text is huge and placed in a strange place that you will need to move. Sibilius also seems to ignor XML slides because the glissando does not get added on import. Musescore does create the glissando properly for the same XML file. In addition, Sibilius suffers from the problem of drawing slurs from notes to the top of chords, just like Lilypond and Musescore. Tabledit -------- Tabledit is a software application that is very popular for banjo and guitar tablature. Tabledit treats SHP as note properties. So a note can be marked as a Slide, Hammeron or Pulloff. The graphics that happen as a result can be controlled from styles. So if a note is a hammeron, there is no need to mess around with adding arcs and a little text 'h'. A hammeron is drawn according to the hammeron style. Same with pulloffs and slides. Tablature programs do not have the problem of drawing arcs from notes to top of chords because they treat a SHP as a relationship between two notes on the same string (like a tie). Conclusion ---------- The user should never need to draw an arc or add a glissando for SHP. They should simply add a Slide, Pulloff or Hammeron and the arcs and glissando should happen automatically. This way, future versions of Musescore could support Styles for SHP. All arcs and lines should connect the two related notes regardless of whether a note is in a chord. In the future, SHP will have lots of properties, none of which are must-have requirements today.