There is no accented glyph for the 'oe' character in Linux Libertine. When trying to form this character, the (acute) accent is centred over the 'e' half. I'm trying to get the accent over the centre of the whole ligature.

I have tried to add a feature file to position the accent but have not got it to do anything yet. I wonder if my syntax is at fault - or anything else.

This is the minimal test I am using (with 2 ways of naming the character) with lualatex:

\setmainfont[FeatureFile=linlib.fea,RawFeature=+mlig;]{Linux Libertine O}

And the feature file is:

languagesystem DFLT dflt; 
languagesystem latn dflt;
lookup markMarkPositioninglookup100 {
  lookupflag 0;
  markClass [\acutecomb \uni0341 ] <anchor -191 682> @TOP_MARK;
  pos base [\oe ] <anchor 250 644> mark @TOP_MARK;
} markMarkPositioninglookup100;

feature mlig {
  script DFLT;       # tested with and without these script/language lines
  language latn dflt ;
  lookup markMarkPositioninglookup100;
} mlig;

I have also tried the code for accenting a ligature instead:

lookup markLigPositioninglookup100 {
  lookupflag 0;
 markClass [\acutecomb \uni0341 ] <anchor -191 682> @TOP_MARKS;
  position ligature oe 
      <anchor NULL>    # no mark above the 'o' half
      ligComponent     # specify mark for 'e' half
      <anchor 50 644> mark @TOP_MARKS    # mark above left side of 'e'
} markLigPositioninglookup100;

All to no avail: the accent continues firmly centred over the 'e'.

Any ideas?

  • There is no œ́ glyph for an accented œ ligature in Unicode either (although ǽ is). In fact, œ́ is built from œ and the “combining acute accent” (U+0301). I don’t know if this affects the setup of feature files. As a work-around I can only offer \ooalign{\hss\kern.3ex\'{}\hss\crcr\oe}. – Qrrbrbirlbel Apr 18 '13 at 17:35
  • If I use Junicode, I get a correctly placed accent, so it seems a bug in the Linux Libertine font. – egreg Apr 18 '13 at 18:01
  • Is the syntax of the .fea file even correct? I don’t remember it using \ … (and œ is U+0339 and not U+0341). – Qrrbrbirlbel Apr 18 '13 at 18:19
  • The version of FontForge used by LuaTeX is quite old, particularly it does not support on version ≥ 1.8 of feature file syntax (plus some FontForge extensions), so you have to dig up the old documentation. – Khaled Hosny Apr 18 '13 at 20:54
  • Hi @egreg: Problem seems to be that Linux Libertine oe character glyph has no anchor point for accent on top – Bernard Apr 19 '13 at 20:15

You can use kerning in the feature file if you don't mind writing the glyph like this ´œ:

\setmainfont[FeatureFile=linlib.fea,RawFeature=+mlig;]{Linux Libertine O}

with this feature file:

languagesystem DFLT dflt ;
languagesystem latn dflt ;

feature kern {
      position acute <200 0 -400 0> oe ;
} kern;

enter image description here

  • Or kern on the other side and have proper input :) – Khaled Hosny Apr 18 '13 at 18:48
  • Hi @KhaledHosny - I am afraid I don't understand your comment. – topskip Apr 18 '13 at 18:54
  • I meant pos oe actute…, but never mind this does not work as I thought it would. – Khaled Hosny Apr 18 '13 at 20:51
  • Whilst this solution with kern gives a working solution, it requires a bit of fiddling with the numbers to get the result kerning nicely with characters before it and after it. It would be nice if anyone can get my more ambitious method to work, as that would presumably preserve the kerning of the oe character. – Bernard Apr 19 '13 at 16:01

I don't know about lualatex, but in regular LaTeX this is working exactly as expected:




enter image description here

  • The OP has written exactly that. No need to post it as an answer :) – topskip Apr 18 '13 at 17:52
  • Make it a comment, then, or whatever. It actually compiles fine, is my point. – Ingmar Apr 18 '13 at 17:54
  • Interesting, it's not what I get (i.imgur.com/HIexx1w.png) with texlive 2012, all updates included. – topskip Apr 18 '13 at 18:32
  • But I don't think this would give me the same handle on all the other opentype features I can switch on and off by using fontspec. – Bernard Apr 18 '13 at 18:35
  • Running MikTeX 2.9.4106 (Win 7 / 64 bit) here. – Ingmar Apr 18 '13 at 18:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.