mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-25 15:00:45 -08:00
Fix Arabic shaping when column-number-mode is in effect
* src/indent.c (scan_for_column, compute_motion): Pass -1, instead of NEUTRAL_DIR, to 'composition_reseat_it'. * src/composite.c (composition_reseat_it): Interpret negative value of BIDI_LEVEL to mean the caller doesn't know what is the bidi direction of the text. (Bug#41005)
This commit is contained in:
parent
d5acc50941
commit
efdd4632c9
2 changed files with 5 additions and 3 deletions
|
|
@ -1217,7 +1217,9 @@ composition_reseat_it (struct composition_it *cmp_it, ptrdiff_t charpos,
|
|||
continue;
|
||||
if (charpos < endpos)
|
||||
{
|
||||
if ((bidi_level & 1) == 0)
|
||||
if (bidi_level < 0)
|
||||
direction = Qnil;
|
||||
else if ((bidi_level & 1) == 0)
|
||||
direction = QL2R;
|
||||
else
|
||||
direction = QR2L;
|
||||
|
|
|
|||
|
|
@ -598,7 +598,7 @@ scan_for_column (ptrdiff_t *endpos, EMACS_INT *goalcol, ptrdiff_t *prevcol)
|
|||
if (cmp_it.id >= 0
|
||||
|| (scan == cmp_it.stop_pos
|
||||
&& composition_reseat_it (&cmp_it, scan, scan_byte, end,
|
||||
w, NEUTRAL_DIR, NULL, Qnil)))
|
||||
w, -1, NULL, Qnil)))
|
||||
composition_update_it (&cmp_it, scan, scan_byte, Qnil);
|
||||
if (cmp_it.id >= 0)
|
||||
{
|
||||
|
|
@ -1506,7 +1506,7 @@ compute_motion (ptrdiff_t from, ptrdiff_t frombyte, EMACS_INT fromvpos,
|
|||
if (cmp_it.id >= 0
|
||||
|| (pos == cmp_it.stop_pos
|
||||
&& composition_reseat_it (&cmp_it, pos, pos_byte, to, win,
|
||||
NEUTRAL_DIR, NULL, Qnil)))
|
||||
-1, NULL, Qnil)))
|
||||
composition_update_it (&cmp_it, pos, pos_byte, Qnil);
|
||||
if (cmp_it.id >= 0)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue