| Safe Haskell | Safe-Inferred |
|---|
Perform.Lilypond.Constants
Synopsis
- ly_global :: ScoreT.Instrument
- ly_qualified :: InstT.Qualified
- ly_synth :: code -> Inst.SynthDecl code
- data FreeCodePosition
- data CodePosition = CodePosition Attach Position Distribution
- data Attach
- data Position
- all_positions :: [CodePosition]
- data Distribution
- position_key :: CodePosition -> Key
- key_position :: Key -> Maybe CodePosition
- environ_code :: Environ -> [(CodePosition, Text)]
- with_code :: CodePosition -> Text -> Environ -> Environ
- free_code_key :: FreeCodePosition -> Key
- key_free_code :: Key -> Maybe FreeCodePosition
- environ_free_code :: Environ -> [(FreeCodePosition, Text)]
- with_free_code :: FreeCodePosition -> Text -> Environ -> Environ
- v_append_pitch :: Key
- v_tie_direction :: Key
- set_tuplet :: RealTime -> RealTime -> Environ
- get_tuplet :: Environ -> Maybe (RealTime, RealTime)
- v_tremolo :: Key
- v_meter :: Key
- v_subdivision :: Key
- v_movement :: Key
- mixed_pedal_style :: Text
ly-global instrument
ly_global :: ScoreT.Instrument Source #
This is a pseudo-instrument used to mark notes which are actually global lilypond directives. E.g., meter changes, page breaks, movement titles.
ly_synth :: code -> Inst.SynthDecl code Source #
code fragments
data FreeCodePosition Source #
A free-standing code fragment is merged in with its nearest
Constructors
| FreePrepend | |
| FreeAppend |
Instances
data CodePosition Source #
A code fragment that has to be attached to notes.
Constructors
| CodePosition Attach Position Distribution |
Instances
Chord goes before or after the whole chord, Note goes before or after the individual pitch within the chord.
all_positions :: [CodePosition] Source #
data Distribution Source #
If the note is split into multiple tied notes, which ones should get the code?
Instances
| Show Distribution Source # | |
Defined in Perform.Lilypond.Constants Methods showsPrec :: Int -> Distribution -> ShowS # show :: Distribution -> String # showList :: [Distribution] -> ShowS # | |
| Eq Distribution Source # | |
Defined in Perform.Lilypond.Constants | |
| Ord Distribution Source # | |
Defined in Perform.Lilypond.Constants Methods compare :: Distribution -> Distribution -> Ordering # (<) :: Distribution -> Distribution -> Bool # (<=) :: Distribution -> Distribution -> Bool # (>) :: Distribution -> Distribution -> Bool # (>=) :: Distribution -> Distribution -> Bool # max :: Distribution -> Distribution -> Distribution # min :: Distribution -> Distribution -> Distribution # | |
position_key :: CodePosition -> Key Source #
key_position :: Key -> Maybe CodePosition Source #
environ_code :: Environ -> [(CodePosition, Text)] Source #
free_code_key :: FreeCodePosition -> Key Source #
key_free_code :: Key -> Maybe FreeCodePosition Source #
environ_free_code :: Environ -> [(FreeCodePosition, Text)] Source #
with_free_code :: FreeCodePosition -> Text -> Environ -> Environ Source #
other env keys
v_append_pitch :: Key Source #
String: append after the pitch, and before the duration. This is for
pitch modifiers like reminder accidentals (!) and cautionary accidentals
(?). TODO this isn't integrated with CodePosition, but maybe could be.
Would Prepend make any sense?
v_tie_direction :: Key Source #
String: "^" or "_", manually sets tie direction, if this note is tied.
tuplet
Arguments
| :: RealTime | score_dur is the visible duration in the score |
| -> RealTime | real_dur is the duration it actually consumes, so 3 quarters into 1 whole will be 3/4. |
| -> Environ |
Set the env vars that signals that the lilypond converter should make the following notes into a tuplet.
tremolo
This marks a tremolo event, which triggers special treatment for coincident notes.
ly-global
String: should be parseable by parse_meter,
e.g. '3/4'. Used only on >ly-global events.
v_subdivision :: Key Source #
String: this has the same format as v_meter, but it affects the rhythmic
spelling for the instrument.
v_movement :: Key Source #
String: Gives the title of a new movement. An event with ly_global
instrument and this env val will cause a movement break.
common code
mixed_pedal_style :: Text Source #
Emit Ped_^_/ style pedal markings.