annotate src/ChangeLog.bidi @ 107636:b5cb7368c1bc

Continue work on continuation lines. xdisp.c (set_cursor_from_row): Compare candidate cursor positions only in rows whose buffer positions occlude point. (display_line): Fix computation of row->start and row->end for empty lines. dispnew.c (row_equal_p): Compare the reversed_p attributes as well.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 20 Feb 2010 11:22:07 -0500
parents 199cad45d7ba
children 844012bdb5dd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
107636
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
1 2010-02-20 Eli Zaretskii <eliz@gnu.org>
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
2
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
3 * xdisp.c (set_cursor_from_row): Compare candidate cursor
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
4 positions only in rows whose buffer positions occlude point.
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
5 (display_line): Fix computation of row->start and row->end for
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
6 empty lines.
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
7
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
8 * dispnew.c (row_equal_p): Compare the reversed_p attributes as
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
9 well.
b5cb7368c1bc Continue work on continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107634
diff changeset
10
107634
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
11 2010-02-13 Eli Zaretskii <eliz@gnu.org>
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
12
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
13 * xdisp.c (set_cursor_from_row): Don't overwrite cursor position
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
14 if it is not a better candidate than what we already have.
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
15 (display_line): Keep calling set_cursor_from_row for
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
16 bidi-reordered rows even if we already have a possible candidate
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
17 for cursor position. Undo the row_end setting throughout the
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
18 code, and instead do it after all the row's glyphs have been
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
19 produced, by looping over the glyphs.
199cad45d7ba Continue work on continuation lines. Some progress with cursor motion.
Eli Zaretskii <eliz@gnu.org>
parents: 107631
diff changeset
20
107631
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
21 2010-02-06 Eli Zaretskii <eliz@gnu.org>
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
22
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
23 Start working on cursor movement in continuation lines.
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
24 * xdisp.c (move_it_in_display_line_to): New variables prev_method
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
25 and prev_pos. Compare for strict equality in
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
26 BUFFER_POS_REACHED_P.
79cb7ef6ffda Start working on cursor movement in continuation lines.
Eli Zaretskii <eliz@gnu.org>
parents: 107629
diff changeset
27
107629
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
28 2010-01-30 Eli Zaretskii <eliz@gnu.org>
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
29
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
30 Fix fallout from changes to managing glyph row reversed_p flag.
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
31 * xdisp.c (init_iterator): Initialize it->glyph_row->reversed_p
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
32 flag.
ab03eb9d2050 Fix fallout from changes to managing glyph row reversed_p flag.
Eli Zaretskii <eliz@gnu.org>
parents: 107625
diff changeset
33
107624
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
34 2010-01-25 Eli Zaretskii <eliz@gnu.org>
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
35
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
36 Clean up the mess with setting the glyph row reversed_p flag.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
37 * dispnew.c (prepare_desired_row): Preserve the reversed_p flag.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
38
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
39 * bidi.c (bidi_cache_find): Use bidi_copy_it instead of copying
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
40 the whole struct (which includes uninitialized parts).
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
41 (bidi_init_it): Don't initialize bidi_it->paragraph_dir.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
42
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
43 * xdisp.c (display_line): Remove misplaced setting of
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
44 row->reversed_p flags. Copy the reversed_p flag to the next glyph
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
45 row.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
46 (next_element_from_buffer): Check bidi_it.paragraph_dir rather
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
47 than level_stack[0].level. Reset the reversed_p flag for non-R2L
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
48 paragraphs.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
49
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
50 Fix display of invisible text.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
51 * xdisp.c (handle_invisible_prop): If we are `reseat'ed, init the
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
52 paragraph direction and set the `reversed_p' flag in the IT's
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
53 glyph row. Fix exit conditions of the loop that skips invisible
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
54 text. Update IT->prev_stop after skipping invisible text. Check
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
55 for additional overlays at IT->stop_charpos, not at start_pos.
552007beee69 Finish and debug display of invisible text.
Eli Zaretskii <eliz@gnu.org>
parents: 107619
diff changeset
56
107619
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
57 2010-01-16 Eli Zaretskii <eliz@gnu.org>
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
58
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
59 * xdisp.c (handle_invisible_prop): Under bidi iteration, skip
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
60 invisible text using bidi_get_next_char_visually.
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
61 (handle_stop_backwards): Restore it->bidi_p, it->current and
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
62 it->position before calling handle_stop.
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
63 (next_element_from_buffer): Fix formatting.
41011b06e0aa Start working on invisible text. For now, just untested source changes.
Eli Zaretskii <eliz@gnu.org>
parents: 107615
diff changeset
64
107615
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
65 2010-01-09 Eli Zaretskii <eliz@gnu.org>
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
66
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
67 * xdisp.c (handle_stop_backwards): Add a prototype.
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
68 (reseat): call handle_stop_backwards to recompute prev_stop and
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
69 base_level_stop for the new position. Solves the crash when
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
70 scrolling backwards.
937f2da537a4 Recompute prev_stop and base_level_stop when the iterator is
Eli Zaretskii <eliz@gnu.org>
parents: 107611
diff changeset
71
107611
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
72 2010-01-02 Eli Zaretskii <eliz@gnu.org>
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
73
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
74 * .gdbinit (pitx): Display some bidi information about the
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
75 iterator.
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
76
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
77 * dispextern.h (BIDI_AT_BASE_LEVEL): Enclose definition in
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
78 parentheses.
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
79
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
80 * xdisp.c (handle_stop_backwards): Save and restore it->current
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
81 and it->position, instead of expecting the caller to do that.
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
82 (next_element_from_buffer): When moving across stop_charpos,
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
83 record it in prev_stop. When IT_CHARPOS backs up, call
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
84 handle_stop_backwards only if above the base embedding level.
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
85 This solves the crash while displaying etc/HELLO in bidi mode.
118ff750e43e Continue working on handling of properties in bidi iteration.
Eli Zaretskii <eliz@gnu.org>
parents: 107606
diff changeset
86
107606
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
87 2009-12-26 Eli Zaretskii <eliz@gnu.org>
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
88
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
89 * xdisp.c (handle_stop_backwards): Call compute_stop_pos in the
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
90 loop, instead of calling handle_stop. Call handle_stop only once,
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
91 after the loop.
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
92 (next_element_from_buffer): Don't call handle_stop_backwards if at
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
93 stop position. If base_level_stop is zero, set it to 1.
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
94
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
95 * term.c (append_glyph): Fill resolved_level and bidi_type slots
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
96 of struct glyph for unidirectional display.
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
97
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
98 * xdisp.c (set_cursor_from_row): Handle zero-width characters.
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
99
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
100 * bidi.c (bidi_mirror_char): More efficient code (suggested by
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
101 Ehud Karni <ehud@unix.mvs.co.il>). Don't even try to mirror
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
102 non-ASCII characters.
297c59e52ecf Retrospective commit from 2009-12-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107605
diff changeset
103
107605
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
104 2009-12-19 Eli Zaretskii <eliz@gnu.org>
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
105
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
106 * buffer.c (Fbuffer_swap_text): Swap the values of
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
107 bidi_display_reordering and bidi_paragraph_direction.
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
108
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
109 * bidi.c (bidi_resolve_weak): Fix nesting of conditions for Wn
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
110 processing. Move W3 after W1 and W2. Simplify W4 because it is
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
111 now always after W1.
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
112
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
113 * .gdbinit (pbiditype): New command.
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
114 (pgx): Use it to display bidi level and type of the glyph.
b1e1b45c9fb6 Retrospective commit from 2009-1219.
Eli Zaretskii <eliz@gnu.org>
parents: 107604
diff changeset
115
107604
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
116 2009-12-12 Eli Zaretskii <eliz@gnu.org>
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
117
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
118 * 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
119 base_level_stop.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
120
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
121 * xdisp.c (handle_stop_backwards): New function.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
122 (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
123 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
124 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
125 stop_charpos.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
126 (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
127
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
128 * dispextern.h (BIDI_AT_BASE_LEVEL): New macro.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
129
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
130 * 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
131 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
132 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
133 changed, see below.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
134
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
135 * 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
136 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
137 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
138 the bidi iterator state is copied/saved.
9e8415b885ee Retrospective commit from 2009-12-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107603
diff changeset
139
107603
0e2486128193 Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents: 107602
diff changeset
140 2009-11-21 Eli Zaretskii <eliz@gnu.org>
0e2486128193 Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents: 107602
diff changeset
141
0e2486128193 Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents: 107602
diff changeset
142 * 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
143 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
144 strings.
0e2486128193 Retrospective commit from 2009-11-21.
Eli Zaretskii <eliz@gnu.org>
parents: 107602
diff changeset
145
107602
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
146 2009-11-14 Eli Zaretskii <eliz@gnu.org>
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
147
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
148 * 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
149 (try_window_id): Rename paragraph_direction to
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
150 bidi_paragraph_direction.
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
151 (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
152 on display strings.
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
153
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
154 * 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
155 paragraph_direction to bidi_paragraph_direction.
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
156
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
157 * buffer.h (struct buffer): Rename paragraph_direction to
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
158 bidi_paragraph_direction.
d44bdcba4457 Retrospective commit from 2009-11-14.
Eli Zaretskii <eliz@gnu.org>
parents: 107601
diff changeset
159
107601
ee023eee6207 Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents: 107600
diff changeset
160 2009-11-07 Eli Zaretskii <eliz@gnu.org>
ee023eee6207 Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents: 107600
diff changeset
161
ee023eee6207 Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents: 107600
diff changeset
162 * 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
163 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
164 (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
165 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
166 new_paragraph flag.
ee023eee6207 Retrospective commit from 2009-11-07.
Eli Zaretskii <eliz@gnu.org>
parents: 107600
diff changeset
167
107600
e47593843838 Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents: 107599
diff changeset
168 2009-10-31 Eli Zaretskii <eliz@gnu.org>
e47593843838 Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents: 107599
diff changeset
169
e47593843838 Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents: 107599
diff changeset
170 * 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
171 of line.
e47593843838 Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents: 107599
diff changeset
172 (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
173 the cursor on the rightmost glyph.
e47593843838 Retrospective commit from 2009-10-31.
Eli Zaretskii <eliz@gnu.org>
parents: 107599
diff changeset
174
107599
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
175 2009-10-24 Eli Zaretskii <eliz@gnu.org>
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
176
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
177 * 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
178 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
179
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
180 * 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
181 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
182 (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
183 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
184
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
185 2009-10-23 Eli Zaretskii <eliz@gnu.org>
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
186
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
187 * bidi.c: Include setjmp.h.
23f8a579b56e Retrospective commit from 2009-10-24.
Eli Zaretskii <eliz@gnu.org>
parents: 107598
diff changeset
188
107598
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
189 2009-10-17 Eli Zaretskii <eliz@gnu.org>
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
190
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
191 * 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
192 bidi_type.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
193
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
194 * xdisp.c (append_glyph, append_composite_glyph)
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
195 (produce_image_glyph, append_stretch_glyph): Set them.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
196
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
197 * term.c (append_glyph): Ditto.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
198
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
199 * 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
200 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
201 (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
202
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
203 * term.c (append_glyph): Reverse glyphs here.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
204
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
205 * 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
206 ZV.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
207 (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
208
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
209 2009-10-16 Eli Zaretskii <eliz@gnu.org>
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
210
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
211 * bidi.c (bidi_paragraph_init): Handle empty buffers.
4bad2c6338cc Retrospective commit from 2009-10-17.
Eli Zaretskii <eliz@gnu.org>
parents: 107597
diff changeset
212
107597
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
213 2009-10-10 Eli Zaretskii <eliz@gnu.org>
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
214
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
215 * 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
216 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
217
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
218 * 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
219 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
220 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
221 (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
222
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
223 2009-10-09 Eli Zaretskii <eliz@gnu.org>
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
224
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
225 * 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
226 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
227 paragraph direction can be affected by the change.
7361a2f37d8e Retrospective commit from 2009-10-10.
Eli Zaretskii <eliz@gnu.org>
parents: 107596
diff changeset
228
107596
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
229 2009-10-08 Eli Zaretskii <eliz@gnu.org>
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
230
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
231 * xdisp.c (string_buffer_position_lim): New function.
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
232 (string_buffer_position): Most of code moved to
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
233 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
234 now EMACS_INT; all callers changed.
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
235 (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
236 reversed glyph rows.
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
237
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
238 dispextern.h <string_buffer_position>: Update prototype.
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
239
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
240 2009-10-07 Eli Zaretskii <eliz@gnu.org>
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
241
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
242 * 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
243
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
244 * 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
245
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
246 2009-10-06 Eli Zaretskii <eliz@gnu.org>
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
247
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
248 * 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
249 default-direction-reversed, default-bidi-display-reordering, and
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
250 default-paragraph-direction.
866e76f8ad75 Retrospective commit from 2009-10-08.
Eli Zaretskii <eliz@gnu.org>
parents: 107595
diff changeset
251
107595
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
252 2009-10-05 Eli Zaretskii <eliz@gnu.org>
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
253
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
254 * buffer.h (struct buffer): New member paragraph_direction.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
255 * buffer.c (init_buffer_once): Initialize it.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
256 (syms_of_buffer): Declare Lisp variables
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
257 default-paragraph-direction and paragraph-direction.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
258
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
259 * dispextern.h (struct it): New member paragraph_embedding.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
260 * 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
261 of paragraph-direction.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
262 <Qright_to_left, Qleft_to_right>: New variables.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
263 (syms_of_xdisp): Initialize and staticpro them.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
264 (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
265 paragraph_embedding to determine the paragraph direction.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
266
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
267 * 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
268 bidi_set_sor_type.
69c12db7031d Retrospective commit from 2009-10-05.
Eli Zaretskii <eliz@gnu.org>
parents: 107594
diff changeset
269 (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
270 (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
271 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
272 (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
273 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
274
107594
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
275 2009-10-04 Eli Zaretskii <eliz@gnu.org>
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
276
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
277 * 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
278 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
279 matched separator.
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
280 (bidi_line_init): New function.
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
281 (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
282 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
283 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
284 paragraph. Set separator_limit according to what
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
285 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
286 new paragraph is found.
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
287 (bidi_init_it): Reset separator_limit.
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
288
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
289 * 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
290
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
291 * 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
292 the paragraph beginning.
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
293
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
294 * 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
295 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
296
40b49fa464cf Retrospective commit from 2009-10-04.
Eli Zaretskii <eliz@gnu.org>
parents: 107593
diff changeset
297 * 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
298 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
299
107593
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
300 2009-10-03 Eli Zaretskii <eliz@gnu.org>
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
301
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
302 * 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
303 flag in the iterator.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
304 (bidi_init_it): Set the new_paragraph flag.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
305 (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
306 position of the next character. All callers changed.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
307 (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
308 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
309 (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
310 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
311 a paragraph.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
312 <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
313 variables.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
314 <Qparagraph_start, Qparagraph_separate>: New variables.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
315 (bidi_initialize): Initialize and staticpro them.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
316
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
317 * 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
318 positional elements EMACS_INT.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
319
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
320 * bidi.c <bidi_overriding_paragraph_direction>: Delete.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
321
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
322 2009-09-28 Eli Zaretskii <eliz@gnu.org>
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
323
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
324 * 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
325 first_elt before calling bidi_set_paragraph_end.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
326 (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
327 EOB.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
328 (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
329 (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
330 "Explicit Overrides". All callers changed.
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
331
107592
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
332 2009-09-27 Eli Zaretskii <eliz@gnu.org>
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
333
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
334 * 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
335 beginning, start bidi iteration from line beginning.
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
336
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
337 * bidi.c (bidi_paragraph_init): Use
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
338 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
339 (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
340 (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
341
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
342 * dispextern.h: Add prototype of bidi_mirror_char.
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
343
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
344 * 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
345 resolved type is STRONG_R.
e6df672626c1 Retrospective commit from 2009-09-27.
Eli Zaretskii <eliz@gnu.org>
parents: 107591
diff changeset
346
107591
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
347 2009-09-26 Eli Zaretskii <eliz@gnu.org>
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
348
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
349 * 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
350 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
351 (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
352 state when first_elt flag is set.
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
353
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
354 * 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
355
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
356 * 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
357 (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
358
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
359 * 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
360 scan start code from here...
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
361 (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
362 flag.
86eec24bee2c Retrospective commit from 2009-09-26.
Eli Zaretskii <eliz@gnu.org>
parents: 107590
diff changeset
363
107590
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
364 2009-09-20 Eli Zaretskii <eliz@gnu.org>
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
365
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
366 * xdisp.c (reseat_1): Handle position < BEGV.
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
367
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
368 * 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
369 (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
370 (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
371 initialized.
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
372 (bidi_at_paragraph_end, bidi_resolve_explicit_1)
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
373 (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
374 ZV_BYTE.
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
375 (bidi_resolve_explicit_1): Handle position < BEGV.
ebdfe4d01cff Retrospective commit from 2009-09-20.
Eli Zaretskii <eliz@gnu.org>
parents: 107589
diff changeset
376
107589
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
377 2009-09-19 Eli Zaretskii <eliz@gnu.org>
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
378
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
379 * 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
380 bidi_it->bytepos if buffer position specified.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
381 (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
382 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
383 bidi_get_next_char_visually.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
384
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
385 * bidi.c: Remove all STANDALONE parts.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
386 (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
387 Don't call bidi_paragraph_init. Change arguments.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
388 (bidi_paragraph_init): Remove code for negative pos.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
389
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
390 * 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
391 pristine_type to orig_type.
84267baa779b Retrospective commit from 2009-09-19.
Eli Zaretskii <eliz@gnu.org>
parents: 107588
diff changeset
392
107587
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
393 2009-09-12 Eli Zaretskii <eliz@gnu.org>
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
394
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
395 * 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
396 reordering bidirectional text.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
397
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
398 * dispextern.h (IT_STACK_SIZE): Enlarge to 5.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
399
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
400 * 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
401 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
402 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
403 iterating in logical order.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
404
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
405 2009-09-11 Eli Zaretskii <eliz@gnu.org>
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
406
107588
1104f4d707b1 Retrospective commit from 2009-09-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107587
diff changeset
407 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
408
107587
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
409 * 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
410 (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
411 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
412 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
413 buffers.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
414
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
415 * 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
416 with additional argument zero.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
417
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
418 * 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
419 argument.
0ff1b8888f6b Retrospective commit from 2009-08-12.
Eli Zaretskii <eliz@gnu.org>
parents: 107586
diff changeset
420
107586
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
421 2009-08-29 Eli Zaretskii <eliz@gnu.org>
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
422
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
423 * 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
424 increments linearly.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
425 (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
426 increments linearly.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
427
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
428 2009-08-28 Eli Zaretskii <eliz@gnu.org>
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
429
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
430 * 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
431 for now.
cbca7f94b057 Retrospective commit from 2009-08-29.
Eli Zaretskii <eliz@gnu.org>
parents: 107585
diff changeset
432
107585
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
433 2009-08-22 Eli Zaretskii <eliz@gnu.org>
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
434
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
435 * bidi.c (bidi_initialize): staticpro bidi_char_table.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
436 (bidi_check_type): New function.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
437 (bidi_cache_iterator_state, bidi_remember_char)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
438 (bidi_resolve_explicit_1, bidi_resolve_explicit)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
439 (bidi_resolve_weak, bidi_resolve_neutral)
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
440 (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
441 assigned to the iterator.
35abfc7649e1 Retrospective commit from 2009-08-22.
Eli Zaretskii <eliz@gnu.org>
parents: 107584
diff changeset
442
107584
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
443 2009-08-15 Eli Zaretskii <eliz@gnu.org>
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
444
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
445 * 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
446
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
447 * 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
448 to bidi_get_next_char_visually.
e0df0337f248 Retrospective commit from 2009-08-15.
Eli Zaretskii <eliz@gnu.org>
parents: 107583
diff changeset
449
107583
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
450 2005-12-03 Eli Zaretskii <eliz@gnu.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
451
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
452 * bidi.c: Include stdio.h unconditionally. Fix and elaborate
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
453 commentary. Add Copyright blurb.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
454
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
455 2004-03-08 Kenichi Handa <handa@m17n.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
456
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
457 * xdisp.c (reseat_1): Call bidi_init_it with a previous position.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
458
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
459 * 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
460
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
461 2004-03-04 Kenichi Handa <handa@m17n.org>
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
462
107593
a551e4109c04 Retrospective commit from 2009-10-03.
Eli Zaretskii <eliz@gnu.org>
parents: 107592
diff changeset
463 The following changes are to support bidirectional text display.
107583
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
464
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
465 * Makefile.in (obj): Include bidi.o.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
466 (bidi.o): New target.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
467
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
468 * bidi.c: New file.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
469
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
470 * buffer.h (struct buffer): New member bidi_display_reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
471
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
472 * buffer.c (init_buffer_once): Initialize bidi_display_reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
473 (syms_of_buffer): Declarations of Lisp variables
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
474 default-bidi-display-reordering and bidi-display-reordering.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
475
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
476 * dispextern.h (BIDI_MAXLEVEL): New macro.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
477 (bidi_type_t, bidi_dir_t): New types.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
478 (bidi_saved_info, bidi_stack, bidi_it): New structs.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
479 (struct it): New members bidi_p and bidi_it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
480 (bidi_init_it): Extern it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
481 (bidi_get_next_char_visually): Extern it.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
482
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
483 * dispnew.c (direct_output_forward_char): Give up if we need bidi
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
484 processing or buffer's direction is right-to-left.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
485
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
486 * xdisp.c (init_iterator): Initialize it->bidi_p.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
487 (reseat_1): Cal bidi_init_it and bidi_get_next_char_visually if
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
488 necessary.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
489 (set_iterator_to_next): Cal bidi_get_next_char_visually if
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
490 necessary.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
491
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
492
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
493 ;; Local Variables:
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
494 ;; coding: utf-8
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
495 ;; add-log-time-zone-rule: t
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
496 ;; End:
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
497
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
498 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
499
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
500 This file is part of GNU Emacs.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
501
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
502 GNU Emacs is free software: you can redistribute it and/or modify
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
503 it under the terms of the GNU General Public License as published by
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
504 the Free Software Foundation, either version 3 of the License, or
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
505 (at your option) any later version.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
506
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
507 GNU Emacs is distributed in the hope that it will be useful,
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
508 but WITHOUT ANY WARRANTY; without even the implied warranty of
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
509 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
510 GNU General Public License for more details.
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
511
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
512 You should have received a copy of the GNU General Public License
f35e7896a0fe Retrospective commit.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
513 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.