Modifier Letter Rhotic Hook

13»

Comments

  • Peter Baker
    Peter Baker Posts: 190
    Thanks, Khaled. It works in InDesign, but in such a way as to remind me that if I went this route I would need somehow to provide for interpolation of the kerning values across four masters. And it doesn't work at all in Word for Mac. (Do Microsoft programmers actually spend time and energy writing code that prevents OT features they disapprove of?)
  • Paul Miller
    Paul Miller Posts: 273
    Thanks, Khaled. It works in InDesign, but in such a way as to remind me that if I went this route I would need somehow to provide for interpolation of the kerning values across four masters. And it doesn't work at all in Word for Mac. (Do Microsoft programmers actually spend time and energy writing code that prevents OT features they disapprove of?)
    I think Microsoft programmers don't actually use Microsoft programs because they know how badly they have been programmed !
  • Peter Baker
    Peter Baker Posts: 190
    I think there must be some Dickensian preacher type there, sternly denouncing the promiscuous mating of lookups and feature tags. (Meanwhile, the programmers are all toiling away on Macs or LInux boxes!)

    My comfort so far is that no one seems to have done this particularly well before. Here, for example, is Gentium Plus (a font I really like!) in MS Word:
    Something has happened to make the layout engine treat 02DE as zero-width.
  • John Hudson
    John Hudson Posts: 3,191
    edited July 2019
    Something has happened to make the layout engine treat 02DE as zero-width.
    If the glyph is categorised as a mark in the GDEF table, e.g. to be positioned with mark anchoring, its advance width is zero'd by the layout engine. I always manually zero the width of any 'mark' glyphs, and then add width back in GPOS in cases like this.
  • Peter Baker
    Peter Baker Posts: 190
    It looks like Gentium Plus tried to do exactly that. 02DE is defined as a mark in GDEF, and then there's this:

    </code></div><div>lookup markMarkPositioninglookup0 {<br>&nbsp; lookupflag IgnoreBaseGlyphs;<br>&nbsp;&nbsp;&nbsp; pos \uni0358 <0 0 200 0>;<br>&nbsp;&nbsp;&nbsp; pos \uni0315 <0 0 0 0>;<br>&nbsp;&nbsp;&nbsp; pos \uni031B <0 0 75 0>;<br>&nbsp;&nbsp;&nbsp; pos \uni02DE <0 0 268 0>;<br>} markMarkPositioninglookup0;</div><div><br></div><div>feature mark {<br>&nbsp;script DFLT;<br>&nbsp;&nbsp;&nbsp;&nbsp; language dflt ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;script cyrl;<br>&nbsp;&nbsp;&nbsp;&nbsp; language dflt ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;&nbsp;&nbsp;&nbsp; language SRB&nbsp; exclude_dflt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;script grek;<br>&nbsp;&nbsp;&nbsp;&nbsp; language dflt ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;script latn;<br>&nbsp;&nbsp;&nbsp;&nbsp; language dflt ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;&nbsp;&nbsp;&nbsp; language IPPH exclude_dflt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>&nbsp;&nbsp;&nbsp;&nbsp; language VIT&nbsp; exclude_dflt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lookup markMarkPositioninglookup1;<br>} mark;<code>
    (268 being the advance width of 02DE) But something is going wrong, and the lookup isn't being applied (in current Word for Mac).
  • Peter Baker
    Peter Baker Posts: 190
    edited July 2019
    Before this thread dies, here is my set of IPA vowel + rhotic hook combinations (offered with the note that many of my IPA letter-shapes are still under revision):
    When I started to participate in this thread, I thought of 02DE as a sort of joke that Unicode had played on us, but my thinking has (obviously) evolved: now I think that any font that offers a serious implementation of the IPA has to make sure the hook attaches cleanly to all vowel symbols.

    What I didn't know was how difficult this would prove to be. 02DE is an odd duck: a spacing modifier letter that really ought to be attached to the preceding letter via mark attachment. Current shaping engines don't provide for a case like this--not without kludges or in ways transparent to users. My solution (kerning for some combinations and ligatures for others) will work transparently in some apps, but users of Word will have to turn on kerning and ligatures--and I freely admit that many don't know how to do so.

    My thanks to Paul Miller for initiating this thread and to John Hudson and Denis Moyogo Jacquerye for very specific and valuable suggestions.
  • What I didn't know was how difficult this would prove to be. 02DE is an odd duck: a spacing modifier letter that really ought to be attached to the preceding letter via mark attachment. Current shaping engines don't provide for a case like this--not without kludges or in ways transparent to users. My solution (kerning for some combinations and ligatures for others) will work transparently in some apps, but users of Word will have to turn on kerning and ligatures--and I freely admit that many don't know how to do so.

    Any ligatures which you've created can be implemented in 'ccmp' rather than in 'liga' — that way it wouldn't have to be activated by the user since 'ccmp' should always be on.
  • Peter Baker
    Peter Baker Posts: 190
    Thanks, André, that works!

    You still have to turn kerning on in Word (for Mac, anyway) before ccmp will be applied, but this saves a click: you don't have to turn on both kerning and standard ligatures. In InDesign, LibreOffice and Apple TextEdit it is still transparent.
  • Thomas Phinney
    Thomas Phinney Posts: 2,888
    Taking away the user’s ability to turn off ligatures is not something you should do lightly. I might be happy to do it for specific uses and users, but would definitely think twice about using that trick in a regular retail font.
  • John Hudson
    John Hudson Posts: 3,191
    In this case, the 'ligatures' belong in ccmp because they are compositions of letters plus modifiers, so akin to diacritics rather than ligatures between letters.
  • Thomas Phinney
    Thomas Phinney Posts: 2,888
    Ah, of course. Makes sense, then.
  • Apropos of this old thread, I decided to take advantage of the Brill 5.00 work to redesign my rhotic hook to be a less circular and closed shape, and to seat it a bit higher.

    Also considering how to handle a double rhotic hook, which apparently IPA specifies for strong rhoticity.
  • By the way, the rhotic hook is also used with consonants in some transcriptions.

    As Thomas Pellard points out on X (formerly Twitter) as a reply to John’s question, Phoible can be used to search phonetic segments in a pretty large phonetical invetory database: results for ˞ currently include some vowels but also some consonants. Some come from dated references but others are relatively recent.
    It should be noted that the Phoible editors took the liberty to translate transcriptions from references, for example [bʴ pʴ pʰʴ ɡʴ kʴ kʰʴ] in Ding 2014 are transcribes as [b˞ p˞ p˞ʰ ɡ˞ k˞ k˞ʰ].

    There is also one example with [kɔ̙³³l˞ɔ̙³³mˑ⁵⁵] in Edmondson, Esling and Ziwo (2017), “Nuosu Yi” in Journal of the International Phonetic Association, 47(1), 87-97. [lʴ] could have been used as well.

    For the double rhotic hooks, Ladefoged and Maddieson 1996, The Sounds of the World’s Languages, used them horizontally for examples in Badaga. However, as a side note, it’s arguable whether a distinction between half-retroflexion and full retroflexion is relevant.


  • I wonder if the concept of this rhotic hook as an attachment to many different letters, is a good idea at all. As the above examples show, a satisfactory realisation in a font is a nightmare and many resulting glyphs are a spasm. The concept reveals a rather mechanistic approach to character creation. People who invented this have obviously no clue to neither typography nor actual writing. 
    Why can’t it be just a spacing letter, which would fulfill it’s task completely?


  • John Butler
    John Butler Posts: 291
    edited September 2023
    I suppose one could match the parent glyph / rhotic hook decomposed sequence to a precomposed glyph via rlig or somesuch.

    The great thing about standards is there are so many to choose from!

    Aside: double rhotic hook for strong rhoticity example here.
  • I suppose one could match the parent glyph / rhotic hook decomposed sequence to a precomposed glyph via rlig or somesuch.The ccmp feature would be appropriate. I do this only for sequences that can’t be adequately handled with spacing and kerning, e.g. where the height of the rhotic hook or shape of the connection need to be modified.