mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-11 22:11:21 -08:00
Undo changes from 2009-09-11. Set row->end and row->start in xdisp.c:display_line. dispnew.c (direct_output_for_insert): Give up if we are reordering bidirectional text. dispextern.h (IT_STACK_SIZE): Enlarge to 5. xdisp.c (display_line): Set row->end and it->start for the next row to the next character in logical order. If we are reordering bidi text, push and pop the iterator before and after momentarily iterating in logical order.
122 lines
3.9 KiB
Text
122 lines
3.9 KiB
Text
2009-09-12 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* dispnew.c (direct_output_for_insert): Give up if we are
|
|
reordering bidirectional text.
|
|
|
|
* dispextern.h (IT_STACK_SIZE): Enlarge to 5.
|
|
|
|
* xdisp.c (display_line): Set row->end and it->start for the next
|
|
row to the next character in logical order. If we are reordering
|
|
bidi text, push and pop the iterator before and after momentarily
|
|
iterating in logical order.
|
|
|
|
2009-09-11 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
Note: The following changes were undone on 2009-09-12.
|
|
|
|
* xdisp.c (set_iterator_to_next, reseat, reseat_1)
|
|
(reseat_at_next_visible_line_start): Accept additional argument
|
|
force_logical_p; all callers changed. If force_logical_p is
|
|
non-zero, force iteration in buffer's logical order even in bidi
|
|
buffers.
|
|
|
|
* dispnew.c (direct_output_for_insert): Call set_iterator_to_next
|
|
with additional argument zero.
|
|
|
|
* dispextern.h (set_iterator_to_next): Now accepts an additional
|
|
argument.
|
|
|
|
2009-08-29 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* xdisp.c (set_cursor_from_row): Don't assume glyph->charpos
|
|
increments linearly.
|
|
(try_window_reusing_current_matrix): Don't assume glyph->charpos
|
|
increments linearly.
|
|
|
|
2009-08-28 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* bidi.c <bidi_overriding_paragraph_direction>: Default to L2R,
|
|
for now.
|
|
|
|
2009-08-22 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* bidi.c (bidi_initialize): staticpro bidi_char_table.
|
|
(bidi_check_type): New function.
|
|
(bidi_cache_iterator_state, bidi_remember_char)
|
|
(bidi_resolve_explicit_1, bidi_resolve_explicit)
|
|
(bidi_resolve_weak, bidi_resolve_neutral)
|
|
(bidi_level_of_next_char): Use it to validate the bidi type
|
|
assigned to the iterator.
|
|
|
|
2009-08-15 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* bidi.c (bidi_initialize): Fix initialization of bidi_type_table.
|
|
|
|
* xdisp.c (set_iterator_to_next): Fix position setting after call
|
|
to bidi_get_next_char_visually.
|
|
|
|
2005-12-03 Eli Zaretskii <eliz@gnu.org>
|
|
|
|
* bidi.c: Include stdio.h unconditionally. Fix and elaborate
|
|
commentary. Add Copyright blurb.
|
|
|
|
2004-03-08 Kenichi Handa <handa@m17n.org>
|
|
|
|
* xdisp.c (reseat_1): Call bidi_init_it with a previous position.
|
|
|
|
* bidi.c (bidi_init_it): Set bidi_it->ch_len even if POS > 0.
|
|
|
|
2004-03-04 Kenichi Handa <handa@m17n.org>
|
|
|
|
The following changes are to support for bi-directional text
|
|
display.
|
|
|
|
* Makefile.in (obj): Include bidi.o.
|
|
(bidi.o): New target.
|
|
|
|
* bidi.c: New file.
|
|
|
|
* buffer.h (struct buffer): New member bidi_display_reordering.
|
|
|
|
* buffer.c (init_buffer_once): Initialize bidi_display_reordering.
|
|
(syms_of_buffer): Declarations of Lisp variables
|
|
default-bidi-display-reordering and bidi-display-reordering.
|
|
|
|
* dispextern.h (BIDI_MAXLEVEL): New macro.
|
|
(bidi_type_t, bidi_dir_t): New types.
|
|
(bidi_saved_info, bidi_stack, bidi_it): New structs.
|
|
(struct it): New members bidi_p and bidi_it.
|
|
(bidi_init_it): Extern it.
|
|
(bidi_get_next_char_visually): Extern it.
|
|
|
|
* dispnew.c (direct_output_forward_char): Give up if we need bidi
|
|
processing or buffer's direction is right-to-left.
|
|
|
|
* xdisp.c (init_iterator): Initialize it->bidi_p.
|
|
(reseat_1): Cal bidi_init_it and bidi_get_next_char_visually if
|
|
necessary.
|
|
(set_iterator_to_next): Cal bidi_get_next_char_visually if
|
|
necessary.
|
|
|
|
|
|
;; Local Variables:
|
|
;; coding: utf-8
|
|
;; add-log-time-zone-rule: t
|
|
;; End:
|
|
|
|
Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Emacs.
|
|
|
|
GNU Emacs is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
GNU Emacs is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|