We currently use code-blocks for jTab markup. If (when) we add lilypond or ABCnotation support, how should a code-block declare which system it's intended for?

  • 1
    If we can't do an automatic distinction, Lilypond also seems to do tabbed stuff, so maybe we should switch to Lilypond for both functions. I've never used either much, so am not in the best position to see how they could be parsed, but it would be a shame if it wasn't automatic.
    – Chris
    Oct 13, 2014 at 18:40

3 Answers 3


I suggest the following syntax (which is basically the same as StackOverflow's syntax highlighting syntax):

<!-- notation: notation-name -->

    Notation goes here

For instance, Lilypond code would look like this in the markup:

<!-- notation: lilypond -->

      \time 2/4
      \clef bass
      c4 c g g a a g f f e e d d c

And JTab would look like this in the markup:

<!-- notation: jtab -->

    $6.7  $6.10  $4.7  $4.9  $4.9  $4.12  $2.10  $2.12 

There's also the none option if you actually need a normal code block for whatever reason:

<!-- notation: none -->

    function moreTimeForMusicSE {
        sudo apt-get update

The default is none if no notation is used (otherwise answers like this will break). Do you think this syntax is clear and concise, or would another solution be better?

  • What is nice about this format is that it's clear enough that it could be enabled in other forums where it might be useful; the drawback is that by still relying on indentation to delimit scoreblocks it becomes really time-consuming to paste in notation (Lilypond, MusicXML) created elsewhere. Oct 19, 2014 at 0:13
  • 2
    @MichaelScottCuthbert After pasting, while it's still highlighted, hit ctrl-K. Or the button that looks like {}. It will add the indentation to each line. Oct 22, 2014 at 8:54
  • THANKS! Did not know that. Oct 25, 2014 at 17:55

We kind of already have a similar problem -- jTab likes to try to parse stuff that isn't even jTab. A good suggestion from that linked question was to conditionally activate jTab only in questions with the tag.

I think ideally there would be a more robust solution like --Start Lilypond-- / --Start jTab-- tags, similar to what SO is doing now with their version of built-in jsfiddle.


I would be in favor of a specific markup that indicates the markup language if it's not SO's standard markdown. The reason for this is that using things like tags is confusing for user's and can result in problems such as what @NReilingh mentions in his answer.

I would also like to see some sort of link above the edit box that is a shortcut to the markup vocabulary and syntax of jTab, Lilypond and/or ABC. Probably when you click on the "?" in the upper right corner of the edit box.

Both of these suggestions would ease the learning curve for new users and the aggravation of "Where/How do I do that thing?" that comes up with experienced users who haven't posted recently.

Not the answer you're looking for? Browse other questions tagged .