Mercurial > emacs
annotate src/ChangeLog.bidi @ 107604:9e8415b885ee
Retrospective commit from 2009-12-12.
Begin working on faces support. First version of handle_stop_backwards.
Rearrange struct bidi_it for more efficient push/pop ops.
dispextern.h (struct it): New members prev_stop and
base_level_stop.
xdisp.c (handle_stop_backwards): New function.
(next_element_from_buffer): Handle the situation where we
overstepped stop_charpos due to non-linearity of the bidi
iteration. Likewise for when we back up beyond the previous
stop_charpos.
(reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
dispextern.h (BIDI_AT_BASE_LEVEL): New macro.
bidi.c (bidi_copy_it): Fix compiler warning due to cast of a
pointer to `int'. Don't preserve the first_elt member, as it is
no longer copied, because its position in the structure was
changed, see below.
dispextern.h (struct bidi_it): Move first_elt, new_paragraph,
separator_limit, and paragraph_dir to after bidi_stack. Add a
note that anything beyond the level stack is not preserved when
the bidi iterator state is copied/saved.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Fri, 01 Jan 2010 09:46:25 -0500 |
parents | 0e2486128193 |
children | b1e1b45c9fb6 |
rev | line source |
---|---|
107604
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
1 2009-12-12 Eli Zaretskii <eliz@gnu.org> |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
2 |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
3 * dispextern.h (struct it): New members prev_stop and |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
4 base_level_stop. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
5 |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
6 * xdisp.c (handle_stop_backwards): New function. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
7 (next_element_from_buffer): Handle the situation where we |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
8 overstepped stop_charpos due to non-linearity of the bidi |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
9 iteration. Likewise for when we back up beyond the previous |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
10 stop_charpos. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
11 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
12 |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
13 * dispextern.h (BIDI_AT_BASE_LEVEL): New macro. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
14 |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
15 * bidi.c (bidi_copy_it): Fix compiler warning due to cast of a |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
16 pointer to `int'. Don't preserve the first_elt member, as it is |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
17 no longer copied, because its position in the structure was |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
18 changed, see below. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
19 |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
20 * dispextern.h (struct bidi_it): Move first_elt, new_paragraph, |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
21 separator_limit, and paragraph_dir to after bidi_stack. Add a |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
22 note that anything beyond the level stack is not preserved when |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
23 the bidi iterator state is copied/saved. |
9e8415b885ee
Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107603
diff
changeset
|
24 |
107603
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
25 2009-11-21 Eli Zaretskii <eliz@gnu.org> |
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
26 |
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
27 * xdisp.c (set_cursor_from_row): Fix cursor positioning on empty |
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
28 lines when integer values of `cursor' property is used on display |
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
29 strings. |
0e2486128193
Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents:
107602
diff
changeset
|
30 |
107602
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
31 2009-11-14 Eli Zaretskii <eliz@gnu.org> |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
32 |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
33 * xdisp.c (init_iterator, text_outside_line_unchanged_p) |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
34 (try_window_id): Rename paragraph_direction to |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
35 bidi_paragraph_direction. |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
36 (set_cursor_from_row): Handle integer values of `cursor' property |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
37 on display strings. |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
38 |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
39 * buffer.c (init_buffer_once, syms_of_buffer): Rename |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
40 paragraph_direction to bidi_paragraph_direction. |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
41 |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
42 * buffer.h (struct buffer): Rename paragraph_direction to |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
43 bidi_paragraph_direction. |
d44bdcba4457
Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents:
107601
diff
changeset
|
44 |
107601
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
45 2009-11-07 Eli Zaretskii <eliz@gnu.org> |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
46 |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
47 * bidi.c (bidi_paragraph_init): Don't overstep end of buffer. |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
48 Treat end of buffer as a NEUTRAL_B character. |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
49 (bidi_resolve_explicit): Don't special-case ZV when bidi_it->type |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
50 is NEUTRAL_B, since bidi_set_paragraph_end no longer sets the |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
51 new_paragraph flag. |
ee023eee6207
Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents:
107600
diff
changeset
|
52 |
107600
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
53 2009-10-31 Eli Zaretskii <eliz@gnu.org> |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
54 |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
55 * xdisp.c (display_line): Always extend reversed_p rows to the end |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
56 of line. |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
57 (set_cursor_from_row): In R2L rows that don't display text, put |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
58 the cursor on the rightmost glyph. |
e47593843838
Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents:
107599
diff
changeset
|
59 |
107599
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
60 2009-10-24 Eli Zaretskii <eliz@gnu.org> |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
61 |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
62 * xdisp.c (set_cursor_from_row): Fix off-by-one error when |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
63 skipping over non-character glyphs at end of a reversed row. |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
64 |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
65 * dispextern.h (struct glyph): The `resolved_level' member needs |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
66 only 5 bits, not 6. The `bidi_type' member needs only 3 bits. |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
67 (bidi_type_t): Rearrange so that types that can appear in the |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
68 resolved type are at the beginning and have values less than 8. |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
69 |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
70 2009-10-23 Eli Zaretskii <eliz@gnu.org> |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
71 |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
72 * bidi.c: Include setjmp.h. |
23f8a579b56e
Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents:
107598
diff
changeset
|
73 |
107598
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
74 2009-10-17 Eli Zaretskii <eliz@gnu.org> |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
75 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
76 * dispextern.h (struct glyph): New members resolved_level and |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
77 bidi_type. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
78 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
79 * xdisp.c (append_glyph, append_composite_glyph) |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
80 (produce_image_glyph, append_stretch_glyph): Set them. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
81 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
82 * term.c (append_glyph): Ditto. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
83 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
84 * xdisp.c (display_line, next_element_from_buffer): Set the glyph |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
85 row's reversed_p flag if the paragraph base direction is odd. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
86 (extend_face_to_end_of_line): Don't reverse the glyphs here. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
87 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
88 * term.c (append_glyph): Reverse glyphs here. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
89 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
90 * bidi.c (bidi_get_next_char_visually): Don't exit early when at |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
91 ZV. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
92 (bidi_paragraph_init): Don't step over a newline if at BEGV. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
93 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
94 2009-10-16 Eli Zaretskii <eliz@gnu.org> |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
95 |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
96 * bidi.c (bidi_paragraph_init): Handle empty buffers. |
4bad2c6338cc
Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents:
107597
diff
changeset
|
97 |
107597
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
98 2009-10-10 Eli Zaretskii <eliz@gnu.org> |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
99 |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
100 * xdisp.c (set_cursor_from_row): Skip over glyphs near end of row |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
101 with integer OBJECT even if their CHARPOS is zero. |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
102 |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
103 * bidi.c (bidi_cache_iterator_state): Don't cache NEW_PARAGRAPH. |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
104 Abort if someone tries to add a cached state whose position is not |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
105 the immediate successor to that of the last cached state. |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
106 (bidi_paragraph_init): Don't bail out too early after a reseat. |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
107 |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
108 2009-10-09 Eli Zaretskii <eliz@gnu.org> |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
109 |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
110 * xdisp.c (text_outside_line_unchanged_p, try_window_id): Disable |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
111 optimizations if we are reordering bidirectional text and the |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
112 paragraph direction can be affected by the change. |
7361a2f37d8e
Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents:
107596
diff
changeset
|
113 |
107596
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
114 2009-10-08 Eli Zaretskii <eliz@gnu.org> |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
115 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
116 * xdisp.c (string_buffer_position_lim): New function. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
117 (string_buffer_position): Most of code moved to |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
118 string_buffer_position_lim. Last argument and return value are |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
119 now EMACS_INT; all callers changed. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
120 (set_cursor_from_row): Rewritten to support bidirectional text and |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
121 reversed glyph rows. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
122 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
123 dispextern.h <string_buffer_position>: Update prototype. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
124 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
125 2009-10-07 Eli Zaretskii <eliz@gnu.org> |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
126 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
127 * bidi.c (bidi_paragraph_init): Fix initialization of POS. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
128 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
129 * dispextern.h (struct glyph_row): New member reversed_p. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
130 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
131 2009-10-06 Eli Zaretskii <eliz@gnu.org> |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
132 |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
133 * buffer.c (syms_of_buffer): Remove DEFVAR_LISP_NOPRO for |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
134 default-direction-reversed, default-bidi-display-reordering, and |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
135 default-paragraph-direction. |
866e76f8ad75
Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents:
107595
diff
changeset
|
136 |
107595
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
137 2009-10-05 Eli Zaretskii <eliz@gnu.org> |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
138 |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
139 * buffer.h (struct buffer): New member paragraph_direction. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
140 * buffer.c (init_buffer_once): Initialize it. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
141 (syms_of_buffer): Declare Lisp variables |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
142 default-paragraph-direction and paragraph-direction. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
143 |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
144 * dispextern.h (struct it): New member paragraph_embedding. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
145 * xdisp.c (init_iterator): Initialize it from the buffer's value |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
146 of paragraph-direction. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
147 <Qright_to_left, Qleft_to_right>: New variables. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
148 (syms_of_xdisp): Initialize and staticpro them. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
149 (set_iterator_to_next, next_element_from_buffer): Use the value of |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
150 paragraph_embedding to determine the paragraph direction. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
151 |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
152 * bidi.c (bidi_line_init): Fix second argument to |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
153 bidi_set_sor_type. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
154 (bidi_init_it): Initialize paragraph_dir to NEUTRAL_DIR. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
155 (bidi_get_next_char_visually): Record the last character of the |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
156 separator in separator_limit, not the character after that. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
157 (bidi_find_paragraph_start): Accept character and byte positions |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
158 instead of the whole iterator stricture. All callers changed. |
69c12db7031d
Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents:
107594
diff
changeset
|
159 |
107594
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
160 2009-10-04 Eli Zaretskii <eliz@gnu.org> |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
161 |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
162 * bidi.c (bidi_at_paragraph_end): Check for paragraph-start if |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
163 paragraph-separate failed to match. Return the length of the |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
164 matched separator. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
165 (bidi_line_init): New function. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
166 (bidi_paragraph_init): Use bidi_line_init. Do nothing if in the |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
167 middle of a paragraph-separate sequence. Don't override existing |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
168 paragraph direction if no strong characters found in this |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
169 paragraph. Set separator_limit according to what |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
170 bidi_at_paragraph_end returns. Reset new_paragraph flag when a |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
171 new paragraph is found. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
172 (bidi_init_it): Reset separator_limit. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
173 |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
174 * dispextern.h (struct bidi_it): New member separator_limit. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
175 |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
176 * bidi.c (bidi_find_paragraph_start): Return the byte position of |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
177 the paragraph beginning. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
178 |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
179 * xdisp.c (set_iterator_to_next): Call bidi_paragraph_init if the |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
180 new_paragraph flag is set in the bidi iterator. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
181 |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
182 * bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start): Use |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
183 the buffer-local value of paragraph-start and paragraph-separate. |
40b49fa464cf
Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents:
107593
diff
changeset
|
184 |
107593
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
185 2009-10-03 Eli Zaretskii <eliz@gnu.org> |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
186 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
187 * bidi.c (bidi_set_paragraph_end): Don't set the new_paragraph |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
188 flag in the iterator. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
189 (bidi_init_it): Set the new_paragraph flag. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
190 (bidi_at_paragraph_end): Arguments are now character and byte |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
191 position of the next character. All callers changed. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
192 (bidi_resolve_explicit): Don't call bidi_at_paragraph_end, and |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
193 don't behave as if at paragraph end if it returns true. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
194 (bidi_get_next_char_visually): Don't call bidi_paragraph_init if |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
195 new_paragraph flags is set. Set new_paragraph flag when at end of |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
196 a paragraph. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
197 <fallback_paragraph_start_re, fallback_paragraph_separate_re>: New |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
198 variables. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
199 <Qparagraph_start, Qparagraph_separate>: New variables. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
200 (bidi_initialize): Initialize and staticpro them. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
201 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
202 * dispextern.h <struct bidi_it>: New element paragraph_dir. Make |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
203 positional elements EMACS_INT. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
204 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
205 * bidi.c <bidi_overriding_paragraph_direction>: Delete. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
206 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
207 2009-09-28 Eli Zaretskii <eliz@gnu.org> |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
208 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
209 * bidi.c (bidi_init_it): Initialize charpos, bytepos, and |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
210 first_elt before calling bidi_set_paragraph_end. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
211 (bidi_resolve_explicit): Don't call bidi_set_paragraph_end at |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
212 EOB. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
213 (bidi_at_paragraph_end): Don't set new_paragraph flag at EOB. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
214 (bidi_get_type): Accept an additional argument OVERRIDE, per UAX#9 |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
215 "Explicit Overrides". All callers changed. |
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
216 |
107592
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
217 2009-09-27 Eli Zaretskii <eliz@gnu.org> |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
218 |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
219 * xdisp.c (next_element_from_buffer): If called not at line |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
220 beginning, start bidi iteration from line beginning. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
221 |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
222 * bidi.c (bidi_paragraph_init): Use |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
223 bidi_overriding_paragraph_direction instead of a literal zero. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
224 (bidi_initialize): Fix some character types, per Unicode 5.x. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
225 (bidi_get_type): Abort if called with invalid character code. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
226 |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
227 * dispextern.h: Add prototype of bidi_mirror_char. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
228 |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
229 * xdisp.c (get_next_display_element): Mirror characters whose |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
230 resolved type is STRONG_R. |
e6df672626c1
Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents:
107591
diff
changeset
|
231 |
107591
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
232 2009-09-26 Eli Zaretskii <eliz@gnu.org> |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
233 |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
234 * bidi.c (bidi_paragraph_init): Don't set bidi_it->ch_len. Abort |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
235 if called not at beginning of a new paragraph. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
236 (bidi_get_next_char_visually): Prepare and use a sentinel iterator |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
237 state when first_elt flag is set. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
238 |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
239 * dispextern.h (struct bidi_it): New struct member first_elt. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
240 |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
241 * bidi.c (bidi_init_it): Initialize bidi_it->first_elt. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
242 (bidi_copy_it): Don't copy the first_elt flag. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
243 |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
244 * xdisp.c (reseat_1): Initialize bidi_it.first_elt. Move bidi |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
245 scan start code from here... |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
246 (next_element_from_buffer): ...to here. Use bidi_it.first_elt |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
247 flag. |
86eec24bee2c
Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents:
107590
diff
changeset
|
248 |
107590
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
249 2009-09-20 Eli Zaretskii <eliz@gnu.org> |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
250 |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
251 * xdisp.c (reseat_1): Handle position < BEGV. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
252 |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
253 * bidi.c (bidi_paragraph_init): Set bidi_it->ch_len. Handle ZV. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
254 (bidi_init_it): Don't initialize bidi_it->ch_len. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
255 (bidi_resolve_explicit_1): Abort if bidi_it->ch_len was not |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
256 initialized. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
257 (bidi_at_paragraph_end, bidi_resolve_explicit_1) |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
258 (bidi_resolve_weak, bidi_level_of_next_char): Handle bytepos at |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
259 ZV_BYTE. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
260 (bidi_resolve_explicit_1): Handle position < BEGV. |
ebdfe4d01cff
Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents:
107589
diff
changeset
|
261 |
107589
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
262 2009-09-19 Eli Zaretskii <eliz@gnu.org> |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
263 |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
264 * xdisp.c (init_iterator): Call bidi_init_it. Set |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
265 bidi_it->bytepos if buffer position specified. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
266 (reseat_1): Don't call bidi_init_it. Call bidi_paragraph_init |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
267 instead. Move back to preceding character before the call to |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
268 bidi_get_next_char_visually. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
269 |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
270 * bidi.c: Remove all STANDALONE parts. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
271 (bidi_init_it): Init bidi_it->charpos and bidi_it->bytepos to -1. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
272 Don't call bidi_paragraph_init. Change arguments. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
273 (bidi_paragraph_init): Remove code for negative pos. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
274 |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
275 * dispextern.h <bidi_it>: Rename orig_type to type_after_w1 and |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
276 pristine_type to orig_type. |
84267baa779b
Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents:
107588
diff
changeset
|
277 |
107587
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
278 2009-09-12 Eli Zaretskii <eliz@gnu.org> |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
279 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
280 * 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
|
281 reordering bidirectional text. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
282 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
283 * dispextern.h (IT_STACK_SIZE): Enlarge to 5. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
284 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
285 * 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
|
286 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
|
287 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
|
288 iterating in logical order. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
289 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
290 2009-09-11 Eli Zaretskii <eliz@gnu.org> |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
291 |
107588
1104f4d707b1
Retrospective commit from 2009-09-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107587
diff
changeset
|
292 Note: The following changes were undone on 2009-09-12. |
1104f4d707b1
Retrospective commit from 2009-09-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107587
diff
changeset
|
293 |
107587
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
294 * 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
|
295 (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
|
296 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
|
297 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
|
298 buffers. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
299 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
300 * 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
|
301 with additional argument zero. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
302 |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
303 * 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
|
304 argument. |
0ff1b8888f6b
Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents:
107586
diff
changeset
|
305 |
107586
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
306 2009-08-29 Eli Zaretskii <eliz@gnu.org> |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
307 |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
308 * 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
|
309 increments linearly. |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
310 (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
|
311 increments linearly. |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
312 |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
313 2009-08-28 Eli Zaretskii <eliz@gnu.org> |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
314 |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
315 * 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
|
316 for now. |
cbca7f94b057
Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents:
107585
diff
changeset
|
317 |
107585
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
318 2009-08-22 Eli Zaretskii <eliz@gnu.org> |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
319 |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
320 * bidi.c (bidi_initialize): staticpro bidi_char_table. |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
321 (bidi_check_type): New function. |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
322 (bidi_cache_iterator_state, bidi_remember_char) |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
323 (bidi_resolve_explicit_1, bidi_resolve_explicit) |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
324 (bidi_resolve_weak, bidi_resolve_neutral) |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
325 (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
|
326 assigned to the iterator. |
35abfc7649e1
Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents:
107584
diff
changeset
|
327 |
107584
e0df0337f248
Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents:
107583
diff
changeset
|
328 2009-08-15 Eli Zaretskii <eliz@gnu.org> |
e0df0337f248
Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents:
107583
diff
changeset
|
329 |
e0df0337f248
Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents:
107583
diff
changeset
|
330 * 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
|
331 |
e0df0337f248
Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents:
107583
diff
changeset
|
332 * 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
|
333 to bidi_get_next_char_visually. |
e0df0337f248
Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents:
107583
diff
changeset
|
334 |
107583 | 335 2005-12-03 Eli Zaretskii <eliz@gnu.org> |
336 | |
337 * bidi.c: Include stdio.h unconditionally. Fix and elaborate | |
338 commentary. Add Copyright blurb. | |
339 | |
340 2004-03-08 Kenichi Handa <handa@m17n.org> | |
341 | |
342 * xdisp.c (reseat_1): Call bidi_init_it with a previous position. | |
343 | |
344 * bidi.c (bidi_init_it): Set bidi_it->ch_len even if POS > 0. | |
345 | |
346 2004-03-04 Kenichi Handa <handa@m17n.org> | |
347 | |
107593
a551e4109c04
Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents:
107592
diff
changeset
|
348 The following changes are to support bidirectional text display. |
107583 | 349 |
350 * Makefile.in (obj): Include bidi.o. | |
351 (bidi.o): New target. | |
352 | |
353 * bidi.c: New file. | |
354 | |
355 * buffer.h (struct buffer): New member bidi_display_reordering. | |
356 | |
357 * buffer.c (init_buffer_once): Initialize bidi_display_reordering. | |
358 (syms_of_buffer): Declarations of Lisp variables | |
359 default-bidi-display-reordering and bidi-display-reordering. | |
360 | |
361 * dispextern.h (BIDI_MAXLEVEL): New macro. | |
362 (bidi_type_t, bidi_dir_t): New types. | |
363 (bidi_saved_info, bidi_stack, bidi_it): New structs. | |
364 (struct it): New members bidi_p and bidi_it. | |
365 (bidi_init_it): Extern it. | |
366 (bidi_get_next_char_visually): Extern it. | |
367 | |
368 * dispnew.c (direct_output_forward_char): Give up if we need bidi | |
369 processing or buffer's direction is right-to-left. | |
370 | |
371 * xdisp.c (init_iterator): Initialize it->bidi_p. | |
372 (reseat_1): Cal bidi_init_it and bidi_get_next_char_visually if | |
373 necessary. | |
374 (set_iterator_to_next): Cal bidi_get_next_char_visually if | |
375 necessary. | |
376 | |
377 | |
378 ;; Local Variables: | |
379 ;; coding: utf-8 | |
380 ;; add-log-time-zone-rule: t | |
381 ;; End: | |
382 | |
383 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. | |
384 | |
385 This file is part of GNU Emacs. | |
386 | |
387 GNU Emacs is free software: you can redistribute it and/or modify | |
388 it under the terms of the GNU General Public License as published by | |
389 the Free Software Foundation, either version 3 of the License, or | |
390 (at your option) any later version. | |
391 | |
392 GNU Emacs is distributed in the hope that it will be useful, | |
393 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
394 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
395 GNU General Public License for more details. | |
396 | |
397 You should have received a copy of the GNU General Public License | |
398 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |