Zero response from the list, but for the record I was able to do both of
these things. I made my own copy of the Scheme ambitus-engraver code and
put a couple of ly:message calls in to print the notes into the progress
output, and I was able to mark certain notes as not counting in the ambitus
calculation just by putting them inside a \new Voice.

On Mon, Dec 8, 2025 at 12:37 PM Eric Benson <[email protected]> wrote:

> I have a bunch of sheets that I'm transposing on demand for specific
> instrument or voice ranges. For that purpose I need to build a database
> with the melody range of each sheet, so I can tell if it fits in the target
> range of the transposition. I've been trying to figure out how to piggyback
> on the ambitus functionality, which extracts the range and adds it at the
> very beginning of the output, before or right after the clef. Instead of
> putting it in the output, I'd like to just print something out that
> specifies the low note and the high note in LilyPond absolute format, e.g.
>
> Low note: c'
> High note: a''
>
> I don't think this will be too difficult, especially since I can probably
> modify the Scheme version of ambitus-engraver that's included with
> documentation, to print something on the terminal output instead of
> engraving it in the sheet.
>
> However, I would also like to mark certain notes in the input as not being
> included in this calculation. Sometimes there are snippets of accompaniment
> that are in the same staff, but don't count in the melody range. I want
> these notes to be engraved as usual, but I want to mark them with a
> property that I can query in order to exclude them from the range. I'm
> hoping this could be something simple to add to the input files, so that a
> sequence of notes could be bracketed with a command to indicate that they
> don't count in the melody range.
>
> Any and all advice is welcome!
>

Reply via email to