DejaVuSans LGC from the 2.9 LGC tarball contains various Arabic glyphs. Or at least that's what the ttx dump of it suggests: <GlyphID id="3192" name="arabic_dot"/> <GlyphID id="3193" name="arabic_2dots"/> <GlyphID id="3194" name="arabic_3dots"/> <GlyphID id="3195" name="arabic_3dots_a"/> <GlyphID id="3196" name="arabic_2dots_a"/> <GlyphID id="3197" name="arabic_4dots"/> <GlyphID id="3198" name="uni066E.fina"/> <GlyphID id="3199" name="uni066E.init"/> <GlyphID id="3200" name="uni066E.medi"/> <GlyphID id="3201" name="uni06A1.fina"/> <GlyphID id="3202" name="uni06A1.init"/> <GlyphID id="3203" name="uni06A1.medi"/> <GlyphID id="3204" name="uni066F.fina"/> <GlyphID id="3205" name="uni066F.init"/> <GlyphID id="3206" name="uni066F.medi"/> <GlyphID id="3207" name="uni06BA.init"/> <GlyphID id="3208" name="uni06BA.medi"/> <GlyphID id="3209" name="arabic_ring"/> <GlyphID id="3210" name="uni067C.fina"/> <GlyphID id="3211" name="uni067C.init"/> <GlyphID id="3212" name="uni067C.medi"/> <GlyphID id="3213" name="uni067D.fina"/> <GlyphID id="3214" name="uni067D.init"/> <GlyphID id="3215" name="uni067D.medi"/> <GlyphID id="3216" name="uni0681.fina"/> <GlyphID id="3217" name="uni0681.init"/> <GlyphID id="3218" name="uni0681.medi"/> <GlyphID id="3219" name="uni0682.fina"/> <GlyphID id="3220" name="uni0682.init"/> This is tricking fontconfig into reporting that the font has Arabic capabilities. I didn't check other fonts or versions.
Those are glyphs with no Unicode points. There's no easy way to get them out of the normal version with the current script, which just takes ranges of Unicode numbers to discard. I know it's a little stupid to have them in the LGC version, but how is this tricking fontconfig? The normal code points which fontconfig should check, in the Arabic block, are all empty.
hmm for some reason selecting the glyphs and clearing them before generating lgc in makelgc.sh doesn't work, yet it works in fontforge's GUI with the same script. Besides some characters have different ID numbers or are absent in some fonts. I'll look into it.
(In reply to comment #1) > Those are glyphs with no Unicode points. There's no easy way to get them out > of the normal version with the current script, which just takes ranges of > Unicode numbers to discard. I know it's a little stupid to have them in the > LGC version, but how is this tricking fontconfig? The normal code points which > fontconfig should check, in the Arabic block, are all empty. Not sure. Empty arab script perhaps. $ fc-match -v 'DejaVu LGC Sans' Pattern has 28 elts (size 32) family: "DejaVu LGC Sans"(s) familylang: "en"(s) style: "Book"(s) stylelang: "en"(s) slant: 0(i)(s) weight: 80(i)(s) width: 100(i)(s) size: 12(f)(s) pixelsize: 12.5(f)(s) foundry: "unknown"(s) hintstyle: 3(i)(s) hinting: FcTrue(s) verticallayout: FcFalse(s) autohint: FcFalse(s) globaladvance: FcTrue(s) file: "/home/behdad/.fonts/dejavu-lgc-ttf-2.9/DejaVuLGCSans.ttf"(s) index: 0(i)(s) outline: FcTrue(s) scalable: FcTrue(s) dpi: 75(f)(s) rgba: 1(i)(w) scale: 1(f)(s) charset: set(s) lang: aa|ab|af|ast|ava|ay|az|ba|bam|be|bg|bi|bin|br|bs|bua|ca|ce|ch|chm|co|cs|cu|cv|cy|da|de|el|en|eo|es|et|eu|fi|fj|fo|fr|ful|fur|fy|ga|gd|gl|gn|gv|ha|haw|ho|hr|hu|ia|ibo|id|ie|ik|io|is|it|kaa|ki|kk|kl|ku|kum|kv|kw|ky|la|lb|lez|ln|lt|lv|mg|mh|mi|mk|mo|mt|nb|nds|nl|nn|no|ny|oc|om|os|pl|pt|rm|ro|ru|sah|sco|se|sel|sh|sk|sl|sm|sma|smj|smn|sms|so|sq|sr|sv|sw|tg|tk|tn|to|tr|ts|tt|tw|tyv|uk|uz|ven|vi|vo|vot|wa|wen|wo|xh|yap|yo|zu(s) fontversion: 190054(i)(s) capability: "otlayout:DFLT otlayout:arab otlayout:cyrl otlayout:grek otlayout:hebr otlayout:latn"(s) fontformat: "TrueType"(s) embeddedbitmap: FcTrue(s)
Behdad Esfahbod Do you still experience this issue with newer drivers ? Please check the status of your issue.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.