From: Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
To: Mark David <mhd@yv.org>
Cc: 21846@debbugs.gnu.org
Subject: bug#21846: 25.0.50; emacs hebrew script bidi nikud rendering bug
Date: Fri, 11 Dec 2015 00:15:55 +0100 [thread overview]
Message-ID: <87vb85q4ic.fsf@justinian.turtle-trading.net> (raw)
In-Reply-To: <874mg3um4s.fsf@justinian.turtle-trading.net> (Benjamin Riefenstahl's message of "Tue, 01 Dec 2015 00:02:11 +0100")
Benjamin Riefenstahl writes:
> With m17n-edit, the text is run through COMBINING.flt (according to
> MDEBUG_FLT=3), with Emacs, no FLT is triggered at all. Which makes me
> suspect that Emacs does not use m17n for this font at all (?).
So I armed myself with a debugger and tried to trace what happens. My
command line is
gdb --args ./emacs -Q --eval '(set-default-font "Aharoni CLM 20")' test.txt
The first wrong turn is in hebrew-shape-gstring
(lisp/language/hebrew.el). This only calls the font-based shaping
function, if the font indicates that it supports OpenType (OTF) features
for Hebrew. As a fallback, limited shaping is done in ELisp by looking
up precomposed characters.
When I stub this out for further testing, we get until ftfont_shape
(ftfont.c). That function checks if there is any OTF support in the
font and only when it is there, it calls libm17n. The next function in
the chain (ftfont_shape_by_flt) actually uses that OTF object that we
did not get in ftfont_shape to pass some font information.
There seem to be three possibilities:
* Don't fix, PostScript fonts are just not supported here. Maybe instead "Aharoni CLM" could be converted to OpenType.
* Try to support non-OTF fonts in ftfont_shape_by_flt. See how the example programs for libm17n do it.
* Reimplement what COMBINING.flt does in hebrew.el.
next prev parent reply other threads:[~2015-12-10 23:15 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-06 22:29 bug#21846: 25.0.50; emacs hebrew script bidi nikud rendering bug Mark H. David
2015-11-07 0:12 ` bug#21846: Additional Info re: bug#21846 (25.0.50; emacs hebrew script bidi nikud rendering bug) Mark David
2015-11-07 8:59 ` bug#21846: 25.0.50; emacs hebrew script bidi nikud rendering bug Eli Zaretskii
2015-11-08 0:49 ` Mark David
2015-11-07 17:44 ` Benjamin Riefenstahl
2015-11-07 17:58 ` Eli Zaretskii
2015-11-07 19:24 ` Benjamin Riefenstahl
2015-11-08 0:56 ` Mark David
2015-11-08 16:21 ` Benjamin Riefenstahl
2015-11-28 19:33 ` Benjamin Riefenstahl
2015-11-29 22:59 ` Mark David
2015-11-30 17:22 ` Benjamin Riefenstahl
2015-11-30 23:02 ` Benjamin Riefenstahl
2015-12-01 14:52 ` Benjamin Riefenstahl
2015-12-10 23:15 ` Benjamin Riefenstahl [this message]
2015-12-11 2:36 ` Mark H. David
2015-12-18 13:49 ` K. Handa
2016-01-03 12:03 ` K. Handa
2016-01-10 20:21 ` Mark H. David
2016-01-12 16:38 ` Benjamin Riefenstahl
2016-01-22 12:46 ` K. Handa
2016-01-22 13:46 ` Eli Zaretskii
2016-03-18 15:56 ` Wolfgang Jenkner
2016-03-21 14:56 ` handa
2016-03-21 19:05 ` Wolfgang Jenkner
2016-03-25 9:42 ` Eli Zaretskii
2016-03-25 10:01 ` Mark H. David
2016-03-27 11:51 ` handa
2015-12-05 12:55 ` K. Handa
2015-12-06 18:28 ` Mark David
2015-12-07 3:05 ` Richard Stallman
2015-12-07 13:45 ` K. Handa
2015-12-07 16:24 ` Benjamin Riefenstahl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87vb85q4ic.fsf@justinian.turtle-trading.net \
--to=b.riefenstahl@turtle-trading.net \
--cc=21846@debbugs.gnu.org \
--cc=mhd@yv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.