ly.lex package

Module contents

This module is built on top of slexer and can parse LilyPond input and other formats.

The base functionality is delegated to modules with an underscore in this package. The modules describing parsing modes (filetypes) are the files without underscore.

Currently available are modes for lilypond, latex, html, texinfo, scheme, and docbook.

The ‘underscored’ modules should not be imported in application code. What is needed from them is available here, in the ly.lex namespace.

If you add new files for parsing other file types, you should add them in _mode.py. The _token.py module contains base Token types and Token mixin classes.

The State, Parser, FallthroughParser and Fridge classes from slexer are all slightly extended here,

Usage:

>>> import ly.lex
>>> txt = r"\relative c' { c d e f-^ g }"
>>> s = ly.lex.state("lilypond")
>>> for t in s.tokens(txt):
...     print(t, t.__class__.__name__)
\relative Command
  Space
c Name
' Unparsed
  Space
{ SequentialStart
  Space
c Note
  Space
d Note
  Space
e Note
  Space
f Note
- Direction
^ ScriptAbbreviation
  Space
g Note
  Space
} SequentialEnd

A State() is used to parse text. The text is given to the tokens() method, that returns an iterator iterating over Token instances as they are found. Each token has a ‘pos’ and an ‘end’ attribute describing its position in the original string.

While iterating over the tokens(), the State maintains information about what kind of text is parsed. (So don’t iterate over more than one call to tokens() of the same State object at the same time.)

Use ly.lex.state(“name”) to get a state for a specific mode to start parsing with. If you don’t know the type of text, you can use ly.lex.guessState(text), where text is the text you want to parse. A quick heuristic is then used to determine the type of the text.

See for more information the documentation of the slexer module.

class ly.lex.State(initialParserClass)[source]

Bases: ly.slexer.State

endArgument()[source]

Decrease argcount and leave the parser if it would reach 0.

mode()[source]

Returns the mode attribute of the first parser (from current parser) that has it.

class ly.lex.Parser(argcount=None)[source]

Bases: ly.slexer.Parser

argcount = 0
default

alias of Unparsed

freeze()[source]
mode = None
re_flags = 40
class ly.lex.FallthroughParser(argcount=None)[source]

Bases: ly.lex.Parser, ly.slexer.FallthroughParser

class ly.lex.Fridge(stateClass=<class 'ly.lex.State'>)[source]

Bases: ly.slexer.Fridge

ly.lex.guessMode(text)[source]

Tries to guess the type of the input text, using a quite fast heuristic.

Returns one of the strings also present as key in the modes dictionary.

ly.lex.state(mode)[source]

Returns a State instance for the given mode.

ly.lex.guessState(text)[source]

Returns a State instance, guessing the type of text.

class ly.lex.Token[source]

Bases: ly.slexer.Token

class ly.lex.Unparsed[source]

Bases: ly.lex._token.Token

Represents an unparsed piece of input text.

class ly.lex.Space[source]

Bases: ly.lex._token.Token

A token containing whitespace.

rx = u'\\s+'
class ly.lex.Newline[source]

Bases: ly.lex._token.Space

A token that is a single newline.

rx = u'\\n'
class ly.lex.Comment[source]

Bases: ly.lex._token.Token

Base class for tokens that belong to a comment.

class ly.lex.LineComment[source]

Bases: ly.lex._token.Comment

Base class for items that are a whole line comment.

class ly.lex.BlockComment[source]

Bases: ly.lex._token.Comment

Base class for tokens that belong to a block/multiline comment.

class ly.lex.BlockCommentStart[source]

Bases: ly.lex._token.BlockComment

Base class for tokens that start a block/multiline comment.

class ly.lex.BlockCommentEnd[source]

Bases: ly.lex._token.BlockComment

Base class for tokens that end a block/multiline comment.

class ly.lex.String[source]

Bases: ly.lex._token.Token

Base class for tokens that belong to a quote-delimited string.

class ly.lex.StringStart[source]

Bases: ly.lex._token.String

Base class for tokens that start a quote-delimited string.

class ly.lex.StringEnd[source]

Bases: ly.lex._token.String

Base class for tokens that end a quote-delimited string.

class ly.lex.Character[source]

Bases: ly.lex._token.Token

Base class for tokens that are an (escaped) character.

class ly.lex.Numeric[source]

Bases: ly.lex._token.Token

Base class for tokens that are a numerical value.

class ly.lex.Error[source]

Bases: ly.lex._token.Token

Base class for tokens that represent erroneous input.

class ly.lex.MatchStart[source]

Bases: object

Mixin class for tokens that have a matching token forward in the text.

The matchname attribute should give a unique name.

matchname = u''
class ly.lex.MatchEnd[source]

Bases: object

Mixin class for tokens that have a matching token backward in the text.

The matchname attribute should give a unique name.

matchname = u''
class ly.lex.Indent[source]

Bases: object

Mixin class for tokens that have the text on the next line indent more.

class ly.lex.Dedent[source]

Bases: object

Mixin class for tokens that have the text on the next line indent less.

Submodules

ly.lex.docbook module

Parses and tokenizes DocBook input, recognizing LilyPond in DocBook.

class ly.lex.docbook.ParseDocBook(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>,)
mode = u'docbook'
pattern = <_sre.SRE_Pattern object>

ly.lex.html module

Parses and tokenizes HTML input, recognizing LilyPond in HTML.

class ly.lex.html.AttrName[source]

Bases: ly.lex._token.Token

rx = u'\\w+([-_:]\\w+)?'
class ly.lex.html.Comment[source]

Bases: ly.lex._token.Comment

class ly.lex.html.CommentEnd[source]

Bases: ly.lex.html.Comment, ly.lex._token.Leaver, ly.lex._token.BlockCommentEnd

rx = u'-->'
class ly.lex.html.CommentStart[source]

Bases: ly.lex.html.Comment, ly.lex._token.BlockCommentStart

rx = u'<!--'
update_state(state)[source]
class ly.lex.html.EntityRef[source]

Bases: ly.lex._token.Character

rx = u'\\&(#\\d+|#[xX][0-9A-Fa-f]+|[A-Za-z_:][\\w.:_-]*);'
class ly.lex.html.EqualSign[source]

Bases: ly.lex._token.Token

rx = u'='
update_state(state)[source]
class ly.lex.html.LilyPondCloseTag[source]

Bases: ly.lex.html.LilyPondTag, ly.lex._token.Leaver

rx = u'</lilypond>'
class ly.lex.html.LilyPondFileTag[source]

Bases: ly.lex.html.LilyPondTag

rx = u'</?lilypondfile\\b'
update_state(state)[source]
class ly.lex.html.LilyPondFileTagEnd[source]

Bases: ly.lex.html.LilyPondTag, ly.lex._token.Leaver

rx = u'/?>'
class ly.lex.html.LilyPondInlineTag[source]

Bases: ly.lex.html.LilyPondTag

rx = u'<lilypond\\b'
update_state(state)[source]
class ly.lex.html.LilyPondInlineTagEnd[source]

Bases: ly.lex.html.LilyPondTag, ly.lex._token.Leaver

rx = u'/?>'
class ly.lex.html.LilyPondTag[source]

Bases: ly.lex.html.Tag

class ly.lex.html.LilyPondTagEnd[source]

Bases: ly.lex.html.LilyPondTag

rx = u'>'
update_state(state)[source]
class ly.lex.html.LilyPondVersionTag[source]

Bases: ly.lex.html.LilyPondTag

rx = u'<lilypondversion/?>'
class ly.lex.html.ParseAttr(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.html.TagEnd'>, <class 'ly.lex.html.AttrName'>, <class 'ly.lex.html.EqualSign'>, <class 'ly.lex.html.StringDQStart'>, <class 'ly.lex.html.StringSQStart'>)
pattern = <_sre.SRE_Pattern object at 0x25d20d0>
class ly.lex.html.ParseComment(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of Comment

items = (<class 'ly.lex.html.CommentEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.html.ParseHTML(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.html.LilyPondVersionTag'>, <class 'ly.lex.html.LilyPondFileTag'>, <class 'ly.lex.html.LilyPondInlineTag'>, <class 'ly.lex.html.CommentStart'>, <class 'ly.lex.html.TagStart'>, <class 'ly.lex.html.EntityRef'>)
mode = u'html'
pattern = <_sre.SRE_Pattern object at 0x2686360>
class ly.lex.html.ParseLilyPond(argcount=None)[source]

Bases: ly.lex.lilypond.ParseGlobal

items = (<class 'ly.lex.html.LilyPondCloseTag'>, <class 'ly.lex.lilypond.Book'>, <class 'ly.lex.lilypond.BookPart'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x24fa710>
class ly.lex.html.ParseLilyPondAttr(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.html.AttrName'>, <class 'ly.lex.html.EqualSign'>, <class 'ly.lex.html.StringDQStart'>, <class 'ly.lex.html.StringSQStart'>, <class 'ly.lex.html.LilyPondTagEnd'>, <class 'ly.lex.html.SemiColon'>)
pattern = <_sre.SRE_Pattern object at 0x25d8010>
class ly.lex.html.ParseLilyPondFileOptions(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.html.AttrName'>, <class 'ly.lex.html.EqualSign'>, <class 'ly.lex.html.StringDQStart'>, <class 'ly.lex.html.StringSQStart'>, <class 'ly.lex.html.LilyPondFileTagEnd'>)
pattern = <_sre.SRE_Pattern object at 0x25ce280>
class ly.lex.html.ParseLilyPondInline(argcount=None)[source]

Bases: ly.lex.lilypond.ParseMusic

items = (<class 'ly.lex.html.LilyPondInlineTagEnd'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Octave'>, <class 'ly.lex.lilypond.OctaveCheck'>, <class 'ly.lex.lilypond.AccidentalCautionary'>, <class 'ly.lex.lilypond.AccidentalReminder'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.TremoloColon'>)
pattern = <_sre.SRE_Pattern object at 0x1e3f2a0>
class ly.lex.html.ParseStringDQ(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of String

items = (<class 'ly.lex.html.StringDQEnd'>, <class 'ly.lex.html.EntityRef'>)
pattern = <_sre.SRE_Pattern object at 0x1f6a0d0>
class ly.lex.html.ParseStringSQ(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of String

items = (<class 'ly.lex.html.StringSQEnd'>, <class 'ly.lex.html.EntityRef'>)
pattern = <_sre.SRE_Pattern object at 0x1ab8a70>
class ly.lex.html.ParseValue(argcount=None)[source]

Bases: ly.lex.FallthroughParser

Finds a value or drops back.

fallthrough(state)[source]
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.html.Value'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.html.SemiColon[source]

Bases: ly.lex._token.Token

rx = u':'
update_state(state)[source]
class ly.lex.html.String[source]

Bases: ly.lex._token.String

class ly.lex.html.StringDQEnd[source]

Bases: ly.lex.html.String, ly.lex._token.StringEnd, ly.lex._token.Leaver

rx = u'"'
class ly.lex.html.StringDQStart[source]

Bases: ly.lex.html.String, ly.lex._token.StringStart

rx = u'"'
update_state(state)[source]
class ly.lex.html.StringSQEnd[source]

Bases: ly.lex.html.String, ly.lex._token.StringEnd, ly.lex._token.Leaver

rx = u"'"
class ly.lex.html.StringSQStart[source]

Bases: ly.lex.html.String, ly.lex._token.StringStart

rx = u"'"
update_state(state)[source]
class ly.lex.html.Tag[source]

Bases: ly.lex._token.Token

class ly.lex.html.TagEnd[source]

Bases: ly.lex.html.Tag, ly.lex._token.Leaver

rx = u'/?>'
class ly.lex.html.TagStart[source]

Bases: ly.lex.html.Tag

rx = u'</?\\w[-_:\\w]*\\b'
update_state(state)[source]
class ly.lex.html.Value[source]

Bases: ly.lex._token.Leaver

rx = u'\\w+'

ly.lex.latex module

Parses and tokenizes LaTeX input, recognizing LilyPond in LaTeX.

class ly.lex.latex.ParseLaTeX(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>,)
mode = u'latex'
pattern = <_sre.SRE_Pattern object>

ly.lex.lilypond module

Parses and tokenizes LilyPond input.

class ly.lex.lilypond.Accidental[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.AccidentalCautionary[source]

Bases: ly.lex.lilypond.Accidental

rx = u'\\?'
class ly.lex.lilypond.AccidentalReminder[source]

Bases: ly.lex.lilypond.Accidental

rx = u'!'
class ly.lex.lilypond.AccidentalStyle[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\accidentalStyle\\b'
update_state(state)[source]
class ly.lex.lilypond.AccidentalStyleSpecifier[source]

Bases: ly.lex.lilypond.Specifier

rx = u'\\b(default|voice|modern|modern-cautionary|modern-voice|modern-voice-cautionary|piano|piano-cautionary|neo-modern|neo-modern-cautionary|neo-modern-voice|neo-modern-voice-cautionary|dodecaphonic|teaching|no-reset|forget)(?!-?\\w)'
class ly.lex.lilypond.AlterBroken[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\alterBroken\\b'
update_state(state)[source]
class ly.lex.lilypond.Articulation[source]

Bases: ly.lex._token.Token

Base class for articulation things.

class ly.lex.lilypond.ArticulationCommand[source]

Bases: ly.lex.lilypond.Articulation, ly.lex.lilypond.IdentifierRef

classmethod test_match(match)[source]
class ly.lex.lilypond.BackSlashedContextName[source]

Bases: ly.lex.lilypond.ContextName

rx = u'\\\\(ChoirStaff|ChordNames|CueVoice|Devnull|DrumStaff|DrumVoice|Dynamics|FiguredBass|FretBoards|Global|GrandStaff|GregorianTranscriptionStaff|GregorianTranscriptionVoice|KievanStaff|KievanVoice|Lyrics|MensuralStaff|MensuralVoice|NoteNames|NullVoice|PetrucciStaff|PetrucciVoice|PianoStaff|RhythmicStaff|Score|Staff|StaffGroup|TabStaff|TabVoice|Timing|VaticanaStaff|VaticanaVoice|Voice)\\b'
class ly.lex.lilypond.Beam[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.BeamEnd[source]

Bases: ly.lex.lilypond.Beam, ly.lex._token.MatchEnd

matchname = u'beam'
rx = u'\\]'
class ly.lex.lilypond.BeamStart[source]

Bases: ly.lex.lilypond.Beam, ly.lex._token.MatchStart

matchname = u'beam'
rx = u'\\['
class ly.lex.lilypond.BlockComment[source]

Bases: ly.lex.lilypond.Comment, ly.lex._token.BlockComment

class ly.lex.lilypond.BlockCommentEnd[source]

Bases: ly.lex.lilypond.Comment, ly.lex._token.BlockCommentEnd, ly.lex._token.Leaver

rx = u'%}'
class ly.lex.lilypond.BlockCommentStart[source]

Bases: ly.lex.lilypond.Comment, ly.lex._token.BlockCommentStart

rx = u'%{'
update_state(state)[source]
class ly.lex.lilypond.Book[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\book\\b'
update_state(state)[source]
class ly.lex.lilypond.BookPart[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\bookpart\\b'
update_state(state)[source]
class ly.lex.lilypond.Change[source]

Bases: ly.lex.lilypond.Translator

rx = u'\\\\change\\b'
class ly.lex.lilypond.Chord[source]

Bases: ly.lex._token.Token

Base class for Chord delimiters.

class ly.lex.lilypond.ChordEnd[source]

Bases: ly.lex.lilypond.Chord, ly.lex._token.Leaver

rx = u'>'
class ly.lex.lilypond.ChordItem[source]

Bases: ly.lex._token.Token

Base class for chordmode items.

class ly.lex.lilypond.ChordMode[source]

Bases: ly.lex.lilypond.InputMode

rx = u'\\\\(chords|chordmode)\\b'
update_state(state)[source]
class ly.lex.lilypond.ChordModifier[source]

Bases: ly.lex.lilypond.ChordItem

rx = u'((?<![a-z])|^)(aug|dim|sus|min|maj|m)(?![a-z])'
class ly.lex.lilypond.ChordSeparator[source]

Bases: ly.lex.lilypond.ChordItem

rx = u':|\\^|/\\+?'
class ly.lex.lilypond.ChordStart[source]

Bases: ly.lex.lilypond.Chord

rx = u'<'
update_state(state)[source]
class ly.lex.lilypond.ChordStepNumber[source]

Bases: ly.lex.lilypond.ChordItem

rx = u'\\d+[-+]?'
class ly.lex.lilypond.Clef[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\clef\\b'
update_state(state)[source]
class ly.lex.lilypond.ClefSpecifier[source]

Bases: ly.lex.lilypond.Specifier

rx = u'\\b(alto|baritone|bass|C|F|french|G|GG|mezzosoprano|percussion|soprano|subbass|tab|tenor|tenorG|treble|varbaritone|varC|varpercussion|violin)\\b'
update_state(state)[source]
class ly.lex.lilypond.CloseBracket[source]

Bases: ly.lex.lilypond.Delimiter, ly.lex._token.MatchEnd, ly.lex._token.Dedent

matchname = u'bracket'
rx = u'\\}'
update_state(state)[source]
class ly.lex.lilypond.CloseBracketMarkup[source]

Bases: ly.lex.lilypond.CloseBracket

update_state(state)[source]
class ly.lex.lilypond.CloseSimultaneous[source]

Bases: ly.lex.lilypond.Delimiter, ly.lex._token.MatchEnd, ly.lex._token.Dedent

matchname = u'simultaneous'
rx = u'>>'
update_state(state)[source]
class ly.lex.lilypond.Command[source]

Bases: ly.lex._token.Item, ly.lex.lilypond.IdentifierRef

classmethod test_match(match)[source]
class ly.lex.lilypond.Comment[source]

Bases: ly.lex._token.Comment

class ly.lex.lilypond.Context[source]

Bases: ly.lex.lilypond.Translator

rx = u'\\\\context\\b'
class ly.lex.lilypond.ContextName[source]

Bases: ly.lex._token.Token

rx = u'\\b(ChoirStaff|ChordNames|CueVoice|Devnull|DrumStaff|DrumVoice|Dynamics|FiguredBass|FretBoards|Global|GrandStaff|GregorianTranscriptionStaff|GregorianTranscriptionVoice|KievanStaff|KievanVoice|Lyrics|MensuralStaff|MensuralVoice|NoteNames|NullVoice|PetrucciStaff|PetrucciVoice|PianoStaff|RhythmicStaff|Score|Staff|StaffGroup|TabStaff|TabVoice|Timing|VaticanaStaff|VaticanaVoice|Voice)\\b'
class ly.lex.lilypond.ContextProperty[source]

Bases: ly.lex.lilypond.Variable

rx = u'\\b(aDueText|accidentalGrouping|additionalPitchPrefix|alignAboveContext|alignBassFigureAccidentals|alignBelowContext|alternativeNumberingStyle|associatedVoice|autoAccidentals|autoBeamCheck|autoBeaming|autoCautionaries|automaticBars|barAlways|barCheckSynchronize|barNumberFormatter|barNumberVisibility|baseMoment|bassFigureFormatFunction|bassStaffProperties|beamExceptions|beamHalfMeasure|beatStructure|chordChanges|chordNameExceptions|chordNameExceptionsFull|chordNameExceptionsPartial|chordNameFunction|chordNameLowercaseMinor|chordNameSeparator|chordNoteNamer|chordPrefixSpacer|chordRootNamer|clefGlyph|clefPosition|clefTransposition|clefTranspositionFormatter|clefTranspositionStyle|completionBusy|completionUnit|connectArpeggios|countPercentRepeats|createKeyOnClefChange|createSpacing|crescendoSpanner|crescendoText|cueClefGlyph|cueClefPosition|cueClefTransposition|cueClefTranspositionFormatter|cueClefTranspositionStyle|currentBarNumber|decrescendoSpanner|decrescendoText|defaultBarType|defaultStrings|doubleRepeatSegnoType|doubleRepeatType|doubleSlurs|drumPitchTable|drumStyleTable|endRepeatSegnoType|endRepeatType|explicitClefVisibility|explicitCueClefVisibility|explicitKeySignatureVisibility|extendersOverRests|extraNatural|figuredBassAlterationDirection|figuredBassCenterContinuations|figuredBassFormatter|figuredBassPlusDirection|fingeringOrientations|firstClef|followVoice|fontSize|forbidBreak|forceClef|fretLabels|glissandoMap|gridInterval|handleNegativeFrets|harmonicAccidentals|harmonicDots|highStringOne|ignoreBarChecks|ignoreFiguredBassRest|ignoreMelismata|implicitBassFigures|implicitTimeSignatureVisibility|includeGraceNotes|instrumentCueName|instrumentEqualizer|instrumentName|instrumentTransposition|internalBarNumber|keepAliveInterfaces|keyAlterationOrder|keySignature|lyricMelismaAlignment|majorSevenSymbol|markFormatter|maximumFretStretch|measureLength|measurePosition|melismaBusyProperties|metronomeMarkFormatter|middleCClefPosition|middleCCuePosition|middleCOffset|middleCPosition|midiBalance|midiChannelMapping|midiChorusLevel|midiInstrument|midiMaximumVolume|midiMergeUnisons|midiMinimumVolume|midiPanPosition|midiReverbLevel|minimumFret|minimumPageTurnLength|minimumRepeatLengthForPageTurn|minorChordModifier|noChordSymbol|noteToFretFunction|ottavation|output|partCombineTextsOnNote|pedalSostenutoStrings|pedalSostenutoStyle|pedalSustainStrings|pedalSustainStyle|pedalUnaCordaStrings|pedalUnaCordaStyle|predefinedDiagramTable|printKeyCancellation|printOctaveNames|printPartCombineTexts|proportionalNotationDuration|rehearsalMark|repeatCommands|repeatCountVisibility|restCompletionBusy|restNumberThreshold|restrainOpenStrings|searchForVoice|segnoType|shapeNoteStyles|shortInstrumentName|shortVocalName|skipBars|skipTypesetting|slashChordSeparator|soloIIText|soloText|squashedPosition|staffLineLayoutFunction|stanza|startRepeatSegnoType|startRepeatType|stemLeftBeamCount|stemRightBeamCount|strictBeatBeaming|stringNumberOrientations|stringOneTopmost|stringTunings|strokeFingerOrientations|subdivideBeams|suggestAccidentals|supportNonIntegerFret|systemStartDelimiter|systemStartDelimiterHierarchy|tabStaffLineLayoutFunction|tablatureFormat|tempoHideNote|tempoWholesPerMinute|tieWaitForNote|timeSignatureFraction|timeSignatureSettings|timing|tonic|topLevelAlignment|trebleStaffProperties|tremoloFlags|tupletFullLength|tupletFullLengthNote|tupletSpannerDuration|useBassFigureExtenders|vocalName|voltaSpannerDuration|whichBar)\\b'
class ly.lex.lilypond.DecimalValue[source]

Bases: ly.lex.lilypond.Value

rx = u'-?\\d+(\\.\\d+)?'
class ly.lex.lilypond.Delimiter[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.Direction[source]

Bases: ly.lex._token.Token

rx = u'[-_^]'
update_state(state)[source]
class ly.lex.lilypond.Dot[source]

Bases: ly.lex.lilypond.Duration

rx = u'\\.'
class ly.lex.lilypond.DotChord[source]

Bases: ly.lex.lilypond.ChordItem

rx = u'\\.'
class ly.lex.lilypond.DotPath[source]

Bases: ly.lex.lilypond.Delimiter

A dot in dotted path notation.

rx = u'\\.'
class ly.lex.lilypond.DrumChordEnd[source]

Bases: ly.lex.lilypond.ChordEnd

class ly.lex.lilypond.DrumChordStart[source]

Bases: ly.lex.lilypond.ChordStart

update_state(state)[source]
class ly.lex.lilypond.DrumMode[source]

Bases: ly.lex.lilypond.InputMode

rx = u'\\\\(drums|drummode)\\b'
update_state(state)[source]
class ly.lex.lilypond.DrumNote[source]

Bases: ly.lex.lilypond.MusicItem

rx = u'[a-z]+(?![A-Za-z])'
class ly.lex.lilypond.Duration[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.Dynamic[source]

Bases: ly.lex._token.Token

rx = u'\\\\[<!>]|\\\\(f{1,5}|p{1,5}|mf|mp|fp|spp?|sff?|sfz|rfz|cresc|decresc|dim|cr|decr)(?![A-Za-z])'
class ly.lex.lilypond.EqualSign[source]

Bases: ly.lex._token.Token

rx = u'='
class ly.lex.lilypond.Error[source]

Bases: ly.lex._token.Error

class ly.lex.lilypond.ErrorInChord[source]

Bases: ly.lex.lilypond.Error

rx = u'[-_^][_.>|!+^-]|<<|>>|\\\\[\\\\\\]\\[\\(\\)()]|(\\\\(maxima|longa|breve)\\b|(1|2|4|8|16|32|64|128|256|512|1024|2048)(?!\\d))|\\*[\\t ]*\\d+(/\\d+)?'
class ly.lex.lilypond.ExpectBook(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseBook

class ly.lex.lilypond.ExpectBookPart(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseBookPart

class ly.lex.lilypond.ExpectChordMode(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectMusicList

replace

alias of ParseChordMode

class ly.lex.lilypond.ExpectContext(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseContext

class ly.lex.lilypond.ExpectDrumMode(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectMusicList

replace

alias of ParseDrumMode

class ly.lex.lilypond.ExpectFigureMode(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectMusicList

replace

alias of ParseFigureMode

class ly.lex.lilypond.ExpectGrobProperty(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.GrobProperty'>)
pattern = <_sre.SRE_Pattern object at 0x2559660>
update_state(state, token)[source]
class ly.lex.lilypond.ExpectHeader(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseHeader

class ly.lex.lilypond.ExpectLayout(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseLayout

class ly.lex.lilypond.ExpectLyricMode(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectMusicList

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2bbfa70>
replace

alias of ParseLyricMode

class ly.lex.lilypond.ExpectMidi(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseMidi

class ly.lex.lilypond.ExpectMusicList(argcount=None)[source]

Bases: ly.lex.FallthroughParser, ly.lex.lilypond.ParseLilyPond

Waits for an OpenBracket or << and then replaces the parser with the class set in the replace attribute.

Subclass this to set the destination for the OpenBracket.

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2712740>
update_state(state, token)[source]
class ly.lex.lilypond.ExpectNoteMode(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectMusicList

replace

alias of ParseNoteMode

class ly.lex.lilypond.ExpectOpenBracket(argcount=None)[source]

Bases: ly.lex.FallthroughParser, ly.lex.lilypond.ParseLilyPond

Waits for an OpenBracket and then replaces the parser with the class set in the replace attribute.

Subclass this to set the destination for the OpenBracket.

default

alias of Error

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.OpenBracket'>)
pattern = <_sre.SRE_Pattern object>
update_state(state, token)[source]
class ly.lex.lilypond.ExpectPaper(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParsePaper

class ly.lex.lilypond.ExpectScore(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseScore

class ly.lex.lilypond.ExpectTranslatorId(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.EqualSign'>)
pattern = <_sre.SRE_Pattern object>
update_state(state, token)[source]
class ly.lex.lilypond.ExpectWith(argcount=None)[source]

Bases: ly.lex.lilypond.ExpectOpenBracket

replace

alias of ParseWith

class ly.lex.lilypond.Figure[source]

Bases: ly.lex._token.Token

Base class for Figure items.

class ly.lex.lilypond.FigureAccidental[source]

Bases: ly.lex.lilypond.Figure

A figure accidental.

rx = u'[-+!]+'
class ly.lex.lilypond.FigureBracket[source]

Bases: ly.lex.lilypond.Figure

rx = u'[][]'
class ly.lex.lilypond.FigureEnd[source]

Bases: ly.lex.lilypond.Figure, ly.lex._token.Leaver

rx = u'>'
class ly.lex.lilypond.FigureMode[source]

Bases: ly.lex.lilypond.InputMode

rx = u'\\\\(figures|figuremode)\\b'
update_state(state)[source]
class ly.lex.lilypond.FigureModifier[source]

Bases: ly.lex.lilypond.Figure

A figure modifier.

rx = u'\\\\[\\\\!+]|/'
class ly.lex.lilypond.FigureStart[source]

Bases: ly.lex.lilypond.Figure

rx = u'<'
update_state(state)[source]
class ly.lex.lilypond.FigureStep[source]

Bases: ly.lex.lilypond.Figure

A step figure number or the underscore.

rx = u'_|\\d+'
class ly.lex.lilypond.Fingering[source]

Bases: ly.lex.lilypond.Articulation, ly.lex._token.Leaver

rx = u'\\d+'
class ly.lex.lilypond.Fraction[source]

Bases: ly.lex.lilypond.Value

rx = u'\\d+/\\d+'
class ly.lex.lilypond.GrobName[source]

Bases: ly.lex._token.Token

rx = u'\\b(Accidental|AccidentalCautionary|AccidentalPlacement|AccidentalSuggestion|Ambitus|AmbitusAccidental|AmbitusLine|AmbitusNoteHead|Arpeggio|BalloonTextItem|BarLine|BarNumber|BassFigure|BassFigureAlignment|BassFigureAlignmentPositioning|BassFigureBracket|BassFigureContinuation|BassFigureLine|Beam|BendAfter|BreakAlignGroup|BreakAlignment|BreathingSign|ChordName|Clef|ClefModifier|ClusterSpanner|ClusterSpannerBeacon|CombineTextScript|CueClef|CueEndClef|Custos|DotColumn|Dots|DoublePercentRepeat|DoublePercentRepeatCounter|DoubleRepeatSlash|DynamicLineSpanner|DynamicText|DynamicTextSpanner|Episema|Fingering|FingeringColumn|Flag|FootnoteItem|FootnoteSpanner|FretBoard|Glissando|GraceSpacing|GridLine|GridPoint|Hairpin|HorizontalBracket|InstrumentName|InstrumentSwitch|KeyCancellation|KeySignature|KievanLigature|LaissezVibrerTie|LaissezVibrerTieColumn|LedgerLineSpanner|LeftEdge|LigatureBracket|LyricExtender|LyricHyphen|LyricSpace|LyricText|MeasureCounter|MeasureGrouping|MelodyItem|MensuralLigature|MetronomeMark|MultiMeasureRest|MultiMeasureRestNumber|MultiMeasureRestText|NonMusicalPaperColumn|NoteCollision|NoteColumn|NoteHead|NoteName|NoteSpacing|OttavaBracket|PaperColumn|ParenthesesItem|PercentRepeat|PercentRepeatCounter|PhrasingSlur|PianoPedalBracket|RehearsalMark|RepeatSlash|RepeatTie|RepeatTieColumn|Rest|RestCollision|Script|ScriptColumn|ScriptRow|Slur|SostenutoPedal|SostenutoPedalLineSpanner|SpacingSpanner|SpanBar|SpanBarStub|StaffGrouper|StaffSpacing|StaffSymbol|StanzaNumber|Stem|StemStub|StemTremolo|StringNumber|StrokeFinger|SustainPedal|SustainPedalLineSpanner|System|SystemStartBar|SystemStartBrace|SystemStartBracket|SystemStartSquare|TabNoteHead|TextScript|TextSpanner|Tie|TieColumn|TimeSignature|TrillPitchAccidental|TrillPitchGroup|TrillPitchHead|TrillSpanner|TupletBracket|TupletNumber|UnaCordaPedal|UnaCordaPedalLineSpanner|VaticanaLigature|VerticalAlignment|VerticalAxisGroup|VoiceFollower|VoltaBracket|VoltaBracketSpanner)\\b'
class ly.lex.lilypond.GrobProperty[source]

Bases: ly.lex.lilypond.Variable

rx = u'\\b([a-z]+|[XY])(-([a-z]+|[XY]))*(?![\\w])'
class ly.lex.lilypond.Header[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\header\\b'
update_state(state)[source]
class ly.lex.lilypond.HeaderVariable[source]

Bases: ly.lex.lilypond.Variable

A variable inside Header. Always follow this one by UserVariable.

classmethod test_match(match)[source]
class ly.lex.lilypond.Hide[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\hide\\b'
update_state(state)[source]
class ly.lex.lilypond.Identifier[source]

Bases: ly.lex._token.Token

A variable name, like some-variable.

rx = u'(?<![^\\W\\d])[^\\W\\d_]+([_-][^\\W\\d_]+)*(?![_-]?[^\\W\\d])'
class ly.lex.lilypond.IdentifierRef[source]

Bases: ly.lex._token.Token

A reference to an identifier, e.g. \some-variable.

rx = u'\\\\[^\\W\\d_]+([_-][^\\W\\d_]+)*(?![_-]?[^\\W\\d])'
class ly.lex.lilypond.InputMode[source]

Bases: ly.lex.lilypond.Command

class ly.lex.lilypond.IntegerValue[source]

Bases: ly.lex.lilypond.DecimalValue

rx = u'\\d+'
class ly.lex.lilypond.KeySignatureMode[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\(major|minor|ionian|dorian|phrygian|lydian|mixolydian|aeolian|locrian)(?![A-Za-z])'
class ly.lex.lilypond.Keyword[source]

Bases: ly.lex._token.Item, ly.lex.lilypond.IdentifierRef

classmethod test_match(match)[source]
class ly.lex.lilypond.Layout[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\layout\\b'
update_state(state)[source]
class ly.lex.lilypond.LayoutContext[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\context\\b'
update_state(state)[source]
class ly.lex.lilypond.LayoutVariable[source]

Bases: ly.lex.lilypond.Variable

A variable inside Header. Always follow this one by UserVariable.

classmethod test_match(match)[source]
class ly.lex.lilypond.Length[source]

Bases: ly.lex.lilypond.Duration

rx = u'(\\\\(maxima|longa|breve)\\b|(1|2|4|8|16|32|64|128|256|512|1024|2048)(?!\\d))'
update_state(state)[source]
class ly.lex.lilypond.Ligature[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.LigatureEnd[source]

Bases: ly.lex.lilypond.Ligature, ly.lex._token.MatchEnd

matchname = u'ligature'
rx = u'\\\\\\]'
class ly.lex.lilypond.LigatureStart[source]

Bases: ly.lex.lilypond.Ligature, ly.lex._token.MatchStart

matchname = u'ligature'
rx = u'\\\\\\['
class ly.lex.lilypond.LineComment[source]

Bases: ly.lex.lilypond.Comment, ly.lex._token.LineComment

rx = u'%.*$'
class ly.lex.lilypond.Lyric[source]

Bases: ly.lex._token.Item

Base class for Lyric items.

class ly.lex.lilypond.LyricExtender[source]

Bases: ly.lex.lilypond.Lyric

rx = u'__(?=($|[\\s\\\\]))'
class ly.lex.lilypond.LyricHyphen[source]

Bases: ly.lex.lilypond.Lyric

rx = u'--(?=($|[\\s\\\\]))'
class ly.lex.lilypond.LyricMode[source]

Bases: ly.lex.lilypond.InputMode

rx = u'\\\\(lyricmode|((old)?add)?lyrics|lyricsto)\\b'
update_state(state)[source]
class ly.lex.lilypond.LyricSkip[source]

Bases: ly.lex.lilypond.Lyric

rx = u'_(?=($|[\\s\\\\]))'
class ly.lex.lilypond.LyricText[source]

Bases: ly.lex.lilypond.Lyric

rx = u'[^\\\\\\s\\d\\"]+'
class ly.lex.lilypond.Markup[source]

Bases: ly.lex._token.Item

Base class for all markup commands.

class ly.lex.lilypond.MarkupCommand[source]

Bases: ly.lex.lilypond.Markup, ly.lex.lilypond.IdentifierRef

A markup command.

classmethod test_match(match)[source]
update_state(state)[source]
class ly.lex.lilypond.MarkupLines[source]

Bases: ly.lex.lilypond.Markup

rx = u'\\\\markuplines(?![_-]?[^\\W\\d])'
update_state(state)[source]
class ly.lex.lilypond.MarkupList[source]

Bases: ly.lex.lilypond.Markup

rx = u'\\\\markuplist(?![_-]?[^\\W\\d])'
update_state(state)[source]
class ly.lex.lilypond.MarkupScore[source]

Bases: ly.lex.lilypond.Markup

rx = u'\\\\score\\b'
update_state(state)[source]
class ly.lex.lilypond.MarkupStart[source]

Bases: ly.lex.lilypond.Markup, ly.lex.lilypond.Command

rx = u'\\\\markup(?![_-]?[^\\W\\d])'
update_state(state)[source]
class ly.lex.lilypond.MarkupUserCommand[source]

Bases: ly.lex.lilypond.Markup, ly.lex.lilypond.IdentifierRef

A user-defined markup (i.e. not in the words markupcommands list).

update_state(state)[source]
class ly.lex.lilypond.MarkupWord[source]

Bases: ly.lex._token.Item

rx = u'[^{}"\\\\\\s#%]+'
class ly.lex.lilypond.Midi[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\midi\\b'
update_state(state)[source]
class ly.lex.lilypond.MusicItem[source]

Bases: ly.lex._token.Token

A note, rest, spacer, \skip or q.

class ly.lex.lilypond.Name[source]

Bases: ly.lex.lilypond.UserVariable

A variable name without prefix.

class ly.lex.lilypond.New[source]

Bases: ly.lex.lilypond.Translator

rx = u'\\\\new\\b'
class ly.lex.lilypond.Note[source]

Bases: ly.lex.lilypond.MusicItem

rx = u'[a-x]+(?![A-Za-z])'
class ly.lex.lilypond.NoteMode[source]

Bases: ly.lex.lilypond.InputMode

rx = u'\\\\(notes|notemode)\\b'
update_state(state)[source]
class ly.lex.lilypond.Octave[source]

Bases: ly.lex._token.Token

rx = u",+|'+"
class ly.lex.lilypond.OctaveCheck[source]

Bases: ly.lex._token.Token

rx = u"=(,+|'+)?"
class ly.lex.lilypond.Omit[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\omit\\b'
update_state(state)[source]
class ly.lex.lilypond.OpenBracket[source]

Bases: ly.lex.lilypond.Delimiter, ly.lex._token.MatchStart, ly.lex._token.Indent

An open bracket, does not enter different parser, subclass or reimplement Parser.update_state().

matchname = u'bracket'
rx = u'\\{'
class ly.lex.lilypond.OpenBracketMarkup[source]

Bases: ly.lex.lilypond.OpenBracket

update_state(state)[source]
class ly.lex.lilypond.OpenSimultaneous[source]

Bases: ly.lex.lilypond.Delimiter, ly.lex._token.MatchStart, ly.lex._token.Indent

An open double French quote, does not enter different parser, subclass or reimplement Parser.update_state().

matchname = u'simultaneous'
rx = u'<<'
class ly.lex.lilypond.Override[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\override\\b'
update_state(state)[source]
class ly.lex.lilypond.Paper[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\paper\\b'
update_state(state)[source]
class ly.lex.lilypond.PaperVariable[source]

Bases: ly.lex.lilypond.Variable

A variable inside Paper. Always follow this one by UserVariable.

classmethod test_match(match)[source]
class ly.lex.lilypond.ParseAccidentalStyle(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.AccidentalStyleSpecifier'>)
pattern = <_sre.SRE_Pattern object at 0x2c110b0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseAlterBroken(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.GrobProperty'>)
pattern = <_sre.SRE_Pattern object at 0x2559660>
update_state(state, token)[source]
class ly.lex.lilypond.ParseBlockComment(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of BlockComment

items = (<class 'ly.lex.lilypond.BlockCommentEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseBook(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \book {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.BookPart'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c063d0>
class ly.lex.lilypond.ParseBookPart(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \bookpart {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c23860>
class ly.lex.lilypond.ParseChord(argcount=None)[source]

Bases: ly.lex.lilypond.ParseMusic

LilyPond inside chords < >

items = (<class 'ly.lex.lilypond.ErrorInChord'>, <class 'ly.lex.lilypond.ChordEnd'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Octave'>, <class 'ly.lex.lilypond.OctaveCheck'>, <class 'ly.lex.lilypond.AccidentalCautionary'>, <class 'ly.lex.lilypond.AccidentalReminder'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c3ca50>
class ly.lex.lilypond.ParseChordItems(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex.lilypond.ChordSeparator'>, <class 'ly.lex.lilypond.ChordModifier'>, <class 'ly.lex.lilypond.ChordStepNumber'>, <class 'ly.lex.lilypond.DotChord'>, <class 'ly.lex.lilypond.Note'>)
pattern = <_sre.SRE_Pattern object at 0x2c211d0>
class ly.lex.lilypond.ParseChordMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseInputMode, ly.lex.lilypond.ParseMusic

Parser for \chords and \chordmode.

items = (<class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Octave'>, <class 'ly.lex.lilypond.OctaveCheck'>, <class 'ly.lex.lilypond.AccidentalCautionary'>, <class 'ly.lex.lilypond.AccidentalReminder'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.ChordSeparator'>)
pattern = <_sre.SRE_Pattern object at 0x2c52d20>
update_state(state, token)[source]
class ly.lex.lilypond.ParseClef(argcount=None)[source]

Bases: ly.lex.FallthroughParser

argcount = 1
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ClefSpecifier'>, <class 'ly.lex.lilypond.StringQuotedStart'>)
pattern = <_sre.SRE_Pattern object at 0x2c3bca0>
class ly.lex.lilypond.ParseContext(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after (\layout {) \context {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.BackSlashedContextName'>, <class 'ly.lex.lilypond.ContextProperty'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c6cc10>
class ly.lex.lilypond.ParseDecimalValue(argcount=None)[source]

Bases: ly.lex.FallthroughParser

Parses a decimal value without a # before it (if present).

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x2605ce0>
class ly.lex.lilypond.ParseDrumChord(argcount=None)[source]

Bases: ly.lex.lilypond.ParseMusic

LilyPond inside chords in drummode < >

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.ErrorInChord'>, <class 'ly.lex.lilypond.DrumChordEnd'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.DrumNote'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c5dc60>
class ly.lex.lilypond.ParseDrumMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseInputMode, ly.lex.lilypond.ParseMusic

Parser for \drums and \drummode.

items = (<class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.DrumNote'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.DrumChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c88b70>
class ly.lex.lilypond.ParseDuration(argcount=None)[source]

Bases: ly.lex.FallthroughParser

fallthrough(state)[source]
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Dot'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseDurationScaling(argcount=None)[source]

Bases: ly.lex.lilypond.ParseDuration

fallthrough(state)[source]
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Scaling'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseFigure(argcount=None)[source]

Bases: ly.lex.Parser

Parse inside < > in figure mode.

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.FigureEnd'>, <class 'ly.lex.lilypond.FigureBracket'>, <class 'ly.lex.lilypond.FigureStep'>, <class 'ly.lex.lilypond.FigureAccidental'>, <class 'ly.lex.lilypond.FigureModifier'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>)
pattern = <_sre.SRE_Pattern object at 0x2c85580>
class ly.lex.lilypond.ParseFigureMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseInputMode, ly.lex.lilypond.ParseMusic

Parser for \figures and \figuremode.

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.CloseSimultaneous'>, <class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.FigureStart'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2c19210>
class ly.lex.lilypond.ParseGlobal(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses LilyPond from the toplevel of a file.

items = (<class 'ly.lex.lilypond.Book'>, <class 'ly.lex.lilypond.BookPart'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x2c94e80>
update_state(state, token)[source]
class ly.lex.lilypond.ParseGlobalAssignment(argcount=None)[source]

Bases: ly.lex.FallthroughParser, ly.lex.lilypond.ParseLilyPond

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.Dynamic'>)
pattern = <_sre.SRE_Pattern object at 0x2c92aa0>
class ly.lex.lilypond.ParseGrobPropertyPath(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.DotPath'>)
pattern = <_sre.SRE_Pattern object>
update_state(state, token)[source]
class ly.lex.lilypond.ParseHeader(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \header {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.HeaderVariable'>, <class 'ly.lex.lilypond.UserVariable'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2ca1940>
class ly.lex.lilypond.ParseHideOmit(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.GrobName'>)
pattern = <_sre.SRE_Pattern object at 0x2cb38a0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseInputMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Base class for parser for mode-changing music commands.

classmethod update_state(state, token)[source]
class ly.lex.lilypond.ParseLayout(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \layout {, leaving at }

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.LayoutContext'>, <class 'ly.lex.lilypond.LayoutVariable'>, <class 'ly.lex.lilypond.UserVariable'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.DecimalValue'>, <class 'ly.lex.lilypond.Unit'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2cc5ae0>
class ly.lex.lilypond.ParseLilyPond(argcount=None)[source]

Bases: ly.lex.Parser

mode = u'lilypond'
class ly.lex.lilypond.ParseLyricMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseInputMode

Parser for \lyrics, \lyricmode, \addlyrics, etc.

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.CloseSimultaneous'>, <class 'ly.lex.lilypond.OpenBracket'>, <class 'ly.lex.lilypond.OpenSimultaneous'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.LyricHyphen'>, <class 'ly.lex.lilypond.LyricExtender'>, <class 'ly.lex.lilypond.LyricSkip'>, <class 'ly.lex.lilypond.LyricText'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2cbe340>
class ly.lex.lilypond.ParseMarkup(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex.lilypond.MarkupScore'>, <class 'ly.lex.lilypond.MarkupCommand'>, <class 'ly.lex.lilypond.MarkupUserCommand'>, <class 'ly.lex.lilypond.OpenBracketMarkup'>, <class 'ly.lex.lilypond.CloseBracketMarkup'>, <class 'ly.lex.lilypond.MarkupWord'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>)
pattern = <_sre.SRE_Pattern object at 0x2cb3380>
class ly.lex.lilypond.ParseMidi(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \midi {, leaving at }

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.LayoutContext'>, <class 'ly.lex.lilypond.LayoutVariable'>, <class 'ly.lex.lilypond.UserVariable'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.DecimalValue'>, <class 'ly.lex.lilypond.Unit'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2cc5ae0>
class ly.lex.lilypond.ParseMusic(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses LilyPond music expressions.

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Octave'>, <class 'ly.lex.lilypond.OctaveCheck'>, <class 'ly.lex.lilypond.AccidentalCautionary'>, <class 'ly.lex.lilypond.AccidentalReminder'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.TremoloColon'>)
pattern = <_sre.SRE_Pattern object at 0x2ce7fc0>
class ly.lex.lilypond.ParseNoteMode(argcount=None)[source]

Bases: ly.lex.lilypond.ParseMusic

Parser for \notes and \notemode. Same as Music itself.

class ly.lex.lilypond.ParseOverride(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

argcount = 0
items = (<class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.GrobProperty'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>)
pattern = <_sre.SRE_Pattern object at 0x2ceee70>
update_state(state, token)[source]
class ly.lex.lilypond.ParsePaper(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \paper {, leaving at }

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.PaperVariable'>, <class 'ly.lex.lilypond.UserVariable'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.DecimalValue'>, <class 'ly.lex.lilypond.Unit'>)
pattern = <_sre.SRE_Pattern object at 0x2c81bf0>
class ly.lex.lilypond.ParsePitchCommand(argcount=None)[source]

Bases: ly.lex.FallthroughParser

argcount = 1
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Octave'>)
pattern = <_sre.SRE_Pattern object at 0x1e39d40>
update_state(state, token)[source]
class ly.lex.lilypond.ParseRepeat(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.RepeatSpecifier'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.RepeatCount'>)
pattern = <_sre.SRE_Pattern object at 0x2cb2360>
class ly.lex.lilypond.ParseRevert(argcount=None)[source]

Bases: ly.lex.FallthroughParser

parse the arguments of \revert

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.GrobProperty'>)
pattern = <_sre.SRE_Pattern object at 0x2ce2b10>
update_state(state, token)[source]
class ly.lex.lilypond.ParseScore(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \score {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex.lilypond.Midi'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2cfa1b0>
class ly.lex.lilypond.ParseScriptAbbreviationOrFingering(argcount=None)[source]

Bases: ly.lex.FallthroughParser

argcount = 1
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ScriptAbbreviation'>, <class 'ly.lex.lilypond.Fingering'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseSet(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

argcount = 0
items = (<class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.ContextProperty'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>)
pattern = <_sre.SRE_Pattern object at 0x2d17140>
update_state(state, token)[source]
class ly.lex.lilypond.ParseString(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of String

items = (<class 'ly.lex.lilypond.StringQuotedEnd'>, <class 'ly.lex.lilypond.StringQuoteEscape'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseTempo(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.EqualSign'>)
pattern = <_sre.SRE_Pattern object at 0x2d06e70>
update_state(state, token)[source]
class ly.lex.lilypond.ParseTempoAfterEqualSign(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.TempoSeparator'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseTranslator(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.Name'>)
pattern = <_sre.SRE_Pattern object at 0x2d15940>
update_state(state, token)[source]
class ly.lex.lilypond.ParseTranslatorId(argcount=None)[source]

Bases: ly.lex.FallthroughParser

argcount = 1
items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.StringQuotedStart'>)
pattern = <_sre.SRE_Pattern object at 0x20c6dd0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseTremolo(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex.lilypond.TremoloDuration'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.lilypond.ParseTweak(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.GrobProperty'>)
pattern = <_sre.SRE_Pattern object at 0x2d294e0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseTweakGrobProperty(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x2540ec0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseUnset(argcount=None)[source]

Bases: ly.lex.FallthroughParser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.ContextProperty'>, <class 'ly.lex.lilypond.Name'>)
pattern = <_sre.SRE_Pattern object at 0x2d422f0>
update_state(state, token)[source]
class ly.lex.lilypond.ParseWith(argcount=None)[source]

Bases: ly.lex.lilypond.ParseLilyPond

Parses the expression after \with {, leaving at }

items = (<class 'ly.lex.lilypond.CloseBracket'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.ContextProperty'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>)
pattern = <_sre.SRE_Pattern object at 0x2d652a0>
class ly.lex.lilypond.Partial[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\partial\\b'
class ly.lex.lilypond.PhrasingSlurEnd[source]

Bases: ly.lex.lilypond.SlurEnd

matchname = u'phrasingslur'
rx = u'\\\\\\)'
class ly.lex.lilypond.PhrasingSlurStart[source]

Bases: ly.lex.lilypond.SlurStart

matchname = u'phrasingslur'
rx = u'\\\\\\('
class ly.lex.lilypond.PipeSymbol[source]

Bases: ly.lex.lilypond.Delimiter

rx = u'\\|'
class ly.lex.lilypond.PitchCommand[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\(relative|transpose|transposition|key|octaveCheck)\\b'
update_state(state)[source]
class ly.lex.lilypond.Q[source]

Bases: ly.lex.lilypond.MusicItem

rx = u'q(?![A-Za-z])'
class ly.lex.lilypond.Repeat[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\repeat(?![A-Za-z])'
update_state(state)[source]
class ly.lex.lilypond.RepeatCount[source]

Bases: ly.lex.lilypond.IntegerValue, ly.lex._token.Leaver

class ly.lex.lilypond.RepeatSpecifier[source]

Bases: ly.lex.lilypond.Specifier

rx = u'\\b(unfold|percent|volta|tremolo)(?![A-Za-z])'
class ly.lex.lilypond.Rest[source]

Bases: ly.lex.lilypond.MusicItem

rx = u'[Rr](?![A-Za-z])'
class ly.lex.lilypond.Revert[source]

Bases: ly.lex.lilypond.Override

rx = u'\\\\revert\\b'
update_state(state)[source]
class ly.lex.lilypond.Scaling[source]

Bases: ly.lex.lilypond.Duration

rx = u'\\*[\\t ]*\\d+(/\\d+)?'
class ly.lex.lilypond.SchemeStart[source]

Bases: ly.lex._token.Item

rx = u'[#$](?![{}])'
update_state(state)[source]
class ly.lex.lilypond.Score[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\score\\b'
update_state(state)[source]
class ly.lex.lilypond.ScriptAbbreviation[source]

Bases: ly.lex.lilypond.Articulation, ly.lex._token.Leaver

rx = u'[+|!>._^-]'
class ly.lex.lilypond.SequentialEnd[source]

Bases: ly.lex.lilypond.CloseBracket

class ly.lex.lilypond.SequentialStart[source]

Bases: ly.lex.lilypond.OpenBracket

update_state(state)[source]
class ly.lex.lilypond.Set[source]

Bases: ly.lex.lilypond.Override

rx = u'\\\\set\\b'
update_state(state)[source]
class ly.lex.lilypond.SimultaneousEnd[source]

Bases: ly.lex.lilypond.CloseSimultaneous

class ly.lex.lilypond.SimultaneousOrSequentialCommand[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\(simultaneous|sequential)\\b'
class ly.lex.lilypond.SimultaneousStart[source]

Bases: ly.lex.lilypond.OpenSimultaneous

update_state(state)[source]
class ly.lex.lilypond.Skip[source]

Bases: ly.lex.lilypond.MusicItem

rx = u'\\\\skip(?![_-]?[^\\W\\d])'
class ly.lex.lilypond.Slur[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.SlurEnd[source]

Bases: ly.lex.lilypond.Slur, ly.lex._token.MatchEnd

matchname = u'slur'
rx = u'\\)'
class ly.lex.lilypond.SlurStart[source]

Bases: ly.lex.lilypond.Slur, ly.lex._token.MatchStart

matchname = u'slur'
rx = u'\\('
class ly.lex.lilypond.Spacer[source]

Bases: ly.lex.lilypond.MusicItem

rx = u's(?![A-Za-z])'
class ly.lex.lilypond.Specifier[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.String[source]

Bases: ly.lex._token.String

class ly.lex.lilypond.StringNumber[source]

Bases: ly.lex.lilypond.Articulation

rx = u'\\\\\\d+'
class ly.lex.lilypond.StringQuoteEscape[source]

Bases: ly.lex._token.Character

rx = u'\\\\[\\\\"]'
class ly.lex.lilypond.StringQuotedEnd[source]

Bases: ly.lex.lilypond.String, ly.lex._token.StringEnd

rx = u'"'
update_state(state)[source]
class ly.lex.lilypond.StringQuotedStart[source]

Bases: ly.lex.lilypond.String, ly.lex._token.StringStart

rx = u'"'
update_state(state)[source]
class ly.lex.lilypond.Tempo[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\tempo\\b'
update_state(state)[source]
class ly.lex.lilypond.TempoSeparator[source]

Bases: ly.lex.lilypond.Delimiter

rx = u'[-~](?=\\s*\\d)'
class ly.lex.lilypond.Tie[source]

Bases: ly.lex.lilypond.Slur

rx = u'~'
class ly.lex.lilypond.Translator[source]

Bases: ly.lex.lilypond.Command

update_state(state)[source]
class ly.lex.lilypond.Tremolo[source]

Bases: ly.lex._token.Token

class ly.lex.lilypond.TremoloColon[source]

Bases: ly.lex.lilypond.Tremolo

rx = u':'
update_state(state)[source]
class ly.lex.lilypond.TremoloDuration[source]

Bases: ly.lex.lilypond.Tremolo, ly.lex._token.Leaver

rx = u'\\b(8|16|32|64|128|256|512|1024|2048)(?!\\d)'
class ly.lex.lilypond.Tweak[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\tweak\\b'
update_state(state)[source]
class ly.lex.lilypond.Unit[source]

Bases: ly.lex.lilypond.Command

rx = u'\\\\(mm|cm|in|pt)\\b'
class ly.lex.lilypond.Unset[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\unset\\b'
update_state(state)[source]
class ly.lex.lilypond.UserCommand[source]

Bases: ly.lex.lilypond.IdentifierRef

class ly.lex.lilypond.UserVariable[source]

Bases: ly.lex.lilypond.Identifier

class ly.lex.lilypond.Value[source]

Bases: ly.lex._token.Item, ly.lex._token.Numeric

class ly.lex.lilypond.Variable[source]

Bases: ly.lex.lilypond.Identifier

class ly.lex.lilypond.VoiceSeparator[source]

Bases: ly.lex.lilypond.Delimiter

rx = u'\\\\\\\\'
class ly.lex.lilypond.With[source]

Bases: ly.lex.lilypond.Keyword

rx = u'\\\\with\\b'
update_state(state)[source]

ly.lex.scheme module

Parses and tokenizes Scheme input.

class ly.lex.scheme.BlockComment[source]

Bases: ly.lex.scheme.Comment, ly.lex._token.BlockComment

class ly.lex.scheme.BlockCommentEnd[source]

Bases: ly.lex.scheme.Comment, ly.lex._token.BlockCommentEnd, ly.lex._token.Leaver

rx = u'!#'
class ly.lex.scheme.BlockCommentStart[source]

Bases: ly.lex.scheme.Comment, ly.lex._token.BlockCommentStart

rx = u'#!'
update_state(state)[source]
class ly.lex.scheme.Bool[source]

Bases: ly.lex.scheme.Scheme, ly.lex._token.Item

rx = u'#[tf]\\b'
class ly.lex.scheme.Char[source]

Bases: ly.lex.scheme.Scheme, ly.lex._token.Item

rx = u'#\\\\([a-z]+|.)'
class ly.lex.scheme.CloseParen[source]

Bases: ly.lex.scheme.Scheme, ly.lex._token.MatchEnd, ly.lex._token.Dedent

matchname = u'schemeparen'
rx = u'\\)'
update_state(state)[source]
class ly.lex.scheme.Comment[source]

Bases: ly.lex._token.Comment

class ly.lex.scheme.Constant[source]

Bases: ly.lex.scheme.Word

classmethod test_match(match)[source]
class ly.lex.scheme.Dot[source]

Bases: ly.lex.scheme.Scheme

rx = u'\\.(?!\\S)'
class ly.lex.scheme.Float[source]

Bases: ly.lex.scheme.Number

rx = u'-?((\\d+(\\.\\d*)|\\.\\d+)(E\\d+)?)(?=$|[)\\s])'
class ly.lex.scheme.Fraction[source]

Bases: ly.lex.scheme.Number

rx = u'-?\\d+/\\d+(?=$|[)\\s])'
class ly.lex.scheme.Function[source]

Bases: ly.lex.scheme.Word

classmethod test_match(match)[source]
class ly.lex.scheme.Keyword[source]

Bases: ly.lex.scheme.Word

classmethod test_match(match)[source]
class ly.lex.scheme.LilyPond[source]

Bases: ly.lex._token.Token

class ly.lex.scheme.LilyPondEnd[source]

Bases: ly.lex.scheme.LilyPond, ly.lex._token.Leaver, ly.lex._token.MatchEnd, ly.lex._token.Dedent

matchname = u'schemelily'
rx = u'#}'
class ly.lex.scheme.LilyPondStart[source]

Bases: ly.lex.scheme.LilyPond, ly.lex._token.MatchStart, ly.lex._token.Indent

matchname = u'schemelily'
rx = u'#{'
update_state(state)[source]
class ly.lex.scheme.LineComment[source]

Bases: ly.lex.scheme.Comment, ly.lex._token.LineComment

rx = u';.*$'
class ly.lex.scheme.Number[source]

Bases: ly.lex._token.Item, ly.lex._token.Numeric

rx = u'(-?\\d+|#(b[0-1]+|o[0-7]+|x[0-9a-fA-F]+)|[-+]inf.0|[-+]?nan.0)(?=$|[)\\s])'
class ly.lex.scheme.OpenParen[source]

Bases: ly.lex.scheme.Scheme, ly.lex._token.MatchStart, ly.lex._token.Indent

matchname = u'schemeparen'
rx = u'\\('
update_state(state)[source]
class ly.lex.scheme.ParseBlockComment(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of BlockComment

items = (<class 'ly.lex.scheme.BlockCommentEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.scheme.ParseLilyPond(argcount=None)[source]

Bases: ly.lex.lilypond.ParseMusic

items = (<class 'ly.lex.scheme.LilyPondEnd'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.Dynamic'>, <class 'ly.lex.lilypond.Skip'>, <class 'ly.lex.lilypond.Spacer'>, <class 'ly.lex.lilypond.Q'>, <class 'ly.lex.lilypond.Rest'>, <class 'ly.lex.lilypond.Note'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.Length'>, <class 'ly.lex.lilypond.Octave'>, <class 'ly.lex.lilypond.OctaveCheck'>, <class 'ly.lex.lilypond.AccidentalCautionary'>, <class 'ly.lex.lilypond.AccidentalReminder'>, <class 'ly.lex.lilypond.PipeSymbol'>, <class 'ly.lex.lilypond.VoiceSeparator'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SequentialEnd'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.SimultaneousEnd'>, <class 'ly.lex.lilypond.ChordStart'>, <class 'ly.lex.lilypond.ContextName'>, <class 'ly.lex.lilypond.GrobName'>, <class 'ly.lex.lilypond.SlurStart'>, <class 'ly.lex.lilypond.SlurEnd'>, <class 'ly.lex.lilypond.PhrasingSlurStart'>, <class 'ly.lex.lilypond.PhrasingSlurEnd'>, <class 'ly.lex.lilypond.Tie'>, <class 'ly.lex.lilypond.BeamStart'>, <class 'ly.lex.lilypond.BeamEnd'>, <class 'ly.lex.lilypond.LigatureStart'>, <class 'ly.lex.lilypond.LigatureEnd'>, <class 'ly.lex.lilypond.Direction'>, <class 'ly.lex.lilypond.StringNumber'>, <class 'ly.lex.lilypond.IntegerValue'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.TremoloColon'>)
pattern = <_sre.SRE_Pattern object at 0x29b0950>
class ly.lex.scheme.ParseScheme(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex._token.Space'>, <class 'ly.lex.scheme.OpenParen'>, <class 'ly.lex.scheme.CloseParen'>, <class 'ly.lex.scheme.LineComment'>, <class 'ly.lex.scheme.BlockCommentStart'>, <class 'ly.lex.scheme.LilyPondStart'>, <class 'ly.lex.scheme.VectorStart'>, <class 'ly.lex.scheme.Dot'>, <class 'ly.lex.scheme.Bool'>, <class 'ly.lex.scheme.Char'>, <class 'ly.lex.scheme.Quote'>, <class 'ly.lex.scheme.Fraction'>, <class 'ly.lex.scheme.Float'>, <class 'ly.lex.scheme.Number'>, <class 'ly.lex.scheme.Constant'>, <class 'ly.lex.scheme.Keyword'>, <class 'ly.lex.scheme.Function'>, <class 'ly.lex.scheme.Variable'>, <class 'ly.lex.scheme.Word'>, <class 'ly.lex.scheme.StringQuotedStart'>)
mode = u'scheme'
pattern = <_sre.SRE_Pattern object at 0x296fa90>
class ly.lex.scheme.ParseString(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of String

items = (<class 'ly.lex.scheme.StringQuotedEnd'>, <class 'ly.lex.scheme.StringQuoteEscape'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.scheme.Quote[source]

Bases: ly.lex.scheme.Scheme

rx = u"['`,]"
class ly.lex.scheme.Scheme[source]

Bases: ly.lex._token.Token

Baseclass for Scheme tokens.

class ly.lex.scheme.String[source]

Bases: ly.lex._token.String

class ly.lex.scheme.StringQuoteEscape[source]

Bases: ly.lex._token.Character

rx = u'\\\\[\\\\"]'
class ly.lex.scheme.StringQuotedEnd[source]

Bases: ly.lex.scheme.String, ly.lex._token.StringEnd

rx = u'"'
update_state(state)[source]
class ly.lex.scheme.StringQuotedStart[source]

Bases: ly.lex.scheme.String, ly.lex._token.StringStart

rx = u'"'
update_state(state)[source]
class ly.lex.scheme.Variable[source]

Bases: ly.lex.scheme.Word

classmethod test_match(match)[source]
class ly.lex.scheme.VectorStart[source]

Bases: ly.lex.scheme.OpenParen

rx = u'#\\('
class ly.lex.scheme.Word[source]

Bases: ly.lex.scheme.Scheme, ly.lex._token.Item

rx = u'[^()"{}\\s]+'

ly.lex.texinfo module

Parses and tokenizes Texinfo input, recognizing LilyPond in Texinfo.

class ly.lex.texinfo.Accent[source]

Bases: ly.lex.texinfo.EscapeChar

rx = u'@[\'"\',=^`~](\\{[a-zA-Z]\\}|[a-zA-Z]\\b)'
class ly.lex.texinfo.Attribute[source]

Bases: ly.lex._token.Token

class ly.lex.texinfo.Block[source]

Bases: ly.lex._token.Token

class ly.lex.texinfo.BlockCommentEnd[source]

Bases: ly.lex.texinfo.Comment, ly.lex._token.Leaver, ly.lex._token.BlockCommentEnd

rx = u'@end\\s+ignore\\b'
class ly.lex.texinfo.BlockCommentStart[source]

Bases: ly.lex.texinfo.Comment, ly.lex._token.BlockCommentStart

rx = u'@ignore\\b'
update_state(state)[source]
class ly.lex.texinfo.BlockEnd[source]

Bases: ly.lex.texinfo.Block, ly.lex._token.Leaver

rx = u'\\}'
class ly.lex.texinfo.BlockStart[source]

Bases: ly.lex.texinfo.Block

rx = u'@[a-zA-Z]+\\{'
update_state(state)[source]
class ly.lex.texinfo.Comment[source]

Bases: ly.lex._token.Comment

class ly.lex.texinfo.EscapeChar[source]

Bases: ly.lex._token.Character

rx = u'@[@{}]'
class ly.lex.texinfo.Keyword[source]

Bases: ly.lex._token.Token

rx = u'@[a-zA-Z]+'
class ly.lex.texinfo.LilyPondAttrEnd[source]

Bases: ly.lex.texinfo.Attribute, ly.lex._token.Leaver

rx = u'\\]'
class ly.lex.texinfo.LilyPondAttrStart[source]

Bases: ly.lex.texinfo.Attribute

rx = u'\\['
update_state(state)[source]
class ly.lex.texinfo.LilyPondBlockEnd[source]

Bases: ly.lex.texinfo.Block, ly.lex._token.Leaver

rx = u'\\}'
class ly.lex.texinfo.LilyPondBlockStart[source]

Bases: ly.lex.texinfo.Block

rx = u'@lilypond(?=(\\[[a-zA-Z,=0-9\\\\\\s]+\\])?\\{)'
update_state(state)[source]
class ly.lex.texinfo.LilyPondBlockStartBrace[source]

Bases: ly.lex.texinfo.Block

rx = u'\\{'
update_state(state)[source]
class ly.lex.texinfo.LilyPondEnvEnd[source]

Bases: ly.lex.texinfo.Keyword, ly.lex._token.Leaver

rx = u'@end\\s+lilypond\\b'
class ly.lex.texinfo.LilyPondEnvStart[source]

Bases: ly.lex.texinfo.Keyword

rx = u'@lilypond\\b'
update_state(state)[source]
class ly.lex.texinfo.LilyPondFileStart[source]

Bases: ly.lex.texinfo.Block

rx = u'@lilypondfile\\b'
update_state(state)[source]
class ly.lex.texinfo.LilyPondFileStartBrace[source]

Bases: ly.lex.texinfo.Block

rx = u'\\{'
update_state(state)[source]
class ly.lex.texinfo.LineComment[source]

Bases: ly.lex.texinfo.Comment, ly.lex._token.LineComment

rx = u'@c\\b.*$'
class ly.lex.texinfo.ParseBlock(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex.texinfo.BlockEnd'>, <class 'ly.lex.texinfo.Accent'>, <class 'ly.lex.texinfo.EscapeChar'>, <class 'ly.lex.texinfo.BlockStart'>, <class 'ly.lex.texinfo.Keyword'>)
pattern = <_sre.SRE_Pattern object at 0x2141720>
class ly.lex.texinfo.ParseComment(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of Comment

items = (<class 'ly.lex.texinfo.BlockCommentEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.ParseLilyPondAttr(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of Attribute

items = (<class 'ly.lex.texinfo.LilyPondAttrEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.ParseLilyPondBlock(argcount=None)[source]

Bases: ly.lex.lilypond.ParseGlobal

items = (<class 'ly.lex.texinfo.LilyPondBlockEnd'>, <class 'ly.lex.lilypond.Book'>, <class 'ly.lex.lilypond.BookPart'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x2fc3510>
class ly.lex.texinfo.ParseLilyPondBlockAttr(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex.texinfo.LilyPondAttrStart'>, <class 'ly.lex.texinfo.LilyPondBlockStartBrace'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.ParseLilyPondEnv(argcount=None)[source]

Bases: ly.lex.lilypond.ParseGlobal

items = (<class 'ly.lex.texinfo.LilyPondEnvEnd'>, <class 'ly.lex.lilypond.Book'>, <class 'ly.lex.lilypond.BookPart'>, <class 'ly.lex.lilypond.Score'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.Paper'>, <class 'ly.lex.lilypond.Header'>, <class 'ly.lex.lilypond.Layout'>, <class 'ly.lex._token.Space'>, <class 'ly.lex.lilypond.BlockCommentStart'>, <class 'ly.lex.lilypond.LineComment'>, <class 'ly.lex.lilypond.SchemeStart'>, <class 'ly.lex.lilypond.StringQuotedStart'>, <class 'ly.lex.lilypond.SequentialStart'>, <class 'ly.lex.lilypond.SimultaneousStart'>, <class 'ly.lex.lilypond.Repeat'>, <class 'ly.lex.lilypond.PitchCommand'>, <class 'ly.lex.lilypond.Override'>, <class 'ly.lex.lilypond.Revert'>, <class 'ly.lex.lilypond.Set'>, <class 'ly.lex.lilypond.Unset'>, <class 'ly.lex.lilypond.Hide'>, <class 'ly.lex.lilypond.Omit'>, <class 'ly.lex.lilypond.Tweak'>, <class 'ly.lex.lilypond.New'>, <class 'ly.lex.lilypond.Context'>, <class 'ly.lex.lilypond.Change'>, <class 'ly.lex.lilypond.With'>, <class 'ly.lex.lilypond.Clef'>, <class 'ly.lex.lilypond.Tempo'>, <class 'ly.lex.lilypond.Partial'>, <class 'ly.lex.lilypond.KeySignatureMode'>, <class 'ly.lex.lilypond.AccidentalStyle'>, <class 'ly.lex.lilypond.AlterBroken'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.ChordMode'>, <class 'ly.lex.lilypond.DrumMode'>, <class 'ly.lex.lilypond.FigureMode'>, <class 'ly.lex.lilypond.LyricMode'>, <class 'ly.lex.lilypond.NoteMode'>, <class 'ly.lex.lilypond.MarkupStart'>, <class 'ly.lex.lilypond.MarkupLines'>, <class 'ly.lex.lilypond.MarkupList'>, <class 'ly.lex.lilypond.ArticulationCommand'>, <class 'ly.lex.lilypond.Keyword'>, <class 'ly.lex.lilypond.Command'>, <class 'ly.lex.lilypond.SimultaneousOrSequentialCommand'>, <class 'ly.lex.lilypond.UserCommand'>, <class 'ly.lex.lilypond.Name'>, <class 'ly.lex.lilypond.DotPath'>, <class 'ly.lex.lilypond.EqualSign'>, <class 'ly.lex.lilypond.Fraction'>, <class 'ly.lex.lilypond.DecimalValue'>)
pattern = <_sre.SRE_Pattern object at 0x2fcca70>
class ly.lex.texinfo.ParseLilyPondEnvAttr(argcount=None)[source]

Bases: ly.lex.FallthroughParser

fallthrough(state)[source]
items = (<class 'ly.lex.texinfo.LilyPondAttrStart'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.ParseLilyPondFile(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex.texinfo.LilyPondAttrStart'>, <class 'ly.lex.texinfo.LilyPondFileStartBrace'>)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.ParseTexinfo(argcount=None)[source]

Bases: ly.lex.Parser

items = (<class 'ly.lex.texinfo.LineComment'>, <class 'ly.lex.texinfo.BlockCommentStart'>, <class 'ly.lex.texinfo.Accent'>, <class 'ly.lex.texinfo.EscapeChar'>, <class 'ly.lex.texinfo.LilyPondBlockStart'>, <class 'ly.lex.texinfo.LilyPondEnvStart'>, <class 'ly.lex.texinfo.LilyPondFileStart'>, <class 'ly.lex.texinfo.BlockStart'>, <class 'ly.lex.texinfo.VerbatimStart'>, <class 'ly.lex.texinfo.Keyword'>)
mode = u'texinfo'
pattern = <_sre.SRE_Pattern object at 0x2fcb520>
class ly.lex.texinfo.ParseVerbatim(argcount=None)[source]

Bases: ly.lex.Parser

default

alias of Verbatim

items = (<class 'ly.lex.texinfo.VerbatimEnd'>,)
pattern = <_sre.SRE_Pattern object>
class ly.lex.texinfo.Verbatim[source]

Bases: ly.lex._token.Token

class ly.lex.texinfo.VerbatimEnd[source]

Bases: ly.lex.texinfo.Keyword, ly.lex._token.Leaver

rx = u'@end\\s+verbatim\\b'
class ly.lex.texinfo.VerbatimStart[source]

Bases: ly.lex.texinfo.Keyword

rx = u'@verbatim\\b'
update_state(state)[source]