- is_note :: Music -> Bool
- is_chord :: Music -> Bool
- is_rest :: Music -> Bool
- is_mm_rest :: Music -> Bool
- is_grace :: Music -> Bool
- is_after_grace :: Music -> Bool
- is_grace_skip :: Music -> Bool
- is_clef :: Music -> Bool
- is_time :: Music -> Bool
- is_tempo :: Music -> Bool
- is_barlinecheck :: Music -> Bool
- is_tied :: Music -> Bool
- is_tuplet :: Music -> Bool
- r_acc :: Music -> Music
- c_acc :: Music -> Music
- clr_acc :: Music -> Music
- octpc_to_note :: (Octave, PitchClass) -> Music
- r :: Duration -> Music
- r' :: TimeSignature -> Music
- empty_measure :: Integer -> Integer -> Music
- null_measure :: Integer -> Integer -> Music
- measure_rest :: Integer -> Integer -> Music
- measure_null :: Integer -> Integer -> Music
- type M_Annotation = Music
- data Measure = Measure [M_Annotation] [Music]
- m_annotate :: M_Annotation -> Measure -> Measure
- m_annotate' :: [M_Annotation] -> Measure -> Measure
- m_annotate_first' :: [M_Annotation] -> [Measure] -> [Measure]
- m_annotate_last' :: [M_Annotation] -> [Measure] -> [Measure]
- m_elements :: Measure -> [Music]
- mm_elements :: [Measure] -> [Music]
- edit_dur :: (Duration -> Duration) -> Music -> Music
- tuplet :: Tuplet_T -> [Music] -> Music
- tuplet_below :: Tuplet_T -> [Music] -> Music
- tuplet_above :: Tuplet_T -> [Music] -> Music
- scale_durations :: Tuplet_T -> [Music] -> Music
- time_signature :: TimeSignature -> Music
- with_time_signature :: TimeSignature -> [Music] -> Music
- ts_whole_note :: TimeSignature -> [Duration]
- ts_use_fractions :: Music
- ts_set_fraction :: Integer -> Integer -> Music
- numeric_time_signature :: Music
- ts_parentheses :: Music
- key :: Music -> Mode_T -> Music
- std_repeat :: Integer -> [Music] -> Music
- allows_annotations :: Music -> Bool
- add_annotation :: Annotation -> Music -> Maybe Music
- add_annotation_err :: Annotation -> Music -> Music
- (&) :: Music -> Annotation -> Music
- (&#) :: Pitch -> Annotation -> Music
- perhaps_annotate :: Annotation -> Music -> Music
- bracket_annotation_fn :: (Annotation -> Music -> Music) -> (Annotation, Annotation) -> [Music] -> [Music]
- bracket_annotation :: (Annotation, Annotation) -> [Music] -> [Music]
- bracket_annotation' :: (Annotation, Annotation) -> [Music] -> [Music]
- beam' :: [Music] -> [Music]
- beam :: [Music] -> Music
- slur' :: [Music] -> [Music]
- slur :: [Music] -> Music
- phrasing_slur' :: [Music] -> [Music]
- phrasing_slur :: [Music] -> Music
- text_below :: String -> Annotation
- text_above :: String -> Annotation
- pizz :: Annotation
- arco :: Annotation
- stem_tremolo :: Integer -> Annotation
- place_below :: Annotation -> Annotation
- place_above :: Annotation -> Annotation
- note_annotate :: Annotation -> Music -> Music
- initial_note_chord_annotate :: Annotation -> [Music] -> [Music]
- allows_indirect_annotation :: Music -> Bool
- indirect_annotation :: Annotation -> Music -> Music
- attach_indirect_annotation :: Annotation -> [Music] -> [Music]
- note_edit_octave :: (Integer -> Integer) -> Music -> Music
- note_shift_octave :: Integer -> Music -> Music
- p_and :: (t -> Bool) -> (t -> Bool) -> t -> Bool
- p_or :: (t -> Bool) -> (t -> Bool) -> t -> Bool
- span_r :: (a -> Bool) -> [a] -> ([a], [a], [a])
- perhaps_beam :: [Music] -> [Music]
- beam_notes :: [Music] -> Music
- set_subdivide_beams :: Integer -> Music
- (##) :: Pitch -> Duration -> Music
- (#) :: Music -> Duration -> Music
- chd_p :: [Pitch] -> Duration -> Music
- chd :: [Music] -> Duration -> Music
- bar_number_check :: Integer -> Music
- change :: String -> Music
- partial :: Duration -> Music
- hairpin_circled_tip :: Bool -> Music
- hairpin_to_barline :: Bool -> Music
- name_to_id :: Staff_Name -> Staff_ID
- staff :: Staff_Name -> [Music] -> Staff
- rhythmic_staff :: Staff_Name -> [Music] -> Staff
- text_staff :: Staff_Name -> String -> [Music] -> Staff
- piano_staff :: Staff_Name -> [[Music]] -> Staff
- grand_staff :: Staff_Name -> [[Music]] -> Staff
- staff_group :: Staff_Name -> [[Music]] -> Staff
- rhythmic_grand_staff :: Staff_Name -> [[Music]] -> Staff
- grand_staff' :: Staff_Name -> [Staff_Name] -> [[Music]] -> Staff
- staff_group' :: Staff_Name -> [Staff_Name] -> [[Music]] -> Staff
- two_part_staff :: Staff_Name -> ([Music], [Music]) -> Staff
- instr_name :: Staff_Name -> Staff -> Staff
- resize_staff :: Int -> Staff -> Staff
- score :: [Staff] -> Score
- tempo :: Duration -> Integer -> Music
- after_grace :: Music -> Music -> Music
- grace :: Music -> Music
- tremolo :: (Music, Music) -> Integer -> Music
- polyphony :: Music -> Music -> Music
- polyphony' :: [Music] -> [Music] -> Music
- cross_noteheads :: Music
- revert_noteheads :: Music
- join_rests :: [Music] -> [Music]
- module Music.LilyPond.Light.Constant
- module Music.LilyPond.Light.Constant.NoteName
- module Music.LilyPond.Light.Model
- module Music.LilyPond.Light.Output.LilyPond
- module Music.Theory.Duration
- module Music.Theory.Duration.Name
- module Music.Theory.Key
- module Music.Theory.Pitch
Music category predicates
is_mm_rest :: Music -> BoolSource
is_after_grace :: Music -> BoolSource
is_grace_skip :: Music -> BoolSource
These are required to avoid issues in lilypond (see manual)
is_barlinecheck :: Music -> BoolSource
Pitch
octpc_to_note :: (Octave, PitchClass) -> MusicSource
Rests
r' :: TimeSignature -> MusicSource
empty_measure :: Integer -> Integer -> MusicSource
Create an empty measure for the specified time signature.
null_measure :: Integer -> Integer -> MusicSource
Like empty_measure, but with an invisible rest.
measure_rest :: Integer -> Integer -> MusicSource
Like empty_measure but write time signature.
measure_null :: Integer -> Integer -> MusicSource
Like measure_rest but write time signature.
Measures
type M_Annotation = MusicSource
Measure [M_Annotation] [Music] |
m_annotate :: M_Annotation -> Measure -> MeasureSource
m_annotate' :: [M_Annotation] -> Measure -> MeasureSource
m_annotate_first' :: [M_Annotation] -> [Measure] -> [Measure]Source
m_annotate_last' :: [M_Annotation] -> [Measure] -> [Measure]Source
m_elements :: Measure -> [Music]Source
mm_elements :: [Measure] -> [Music]Source
Tuplets
edit_dur :: (Duration -> Duration) -> Music -> MusicSource
Apply fn to the duration of x, if it has a duration.
tuplet_below :: Tuplet_T -> [Music] -> MusicSource
Tuplet variants that set location, and then restore to neutral.
tuplet_above :: Tuplet_T -> [Music] -> MusicSource
scale_durations :: Tuplet_T -> [Music] -> MusicSource
Like tuplet but does not annotate music, see also
ts_set_fraction
.
Time signatures
time_signature :: TimeSignature -> MusicSource
Construct time signature.
with_time_signature :: TimeSignature -> [Music] -> MusicSource
Allow proper auto-indenting of multiple measures with the same time signature.
ts_whole_note :: TimeSignature -> [Duration]Source
Tied, non-multiplied durations to fill a whole measure.
ts_use_fractions :: MusicSource
Command to request that 44 and 22 etc. are typeset as fractions.
ts_set_fraction :: Integer -> Integer -> MusicSource
Set the printed time-signature fraction.
Key signatures
Repetition
std_repeat :: Integer -> [Music] -> MusicSource
Construct standard (two times) repeat.
Annotations
allows_annotations :: Music -> BoolSource
Can a music element be annotated?
add_annotation :: Annotation -> Music -> Maybe MusicSource
Add an annotation to music element.
add_annotation_err :: Annotation -> Music -> MusicSource
Add an annotation to music element or error.
(&) :: Music -> Annotation -> MusicSource
Add an annotation to music element, or error.
(&#) :: Pitch -> Annotation -> MusicSource
Add an annotation to a pitch.
perhaps_annotate :: Annotation -> Music -> MusicSource
Add an annotation to music element.
bracket_annotation_fn :: (Annotation -> Music -> Music) -> (Annotation, Annotation) -> [Music] -> [Music]Source
bracket_annotation :: (Annotation, Annotation) -> [Music] -> [Music]Source
bracket_annotation' :: (Annotation, Annotation) -> [Music] -> [Music]Source
phrasing_slur' :: [Music] -> [Music]Source
phrasing_slur :: [Music] -> MusicSource
text_below :: String -> AnnotationSource
text_above :: String -> AnnotationSource
note_annotate :: Annotation -> Music -> MusicSource
Add an annotation to a note element, else identity.
initial_note_chord_annotate :: Annotation -> [Music] -> [Music]Source
Annotate the first note/chord element.
Indirect annotations
indirect_annotation :: Annotation -> Music -> MusicSource
attach_indirect_annotation :: Annotation -> [Music] -> [Music]Source
Octave
note_edit_octave :: (Integer -> Integer) -> Music -> MusicSource
Shift the octave of a note element, else identity.
note_shift_octave :: Integer -> Music -> MusicSource
Shift the octave of a note element, else identity.
Beaming
perhaps_beam :: [Music] -> [Music]Source
Beam if at least two elements.
beam_notes :: [Music] -> MusicSource
Beam interior notes/chords (ie. skip exterior non-note/non-chords).
Duration
Chords
Commands
bar_number_check :: Integer -> MusicSource
Construct bar number check.
Staff and Parts
staff :: Staff_Name -> [Music] -> StaffSource
Construct staff.
rhythmic_staff :: Staff_Name -> [Music] -> StaffSource
Construct rhythmic staff.
text_staff :: Staff_Name -> String -> [Music] -> StaffSource
Construct staff with text underlay.
piano_staff :: Staff_Name -> [[Music]] -> StaffSource
Construct piano staff. For two staff piano music the staffs have identifiers rh and lh.
grand_staff :: Staff_Name -> [[Music]] -> StaffSource
staff_group :: Staff_Name -> [[Music]] -> StaffSource
rhythmic_grand_staff :: Staff_Name -> [[Music]] -> StaffSource
grand_staff' :: Staff_Name -> [Staff_Name] -> [[Music]] -> StaffSource
Variant with names for each staff.
staff_group' :: Staff_Name -> [Staff_Name] -> [[Music]] -> StaffSource
two_part_staff :: Staff_Name -> ([Music], [Music]) -> StaffSource
instr_name :: Staff_Name -> Staff -> StaffSource
resize_staff :: Int -> Staff -> StaffSource
Aliases
after_grace :: Music -> Music -> MusicSource
polyphony :: Music -> Music -> MusicSource
Interior polyphony. For two part music on one staff see two_part_staff.
polyphony' :: [Music] -> [Music] -> MusicSource
Noteheads
cross_noteheads :: MusicSource
Request cross note-heads.
revert_noteheads :: MusicSource
Revert to standard note-heads.
Rests
join_rests :: [Music] -> [Music]Source
Joins directly adjacent rest elements.
module Music.LilyPond.Light.Model
module Music.Theory.Duration
module Music.Theory.Duration.Name
module Music.Theory.Key
module Music.Theory.Pitch