Hans, Sorry to bring this up after over a year, but I just noticed something that doesn't seem right. I implemented some contextual substitutions in my own fork of the Keter YG Hebrew font (.ttf file attached) under the "dlig" feature that should do the following two things: 1. If a *shin *with a *sin *dot (שׂ) is pointed with a *holam *(the vowel point placed high and on the left), then the *shin*, *sin *dot, and *holam *are combined into a single ligature that depicts the *sin *dot and *holam *merged into a single point. 2. If a *shin *with a *shin *dot (שׁ) follows another letter pointed with a *holam *(except for *vav*, which must be pointed with a *holam haser*), then the shin and shin dot are replaced with a ligature that moves the *shin* dot a bit to the right (so that it appears to be merged with the preceding *holam*), and the combination of the preceding letter and the actual holam is changed to just the preceding letter (thus effectively stripping the old *holam*). I've tested both of these features in FontForge, and they work as expected there. Likewise, if I test them in the following XeLaTeX script, XeLaTeX handles both rules correctly: ``` \documentclass{article} %Set fonts and font features: \usepackage{fontspec} \setmainfont[Path=../fonts/KeterYG/, UprightFont = *-Medium, Script=Hebrew, Ligatures=Discretionary]{KeterYG} % I'm using a local copy of the attached font \begin{document} שֹׂבַע עָשׂוֹר קֹשֶׁט שֹׁשַׁנִּים עָשׂוֹר מֹשֶׁה שַׁלֹשׁ \end{document} ``` But in ConTeXt, only rule (1) above works as expected. Here is a minimal (non-)working example: ``` \starttypescriptcollection[keteryg] \starttypescript[serif][keteryg] \definefontsynonym[Serif][file:../fonts/KeterYG/KeterYG-Medium.ttf][features=hebrew] % use a local copy of the attached font, with all the necessary Hebrew features (this includes dlig by default) \stoptypescript \starttypescript[keteryg] \definetypeface[keteryg][rm][serif][keteryg][default] \stoptypescript \stoptypescriptcollection %Set up the main font: \setupbodyfont[keteryg] %Set up right-to-left alignment: \setupalign[r2l] \starttext שֹׂבַע עָשׂוֹר קֹשֶׁט שֹׁשַׁנִּים עָשׂוֹר מֹשֶׁה שַׁלֹשׁ \stoptext ``` In examples 3, 4, 6, and 7, the *holam *dot still appears before the *shin* -with-merged-*shin*-dot-and-*holam *ligature, when it should be absent. (I realize that it may be difficult to tell; in the last two examples, the presence of two dots is easier to make out.) Do you have any idea why this might be happening in ConTeXt? Does the glyph reordering in font-imp-combining.lua take place before any OpenType features in the font are applied? Thanks again! Joey On Thu, Apr 30, 2020 at 4:17 PM Joey McCollum wrote: > Okay! I have not figured out how to add a new page to the wiki, but I was > able to add a section to the end of the "Arabic and Hebrew" page ( > https://www.contextgarden.net/Arabic_and_Hebrew) discussing the issue, > providing a test, and briefly describing the fix. > > Joey > > On Thu, Apr 30, 2020 at 11:14 AM Hans Hagen wrote: > >> On 4/30/2020 4:28 PM, Joey McCollum wrote: >> > Thanks so much, Hans! I should be able to add a wiki page summarizing >> > the tests before the end of the week. >> > >> > For reference purposes, do you know which version of ConTeXt has (or >> > will have) this update included? >> todays upload >> >> >> ----------------------------------------------------------------- >> Hans Hagen | PRAGMA ADE >> Ridderstraat 27 | 8061 GH Hasselt | The Netherlands >> tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl >> ----------------------------------------------------------------- >> >