Abjad API
=========

Abjad composition packages
--------------------------

.. toctree::
   :maxdepth: 1

:py:mod:`chordtools <abjad.tools.chordtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: chordtools concrete classes

.. toctree::
   :maxdepth: 1

   tools/chordtools/Chord/Chord

.. rubric:: chordtools functions

.. toctree::
   :maxdepth: 1

   tools/chordtools/all_are_chords
   tools/chordtools/arpeggiate_chord
   tools/chordtools/change_defective_chord_to_note_or_rest
   tools/chordtools/color_chord_note_heads_by_pitch_class_color_map
   tools/chordtools/divide_chord_by_chromatic_pitch_number
   tools/chordtools/divide_chord_by_diatonic_pitch_number
   tools/chordtools/get_arithmetic_mean_of_chord
   tools/chordtools/get_note_head_from_chord_by_pitch
   tools/chordtools/iterate_chords_backward_in_expr
   tools/chordtools/iterate_chords_forward_in_expr
   tools/chordtools/yield_all_subchords_of_chord
   tools/chordtools/yield_groups_of_chords_in_sequence

:py:mod:`componenttools <abjad.tools.componenttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: componenttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/componenttools/Component/Component

.. rubric:: componenttools functions

.. toctree::
   :maxdepth: 1

   tools/componenttools/all_are_components
   tools/componenttools/all_are_components_in_same_parent
   tools/componenttools/all_are_components_in_same_score
   tools/componenttools/all_are_components_in_same_thread
   tools/componenttools/all_are_components_scalable_by_multiplier
   tools/componenttools/all_are_contiguous_components
   tools/componenttools/all_are_contiguous_components_in_same_parent
   tools/componenttools/all_are_contiguous_components_in_same_score
   tools/componenttools/all_are_contiguous_components_in_same_thread
   tools/componenttools/all_are_orphan_components
   tools/componenttools/all_are_thread_contiguous_components
   tools/componenttools/component_to_parentage_signature
   tools/componenttools/component_to_pitch_and_rhythm_skeleton
   tools/componenttools/component_to_score_depth
   tools/componenttools/component_to_score_index
   tools/componenttools/component_to_score_root
   tools/componenttools/component_to_tuplet_depth
   tools/componenttools/copy_and_partition_governed_component_subtree_by_leaf_counts
   tools/componenttools/copy_components_and_covered_spanners
   tools/componenttools/copy_components_and_fracture_crossing_spanners
   tools/componenttools/copy_components_and_immediate_parent_of_first_component
   tools/componenttools/copy_components_and_remove_all_spanners
   tools/componenttools/copy_governed_component_subtree_by_leaf_range
   tools/componenttools/copy_governed_component_subtree_from_prolated_offset_to
   tools/componenttools/cut_component_at_prolated_duration
   tools/componenttools/extend_in_parent_of_component_and_do_not_grow_spanners
   tools/componenttools/extend_in_parent_of_component_and_grow_spanners
   tools/componenttools/extend_left_in_parent_of_component_and_do_not_grow_spanners
   tools/componenttools/extend_left_in_parent_of_component_and_grow_spanners
   tools/componenttools/get_component_start_offset
   tools/componenttools/get_component_start_offset_in_seconds
   tools/componenttools/get_component_stop_offset
   tools/componenttools/get_component_stop_offset_in_seconds
   tools/componenttools/get_first_component_in_expr_with_name
   tools/componenttools/get_first_component_with_name_in_improper_parentage_of_component
   tools/componenttools/get_first_component_with_name_in_proper_parentage_of_component
   tools/componenttools/get_first_instance_of_klass_in_improper_parentage_of_component
   tools/componenttools/get_first_instance_of_klass_in_proper_parentage_of_component
   tools/componenttools/get_improper_parentage_of_component
   tools/componenttools/get_likely_multiplier_of_components
   tools/componenttools/get_nth_component_in_expr
   tools/componenttools/get_nth_namesake_from_component
   tools/componenttools/get_parent_and_start_stop_indices_of_components
   tools/componenttools/get_proper_parentage_of_component
   tools/componenttools/is_beamable_component
   tools/componenttools/is_orphan_component
   tools/componenttools/is_well_formed_component
   tools/componenttools/iterate_components_backward_in_expr
   tools/componenttools/iterate_components_depth_first
   tools/componenttools/iterate_components_forward_in_expr
   tools/componenttools/iterate_namesakes_backward_from_component
   tools/componenttools/iterate_namesakes_forward_from_component
   tools/componenttools/iterate_timeline_backward_from_component
   tools/componenttools/iterate_timeline_backward_in_expr
   tools/componenttools/iterate_timeline_forward_from_component
   tools/componenttools/iterate_timeline_forward_in_expr
   tools/componenttools/list_badly_formed_components_in_expr
   tools/componenttools/list_improper_contents_of_component_that_cross_prolated_offset
   tools/componenttools/list_leftmost_components_with_prolated_duration_at_most
   tools/componenttools/move_component_subtree_to_right_in_immediate_parent_of_component
   tools/componenttools/move_parentage_and_spanners_from_components_to_components
   tools/componenttools/number_is_between_prolated_start_and_stop_offsets_of_component
   tools/componenttools/number_is_between_start_and_stop_offsets_of_component_in_seconds
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_exactly_with_overhang
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_exactly_without_overhang
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_ge_with_overhang
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_ge_without_overhang
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_le_with_overhang
   tools/componenttools/partition_components_cyclically_by_durations_in_seconds_le_without_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_exactly_with_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_exactly_without_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_ge_with_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_ge_without_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_le_with_overhang
   tools/componenttools/partition_components_cyclically_by_prolated_durations_le_without_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_exactly_with_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_exactly_without_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_ge_with_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_ge_without_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_le_with_overhang
   tools/componenttools/partition_components_once_by_durations_in_seconds_le_without_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_exactly_with_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_exactly_without_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_ge_with_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_ge_without_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_le_with_overhang
   tools/componenttools/partition_components_once_by_prolated_durations_le_without_overhang
   tools/componenttools/remove_component_subtree_from_score_and_spanners
   tools/componenttools/replace_components_with_children_of_components
   tools/componenttools/report_component_format_contributions_as_string
   tools/componenttools/split_component_at_prolated_duration_and_do_not_fracture_crossing_spanners
   tools/componenttools/split_component_at_prolated_duration_and_fracture_crossing_spanners
   tools/componenttools/split_components_cyclically_by_prolated_durations_and_do_not_fracture_crossing_spanners
   tools/componenttools/split_components_cyclically_by_prolated_durations_and_fracture_crossing_spanners
   tools/componenttools/split_components_once_by_prolated_durations_and_do_not_fracture_crossing_spanners
   tools/componenttools/split_components_once_by_prolated_durations_and_fracture_crossing_spanners
   tools/componenttools/sum_duration_of_components_in_seconds
   tools/componenttools/sum_preprolated_duration_of_components
   tools/componenttools/sum_prolated_duration_of_components
   tools/componenttools/tabulate_well_formedness_violations_in_expr
   tools/componenttools/yield_components_grouped_by_preprolated_duration
   tools/componenttools/yield_components_grouped_by_prolated_duration
   tools/componenttools/yield_groups_of_mixed_klasses_in_sequence
   tools/componenttools/yield_topmost_components_grouped_by_type
   tools/componenttools/yield_topmost_components_of_klass_grouped_by_type

:py:mod:`containertools <abjad.tools.containertools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: containertools concrete classes

.. toctree::
   :maxdepth: 1

   tools/containertools/Cluster/Cluster
   tools/containertools/Container/Container

.. rubric:: containertools functions

.. toctree::
   :maxdepth: 1

   tools/containertools/all_are_containers
   tools/containertools/color_contents_of_container
   tools/containertools/delete_contents_of_container
   tools/containertools/delete_contents_of_container_starting_at_or_after_prolated_offset
   tools/containertools/delete_contents_of_container_starting_before_or_at_prolated_offset
   tools/containertools/delete_contents_of_container_starting_strictly_after_prolated_offset
   tools/containertools/delete_contents_of_container_starting_strictly_before_prolated_offset
   tools/containertools/eject_contents_of_container
   tools/containertools/fuse_like_named_contiguous_containers_in_expr
   tools/containertools/get_element_starting_at_exactly_prolated_offset
   tools/containertools/get_first_container_in_improper_parentage_of_component
   tools/containertools/get_first_container_in_proper_parentage_of_component
   tools/containertools/get_first_element_starting_at_or_after_prolated_offset
   tools/containertools/get_first_element_starting_before_or_at_prolated_offset
   tools/containertools/get_first_element_starting_strictly_after_prolated_offset
   tools/containertools/get_first_element_starting_strictly_before_prolated_offset
   tools/containertools/insert_component_and_do_not_fracture_crossing_spanners
   tools/containertools/insert_component_and_fracture_crossing_spanners
   tools/containertools/iterate_containers_backward_in_expr
   tools/containertools/iterate_containers_forward_in_expr
   tools/containertools/move_parentage_children_and_spanners_from_components_to_empty_container
   tools/containertools/remove_empty_containers_in_expr
   tools/containertools/repeat_contents_of_container
   tools/containertools/repeat_last_n_elements_of_container
   tools/containertools/replace_contents_of_target_container_with_contents_of_source_container
   tools/containertools/replace_larger_left_half_of_elements_in_container_with_big_endian_rests
   tools/containertools/replace_larger_left_half_of_elements_in_container_with_little_endian_rests
   tools/containertools/replace_larger_right_half_of_elements_in_container_with_big_endian_rests
   tools/containertools/replace_larger_right_half_of_elements_in_container_with_little_endian_rests
   tools/containertools/replace_n_edge_elements_in_container_with_big_endian_rests
   tools/containertools/replace_n_edge_elements_in_container_with_little_endian_rests
   tools/containertools/replace_n_edge_elements_in_container_with_rests
   tools/containertools/replace_smaller_left_half_of_elements_in_container_with_big_endian_rests
   tools/containertools/replace_smaller_left_half_of_elements_in_container_with_little_endian_rests
   tools/containertools/replace_smaller_right_half_of_elements_in_container_with_big_endian_rests
   tools/containertools/replace_smaller_right_half_of_elements_in_container_with_little_endian_rests
   tools/containertools/report_container_modifications_as_string
   tools/containertools/reverse_contents_of_container
   tools/containertools/scale_contents_of_container
   tools/containertools/set_container_multiplier
   tools/containertools/split_container_at_index_and_do_not_fracture_crossing_spanners
   tools/containertools/split_container_at_index_and_fracture_crossing_spanners
   tools/containertools/split_container_cyclically_by_counts_and_do_not_fracture_crossing_spanners
   tools/containertools/split_container_cyclically_by_counts_and_fracture_crossing_spanners
   tools/containertools/split_container_once_by_counts_and_do_not_fracture_crossing_spanners
   tools/containertools/split_container_once_by_counts_and_fracture_crossing_spanners

:py:mod:`contexttools <abjad.tools.contexttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: contexttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/contexttools/ClefMark/ClefMark
   tools/contexttools/ClefMarkInventory/ClefMarkInventory
   tools/contexttools/Context/Context
   tools/contexttools/ContextMark/ContextMark
   tools/contexttools/DynamicMark/DynamicMark
   tools/contexttools/InstrumentMark/InstrumentMark
   tools/contexttools/KeySignatureMark/KeySignatureMark
   tools/contexttools/StaffChangeMark/StaffChangeMark
   tools/contexttools/TempoMark/TempoMark
   tools/contexttools/TempoMarkInventory/TempoMarkInventory
   tools/contexttools/TimeSignatureMark/TimeSignatureMark

.. rubric:: contexttools functions

.. toctree::
   :maxdepth: 1

   tools/contexttools/detach_clef_marks_attached_to_component
   tools/contexttools/detach_context_marks_attached_to_component
   tools/contexttools/detach_dynamic_marks_attached_to_component
   tools/contexttools/detach_instrument_marks_attached_to_component
   tools/contexttools/detach_key_signature_marks_attached_to_component
   tools/contexttools/detach_staff_change_marks_attached_to_component
   tools/contexttools/detach_tempo_marks_attached_to_component
   tools/contexttools/detach_time_signature_marks_attached_to_component
   tools/contexttools/get_clef_mark_attached_to_component
   tools/contexttools/get_clef_marks_attached_to_component
   tools/contexttools/get_context_mark_attached_to_component
   tools/contexttools/get_context_marks_attached_to_any_improper_parent_of_component
   tools/contexttools/get_context_marks_attached_to_component
   tools/contexttools/get_dynamic_mark_attached_to_component
   tools/contexttools/get_dynamic_marks_attached_to_component
   tools/contexttools/get_effective_clef
   tools/contexttools/get_effective_context_mark
   tools/contexttools/get_effective_dynamic
   tools/contexttools/get_effective_instrument
   tools/contexttools/get_effective_key_signature
   tools/contexttools/get_effective_staff
   tools/contexttools/get_effective_tempo
   tools/contexttools/get_effective_time_signature
   tools/contexttools/get_instrument_mark_attached_to_component
   tools/contexttools/get_instrument_marks_attached_to_component
   tools/contexttools/get_key_signature_mark_attached_to_component
   tools/contexttools/get_key_signature_marks_attached_to_component
   tools/contexttools/get_staff_change_mark_attached_to_component
   tools/contexttools/get_staff_change_marks_attached_to_component
   tools/contexttools/get_tempo_mark_attached_to_component
   tools/contexttools/get_tempo_marks_attached_to_component
   tools/contexttools/get_time_signature_mark_attached_to_component
   tools/contexttools/get_time_signature_marks_attached_to_component
   tools/contexttools/is_component_with_clef_mark_attached
   tools/contexttools/is_component_with_context_mark_attached
   tools/contexttools/is_component_with_dynamic_mark_attached
   tools/contexttools/is_component_with_instrument_mark_attached
   tools/contexttools/is_component_with_key_signature_mark_attached
   tools/contexttools/is_component_with_staff_change_mark_attached
   tools/contexttools/is_component_with_tempo_mark_attached
   tools/contexttools/is_component_with_time_signature_mark_attached
   tools/contexttools/iterate_contexts_backward_in_expr
   tools/contexttools/iterate_contexts_forward_in_expr
   tools/contexttools/list_clef_names
   tools/contexttools/set_accidental_style_on_sequential_contexts_in_expr

:py:mod:`gracetools <abjad.tools.gracetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: gracetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/gracetools/Grace/Grace

.. rubric:: gracetools functions

.. toctree::
   :maxdepth: 1

   tools/gracetools/all_are_grace_containers
   tools/gracetools/detach_grace_containers_attached_to_leaf
   tools/gracetools/get_grace_containers_attached_to_leaf
   tools/gracetools/iterate_components_and_grace_containers_forward_in_expr

:py:mod:`instrumenttools <abjad.tools.instrumenttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: instrumenttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/instrumenttools/Accordion/Accordion
   tools/instrumenttools/AltoFlute/AltoFlute
   tools/instrumenttools/AltoSaxophone/AltoSaxophone
   tools/instrumenttools/AltoTrombone/AltoTrombone
   tools/instrumenttools/BFlatClarinet/BFlatClarinet
   tools/instrumenttools/BaritoneSaxophone/BaritoneSaxophone
   tools/instrumenttools/BaritoneVoice/BaritoneVoice
   tools/instrumenttools/BassClarinet/BassClarinet
   tools/instrumenttools/BassFlute/BassFlute
   tools/instrumenttools/BassSaxophone/BassSaxophone
   tools/instrumenttools/BassTrombone/BassTrombone
   tools/instrumenttools/BassVoice/BassVoice
   tools/instrumenttools/Bassoon/Bassoon
   tools/instrumenttools/Cello/Cello
   tools/instrumenttools/ClarinetInA/ClarinetInA
   tools/instrumenttools/Contrabass/Contrabass
   tools/instrumenttools/ContrabassClarinet/ContrabassClarinet
   tools/instrumenttools/ContrabassFlute/ContrabassFlute
   tools/instrumenttools/ContrabassSaxophone/ContrabassSaxophone
   tools/instrumenttools/Contrabassoon/Contrabassoon
   tools/instrumenttools/ContraltoVoice/ContraltoVoice
   tools/instrumenttools/EFlatClarinet/EFlatClarinet
   tools/instrumenttools/EnglishHorn/EnglishHorn
   tools/instrumenttools/Flute/Flute
   tools/instrumenttools/FrenchHorn/FrenchHorn
   tools/instrumenttools/Glockenspiel/Glockenspiel
   tools/instrumenttools/Guitar/Guitar
   tools/instrumenttools/Harp/Harp
   tools/instrumenttools/Harpsichord/Harpsichord
   tools/instrumenttools/InstrumentInventory/InstrumentInventory
   tools/instrumenttools/Marimba/Marimba
   tools/instrumenttools/MezzoSopranoVoice/MezzoSopranoVoice
   tools/instrumenttools/Oboe/Oboe
   tools/instrumenttools/Piano/Piano
   tools/instrumenttools/Piccolo/Piccolo
   tools/instrumenttools/SopraninoSaxophone/SopraninoSaxophone
   tools/instrumenttools/SopranoSaxophone/SopranoSaxophone
   tools/instrumenttools/SopranoVoice/SopranoVoice
   tools/instrumenttools/TenorSaxophone/TenorSaxophone
   tools/instrumenttools/TenorTrombone/TenorTrombone
   tools/instrumenttools/TenorVoice/TenorVoice
   tools/instrumenttools/Trumpet/Trumpet
   tools/instrumenttools/Tuba/Tuba
   tools/instrumenttools/UntunedPercussion/UntunedPercussion
   tools/instrumenttools/Vibraphone/Vibraphone
   tools/instrumenttools/Viola/Viola
   tools/instrumenttools/Violin/Violin
   tools/instrumenttools/Xylophone/Xylophone

.. rubric:: instrumenttools functions

.. toctree::
   :maxdepth: 1

   tools/instrumenttools/default_instrument_name_to_instrument_class
   tools/instrumenttools/iterate_notes_and_chords_in_expr_outside_traditional_instrument_ranges
   tools/instrumenttools/list_instrument_names
   tools/instrumenttools/list_instruments
   tools/instrumenttools/list_primary_instruments
   tools/instrumenttools/list_secondary_instruments
   tools/instrumenttools/notes_and_chords_in_expr_are_on_expected_clefs
   tools/instrumenttools/notes_and_chords_in_expr_are_within_traditional_instrument_ranges
   tools/instrumenttools/transpose_notes_and_chords_in_expr_from_fingered_pitch_to_sounding_pitch
   tools/instrumenttools/transpose_notes_and_chords_in_expr_from_sounding_pitch_to_fingered_pitch

:py:mod:`leaftools <abjad.tools.leaftools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: leaftools concrete classes

.. toctree::
   :maxdepth: 1

   tools/leaftools/Leaf/Leaf

.. rubric:: leaftools functions

.. toctree::
   :maxdepth: 1

   tools/leaftools/all_are_leaves
   tools/leaftools/change_written_leaf_duration_and_preserve_preprolated_leaf_duration
   tools/leaftools/color_leaf
   tools/leaftools/color_leaves_in_expr
   tools/leaftools/copy_written_duration_and_multiplier_from_leaf_to_leaf
   tools/leaftools/divide_leaf_meiotically
   tools/leaftools/divide_leaves_in_expr_meiotically
   tools/leaftools/expr_has_leaf_with_dotted_written_duration
   tools/leaftools/fuse_leaves_big_endian
   tools/leaftools/fuse_leaves_in_container_once_by_counts_into_big_endian_notes
   tools/leaftools/fuse_leaves_in_container_once_by_counts_into_big_endian_rests
   tools/leaftools/fuse_leaves_in_container_once_by_counts_into_little_endian_notes
   tools/leaftools/fuse_leaves_in_container_once_by_counts_into_little_endian_rests
   tools/leaftools/fuse_leaves_in_tie_chain_by_immediate_parent_big_endian
   tools/leaftools/fuse_tied_leaves_in_components_once_by_prolated_durations_without_overhang
   tools/leaftools/get_composite_offset_difference_series_from_leaves_in_expr
   tools/leaftools/get_composite_offset_series_from_leaves_in_expr
   tools/leaftools/get_leaf_at_index_in_measure_number_in_expr
   tools/leaftools/get_leaf_in_expr_with_maximum_prolated_duration
   tools/leaftools/get_leaf_in_expr_with_minimum_prolated_duration
   tools/leaftools/get_nth_leaf_in_expr
   tools/leaftools/get_nth_leaf_in_thread_from_leaf
   tools/leaftools/is_bar_line_crossing_leaf
   tools/leaftools/iterate_leaf_pairs_forward_in_expr
   tools/leaftools/iterate_leaves_backward_in_expr
   tools/leaftools/iterate_leaves_forward_in_expr
   tools/leaftools/iterate_notes_and_chords_backward_in_expr
   tools/leaftools/iterate_notes_and_chords_forward_in_expr
   tools/leaftools/label_leaves_in_expr_with_inversion_equivalent_chromatic_interval_classes
   tools/leaftools/label_leaves_in_expr_with_leaf_depth
   tools/leaftools/label_leaves_in_expr_with_leaf_durations
   tools/leaftools/label_leaves_in_expr_with_leaf_indices
   tools/leaftools/label_leaves_in_expr_with_leaf_numbers
   tools/leaftools/label_leaves_in_expr_with_melodic_chromatic_interval_classes
   tools/leaftools/label_leaves_in_expr_with_melodic_chromatic_intervals
   tools/leaftools/label_leaves_in_expr_with_melodic_counterpoint_interval_classes
   tools/leaftools/label_leaves_in_expr_with_melodic_counterpoint_intervals
   tools/leaftools/label_leaves_in_expr_with_melodic_diatonic_interval_classes
   tools/leaftools/label_leaves_in_expr_with_melodic_diatonic_intervals
   tools/leaftools/label_leaves_in_expr_with_pitch_class_numbers
   tools/leaftools/label_leaves_in_expr_with_pitch_numbers
   tools/leaftools/label_leaves_in_expr_with_prolated_leaf_duration
   tools/leaftools/label_leaves_in_expr_with_tuplet_depth
   tools/leaftools/label_leaves_in_expr_with_written_leaf_duration
   tools/leaftools/leaf_to_augmented_tuplet_with_n_notes_of_equal_written_duration
   tools/leaftools/leaf_to_augmented_tuplet_with_proportions
   tools/leaftools/leaf_to_diminished_tuplet_with_n_notes_of_equal_written_duration
   tools/leaftools/leaf_to_diminished_tuplet_with_proportions
   tools/leaftools/list_prolated_durations_of_leaves_in_expr
   tools/leaftools/list_written_durations_of_leaves_in_expr
   tools/leaftools/make_leaves
   tools/leaftools/make_leaves_from_note_value_signal
   tools/leaftools/remove_initial_rests_from_sequence
   tools/leaftools/remove_leaf_and_shrink_durated_parent_containers
   tools/leaftools/remove_outer_rests_from_sequence
   tools/leaftools/remove_terminal_rests_from_sequence
   tools/leaftools/repeat_leaf_and_extend_spanners
   tools/leaftools/repeat_leaves_in_expr_and_extend_spanners
   tools/leaftools/replace_leaves_in_expr_with_named_parallel_voices
   tools/leaftools/replace_leaves_in_expr_with_parallel_voices
   tools/leaftools/scale_preprolated_leaf_duration
   tools/leaftools/set_preprolated_leaf_duration
   tools/leaftools/show_leaves
   tools/leaftools/split_leaf_at_prolated_duration_and_rest_right_half
   tools/leaftools/yield_groups_of_mixed_notes_and_chords_in_sequence

:py:mod:`lilypondfiletools <abjad.tools.lilypondfiletools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: lilypondfiletools concrete classes

.. toctree::
   :maxdepth: 1

   tools/lilypondfiletools/AbjadRevisionToken/AbjadRevisionToken
   tools/lilypondfiletools/BookBlock/BookBlock
   tools/lilypondfiletools/BookpartBlock/BookpartBlock
   tools/lilypondfiletools/ContextBlock/ContextBlock
   tools/lilypondfiletools/DateTimeToken/DateTimeToken
   tools/lilypondfiletools/HeaderBlock/HeaderBlock
   tools/lilypondfiletools/LayoutBlock/LayoutBlock
   tools/lilypondfiletools/LilyPondFile/LilyPondFile
   tools/lilypondfiletools/LilyPondLanguageToken/LilyPondLanguageToken
   tools/lilypondfiletools/LilyPondVersionToken/LilyPondVersionToken
   tools/lilypondfiletools/MIDIBlock/MIDIBlock
   tools/lilypondfiletools/PaperBlock/PaperBlock
   tools/lilypondfiletools/ScoreBlock/ScoreBlock

.. rubric:: lilypondfiletools functions

.. toctree::
   :maxdepth: 1

   tools/lilypondfiletools/make_basic_lilypond_file

:py:mod:`marktools <abjad.tools.marktools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: marktools concrete classes

.. toctree::
   :maxdepth: 1

   tools/marktools/Annotation/Annotation
   tools/marktools/Articulation/Articulation
   tools/marktools/BarLine/BarLine
   tools/marktools/BendAfter/BendAfter
   tools/marktools/LilyPondCommandMark/LilyPondCommandMark
   tools/marktools/LilyPondComment/LilyPondComment
   tools/marktools/Mark/Mark
   tools/marktools/StemTremolo/StemTremolo

.. rubric:: marktools functions

.. toctree::
   :maxdepth: 1

   tools/marktools/attach_annotations_to_components_in_expr
   tools/marktools/attach_articulations_to_notes_and_chords_in_expr
   tools/marktools/attach_lilypond_command_marks_to_components_in_expr
   tools/marktools/attach_lilypond_comments_to_components_in_expr
   tools/marktools/attach_stem_tremolos_to_notes_and_chords_in_expr
   tools/marktools/detach_annotations_attached_to_component
   tools/marktools/detach_articulations_attached_to_component
   tools/marktools/detach_lilypond_command_marks_attached_to_component
   tools/marktools/detach_lilypond_comments_attached_to_component
   tools/marktools/detach_marks_attached_to_component
   tools/marktools/detach_noncontext_marks_attached_to_component
   tools/marktools/detach_stem_tremolos_attached_to_component
   tools/marktools/get_annotation_attached_to_component
   tools/marktools/get_annotations_attached_to_component
   tools/marktools/get_articulation_attached_to_component
   tools/marktools/get_articulations_attached_to_component
   tools/marktools/get_lilypond_command_mark_attached_to_component
   tools/marktools/get_lilypond_command_marks_attached_to_component
   tools/marktools/get_lilypond_comment_attached_to_component
   tools/marktools/get_lilypond_comments_attached_to_component
   tools/marktools/get_mark_attached_to_component
   tools/marktools/get_marks_attached_to_component
   tools/marktools/get_noncontext_mark_attached_to_component
   tools/marktools/get_noncontext_marks_attached_to_component
   tools/marktools/get_stem_tremolo_attached_to_component
   tools/marktools/get_stem_tremolos_attached_to_component
   tools/marktools/get_value_of_annotation_attached_to_component
   tools/marktools/is_component_with_annotation_attached
   tools/marktools/is_component_with_articulation_attached
   tools/marktools/is_component_with_lilypond_command_mark_attached
   tools/marktools/is_component_with_lilypond_comment_attached
   tools/marktools/is_component_with_mark_attached
   tools/marktools/is_component_with_noncontext_mark_attached
   tools/marktools/is_component_with_stem_tremolo_attached

:py:mod:`markuptools <abjad.tools.markuptools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: markuptools concrete classes

.. toctree::
   :maxdepth: 1

   tools/markuptools/Markup/Markup
   tools/markuptools/MarkupCommand/MarkupCommand
   tools/markuptools/MarkupInventory/MarkupInventory

.. rubric:: markuptools functions

.. toctree::
   :maxdepth: 1

   tools/markuptools/all_are_markup
   tools/markuptools/combine_markup_commands
   tools/markuptools/get_down_markup_attached_to_component
   tools/markuptools/get_markup_attached_to_component
   tools/markuptools/get_up_markup_attached_to_component
   tools/markuptools/make_big_centered_page_number_markup
   tools/markuptools/remove_markup_attached_to_component
   tools/markuptools/remove_markup_from_leaves_in_expr

:py:mod:`measuretools <abjad.tools.measuretools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: measuretools concrete classes

.. toctree::
   :maxdepth: 1

   tools/measuretools/AnonymousMeasure/AnonymousMeasure
   tools/measuretools/DynamicMeasure/DynamicMeasure
   tools/measuretools/Measure/Measure

.. rubric:: measuretools functions

.. toctree::
   :maxdepth: 1

   tools/measuretools/all_are_measures
   tools/measuretools/append_spacer_skip_to_underfull_measure
   tools/measuretools/append_spacer_skips_to_underfull_measures_in_expr
   tools/measuretools/apply_beam_spanner_to_measure
   tools/measuretools/apply_beam_spanners_to_measures_in_expr
   tools/measuretools/apply_complex_beam_spanner_to_measure
   tools/measuretools/apply_complex_beam_spanners_to_measures_in_expr
   tools/measuretools/apply_durated_complex_beam_spanner_to_measures
   tools/measuretools/apply_full_measure_tuplets_to_contents_of_measures_in_expr
   tools/measuretools/color_measure
   tools/measuretools/color_nonbinary_measures_in_expr
   tools/measuretools/comment_measures_in_container_with_measure_numbers
   tools/measuretools/extend_measures_in_expr_and_apply_full_measure_tuplets_to_measure_contents
   tools/measuretools/fill_measures_in_expr_with_big_endian_notes
   tools/measuretools/fill_measures_in_expr_with_full_measure_spacer_skips
   tools/measuretools/fill_measures_in_expr_with_little_endian_notes
   tools/measuretools/fill_measures_in_expr_with_meter_denominator_notes
   tools/measuretools/fill_measures_in_expr_with_repeated_notes
   tools/measuretools/fuse_contiguous_measures_in_container_cyclically_by_counts
   tools/measuretools/fuse_measures
   tools/measuretools/get_first_measure_in_improper_parentage_of_component
   tools/measuretools/get_first_measure_in_proper_parentage_of_component
   tools/measuretools/get_next_measure_from_component
   tools/measuretools/get_nth_measure_in_expr
   tools/measuretools/get_one_indexed_measure_number_in_expr
   tools/measuretools/get_prev_measure_from_component
   tools/measuretools/iterate_measures_backward_in_expr
   tools/measuretools/iterate_measures_forward_in_expr
   tools/measuretools/list_time_signatures_of_measures_in_expr
   tools/measuretools/make_measures_with_full_measure_spacer_skips
   tools/measuretools/measure_to_one_line_input_string
   tools/measuretools/move_measure_prolation_to_full_measure_tuplet
   tools/measuretools/move_prolation_of_full_measure_tuplet_to_meter_of_measure
   tools/measuretools/multiply_contents_of_measures_in_expr
   tools/measuretools/multiply_contents_of_measures_in_expr_and_scale_meter_denominators
   tools/measuretools/pad_measures_in_expr_with_rests
   tools/measuretools/pad_measures_in_expr_with_skips
   tools/measuretools/pitch_array_row_to_measure
   tools/measuretools/pitch_array_to_measures
   tools/measuretools/replace_contents_of_measures_in_expr
   tools/measuretools/report_meter_distribution_as_string
   tools/measuretools/scale_contents_of_measures_in_expr
   tools/measuretools/scale_measure_by_multiplier_and_adjust_meter
   tools/measuretools/scale_measure_denominator_and_adjust_measure_contents
   tools/measuretools/set_measure_denominator_and_adjust_numerator

:py:mod:`notetools <abjad.tools.notetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: notetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/notetools/NaturalHarmonic/NaturalHarmonic
   tools/notetools/Note/Note
   tools/notetools/NoteHead/NoteHead

.. rubric:: notetools functions

.. toctree::
   :maxdepth: 1

   tools/notetools/add_artificial_harmonic_to_note
   tools/notetools/all_are_notes
   tools/notetools/color_note_head_by_numbered_chromatic_pitch_class_color_map
   tools/notetools/iterate_notes_backward_in_expr
   tools/notetools/iterate_notes_forward_in_expr
   tools/notetools/label_notes_in_expr_with_note_indices
   tools/notetools/make_accelerating_notes_with_lilypond_multipliers
   tools/notetools/make_notes
   tools/notetools/make_notes_with_multiplied_durations
   tools/notetools/make_percussion_note
   tools/notetools/make_quarter_notes_with_lilypond_multipliers
   tools/notetools/make_repeated_notes
   tools/notetools/make_repeated_notes_from_time_signature
   tools/notetools/make_repeated_notes_from_time_signatures
   tools/notetools/make_repeated_notes_with_shorter_notes_at_end
   tools/notetools/yield_groups_of_notes_in_sequence

:py:mod:`pitchtools <abjad.tools.pitchtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: pitchtools concrete classes

.. toctree::
   :maxdepth: 1

   tools/pitchtools/Accidental/Accidental
   tools/pitchtools/HarmonicChromaticInterval/HarmonicChromaticInterval
   tools/pitchtools/HarmonicChromaticIntervalClass/HarmonicChromaticIntervalClass
   tools/pitchtools/HarmonicChromaticIntervalClassVector/HarmonicChromaticIntervalClassVector
   tools/pitchtools/HarmonicChromaticIntervalSegment/HarmonicChromaticIntervalSegment
   tools/pitchtools/HarmonicChromaticIntervalSet/HarmonicChromaticIntervalSet
   tools/pitchtools/HarmonicCounterpointInterval/HarmonicCounterpointInterval
   tools/pitchtools/HarmonicCounterpointIntervalClass/HarmonicCounterpointIntervalClass
   tools/pitchtools/HarmonicDiatonicInterval/HarmonicDiatonicInterval
   tools/pitchtools/HarmonicDiatonicIntervalClass/HarmonicDiatonicIntervalClass
   tools/pitchtools/HarmonicDiatonicIntervalClassSet/HarmonicDiatonicIntervalClassSet
   tools/pitchtools/HarmonicDiatonicIntervalSegment/HarmonicDiatonicIntervalSegment
   tools/pitchtools/HarmonicDiatonicIntervalSet/HarmonicDiatonicIntervalSet
   tools/pitchtools/InversionEquivalentChromaticIntervalClass/InversionEquivalentChromaticIntervalClass
   tools/pitchtools/InversionEquivalentChromaticIntervalClassSegment/InversionEquivalentChromaticIntervalClassSegment
   tools/pitchtools/InversionEquivalentChromaticIntervalClassSet/InversionEquivalentChromaticIntervalClassSet
   tools/pitchtools/InversionEquivalentChromaticIntervalClassVector/InversionEquivalentChromaticIntervalClassVector
   tools/pitchtools/InversionEquivalentDiatonicIntervalClass/InversionEquivalentDiatonicIntervalClass
   tools/pitchtools/InversionEquivalentDiatonicIntervalClassSegment/InversionEquivalentDiatonicIntervalClassSegment
   tools/pitchtools/InversionEquivalentDiatonicIntervalClassVector/InversionEquivalentDiatonicIntervalClassVector
   tools/pitchtools/MelodicChromaticInterval/MelodicChromaticInterval
   tools/pitchtools/MelodicChromaticIntervalClass/MelodicChromaticIntervalClass
   tools/pitchtools/MelodicChromaticIntervalClassSegment/MelodicChromaticIntervalClassSegment
   tools/pitchtools/MelodicChromaticIntervalClassVector/MelodicChromaticIntervalClassVector
   tools/pitchtools/MelodicChromaticIntervalSegment/MelodicChromaticIntervalSegment
   tools/pitchtools/MelodicChromaticIntervalSet/MelodicChromaticIntervalSet
   tools/pitchtools/MelodicCounterpointInterval/MelodicCounterpointInterval
   tools/pitchtools/MelodicCounterpointIntervalClass/MelodicCounterpointIntervalClass
   tools/pitchtools/MelodicDiatonicInterval/MelodicDiatonicInterval
   tools/pitchtools/MelodicDiatonicIntervalClass/MelodicDiatonicIntervalClass
   tools/pitchtools/MelodicDiatonicIntervalSegment/MelodicDiatonicIntervalSegment
   tools/pitchtools/MelodicDiatonicIntervalSet/MelodicDiatonicIntervalSet
   tools/pitchtools/NamedChromaticPitch/NamedChromaticPitch
   tools/pitchtools/NamedChromaticPitchClass/NamedChromaticPitchClass
   tools/pitchtools/NamedChromaticPitchClassSegment/NamedChromaticPitchClassSegment
   tools/pitchtools/NamedChromaticPitchClassSet/NamedChromaticPitchClassSet
   tools/pitchtools/NamedChromaticPitchSegment/NamedChromaticPitchSegment
   tools/pitchtools/NamedChromaticPitchSet/NamedChromaticPitchSet
   tools/pitchtools/NamedChromaticPitchVector/NamedChromaticPitchVector
   tools/pitchtools/NamedDiatonicPitch/NamedDiatonicPitch
   tools/pitchtools/NamedDiatonicPitchClass/NamedDiatonicPitchClass
   tools/pitchtools/NumberedChromaticPitch/NumberedChromaticPitch
   tools/pitchtools/NumberedChromaticPitchClass/NumberedChromaticPitchClass
   tools/pitchtools/NumberedChromaticPitchClassColorMap/NumberedChromaticPitchClassColorMap
   tools/pitchtools/NumberedChromaticPitchClassSegment/NumberedChromaticPitchClassSegment
   tools/pitchtools/NumberedChromaticPitchClassSet/NumberedChromaticPitchClassSet
   tools/pitchtools/NumberedChromaticPitchClassVector/NumberedChromaticPitchClassVector
   tools/pitchtools/NumberedDiatonicPitch/NumberedDiatonicPitch
   tools/pitchtools/NumberedDiatonicPitchClass/NumberedDiatonicPitchClass
   tools/pitchtools/OctaveTranspositionMapping/OctaveTranspositionMapping
   tools/pitchtools/OctaveTranspositionMappingComponent/OctaveTranspositionMappingComponent
   tools/pitchtools/OctaveTranspositionMappingInventory/OctaveTranspositionMappingInventory
   tools/pitchtools/PitchRange/PitchRange
   tools/pitchtools/PitchRangeInventory/PitchRangeInventory
   tools/pitchtools/TwelveToneRow/TwelveToneRow

.. rubric:: pitchtools functions

.. toctree::
   :maxdepth: 1

   tools/pitchtools/all_are_chromatic_pitch_class_name_octave_number_pairs
   tools/pitchtools/all_are_named_chromatic_pitch_tokens
   tools/pitchtools/alphabetic_accidental_abbreviation_to_symbolic_accidental_string
   tools/pitchtools/apply_accidental_to_named_chromatic_pitch
   tools/pitchtools/apply_octavation_spanner_to_pitched_components
   tools/pitchtools/calculate_harmonic_chromatic_interval_class_from_pitch_carrier_to_pitch_carrier
   tools/pitchtools/calculate_harmonic_chromatic_interval_from_pitch_carrier_to_pitch_carrier
   tools/pitchtools/calculate_harmonic_counterpoint_interval_class_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_harmonic_counterpoint_interval_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_harmonic_diatonic_interval_class_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_harmonic_diatonic_interval_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_melodic_chromatic_interval_class_from_pitch_carrier_to_pitch_carrier
   tools/pitchtools/calculate_melodic_chromatic_interval_from_pitch_carrier_to_pitch_carrier
   tools/pitchtools/calculate_melodic_counterpoint_interval_class_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_melodic_counterpoint_interval_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_melodic_diatonic_interval_class_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/calculate_melodic_diatonic_interval_from_named_chromatic_pitch_to_named_chromatic_pitch
   tools/pitchtools/chromatic_pitch_class_name_to_chromatic_pitch_class_number
   tools/pitchtools/chromatic_pitch_class_name_to_diatonic_pitch_class_name
   tools/pitchtools/chromatic_pitch_class_name_to_diatonic_pitch_class_name_alphabetic_accidental_abbreviation_pair
   tools/pitchtools/chromatic_pitch_class_number_to_chromatic_pitch_class_name
   tools/pitchtools/chromatic_pitch_class_number_to_chromatic_pitch_class_name_with_flats
   tools/pitchtools/chromatic_pitch_class_number_to_chromatic_pitch_class_name_with_sharps
   tools/pitchtools/chromatic_pitch_class_number_to_diatonic_pitch_class_number
   tools/pitchtools/chromatic_pitch_name_to_chromatic_pitch_class_name
   tools/pitchtools/chromatic_pitch_name_to_chromatic_pitch_class_number
   tools/pitchtools/chromatic_pitch_name_to_chromatic_pitch_number
   tools/pitchtools/chromatic_pitch_name_to_diatonic_pitch_class_name
   tools/pitchtools/chromatic_pitch_name_to_diatonic_pitch_class_number
   tools/pitchtools/chromatic_pitch_name_to_diatonic_pitch_name
   tools/pitchtools/chromatic_pitch_name_to_diatonic_pitch_number
   tools/pitchtools/chromatic_pitch_name_to_octave_number
   tools/pitchtools/chromatic_pitch_names_string_to_named_chromatic_pitch_list
   tools/pitchtools/chromatic_pitch_number_and_accidental_semitones_to_octave_number
   tools/pitchtools/chromatic_pitch_number_diatonic_pitch_class_name_to_alphabetic_accidental_abbreviation_octave_number_pair
   tools/pitchtools/chromatic_pitch_number_to_chromatic_pitch_class_number
   tools/pitchtools/chromatic_pitch_number_to_chromatic_pitch_name
   tools/pitchtools/chromatic_pitch_number_to_diatonic_pitch_class_name_alphabetic_accidental_abbreviation_octave_number_triple
   tools/pitchtools/chromatic_pitch_number_to_diatonic_pitch_class_number
   tools/pitchtools/chromatic_pitch_number_to_diatonic_pitch_number
   tools/pitchtools/chromatic_pitch_number_to_octave_number
   tools/pitchtools/clef_and_staff_position_number_to_named_chromatic_pitch
   tools/pitchtools/diatonic_interval_number_and_chromatic_interval_number_to_melodic_diatonic_interval
   tools/pitchtools/diatonic_pitch_class_name_to_chromatic_pitch_class_number
   tools/pitchtools/diatonic_pitch_class_name_to_diatonic_pitch_class_number
   tools/pitchtools/diatonic_pitch_class_number_to_chromatic_pitch_class_number
   tools/pitchtools/diatonic_pitch_class_number_to_diatonic_pitch_class_name
   tools/pitchtools/diatonic_pitch_name_to_chromatic_pitch_class_name
   tools/pitchtools/diatonic_pitch_name_to_chromatic_pitch_class_number
   tools/pitchtools/diatonic_pitch_name_to_chromatic_pitch_name
   tools/pitchtools/diatonic_pitch_name_to_chromatic_pitch_number
   tools/pitchtools/diatonic_pitch_name_to_diatonic_pitch_class_name
   tools/pitchtools/diatonic_pitch_name_to_diatonic_pitch_class_number
   tools/pitchtools/diatonic_pitch_name_to_diatonic_pitch_number
   tools/pitchtools/diatonic_pitch_number_to_chromatic_pitch_number
   tools/pitchtools/diatonic_pitch_number_to_diatonic_pitch_class_name
   tools/pitchtools/diatonic_pitch_number_to_diatonic_pitch_class_number
   tools/pitchtools/diatonic_pitch_number_to_diatonic_pitch_name
   tools/pitchtools/expr_has_duplicate_named_chromatic_pitch
   tools/pitchtools/expr_has_duplicate_numbered_chromatic_pitch_class
   tools/pitchtools/expr_to_melodic_chromatic_interval_segment
   tools/pitchtools/get_named_chromatic_pitch_from_pitch_carrier
   tools/pitchtools/get_numbered_chromatic_pitch_class_from_pitch_carrier
   tools/pitchtools/insert_and_transpose_nested_subruns_in_chromatic_pitch_class_number_list
   tools/pitchtools/instantiate_pitch_and_interval_test_collection
   tools/pitchtools/inventory_aggregate_subsets
   tools/pitchtools/inventory_inversion_equivalent_diatonic_interval_classes
   tools/pitchtools/is_alphabetic_accidental_abbreviation
   tools/pitchtools/is_chromatic_pitch_class_name
   tools/pitchtools/is_chromatic_pitch_class_name_octave_number_pair
   tools/pitchtools/is_chromatic_pitch_class_number
   tools/pitchtools/is_chromatic_pitch_name
   tools/pitchtools/is_chromatic_pitch_number
   tools/pitchtools/is_diatonic_pitch_class_name
   tools/pitchtools/is_diatonic_pitch_class_number
   tools/pitchtools/is_diatonic_pitch_name
   tools/pitchtools/is_diatonic_pitch_number
   tools/pitchtools/is_diatonic_quality_abbreviation
   tools/pitchtools/is_harmonic_diatonic_interval_abbreviation
   tools/pitchtools/is_melodic_diatonic_interval_abbreviation
   tools/pitchtools/is_named_chromatic_pitch_token
   tools/pitchtools/is_octave_tick_string
   tools/pitchtools/is_pitch_carrier
   tools/pitchtools/is_pitch_class_octave_number_string
   tools/pitchtools/is_symbolic_accidental_string
   tools/pitchtools/is_symbolic_pitch_range_string
   tools/pitchtools/iterate_named_chromatic_pitch_pairs_forward_in_expr
   tools/pitchtools/list_chromatic_pitch_numbers_in_expr
   tools/pitchtools/list_harmonic_chromatic_intervals_in_expr
   tools/pitchtools/list_harmonic_diatonic_intervals_in_expr
   tools/pitchtools/list_inversion_equivalent_chromatic_interval_classes_pairwise_between_pitch_carriers
   tools/pitchtools/list_melodic_chromatic_interval_numbers_pairwise_between_pitch_carriers
   tools/pitchtools/list_named_chromatic_pitch_carriers_in_expr_sorted_by_numbered_chromatic_pitch_class
   tools/pitchtools/list_named_chromatic_pitches_in_expr
   tools/pitchtools/list_numbered_chromatic_pitch_classes_in_expr
   tools/pitchtools/list_octave_transpositions_of_pitch_carrier_within_pitch_range
   tools/pitchtools/list_ordered_named_chromatic_pitch_pairs_from_expr_1_to_expr_2
   tools/pitchtools/list_unordered_named_chromatic_pitch_pairs_in_expr
   tools/pitchtools/make_n_middle_c_centered_pitches
   tools/pitchtools/named_chromatic_pitch_and_clef_to_staff_position_number
   tools/pitchtools/named_chromatic_pitch_tokens_to_named_chromatic_pitches
   tools/pitchtools/named_chromatic_pitches_to_harmonic_chromatic_interval_class_number_dictionary
   tools/pitchtools/named_chromatic_pitches_to_inversion_equivalent_chromatic_interval_class_number_dictionary
   tools/pitchtools/octave_number_to_octave_tick_string
   tools/pitchtools/octave_tick_string_to_octave_number
   tools/pitchtools/ordered_chromatic_pitch_class_numbers_are_within_ordered_chromatic_pitch_numbers
   tools/pitchtools/pentatonic_pitch_number_to_chromatic_pitch_number
   tools/pitchtools/permute_named_chromatic_pitch_carrier_list_by_twelve_tone_row
   tools/pitchtools/pitch_class_octave_number_string_to_chromatic_pitch_name
   tools/pitchtools/register_chromatic_pitch_class_numbers_by_chromatic_pitch_number_aggregate
   tools/pitchtools/respell_named_chromatic_pitches_in_expr_with_flats
   tools/pitchtools/respell_named_chromatic_pitches_in_expr_with_sharps
   tools/pitchtools/set_ascending_named_chromatic_pitches_on_nontied_pitched_components_in_expr
   tools/pitchtools/set_ascending_named_diatonic_pitches_on_nontied_pitched_components_in_expr
   tools/pitchtools/suggest_clef_for_named_chromatic_pitches
   tools/pitchtools/symbolic_accidental_string_to_alphabetic_accidental_abbreviation
   tools/pitchtools/transpose_chromatic_pitch_by_melodic_chromatic_interval_segment
   tools/pitchtools/transpose_chromatic_pitch_class_number_by_octaves_to_nearest_neighbor_of_chromatic_pitch_number
   tools/pitchtools/transpose_chromatic_pitch_number_by_octave_transposition_mapping
   tools/pitchtools/transpose_named_chromatic_pitch_by_melodic_chromatic_interval_and_respell
   tools/pitchtools/transpose_pitch_carrier_by_melodic_interval
   tools/pitchtools/transpose_pitch_expr_into_pitch_range

:py:mod:`resttools <abjad.tools.resttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: resttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/resttools/MultiMeasureRest/MultiMeasureRest
   tools/resttools/Rest/Rest

.. rubric:: resttools functions

.. toctree::
   :maxdepth: 1

   tools/resttools/all_are_rests
   tools/resttools/is_lilypond_rest_string
   tools/resttools/iterate_rests_backward_in_expr
   tools/resttools/iterate_rests_forward_in_expr
   tools/resttools/make_multi_measure_rests
   tools/resttools/make_repeated_rests_from_time_signature
   tools/resttools/make_repeated_rests_from_time_signatures
   tools/resttools/make_rests
   tools/resttools/replace_leaves_in_expr_with_rests
   tools/resttools/set_vertical_positioning_pitch_on_rest
   tools/resttools/yield_groups_of_rests_in_sequence

:py:mod:`schemetools <abjad.tools.schemetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: schemetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/schemetools/Scheme/Scheme
   tools/schemetools/SchemeAssociativeList/SchemeAssociativeList
   tools/schemetools/SchemeColor/SchemeColor
   tools/schemetools/SchemeMoment/SchemeMoment
   tools/schemetools/SchemePair/SchemePair
   tools/schemetools/SchemeVector/SchemeVector
   tools/schemetools/SchemeVectorConstant/SchemeVectorConstant

:py:mod:`scoretemplatetools <abjad.tools.scoretemplatetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: scoretemplatetools abstract classes

.. toctree::
   :maxdepth: 1

   tools/scoretemplatetools/ScoreTemplate/ScoreTemplate

.. rubric:: scoretemplatetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/scoretemplatetools/StringQuartetScoreTemplate/StringQuartetScoreTemplate
   tools/scoretemplatetools/TwoStaffPianoScoreTemplate/TwoStaffPianoScoreTemplate

:py:mod:`scoretools <abjad.tools.scoretools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: scoretools concrete classes

.. toctree::
   :maxdepth: 1

   tools/scoretools/GrandStaff/GrandStaff
   tools/scoretools/InstrumentationSpecifier/InstrumentationSpecifier
   tools/scoretools/Performer/Performer
   tools/scoretools/PerformerInventory/PerformerInventory
   tools/scoretools/PianoStaff/PianoStaff
   tools/scoretools/Score/Score
   tools/scoretools/StaffGroup/StaffGroup

.. rubric:: scoretools functions

.. toctree::
   :maxdepth: 1

   tools/scoretools/add_double_bar_to_end_of_score
   tools/scoretools/add_markup_to_end_of_score
   tools/scoretools/all_are_scores
   tools/scoretools/get_first_score_in_improper_parentage_of_component
   tools/scoretools/get_first_score_in_proper_parentage_of_component
   tools/scoretools/iterate_scores_backward_in_expr
   tools/scoretools/iterate_scores_forward_in_expr
   tools/scoretools/list_performer_names
   tools/scoretools/list_primary_performer_names
   tools/scoretools/make_empty_piano_score
   tools/scoretools/make_piano_score_from_leaves
   tools/scoretools/make_piano_sketch_score_from_leaves
   tools/scoretools/make_pitch_array_score_from_pitch_arrays

:py:mod:`skiptools <abjad.tools.skiptools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: skiptools concrete classes

.. toctree::
   :maxdepth: 1

   tools/skiptools/Skip/Skip

.. rubric:: skiptools functions

.. toctree::
   :maxdepth: 1

   tools/skiptools/all_are_skips
   tools/skiptools/iterate_skips_backward_in_expr
   tools/skiptools/iterate_skips_forward_in_expr
   tools/skiptools/make_repeated_skips_from_time_signature
   tools/skiptools/make_repeated_skips_from_time_signatures
   tools/skiptools/make_skips_with_multiplied_durations
   tools/skiptools/replace_leaves_in_expr_with_skips
   tools/skiptools/yield_groups_of_skips_in_sequence

:py:mod:`spannertools <abjad.tools.spannertools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: spannertools concrete classes

.. toctree::
   :maxdepth: 1

   tools/spannertools/BeamSpanner/BeamSpanner
   tools/spannertools/BracketSpanner/BracketSpanner
   tools/spannertools/ComplexBeamSpanner/ComplexBeamSpanner
   tools/spannertools/CrescendoSpanner/CrescendoSpanner
   tools/spannertools/DecrescendoSpanner/DecrescendoSpanner
   tools/spannertools/DuratedComplexBeamSpanner/DuratedComplexBeamSpanner
   tools/spannertools/DynamicTextSpanner/DynamicTextSpanner
   tools/spannertools/GlissandoSpanner/GlissandoSpanner
   tools/spannertools/HairpinSpanner/HairpinSpanner
   tools/spannertools/HiddenStaffSpanner/HiddenStaffSpanner
   tools/spannertools/HorizontalBracketSpanner/HorizontalBracketSpanner
   tools/spannertools/MeasuredComplexBeamSpanner/MeasuredComplexBeamSpanner
   tools/spannertools/MetricGridSpanner/MetricGridSpanner
   tools/spannertools/MultipartBeamSpanner/MultipartBeamSpanner
   tools/spannertools/OctavationSpanner/OctavationSpanner
   tools/spannertools/PhrasingSlurSpanner/PhrasingSlurSpanner
   tools/spannertools/PianoPedalSpanner/PianoPedalSpanner
   tools/spannertools/SlurSpanner/SlurSpanner
   tools/spannertools/Spanner/Spanner
   tools/spannertools/StaffLinesSpanner/StaffLinesSpanner
   tools/spannertools/TextScriptSpanner/TextScriptSpanner
   tools/spannertools/TextSpanner/TextSpanner
   tools/spannertools/TrillSpanner/TrillSpanner

.. rubric:: spannertools functions

.. toctree::
   :maxdepth: 1

   tools/spannertools/all_are_spanners
   tools/spannertools/destroy_all_spanners_attached_to_component
   tools/spannertools/find_index_of_spanner_component_at_score_offset
   tools/spannertools/find_spanner_component_starting_at_exactly_score_offset
   tools/spannertools/fracture_all_spanners_attached_to_component
   tools/spannertools/fracture_spanners_that_cross_components
   tools/spannertools/get_beam_spanner_attached_to_component
   tools/spannertools/get_nth_leaf_in_spanner
   tools/spannertools/get_spanners_attached_to_any_improper_child_of_component
   tools/spannertools/get_spanners_attached_to_any_improper_parent_of_component
   tools/spannertools/get_spanners_attached_to_any_proper_child_of_component
   tools/spannertools/get_spanners_attached_to_any_proper_parent_of_component
   tools/spannertools/get_spanners_attached_to_component
   tools/spannertools/get_spanners_contained_by_components
   tools/spannertools/get_spanners_covered_by_components
   tools/spannertools/get_spanners_on_components_or_component_children
   tools/spannertools/get_spanners_that_cross_components
   tools/spannertools/get_spanners_that_dominate_component_pair
   tools/spannertools/get_spanners_that_dominate_components
   tools/spannertools/get_spanners_that_dominate_container_components_from_to
   tools/spannertools/get_the_only_spanner_attached_to_any_improper_parent_of_component
   tools/spannertools/get_the_only_spanner_attached_to_component
   tools/spannertools/is_component_with_beam_spanner_attached
   tools/spannertools/is_component_with_spanner_attached
   tools/spannertools/iterate_components_backward_in_spanner
   tools/spannertools/iterate_components_forward_in_spanner
   tools/spannertools/make_covered_spanner_schema
   tools/spannertools/make_dynamic_spanner_below_with_nib_at_right
   tools/spannertools/make_solid_text_spanner_above_with_nib_at_right
   tools/spannertools/make_solid_text_spanner_below_with_nib_at_right
   tools/spannertools/make_spanner_schema
   tools/spannertools/move_spanners_from_component_to_children_of_component
   tools/spannertools/report_as_string_format_contributions_of_all_spanners_attached_to_component
   tools/spannertools/report_as_string_format_contributions_of_all_spanners_attached_to_improper_parentage_of_component
   tools/spannertools/withdraw_components_from_spanners_covered_by_components

:py:mod:`stafftools <abjad.tools.stafftools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: stafftools concrete classes

.. toctree::
   :maxdepth: 1

   tools/stafftools/RhythmicStaff/RhythmicStaff
   tools/stafftools/Staff/Staff

.. rubric:: stafftools functions

.. toctree::
   :maxdepth: 1

   tools/stafftools/all_are_staves
   tools/stafftools/get_first_staff_in_improper_parentage_of_component
   tools/stafftools/get_first_staff_in_proper_parentage_of_component
   tools/stafftools/iterate_staves_backward_in_expr
   tools/stafftools/iterate_staves_forward_in_expr
   tools/stafftools/make_rhythmic_sketch_staff

:py:mod:`tietools <abjad.tools.tietools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: tietools concrete classes

.. toctree::
   :maxdepth: 1

   tools/tietools/TieSpanner/TieSpanner

.. rubric:: tietools functions

.. toctree::
   :maxdepth: 1

   tools/tietools/add_or_remove_tie_chain_notes_to_achieve_scaled_written_duration
   tools/tietools/add_or_remove_tie_chain_notes_to_achieve_written_duration
   tools/tietools/apply_tie_spanner_to_leaf_pair
   tools/tietools/are_components_in_same_tie_spanner
   tools/tietools/get_leaves_in_tie_chain
   tools/tietools/get_preprolated_tie_chain_duration
   tools/tietools/get_prolated_tie_chain_duration
   tools/tietools/get_tie_chain
   tools/tietools/get_tie_chain_duration_in_seconds
   tools/tietools/get_tie_chains_in_expr
   tools/tietools/get_written_tie_chain_duration
   tools/tietools/group_leaves_in_tie_chain_by_immediate_parents
   tools/tietools/is_component_with_tie_spanner_attached
   tools/tietools/is_tie_chain
   tools/tietools/is_tie_chain_with_all_leaves_in_same_parent
   tools/tietools/iterate_tie_chains_backward_in_expr
   tools/tietools/iterate_tie_chains_forward_in_expr
   tools/tietools/iterate_topmost_tie_chains_and_components_forward_in_expr
   tools/tietools/label_tie_chains_in_expr_with_prolated_tie_chain_duration
   tools/tietools/label_tie_chains_in_expr_with_tie_chain_durations
   tools/tietools/label_tie_chains_in_expr_with_written_tie_chain_duration
   tools/tietools/remove_all_leaves_in_tie_chain_except_first
   tools/tietools/remove_tie_spanners_from_components_in_expr
   tools/tietools/tie_chain_to_augmented_tuplet_with_proportions_and_avoid_dots
   tools/tietools/tie_chain_to_augmented_tuplet_with_proportions_and_encourage_dots
   tools/tietools/tie_chain_to_diminished_tuplet_with_proportions_and_avoid_dots
   tools/tietools/tie_chain_to_diminished_tuplet_with_proportions_and_encourage_dots

:py:mod:`tuplettools <abjad.tools.tuplettools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: tuplettools concrete classes

.. toctree::
   :maxdepth: 1

   tools/tuplettools/FixedDurationTuplet/FixedDurationTuplet
   tools/tuplettools/Tuplet/Tuplet

.. rubric:: tuplettools functions

.. toctree::
   :maxdepth: 1

   tools/tuplettools/all_are_tuplets
   tools/tuplettools/beam_bottommost_tuplets_in_expr
   tools/tuplettools/change_augmented_tuplets_in_expr_to_diminished
   tools/tuplettools/change_diminished_tuplets_in_expr_to_augmented
   tools/tuplettools/fix_contents_of_tuplets_in_expr
   tools/tuplettools/fuse_tuplets
   tools/tuplettools/get_first_tuplet_in_improper_parentage_of_component
   tools/tuplettools/get_first_tuplet_in_proper_parentage_of_component
   tools/tuplettools/is_proper_tuplet_multiplier
   tools/tuplettools/iterate_tuplets_backward_in_expr
   tools/tuplettools/iterate_tuplets_forward_in_expr
   tools/tuplettools/make_augmented_tuplet_from_duration_and_proportions_and_avoid_dots
   tools/tuplettools/make_augmented_tuplet_from_duration_and_proportions_and_encourage_dots
   tools/tuplettools/make_diminished_tuplet_from_duration_and_proportions_and_avoid_dots
   tools/tuplettools/make_diminished_tuplet_from_duration_and_proportions_and_encourage_dots
   tools/tuplettools/make_tuplet_from_proportions_and_pair
   tools/tuplettools/move_prolation_of_tuplet_to_contents_of_tuplet_and_remove_tuplet
   tools/tuplettools/remove_trivial_tuplets_in_expr
   tools/tuplettools/scale_contents_of_tuplets_in_expr_by_multiplier
   tools/tuplettools/set_denominator_of_tuplets_in_expr_to_at_least

:py:mod:`voicetools <abjad.tools.voicetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: voicetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/voicetools/Voice/Voice

.. rubric:: voicetools functions

.. toctree::
   :maxdepth: 1

   tools/voicetools/all_are_voices
   tools/voicetools/get_first_voice_in_improper_parentage_of_component
   tools/voicetools/get_first_voice_in_proper_parentage_of_component
   tools/voicetools/iterate_semantic_voices_backward_in_expr
   tools/voicetools/iterate_semantic_voices_forward_in_expr
   tools/voicetools/iterate_voices_backward_in_expr
   tools/voicetools/iterate_voices_forward_in_expr

Additional Abjad composition packages (load manually)
-----------------------------------------------------

.. toctree::
   :maxdepth: 1

:py:mod:`abctools <abjad.tools.abctools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: abctools abstract classes

.. toctree::
   :maxdepth: 1

   tools/abctools/AbjadObject/AbjadObject
   tools/abctools/AttributeEqualityAbjadObject/AttributeEqualityAbjadObject
   tools/abctools/ImmutableAbjadObject/ImmutableAbjadObject
   tools/abctools/SortableAttributeEqualityAbjadObject/SortableAttributeEqualityAbjadObject

:py:mod:`configurationtools <abjad.tools.configurationtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: configurationtools functions

.. toctree::
   :maxdepth: 1

   tools/configurationtools/get_abjad_revision_string
   tools/configurationtools/get_abjad_version_string
   tools/configurationtools/get_lilypond_version_string
   tools/configurationtools/get_python_version_string
   tools/configurationtools/list_abjad_environment_variables
   tools/configurationtools/list_abjad_templates
   tools/configurationtools/list_package_dependency_versions
   tools/configurationtools/set_default_accidental_spelling

:py:mod:`datastructuretools <abjad.tools.datastructuretools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: datastructuretools concrete classes

.. toctree::
   :maxdepth: 1

   tools/datastructuretools/Digraph/Digraph
   tools/datastructuretools/ImmutableDictionary/ImmutableDictionary
   tools/datastructuretools/ObjectInventory/ObjectInventory

:py:mod:`decoratortools <abjad.tools.decoratortools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: decoratortools functions

.. toctree::
   :maxdepth: 1

   tools/decoratortools/requires

:py:mod:`documentationtools <abjad.tools.documentationtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: documentationtools concrete classes

.. toctree::
   :maxdepth: 1

   tools/documentationtools/APICrawler/APICrawler
   tools/documentationtools/AbjadAPIGenerator/AbjadAPIGenerator
   tools/documentationtools/ClassCrawler/ClassCrawler
   tools/documentationtools/ClassDocumenter/ClassDocumenter
   tools/documentationtools/Documenter/Documenter
   tools/documentationtools/FunctionCrawler/FunctionCrawler
   tools/documentationtools/FunctionDocumenter/FunctionDocumenter
   tools/documentationtools/InheritanceGraph/InheritanceGraph
   tools/documentationtools/ModuleCrawler/ModuleCrawler
   tools/documentationtools/Pipe/Pipe

:py:mod:`durationtools <abjad.tools.durationtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: durationtools concrete classes

.. toctree::
   :maxdepth: 1

   tools/durationtools/Duration/Duration
   tools/durationtools/Offset/Offset

.. rubric:: durationtools functions

.. toctree::
   :maxdepth: 1

   tools/durationtools/all_are_duration_tokens
   tools/durationtools/all_are_durations
   tools/durationtools/assignable_rational_to_dot_count
   tools/durationtools/assignable_rational_to_lilypond_duration_string
   tools/durationtools/duration_pair_to_prolation_string
   tools/durationtools/duration_token_to_big_endian_list_of_assignable_duration_pairs
   tools/durationtools/duration_token_to_duration_pair
   tools/durationtools/duration_token_to_rational
   tools/durationtools/duration_tokens_to_duration_pairs
   tools/durationtools/duration_tokens_to_duration_pairs_with_least_common_denominator
   tools/durationtools/duration_tokens_to_least_common_denominator
   tools/durationtools/duration_tokens_to_rationals
   tools/durationtools/group_duration_tokens_by_implied_prolation
   tools/durationtools/is_assignable_rational
   tools/durationtools/is_binary_rational
   tools/durationtools/is_duration_pair
   tools/durationtools/is_duration_token
   tools/durationtools/is_lilypond_duration_name
   tools/durationtools/is_lilypond_duration_string
   tools/durationtools/lilypond_duration_string_to_rational
   tools/durationtools/lilypond_duration_string_to_rational_list
   tools/durationtools/multiply_duration_pair
   tools/durationtools/multiply_duration_pair_and_reduce_factors
   tools/durationtools/multiply_duration_pair_and_try_to_preserve_numerator
   tools/durationtools/numeric_seconds_to_clock_string
   tools/durationtools/numeric_seconds_to_escaped_clock_string
   tools/durationtools/positive_integer_to_implied_prolation_multipler
   tools/durationtools/rational_to_duration_pair_with_multiple_of_specified_integer_denominator
   tools/durationtools/rational_to_duration_pair_with_specified_integer_denominator
   tools/durationtools/rational_to_equal_or_greater_assignable_rational
   tools/durationtools/rational_to_equal_or_greater_binary_rational
   tools/durationtools/rational_to_equal_or_lesser_assignable_rational
   tools/durationtools/rational_to_equal_or_lesser_binary_rational
   tools/durationtools/rational_to_flag_count
   tools/durationtools/rational_to_fraction_string
   tools/durationtools/rational_to_prolation_string
   tools/durationtools/rational_to_proper_fraction
   tools/durationtools/rewrite_rational_under_new_tempo
   tools/durationtools/yield_all_assignable_rationals_in_cantor_diagonalized_order
   tools/durationtools/yield_all_positive_integer_pairs_in_cantor_diagonalized_order
   tools/durationtools/yield_all_positive_rationals_in_cantor_diagonalized_order
   tools/durationtools/yield_all_positive_rationals_in_cantor_diagonalized_order_uniquely
   tools/durationtools/yield_all_prolation_rewrite_pairs_of_rational_in_cantor_diagonalized_order

:py:mod:`iotools <abjad.tools.iotools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: iotools functions

.. toctree::
   :maxdepth: 1

   tools/iotools/capitalize_string_start
   tools/iotools/clear_terminal
   tools/iotools/f
   tools/iotools/format_input_lines_as_doc_string
   tools/iotools/format_input_lines_as_regression_test
   tools/iotools/get_last_output_file_name
   tools/iotools/get_next_output_file_name
   tools/iotools/is_lowercamelcase_string
   tools/iotools/is_space_delimited_lowercase_string
   tools/iotools/is_underscore_delimited_lowercase_file_name
   tools/iotools/is_underscore_delimited_lowercase_file_name_with_extension
   tools/iotools/is_underscore_delimited_lowercase_package_name
   tools/iotools/is_underscore_delimited_lowercase_string
   tools/iotools/is_uppercamelcase_string
   tools/iotools/log
   tools/iotools/ly
   tools/iotools/p
   tools/iotools/parse_lilypond_input_string
   tools/iotools/pdf
   tools/iotools/play
   tools/iotools/profile_expr
   tools/iotools/redo
   tools/iotools/remove_abjad___pycache___directories
   tools/iotools/remove_abjad_pyc_files
   tools/iotools/save_last_ly_as
   tools/iotools/save_last_pdf_as
   tools/iotools/show
   tools/iotools/space_delimited_lowercase_to_uppercamelcase
   tools/iotools/string_to_strict_directory_name
   tools/iotools/strip_diacritics_from_binary_string
   tools/iotools/underscore_delimited_lowercase_to_lowercamelcase
   tools/iotools/underscore_delimited_lowercase_to_uppercamelcase
   tools/iotools/uppercamelcase_to_space_delimited_lowercase
   tools/iotools/uppercamelcase_to_underscore_delimited_lowercase
   tools/iotools/write_expr_to_ly
   tools/iotools/write_expr_to_ly_and_to_pdf_and_show
   tools/iotools/write_expr_to_pdf
   tools/iotools/z

:py:mod:`layouttools <abjad.tools.layouttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: layouttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/layouttools/SpacingIndication/SpacingIndication

.. rubric:: layouttools functions

.. toctree::
   :maxdepth: 1

   tools/layouttools/make_spacing_vector
   tools/layouttools/set_line_breaks_cyclically_by_line_duration_ge
   tools/layouttools/set_line_breaks_cyclically_by_line_duration_in_seconds_ge

:py:mod:`lilypondparsertools <abjad.tools.lilypondparsertools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: lilypondparsertools concrete classes

.. toctree::
   :maxdepth: 1

   tools/lilypondparsertools/LilyPondParser/LilyPondParser

:py:mod:`mathtools <abjad.tools.mathtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: mathtools functions

.. toctree::
   :maxdepth: 1

   tools/mathtools/are_relatively_prime
   tools/mathtools/arithmetic_mean
   tools/mathtools/binomial_coefficient
   tools/mathtools/cumulative_products
   tools/mathtools/cumulative_signed_weights
   tools/mathtools/cumulative_sums
   tools/mathtools/cumulative_sums_zero
   tools/mathtools/cumulative_sums_zero_pairwise
   tools/mathtools/difference_series
   tools/mathtools/divide_number_by_ratio
   tools/mathtools/divisors
   tools/mathtools/factors
   tools/mathtools/get_shared_numeric_sign
   tools/mathtools/greatest_common_divisor
   tools/mathtools/greatest_multiple_less_equal
   tools/mathtools/greatest_power_of_two_less_equal
   tools/mathtools/integer_equivalent_number_to_integer
   tools/mathtools/integer_to_base_k_tuple
   tools/mathtools/integer_to_binary_string
   tools/mathtools/interpolate_cosine
   tools/mathtools/interpolate_divide
   tools/mathtools/interpolate_divide_multiple
   tools/mathtools/interpolate_exponential
   tools/mathtools/interpolate_linear
   tools/mathtools/is_assignable_integer
   tools/mathtools/is_dotted_integer
   tools/mathtools/is_integer_equivalent_expr
   tools/mathtools/is_integer_equivalent_number
   tools/mathtools/is_negative_integer
   tools/mathtools/is_nonnegative_integer
   tools/mathtools/is_nonnegative_integer_equivalent_number
   tools/mathtools/is_nonnegative_integer_power_of_two
   tools/mathtools/is_positive_integer
   tools/mathtools/is_positive_integer_equivalent_number
   tools/mathtools/is_positive_integer_power_of_two
   tools/mathtools/least_common_multiple
   tools/mathtools/least_multiple_greater_equal
   tools/mathtools/least_power_of_two_greater_equal
   tools/mathtools/next_integer_partition
   tools/mathtools/partition_integer_by_ratio
   tools/mathtools/partition_integer_into_canonic_parts
   tools/mathtools/partition_integer_into_halves
   tools/mathtools/partition_integer_into_thirds
   tools/mathtools/partition_integer_into_units
   tools/mathtools/remove_powers_of_two
   tools/mathtools/sign
   tools/mathtools/weight
   tools/mathtools/yield_all_compositions_of_integer
   tools/mathtools/yield_all_partitions_of_integer

:py:mod:`pitcharraytools <abjad.tools.pitcharraytools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: pitcharraytools concrete classes

.. toctree::
   :maxdepth: 1

   tools/pitcharraytools/PitchArray/PitchArray
   tools/pitcharraytools/PitchArrayCell/PitchArrayCell
   tools/pitcharraytools/PitchArrayColumn/PitchArrayColumn
   tools/pitcharraytools/PitchArrayRow/PitchArrayRow

.. rubric:: pitcharraytools functions

.. toctree::
   :maxdepth: 1

   tools/pitcharraytools/all_are_pitch_arrays
   tools/pitcharraytools/concatenate_pitch_arrays
   tools/pitcharraytools/list_nonspanning_subarrays_of_pitch_array
   tools/pitcharraytools/make_empty_pitch_array_from_list_of_pitch_lists
   tools/pitcharraytools/make_populated_pitch_array_from_list_of_pitch_lists

:py:mod:`rhythmtreetools <abjad.tools.rhythmtreetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: rhythmtreetools functions

.. toctree::
   :maxdepth: 1

   tools/rhythmtreetools/parse_rtm_syntax

:py:mod:`sequencetools <abjad.tools.sequencetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: sequencetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/sequencetools/CyclicList/CyclicList
   tools/sequencetools/CyclicMatrix/CyclicMatrix
   tools/sequencetools/CyclicTree/CyclicTree
   tools/sequencetools/CyclicTuple/CyclicTuple
   tools/sequencetools/Matrix/Matrix
   tools/sequencetools/Tree/Tree

.. rubric:: sequencetools functions

.. toctree::
   :maxdepth: 1

   tools/sequencetools/all_are_assignable_integers
   tools/sequencetools/all_are_equal
   tools/sequencetools/all_are_integer_equivalent_numbers
   tools/sequencetools/all_are_nonnegative_integer_equivalent_numbers
   tools/sequencetools/all_are_nonnegative_integer_powers_of_two
   tools/sequencetools/all_are_nonnegative_integers
   tools/sequencetools/all_are_numbers
   tools/sequencetools/all_are_pairs
   tools/sequencetools/all_are_pairs_of_types
   tools/sequencetools/all_are_positive_integer_equivalent_numbers
   tools/sequencetools/all_are_positive_integers
   tools/sequencetools/all_are_unequal
   tools/sequencetools/count_length_two_runs_in_sequence
   tools/sequencetools/divide_sequence_elements_by_greatest_common_divisor
   tools/sequencetools/flatten_sequence
   tools/sequencetools/flatten_sequence_at_indices
   tools/sequencetools/get_indices_of_sequence_elements_equal_to_true
   tools/sequencetools/get_sequence_degree_of_rotational_symmetry
   tools/sequencetools/get_sequence_element_at_cyclic_index
   tools/sequencetools/get_sequence_elements_at_indices
   tools/sequencetools/get_sequence_elements_frequency_distribution
   tools/sequencetools/get_sequence_period_of_rotation
   tools/sequencetools/increase_sequence_elements_at_indices_by_addenda
   tools/sequencetools/increase_sequence_elements_cyclically_by_addenda
   tools/sequencetools/interlace_sequences
   tools/sequencetools/is_monotonically_decreasing_sequence
   tools/sequencetools/is_monotonically_increasing_sequence
   tools/sequencetools/is_permutation
   tools/sequencetools/is_repetition_free_sequence
   tools/sequencetools/is_restricted_growth_function
   tools/sequencetools/is_strictly_decreasing_sequence
   tools/sequencetools/is_strictly_increasing_sequence
   tools/sequencetools/iterate_sequence_cyclically
   tools/sequencetools/iterate_sequence_cyclically_from_start_to_stop
   tools/sequencetools/iterate_sequence_forward_and_backward_nonoverlapping
   tools/sequencetools/iterate_sequence_forward_and_backward_overlapping
   tools/sequencetools/iterate_sequence_nwise_cyclic
   tools/sequencetools/iterate_sequence_nwise_strict
   tools/sequencetools/iterate_sequence_nwise_wrapped
   tools/sequencetools/iterate_sequence_pairwise_cyclic
   tools/sequencetools/iterate_sequence_pairwise_strict
   tools/sequencetools/iterate_sequence_pairwise_wrapped
   tools/sequencetools/join_subsequences
   tools/sequencetools/join_subsequences_by_sign_of_subsequence_elements
   tools/sequencetools/map_sequence_elements_to_canonic_tuples
   tools/sequencetools/map_sequence_elements_to_numbered_sublists
   tools/sequencetools/negate_absolute_value_of_sequence_elements_at_indices
   tools/sequencetools/negate_absolute_value_of_sequence_elements_cyclically
   tools/sequencetools/negate_sequence_elements_at_indices
   tools/sequencetools/negate_sequence_elements_cyclically
   tools/sequencetools/overwrite_sequence_elements_at_indices
   tools/sequencetools/partition_sequence_by_ratio_of_lengths
   tools/sequencetools/partition_sequence_by_ratio_of_weights
   tools/sequencetools/partition_sequence_by_restricted_growth_function
   tools/sequencetools/partition_sequence_by_sign_of_elements
   tools/sequencetools/partition_sequence_by_value_of_elements
   tools/sequencetools/partition_sequence_cyclically_by_counts_with_overhang
   tools/sequencetools/partition_sequence_cyclically_by_counts_without_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_at_least_with_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_at_least_without_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_at_most_with_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_at_most_without_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_exactly_with_overhang
   tools/sequencetools/partition_sequence_cyclically_by_weights_exactly_without_overhang
   tools/sequencetools/partition_sequence_extended_to_counts_with_overhang
   tools/sequencetools/partition_sequence_extended_to_counts_without_overhang
   tools/sequencetools/partition_sequence_once_by_counts_with_overhang
   tools/sequencetools/partition_sequence_once_by_counts_without_overhang
   tools/sequencetools/partition_sequence_once_by_weights_at_least_with_overhang
   tools/sequencetools/partition_sequence_once_by_weights_at_least_without_overhang
   tools/sequencetools/partition_sequence_once_by_weights_at_most_with_overhang
   tools/sequencetools/partition_sequence_once_by_weights_at_most_without_overhang
   tools/sequencetools/partition_sequence_once_by_weights_exactly_with_overhang
   tools/sequencetools/partition_sequence_once_by_weights_exactly_without_overhang
   tools/sequencetools/permute_sequence
   tools/sequencetools/remove_sequence_elements_at_indices
   tools/sequencetools/remove_sequence_elements_at_indices_cyclically
   tools/sequencetools/remove_subsequence_of_weight_at_index
   tools/sequencetools/repeat_runs_in_sequence_to_count
   tools/sequencetools/repeat_sequence_elements_at_indices
   tools/sequencetools/repeat_sequence_elements_at_indices_cyclically
   tools/sequencetools/repeat_sequence_elements_n_times_each
   tools/sequencetools/repeat_sequence_n_times
   tools/sequencetools/repeat_sequence_to_length
   tools/sequencetools/repeat_sequence_to_weight_at_least
   tools/sequencetools/repeat_sequence_to_weight_at_most
   tools/sequencetools/repeat_sequence_to_weight_exactly
   tools/sequencetools/replace_sequence_elements_cyclically_with_new_material
   tools/sequencetools/retain_sequence_elements_at_indices
   tools/sequencetools/retain_sequence_elements_at_indices_cyclically
   tools/sequencetools/reverse_sequence
   tools/sequencetools/reverse_sequence_elements
   tools/sequencetools/rotate_sequence
   tools/sequencetools/splice_new_elements_between_sequence_elements
   tools/sequencetools/split_sequence_cyclically_by_weights_with_overhang
   tools/sequencetools/split_sequence_cyclically_by_weights_without_overhang
   tools/sequencetools/split_sequence_extended_to_weights_with_overhang
   tools/sequencetools/split_sequence_extended_to_weights_without_overhang
   tools/sequencetools/split_sequence_once_by_weights_with_overhang
   tools/sequencetools/split_sequence_once_by_weights_without_overhang
   tools/sequencetools/sum_consecutive_sequence_elements_by_sign
   tools/sequencetools/sum_sequence_elements_at_indices
   tools/sequencetools/truncate_runs_in_sequence
   tools/sequencetools/truncate_sequence_to_sum
   tools/sequencetools/truncate_sequence_to_weight
   tools/sequencetools/yield_all_combinations_of_sequence_elements
   tools/sequencetools/yield_all_k_ary_sequences_of_length
   tools/sequencetools/yield_all_pairs_between_sequences
   tools/sequencetools/yield_all_partitions_of_sequence
   tools/sequencetools/yield_all_permutations_of_sequence
   tools/sequencetools/yield_all_permutations_of_sequence_in_orbit
   tools/sequencetools/yield_all_restricted_growth_functions_of_length
   tools/sequencetools/yield_all_rotations_of_sequence
   tools/sequencetools/yield_all_set_partitions_of_sequence
   tools/sequencetools/yield_all_subsequences_of_sequence
   tools/sequencetools/yield_all_unordered_pairs_of_sequence
   tools/sequencetools/yield_outer_product_of_sequences
   tools/sequencetools/zip_sequences_cyclically
   tools/sequencetools/zip_sequences_without_truncation

:py:mod:`sievetools <abjad.tools.sievetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: sievetools concrete classes

.. toctree::
   :maxdepth: 1

   tools/sievetools/ResidueClass/ResidueClass
   tools/sievetools/ResidueClassExpression/ResidueClassExpression

.. rubric:: sievetools functions

.. toctree::
   :maxdepth: 1

   tools/sievetools/all_are_residue_class_expressions
   tools/sievetools/cycle_tokens_to_sieve

:py:mod:`tempotools <abjad.tools.tempotools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: tempotools functions

.. toctree::
   :maxdepth: 1

   tools/tempotools/integer_tempo_to_multiplier_tempo_pairs
   tools/tempotools/integer_tempo_to_multiplier_tempo_pairs_report

:py:mod:`threadtools <abjad.tools.threadtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: threadtools functions

.. toctree::
   :maxdepth: 1

   tools/threadtools/component_to_thread_signature
   tools/threadtools/iterate_thread_backward_from_component
   tools/threadtools/iterate_thread_backward_in_expr
   tools/threadtools/iterate_thread_forward_from_component
   tools/threadtools/iterate_thread_forward_in_expr

:py:mod:`timeintervaltools <abjad.tools.timeintervaltools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: timeintervaltools abstract classes

.. toctree::
   :maxdepth: 1

   tools/timeintervaltools/TimeIntervalAggregateMixin/TimeIntervalAggregateMixin
   tools/timeintervaltools/TimeIntervalMixin/TimeIntervalMixin

.. rubric:: timeintervaltools concrete classes

.. toctree::
   :maxdepth: 1

   tools/timeintervaltools/TimeInterval/TimeInterval
   tools/timeintervaltools/TimeIntervalTree/TimeIntervalTree
   tools/timeintervaltools/TimeIntervalTreeDictionary/TimeIntervalTreeDictionary

.. rubric:: timeintervaltools functions

.. toctree::
   :maxdepth: 1

   tools/timeintervaltools/all_are_intervals_or_trees_or_empty
   tools/timeintervaltools/all_intervals_are_contiguous
   tools/timeintervaltools/all_intervals_are_nonoverlapping
   tools/timeintervaltools/calculate_density_of_attacks_in_interval
   tools/timeintervaltools/calculate_density_of_releases_in_interval
   tools/timeintervaltools/calculate_depth_centroid_of_intervals
   tools/timeintervaltools/calculate_depth_centroid_of_intervals_in_interval
   tools/timeintervaltools/calculate_depth_density_of_intervals
   tools/timeintervaltools/calculate_depth_density_of_intervals_in_interval
   tools/timeintervaltools/calculate_mean_attack_of_intervals
   tools/timeintervaltools/calculate_mean_release_of_intervals
   tools/timeintervaltools/calculate_min_mean_and_max_depth_of_intervals
   tools/timeintervaltools/calculate_min_mean_and_max_durations_of_intervals
   tools/timeintervaltools/calculate_sustain_centroid_of_intervals
   tools/timeintervaltools/clip_interval_durations_to_range
   tools/timeintervaltools/compute_depth_of_intervals
   tools/timeintervaltools/compute_depth_of_intervals_in_interval
   tools/timeintervaltools/compute_logical_and_of_intervals
   tools/timeintervaltools/compute_logical_and_of_intervals_in_interval
   tools/timeintervaltools/compute_logical_not_of_intervals
   tools/timeintervaltools/compute_logical_not_of_intervals_in_interval
   tools/timeintervaltools/compute_logical_or_of_intervals
   tools/timeintervaltools/compute_logical_or_of_intervals_in_interval
   tools/timeintervaltools/compute_logical_xor_of_intervals
   tools/timeintervaltools/compute_logical_xor_of_intervals_in_interval
   tools/timeintervaltools/concatenate_trees
   tools/timeintervaltools/explode_intervals_compactly
   tools/timeintervaltools/explode_intervals_into_n_trees_heuristically
   tools/timeintervaltools/explode_intervals_uncompactly
   tools/timeintervaltools/fuse_overlapping_intervals
   tools/timeintervaltools/fuse_tangent_or_overlapping_intervals
   tools/timeintervaltools/get_all_unique_bounds_in_intervals
   tools/timeintervaltools/group_overlapping_intervals_and_yield_groups
   tools/timeintervaltools/group_tangent_or_overlapping_intervals_and_yield_groups
   tools/timeintervaltools/make_monophonic_percussion_score_from_nonoverlapping_intervals
   tools/timeintervaltools/make_polyphonic_percussion_score_from_nonoverlapping_trees
   tools/timeintervaltools/mask_intervals_with_intervals
   tools/timeintervaltools/resolve_overlaps_between_nonoverlapping_trees
   tools/timeintervaltools/resolve_overlaps_between_nonoverlapping_trees_excluding_remainders_less_than_rational
   tools/timeintervaltools/round_interval_bounds_to_nearest_multiple_of_rational
   tools/timeintervaltools/scale_aggregate_duration_by_rational
   tools/timeintervaltools/scale_aggregate_duration_to_rational
   tools/timeintervaltools/scale_interval_durations_by_rational
   tools/timeintervaltools/scale_interval_durations_to_rational
   tools/timeintervaltools/scale_interval_offsets_by_rational
   tools/timeintervaltools/shift_aggregate_offset_by_rational
   tools/timeintervaltools/shift_aggregate_offset_to_rational
   tools/timeintervaltools/split_intervals_at_rationals

:py:mod:`timesignaturetools <abjad.tools.timesignaturetools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: timesignaturetools functions

.. toctree::
   :maxdepth: 1

   tools/timesignaturetools/duration_and_possible_denominators_to_time_signature
   tools/timesignaturetools/get_nonbinary_factor_from_time_signature_denominator
   tools/timesignaturetools/is_time_signature_with_equivalent_binary_representation
   tools/timesignaturetools/time_signature_to_binary_time_signature

:py:mod:`timetokentools <abjad.tools.timetokentools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: timetokentools abstract classes

.. toctree::
   :maxdepth: 1

   tools/timetokentools/BurnishedTimeTokenMaker/BurnishedTimeTokenMaker
   tools/timetokentools/IncisedTimeTokenMaker/IncisedTimeTokenMaker
   tools/timetokentools/OutputIncisedTimeTokenMaker/OutputIncisedTimeTokenMaker
   tools/timetokentools/TimeTokenMaker/TimeTokenMaker
   tools/timetokentools/TokenIncisedTimeTokenMaker/TokenIncisedTimeTokenMaker

.. rubric:: timetokentools concrete classes

.. toctree::
   :maxdepth: 1

   tools/timetokentools/NoteFilledTimeTokenMaker/NoteFilledTimeTokenMaker
   tools/timetokentools/OutputBurnishedSignalFilledTimeTokenMaker/OutputBurnishedSignalFilledTimeTokenMaker
   tools/timetokentools/OutputIncisedNoteFilledTimeTokenMaker/OutputIncisedNoteFilledTimeTokenMaker
   tools/timetokentools/OutputIncisedRestFilledTimeTokenMaker/OutputIncisedRestFilledTimeTokenMaker
   tools/timetokentools/RestFilledTimeTokenMaker/RestFilledTimeTokenMaker
   tools/timetokentools/SignalFilledTimeTokenMaker/SignalFilledTimeTokenMaker
   tools/timetokentools/TokenBurnishedSignalFilledTimeTokenMaker/TokenBurnishedSignalFilledTimeTokenMaker
   tools/timetokentools/TokenIncisedNoteFilledTimeTokenMaker/TokenIncisedNoteFilledTimeTokenMaker
   tools/timetokentools/TokenIncisedRestFilledTimeTokenMaker/TokenIncisedRestFilledTimeTokenMaker

:py:mod:`verticalitytools <abjad.tools.verticalitytools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: verticalitytools concrete classes

.. toctree::
   :maxdepth: 1

   tools/verticalitytools/VerticalMoment/VerticalMoment

.. rubric:: verticalitytools functions

.. toctree::
   :maxdepth: 1

   tools/verticalitytools/get_vertical_moment_at_prolated_offset_in_expr
   tools/verticalitytools/get_vertical_moment_starting_with_component
   tools/verticalitytools/iterate_vertical_moments_backward_in_expr
   tools/verticalitytools/iterate_vertical_moments_forward_in_expr
   tools/verticalitytools/label_vertical_moments_in_expr_with_chromatic_interval_classes
   tools/verticalitytools/label_vertical_moments_in_expr_with_chromatic_intervals
   tools/verticalitytools/label_vertical_moments_in_expr_with_counterpoint_intervals
   tools/verticalitytools/label_vertical_moments_in_expr_with_diatonic_intervals
   tools/verticalitytools/label_vertical_moments_in_expr_with_interval_class_vectors
   tools/verticalitytools/label_vertical_moments_in_expr_with_numbered_chromatic_pitch_classes
   tools/verticalitytools/label_vertical_moments_in_expr_with_pitch_numbers

:py:mod:`wellformednesstools <abjad.tools.wellformednesstools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: wellformednesstools abstract classes

.. toctree::
   :maxdepth: 1

   tools/wellformednesstools/Check/Check

.. rubric:: wellformednesstools concrete classes

.. toctree::
   :maxdepth: 1

   tools/wellformednesstools/BeamedQuarterNoteCheck/BeamedQuarterNoteCheck
   tools/wellformednesstools/DiscontiguousSpannerCheck/DiscontiguousSpannerCheck
   tools/wellformednesstools/DuplicateIdCheck/DuplicateIdCheck
   tools/wellformednesstools/EmptyContainerCheck/EmptyContainerCheck
   tools/wellformednesstools/IntermarkedHairpinCheck/IntermarkedHairpinCheck
   tools/wellformednesstools/MisduratedMeasureCheck/MisduratedMeasureCheck
   tools/wellformednesstools/MisfilledMeasureCheck/MisfilledMeasureCheck
   tools/wellformednesstools/MispitchedTieCheck/MispitchedTieCheck
   tools/wellformednesstools/MisrepresentedFlagCheck/MisrepresentedFlagCheck
   tools/wellformednesstools/MissingParentCheck/MissingParentCheck
   tools/wellformednesstools/NestedMeasureCheck/NestedMeasureCheck
   tools/wellformednesstools/OverlappingBeamCheck/OverlappingBeamCheck
   tools/wellformednesstools/OverlappingGlissandoCheck/OverlappingGlissandoCheck
   tools/wellformednesstools/OverlappingOctavationCheck/OverlappingOctavationCheck
   tools/wellformednesstools/ShortHairpinCheck/ShortHairpinCheck

.. rubric:: wellformednesstools functions

.. toctree::
   :maxdepth: 1

   tools/wellformednesstools/list_checks

Unstable Abjad composition packages (load manually)
---------------------------------------------------

.. toctree::
   :maxdepth: 1

:py:mod:`constrainttools <abjad.tools.constrainttools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: constrainttools concrete classes

.. toctree::
   :maxdepth: 1

   tools/constrainttools/AbsoluteIndexConstraint/AbsoluteIndexConstraint
   tools/constrainttools/Domain/Domain
   tools/constrainttools/FixedLengthStreamSolver/FixedLengthStreamSolver
   tools/constrainttools/GlobalConstraint/GlobalConstraint
   tools/constrainttools/GlobalCountsConstraint/GlobalCountsConstraint
   tools/constrainttools/GlobalReferenceConstraint/GlobalReferenceConstraint
   tools/constrainttools/RelativeCountsConstraint/RelativeCountsConstraint
   tools/constrainttools/RelativeIndexConstraint/RelativeIndexConstraint
   tools/constrainttools/VariableLengthStreamSolver/VariableLengthStreamSolver

:py:mod:`lyricstools <abjad.tools.lyricstools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: lyricstools concrete classes

.. toctree::
   :maxdepth: 1

   tools/lyricstools/AddLyrics/AddLyrics
   tools/lyricstools/LyricExtender/LyricExtender
   tools/lyricstools/LyricHyphen/LyricHyphen
   tools/lyricstools/LyricSpace/LyricSpace
   tools/lyricstools/LyricText/LyricText
   tools/lyricstools/Lyrics/Lyrics

:py:mod:`quantizationtools <abjad.tools.quantizationtools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: quantizationtools concrete classes

.. toctree::
   :maxdepth: 1

   tools/quantizationtools/QEvent/QEvent
   tools/quantizationtools/QGrid/QGrid
   tools/quantizationtools/QGridQuantizer/QGridQuantizer
   tools/quantizationtools/QGridSearchTree/QGridSearchTree
   tools/quantizationtools/QGridTempoLookup/QGridTempoLookup

.. rubric:: quantizationtools functions

.. toctree::
   :maxdepth: 1

   tools/quantizationtools/is_valid_beatspan
   tools/quantizationtools/millisecond_pitch_pairs_to_q_events
   tools/quantizationtools/milliseconds_to_q_events
   tools/quantizationtools/tempo_scaled_leaves_to_q_events
   tools/quantizationtools/tempo_scaled_rational_to_milliseconds
   tools/quantizationtools/tempo_scaled_rationals_to_q_events

:py:mod:`tonalitytools <abjad.tools.tonalitytools>`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. rubric:: tonalitytools concrete classes

.. toctree::
   :maxdepth: 1

   tools/tonalitytools/ChordClass/ChordClass
   tools/tonalitytools/ChordQualityIndicator/ChordQualityIndicator
   tools/tonalitytools/DoublingIndicator/DoublingIndicator
   tools/tonalitytools/ExtentIndicator/ExtentIndicator
   tools/tonalitytools/InversionIndicator/InversionIndicator
   tools/tonalitytools/Mode/Mode
   tools/tonalitytools/OmissionIndicator/OmissionIndicator
   tools/tonalitytools/QualityIndicator/QualityIndicator
   tools/tonalitytools/Scale/Scale
   tools/tonalitytools/ScaleDegree/ScaleDegree
   tools/tonalitytools/SuspensionIndicator/SuspensionIndicator
   tools/tonalitytools/TonalFunction/TonalFunction

.. rubric:: tonalitytools functions

.. toctree::
   :maxdepth: 1

   tools/tonalitytools/analyze_chord
   tools/tonalitytools/analyze_incomplete_chord
   tools/tonalitytools/analyze_incomplete_tonal_function
   tools/tonalitytools/analyze_tonal_function
   tools/tonalitytools/are_scalar_notes
   tools/tonalitytools/are_stepwise_ascending_notes
   tools/tonalitytools/are_stepwise_descending_notes
   tools/tonalitytools/are_stepwise_notes
   tools/tonalitytools/chord_class_cardinality_to_extent
   tools/tonalitytools/chord_class_extent_to_cardinality
   tools/tonalitytools/chord_class_extent_to_extent_name
   tools/tonalitytools/diatonic_interval_class_segment_to_chord_quality_string
   tools/tonalitytools/is_neighbor_note
   tools/tonalitytools/is_passing_tone
   tools/tonalitytools/is_unlikely_melodic_diatonic_interval_in_chorale
   tools/tonalitytools/make_all_notes_in_ascending_and_descending_diatonic_scale
   tools/tonalitytools/make_first_n_notes_in_ascending_diatonic_scale
