Thanks @mekkablue. So with that in mind, I went ahead and made many ligatures and marks - some marks are themselves ligatures, some not. I’d find by trial and error which ‘top’ would be ‘active’ (i.e. actually take a mark with anchors being functional) where the mark comes after the ligature.
Here is what I found, from my personal notes:
- Marks just need ‘_top’ or ‘_bottom’ anchor.
- Target glyphs to me marked, need 3 top and 3 bottom anchors, and ‘_top’ in mark attached to ‘top_3’ for some reason.
- But to see them in preview here in Glyphs app you need to name it ‘top’. Then when aligned, rename it ‘top_3’ (same for bottom) for it to work when exported.
- When the target is a comma (maybe other punctuation also?), the mark aligns to the ‘top’/‘bottom’ anchor, not highest number.
- Weird behaviour. Most target gylphs to be marked can have just ‘right’ anchor but need ‘left_3’, though don’t need ‘left_1’ and ‘left_2’. hayuri is one such liga. And seem some ligas where I’m actually using ‘bottom’(/'bottom_3) won’t work without there being top_1 top_2 and top_3 in there too.
- Liga ni needs 3 top, and single right_3 and left_3 to make left and right marks work. Don’t know why they need both for one to work.
So this all seems quite unpredictable. Even ligas made from just two letters sometimes behave differently from each other, with different requirements regarding needs for ‘top’ vs. ‘top_3’ for example, as explained above. This means that I have to export and check with a section of text every time I alter one glyph! Sometimes more than once per glyph even, one anchor at a time. And often multiple tries to get one glyph’s anchors working. That’s how it seems - perhaps there is a pattern but I have not been able to descipher it, so if you know the rules I’d love to hear them! If there is a way to make this process more predictable, and therefore faster?
And one more huge problem - yesterday I went through this process and got one by one many glyphs working. My text was looking great. Then after I edited one more ligature ( what I call a ‘target’ glyph that gets marks to attach to it - again a two leter ligature like the majority of mine are), something went wrong. When I exported, many other letters stopped working properly! Even though I had not changed them at all!
So I tried ‘undo’ - but there is an issue which I have been aware of for a long time with ‘undo’. Intead of undoing the last actions I made on the app in sequence, it seems that undo is also fairly unpredictable. Sometimes clicking ‘undo’ and then ‘redo’ works as expected, while sometimes you end up in a very different place than you started. And on top of that, undo seems to also depend on what you are currently clicked on. So if you do something by accident, but don’t know what (for example in font view), it can be super hard to undo it. And if you click on a glyph to highlight it, it seems it will undo whatever last change you made to that glyph, even if it was many days ago (or longer?) This can result in accidently undoing work that you did and it can be very hard to identify what you have undone, and how to redo it. Especially if you don’t know what was highlighted when you clicked undo.
Anyway aside from that undo difficulty, I did manage to undo all the changes I had made to that ligature in this case. And yet the behaviour was unchanged when exporting - the other glyphs I had spent so long making good, are still dysfunctional. And I have no idea how to fix them, or to prevent this happening again.
I wonder for example, when we make anchors, is there any code in the file that it changes ,that can affect anything other than that single glyph? If so, can I change that back? Or even make the code such that anchors are predictable and I can have a reliable way for creating functional anchors?
Help would be mus appreciated!
And now for a little extra detail in case it helps:
To make my position more transparent - I am wanting 4 functional anchors per ligature, to receive different anchors in different marks. Up to now I chose:
-top
I have not got to using ‘bottom’ yet but have them in there in some I think where they did not function otherwise, but I will anyway need to be using them.
An example of a two letter ligature that works (/worked!) for one top and one right functioning:
top_1; top_2; top_3; left:3
An example of another with also functional right:
top_1; top_2; top_3; right_3; left:3; bottom_2