-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Neography issue: quilisma porrectus ancus #679
Comments
The salient neume in this case is a 6-note neume. At the minimum this is going to be a fused neume. Maybe we should come up with a way to create fused neumes generically. This requires some thought and perhaps some engineering. |
Yeah. Do we have a neume for the iwjiji or is that already composed too? If yes, is it composed from the quilisma and jiji without stems? If we have ancus without stem (jih~) it could be fused with the portion of porrectus. |
All 5-note shapes are fused. We don't have a stemless ancus, and even if we did, it'll take some headwork to come up with a sensible way to fuse these extended shapes. Edit: while I did say that all 5-note shapes are fused, the only 5-note shape we support is the torculus resupinus flexus (with various shapes at the head and tail). |
I'm still thinking about this, but here are my thoughts so far, in case someone wants to stop me from going in the wrong direction: I'm thinking of the addition of something to gabc that would indicate a desired fusing of notes. For the sake of discussion, I'll use the backslash ( This would tell Gregorio (and inevitably GregorioTeX) that there should be a line (if appropriate) to connect the I'm not sure how complicated this kind of thing would be to implement. |
Perhaps it can be useful in some cases, but for this particular case I don't see other way to render it, so just writing it as I wrote IMHO should be enough and the fused neume pattern matched for it. |
I think it's a question of implementation order. I think it makes sense to implement the manual system first, and once that works, we can detect extended sequences like yours and put the breaks in for sensible defaults. As for where to put the |
As I work through the various cases, it seems to me that an automatic evaluation of arbitrary notes into a set of fusable portions will almost certainly break scores where people depended on the old (arbitrary but somewhat logical) algorithm for breaking notes into neumes. Would anyone object to me adding another gabc-header to control gregorio's behavior on a given file? Something like |
I agree with your first option (both possible, with current being the default), I think it's the safest |
Part of the implementation for gregorio-project#679.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
As I work on this, I have come up with another proposal that I like better than a behavioral header. The behavioral header would cause gregorio to attempt to fuse anything that's seems fusable. However, fusion is really the exceptional case since normal glyphs have a much better appearance. So my suggestion I , rather than adding this header, we add something like |
Syntax-wise, it seems |
I think |
As far as I'm concerned, #687, #692, and this issue are all aspects of the same feature. For this issue, the focus beyond basic fusion is the auto-fusion. For #687, the focus is on adding the reverse oriscus and making it fusable. For #692, the focus is on tuning the spacing of ascending puncta inclinata. As of now, barring technical reasons to change, the syntax will be:
The rules for fusion are as follows:
Regarding the lexing of
|
I agree with everything. If you allow texverb and alt (which I'm quite sure will be chalenging, especially in TeX), I think you'll solve #707 too... But don't hesitate to give up if it's too difficult, the feature is already quite a big improvement without it! |
Just a thought: #707 will be solved (worked around actually) by using g[ob:1;6mm]@hgh. Writing this makes me believe that alt and texverb are not very useful in the About the state machine, maybe you can just throw a fatal error if an anomaly is detected? |
The complication in the state machine is not so much one of detecting anomalies as it is one of deciding to continue if "auto-fusion" is on. For example, if you detect a scandicus, and it's not liquescent, then you might not want to end the glyph there if "auto-fusion" is enabled. I'll figure it out. |
Question: using |
I tend to prefer |
Above-lines text will not work with the current implementation because it ends the element, and fusion is only supported (at present) within an element. I am not going to change the implementation unless there is a serious need because this would make things a lot more complicated. |
Corrected the shape and handling of porrectus-like flexus. Corrected liquescence comparisons to handle L_FUSED. Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
…ers. Part of the implementation for gregorio-project#679.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692. This change also happens to fill in missing gabc sequences in the font tables.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
Part of the implementation for gregorio-project#679.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
Part of the implementation for gregorio-project#679, gregorio-project#687, and gregorio-project#692.
Tests the implementation of gregorio-project/gregorio#679, gregorio-project/gregorio#687, and gregorio-project/gregorio#692. Corresponds with pull request gregorio-project/gregorio#723.
Please try out the feature in the develop branch. |
In Nocturnale Romanum 2002, p. 278*, I run into problem typesetting:
mun(h!iwjijih~)di(ih)
which is typeset IMHO wrongly as:
In NR02 it looks like:
I'd expect something close to a combination of h!iwjiji overlapped with jih~ over the ji, without the stem, so:
Unfortunately in this case I can't find any workaround, putting ! anywhere in between creates something wrong.
The text was updated successfully, but these errors were encountered: