annotate src/ChangeLog.bidi @ 107587:0ff1b8888f6b

Retrospective commit from 2009-08-12. An (unsuccessful) attempt to solve the issue with row->start and row->end. 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.
author Eli Zaretskii <eliz@gnu.org>
date Thu, 31 Dec 2009 16:09:28 -0500
parents cbca7f94b057
children 1104f4d707b1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
107587
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
1 2009-09-12 Eli Zaretskii <eliz@gnu.org>
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
2
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
3 * dispnew.c (direct_output_for_insert): Give up if we are
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
4 reordering bidirectional text.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
5
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
6 * dispextern.h (IT_STACK_SIZE): Enlarge to 5.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
7
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
8 * xdisp.c (display_line): Set row->end and it->start for the next
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
9 row to the next character in logical order. If we are reordering
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
10 bidi text, push and pop the iterator before and after momentarily
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
11 iterating in logical order.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
12
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
13 2009-09-11 Eli Zaretskii <eliz@gnu.org>
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
14
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
15 * xdisp.c (set_iterator_to_next, reseat, reseat_1)
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
16 (reseat_at_next_visible_line_start): Accept additional argument
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
17 force_logical_p; all callers changed. If force_logical_p is
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
18 non-zero, force iteration in buffer's logical order even in bidi
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
19 buffers.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
20
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
21 * dispnew.c (direct_output_for_insert): Call set_iterator_to_next
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
22 with additional argument zero.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
23
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
24 * dispextern.h (set_iterator_to_next): Now accepts an additional
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
25 argument.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
26
107586
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
27 2009-08-29 Eli Zaretskii <eliz@gnu.org>
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
28
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
29 * xdisp.c (set_cursor_from_row): Don't assume glyph->charpos
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
30 increments linearly.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
31 (try_window_reusing_current_matrix): Don't assume glyph->charpos
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
32 increments linearly.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
33
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
34 2009-08-28 Eli Zaretskii <eliz@gnu.org>
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
35
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
36 * bidi.c <bidi_overriding_paragraph_direction>: Default to L2R,
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
37 for now.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
38
107585
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
39 2009-08-22 Eli Zaretskii <eliz@gnu.org>
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
40
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
41 * bidi.c (bidi_initialize): staticpro bidi_char_table.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
42 (bidi_check_type): New function.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
43 (bidi_cache_iterator_state, bidi_remember_char)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
44 (bidi_resolve_explicit_1, bidi_resolve_explicit)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
45 (bidi_resolve_weak, bidi_resolve_neutral)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
46 (bidi_level_of_next_char): Use it to validate the bidi type
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
47 assigned to the iterator.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
48
107584
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
49 2009-08-15 Eli Zaretskii <eliz@gnu.org>
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
50
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
51 * bidi.c (bidi_initialize): Fix initialization of bidi_type_table.
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
52
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
53 * xdisp.c (set_iterator_to_next): Fix position setting after call
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
54 to bidi_get_next_char_visually.
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
55
107583
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
56 2005-12-03 Eli Zaretskii <eliz@gnu.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
57
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
58 * bidi.c: Include stdio.h unconditionally. Fix and elaborate
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
59 commentary. Add Copyright blurb.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
60
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
61 2004-03-08 Kenichi Handa <handa@m17n.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
62
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
63 * xdisp.c (reseat_1): Call bidi_init_it with a previous position.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
64
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
65 * bidi.c (bidi_init_it): Set bidi_it->ch_len even if POS > 0.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
66
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
67 2004-03-04 Kenichi Handa <handa@m17n.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
68
107584
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
69 The following changes are to support for bi-directional text
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
70 display.
107583
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
71
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
72 * Makefile.in (obj): Include bidi.o.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
73 (bidi.o): New target.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
74
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
75 * bidi.c: New file.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
76
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
77 * buffer.h (struct buffer): New member bidi_display_reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
78
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
79 * buffer.c (init_buffer_once): Initialize bidi_display_reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
80 (syms_of_buffer): Declarations of Lisp variables
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
81 default-bidi-display-reordering and bidi-display-reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
82
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
83 * dispextern.h (BIDI_MAXLEVEL): New macro.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
84 (bidi_type_t, bidi_dir_t): New types.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
85 (bidi_saved_info, bidi_stack, bidi_it): New structs.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
86 (struct it): New members bidi_p and bidi_it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
87 (bidi_init_it): Extern it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
88 (bidi_get_next_char_visually): Extern it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
89
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
90 * dispnew.c (direct_output_forward_char): Give up if we need bidi
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
91 processing or buffer's direction is right-to-left.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
92
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
93 * xdisp.c (init_iterator): Initialize it->bidi_p.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
94 (reseat_1): Cal bidi_init_it and bidi_get_next_char_visually if
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
95 necessary.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
96 (set_iterator_to_next): Cal bidi_get_next_char_visually if
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
97 necessary.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
98
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
99
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
100 ;; Local Variables:
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
101 ;; coding: utf-8
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
102 ;; add-log-time-zone-rule: t
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
103 ;; End:
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
104
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
105 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
106
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
107 This file is part of GNU Emacs.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
108
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
109 GNU Emacs is free software: you can redistribute it and/or modify
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
110 it under the terms of the GNU General Public License as published by
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
111 the Free Software Foundation, either version 3 of the License, or
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
112 (at your option) any later version.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
113
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
114 GNU Emacs is distributed in the hope that it will be useful,
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
115 but WITHOUT ANY WARRANTY; without even the implied warranty of
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
116 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
117 GNU General Public License for more details.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
118
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
119 You should have received a copy of the GNU General Public License
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
120 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.