diff options
| author | Eli Zaretskii | 2010-01-01 06:17:13 -0500 |
|---|---|---|
| committer | Eli Zaretskii | 2010-01-01 06:17:13 -0500 |
| commit | be39f003e91ecb81161e5cf14ec0b635a6dc229d (patch) | |
| tree | 79803593f9048654741537843dc2e004ca56f09a /src/dispextern.h | |
| parent | 6bff64970571457eeab84a5921547816b444b732 (diff) | |
| download | emacs-be39f003e91ecb81161e5cf14ec0b635a6dc229d.tar.gz emacs-be39f003e91ecb81161e5cf14ec0b635a6dc229d.zip | |
Retrospective commit from 2009-10-04.
Continue working on determining paragraph's base direction.
bidi.c (bidi_at_paragraph_end): Check for paragraph-start if
paragraph-separate failed to match. Return the length of the
matched separator.
(bidi_line_init): New function.
(bidi_paragraph_init): Use bidi_line_init. Do nothing if in the
middle of a paragraph-separate sequence. Don't override existing
paragraph direction if no strong characters found in this
paragraph. Set separator_limit according to what
bidi_at_paragraph_end returns. Reset new_paragraph flag when a
new paragraph is found.
(bidi_init_it): Reset separator_limit.
dispextern.h (struct bidi_it): New member separator_limit.
bidi.c (bidi_find_paragraph_start): Return the byte position of
the paragraph beginning.
xdisp.c (set_iterator_to_next): Call bidi_paragraph_init if the
new_paragraph flag is set in the bidi iterator.
bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start): Use
the buffer-local value of paragraph-start and paragraph-separate.
Diffstat (limited to 'src/dispextern.h')
| -rw-r--r-- | src/dispextern.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dispextern.h b/src/dispextern.h index b5b6dc7f618..6928d8ae1b8 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -1772,7 +1772,8 @@ struct bidi_it { | |||
| 1772 | int resolved_level; /* final resolved level of this character */ | 1772 | int resolved_level; /* final resolved level of this character */ |
| 1773 | int invalid_levels; /* how many PDFs to ignore */ | 1773 | int invalid_levels; /* how many PDFs to ignore */ |
| 1774 | int invalid_rl_levels; /* how many PDFs from RLE/RLO to ignore */ | 1774 | int invalid_rl_levels; /* how many PDFs from RLE/RLO to ignore */ |
| 1775 | int new_paragraph; /* if non-zero, a new paragraph begins here */ | 1775 | int new_paragraph; /* if non-zero, we expect a new paragraph */ |
| 1776 | EMACS_INT separator_limit; /* where paragraph separator should end */ | ||
| 1776 | bidi_dir_t paragraph_dir; /* current paragraph direction */ | 1777 | bidi_dir_t paragraph_dir; /* current paragraph direction */ |
| 1777 | int prev_was_pdf; /* if non-zero, previous char was PDF */ | 1778 | int prev_was_pdf; /* if non-zero, previous char was PDF */ |
| 1778 | struct bidi_saved_info prev; /* info about previous character */ | 1779 | struct bidi_saved_info prev; /* info about previous character */ |