-
Notifications
You must be signed in to change notification settings - Fork 3
harmony.functional
This is a discussion of the features initially available in the analysis.harmony.functional
module (Open as PDF).
Questions/suggestions:
- Row 1:
- Is it necessary to provide support for "triple" functions like "DDD" or "SSS"?
-
The spacing of double functions will be configurable, also to accomodate differing font faces/weights(https://github.com/openlilylib/analysis/commit/287632cd73a164e4de99fb4804c54bf1a0ff8c1b)
- Row 3:
- The strikethrough should be made configurable
- functions not actually appearing (like intermediate dominants which aren't resolved or chords that can only be related to something that doesn't happen) can currently be visualized by square brackets or by (grey) coloring.
- Should there be other forms of parenthesizing (e.g. curly braces
{}
or angled brackets<>
? - Should it be possible to move such a "phantom" function to a (smaller?) subscript position?
- Should there be other forms of parenthesizing (e.g. curly braces
- v, N, and n are currently hardcoded. Should it be possible to place arbitrary text there?
- Row 4:
- Currently there is support for three layers of numbers. Is that sufficient?
- Will "functional" people want to have sharps and flats instead of < and >? If so do we need the optionally before/after the number?
- Entries centered above/below the function can currently hold numbers only. Should it be possible to write arbitrary text there?
- Is it necessary to support more than one layer above/below the function?
- If so, should there be something like a separating line?
Bracketed/parenthesized functions should be able to print a forward arrow indicating intermediate functions. These arrows should either have a fixed length or be drawn to the consecutive function.
\function \with {
start-drone = \markup \circle Es
}
This should start a spanner drawing a (styled?) line below the function and the given markup below. At intermediate and ending points arbitrary markup should also be possible, but usually one will only use the start.
\function \with {
annotate-below = \markup \bold \with-color #red "Es?"
}
This should print a (short) line below the function and the markup below that. It should be configurable to draw either a centered horizontal or a diagonal line somewhat shifted right or left.
Step resolutione (4 - 3
) should be possible with a proper hyphen printed centered between the numbers. I see three different approaches:
- encode two functions and indicate (somehow) that there's this continuation between them
- encode one function and indicate that (after a certain time) a resolution should be printed
- encode one function and immediately print both numbers as part of the markup.
- and 2) may be interdependent if the function differs too.