<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix"><br>
      <br>
      The problem has been solved (it seems). The problem was not the
      Class value as<br>
      I hand edited the ttx file, reconstructed the otf but again did
      not work.<br>
      <br>
      I deleted the anchors of this glyph, recreated them (exactly the
      same) and then<br>
      as a miracle everything worked.<br>
      <br>
      This explains why nobody answered me when I asked the fontforge
      list yesterday.<br>
      It looks like a bug of fontforge to me.<br>
      <br>
      I also fixed the stacking_above_AND_below. NewCM will have stellar
      support<br>
      for diacritics stacking 😁<br>
      <br>
      Thanks for your time, help and xetex support for stacking,<br>
      <br>
      cheers,<br>
      <br>
      Antonis.<br>
      <br>
      <br>
      <br>
      <br>
      <br>
      <br>
      On 10/23/21 11:11 PM, Jonathan Kew wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:fee948dc-06b2-633a-5618-de8115b06b03@gmail.com">On
      23/10/2021 16:48, Antonis Tsolomitis wrote:
      <br>
      <blockquote type="cite">
        <br>
        Thanks for the answer.
        <br>
        <br>
        Yes acute works. But where do you see the difference? I am
        looking the dialogs of
        <br>
        fontforge and can not locate the difference.
        <br>
        <br>
        I have more trouble with diacritics stacking especially when
        stacking above AND below.
        <br>
        x́ (x+ U+0301) works
        <br>
        x̖ (x + U+0316) works as well, but
        <br>
        x̖́ (x+ U+0301 + U+0316) fails.
        <br>
        <br>
        <br>
        I have been trying to resolve these issues for a long time but
        without luck. The fontforge
        <br>
        dialogs show correct stacking but xetex does not stack as
        expected an I have routinely failed
        <br>
        to find the reasons.
        <br>
        <br>
        So at which dialogs do you see the difference between U+0301 and
        U+0300 ?
        <br>
        And why simultaneous stack above and below fails?
        <br>
        <br>
      </blockquote>
      <br>
      I haven't looked at FontForge dialogs; I used TTX (from the
      FontTools package) to look at an XML dump of the .otf file, and
      noticed that for the uni0300 glyph, the mark-to-base lookup has an
      attachment point with class=1:
      <br>
      <br>
                  <MarkRecord index="9">
      <br>
                    <Class value="1"/>
      <br>
                    <MarkAnchor Format="1">
      <br>
                      <XCoordinate value="218"/>
      <br>
                      <YCoordinate value="516"/>
      <br>
                    </MarkAnchor>
      <br>
                  </MarkRecord>
      <br>
      <br>
      whereas for uni0301 and other diacritics that should attach to the
      "above" anchor of the base, the attachment has class=3:
      <br>
      <br>
                  <MarkRecord index="10">
      <br>
                    <Class value="3"/>
      <br>
                    <MarkAnchor Format="1">
      <br>
                      <XCoordinate value="284"/>
      <br>
                      <YCoordinate value="522"/>
      <br>
                    </MarkAnchor>
      <br>
                  </MarkRecord>
      <br>
      <br>
      In the associated BaseArray, glyphs like uni2C9B appear to have
      only anchors 3 (above) and 4 (below) defined:
      <br>
      <br>
                  <BaseRecord index="876">
      <br>
                    <BaseAnchor index="0" empty="1"/>
      <br>
                    <BaseAnchor index="1" empty="1"/>
      <br>
                    <BaseAnchor index="2" empty="1"/>
      <br>
                    <BaseAnchor index="3" Format="1">
      <br>
                      <XCoordinate value="272"/>
      <br>
                      <YCoordinate value="453"/>
      <br>
                    </BaseAnchor>
      <br>
                    <BaseAnchor index="4" Format="1">
      <br>
                      <XCoordinate value="296"/>
      <br>
                      <YCoordinate value="-20"/>
      <br>
                    </BaseAnchor>
      <br>
                    <BaseAnchor index="5" empty="1"/>
      <br>
                    <BaseAnchor index="6" empty="1"/>
      <br>
                  </BaseRecord>
      <br>
      <br>
      so I'm assuming that's why uni0300 fails to attach.
      <br>
      <br>
      I don't know exactly how this is exposed in the FontForge
      interface, sorry....
      <br>
      <br>
      As for combinations with above + below, you may need investigate
      mark classes, and ensure that MarkToBase lookups for the "above"
      and "below" classes are each set to ignore the other class of
      marks. So if you have <x + U+0301 + U+0316>, the lookup that
      wants to handle <x + uni0316> needs to *ignore* the uni0301
      glyph that appears in between. This is done using mark classes;
      see the documentation of the MarkToBase lookup in
      <a class="moz-txt-link-freetext" href="https://docs.microsoft.com/en-gb/typography/opentype/spec/gpos">https://docs.microsoft.com/en-gb/typography/opentype/spec/gpos</a>.
      <br>
      <br>
      Hope this helps -- sorry I don't know details of how to control
      all this from FontForge, but I'm sure it has the capabilities
      somewhere...
      <br>
      <br>
      JK
      <br>
      <br>
      <blockquote type="cite">Thanks for your help,
        <br>
        <br>
        Antonis.
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        On 10/23/21 6:26 PM, Jonathan Kew wrote:
        <br>
        <blockquote type="cite">On 23/10/2021 14:37, Antonis Tsolomitis
          wrote:
          <br>
          <blockquote type="cite">
            <br>
            It is a long time now that NewComputerModern has build-in
            information for diacritics stacking.
            <br>
            I have heard  that xetex supports this but I can not make it
            work. The font is developed
            <br>
            with fontforge and as you can see in the attached
            screenshot, fontforge shows stacking working.
            <br>
            <br>
            However xelatex just places, say the grave (uni0300) next
            and not above the character, say uni2C9B
            <br>
            (as in screenshot).
            <br>
            <br>
            So I guess I have something wrong in the font that xetex
            does not like(?)
            <br>
          </blockquote>
          <br>
          <br>
          Do any other diacritics such as the acute (U+0301) or dieresis
          (U+0308) work? From a quick look at the GPOS table in the font
          -- if I'm reading it correctly -- it appears that uni0300 may
          have the wrong attachment point class (whereas in uni0301 and
          uni0308, it looks correct).
          <br>
          <br>
          JK
          <br>
          <br>
          <br>
          <br>
          <blockquote type="cite">
            <br>
            The font currently develops the coptic block for academic
            needs this is why I use uni2C9B.
            <br>
            <br>
            A sample file is
            <br>
            <br>
            \documentclass{article}
            <br>
            \usepackage{fontspec}
            <br>
            \setmainfont{NewCM10-Regular.otf}
            <br>
            \begin{document}
            <br>
            ⲛ̀
            <br>
            \end{document}
            <br>
            <br>
            However the font that contains this character (since it is
            under development) is here:
            <br>
            <a class="moz-txt-link-freetext" href="https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.sfd">https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.sfd</a>
<a class="moz-txt-link-rfc2396E" href="https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.sfd"><https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.sfd></a>
            <br>
            <a class="moz-txt-link-freetext" href="https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.otf">https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.otf</a>
<a class="moz-txt-link-rfc2396E" href="https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.otf"><https://myria.math.aegean.gr/~atsol/tmp/NewCM10-Regular.otf></a>
            <br>
            <br>
            thanks for any help,
            <br>
            <br>
            Antonis.
            <br>
            <br>
          </blockquote>
          <br>
        </blockquote>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>