Mercurial > emacs
comparison src/buffer.h @ 107595:69c12db7031d
Retrospective commit from 2009-10-05.
Continue working on paragraph base direction.
Support per-buffer default paragraph direction.
buffer.h (struct buffer): New member paragraph_direction.
buffer.c (init_buffer_once): Initialize it.
(syms_of_buffer): Declare Lisp variables
default-paragraph-direction and paragraph-direction.
dispextern.h (struct it): New member paragraph_embedding.
xdisp.c (init_iterator): Initialize it from the buffer's value
of paragraph-direction.
<Qright_to_left, Qleft_to_right>: New variables.
(syms_of_xdisp): Initialize and staticpro them.
(set_iterator_to_next, next_element_from_buffer): Use the value of
paragraph_embedding to determine the paragraph direction.
bidi.c (bidi_line_init): Fix second argument to
bidi_set_sor_type.
(bidi_init_it): Initialize paragraph_dir to NEUTRAL_DIR.
(bidi_get_next_char_visually): Record the last character of the
separator in separator_limit, not the character after that.
(bidi_find_paragraph_start): Accept character and byte positions
instead of the whole iterator stricture. All callers changed.
| author | Eli Zaretskii <eliz@gnu.org> |
|---|---|
| date | Fri, 01 Jan 2010 06:22:52 -0500 |
| parents | e0df0337f248 |
| children | 866e76f8ad75 |
comparison
equal
deleted
inserted
replaced
| 107594:40b49fa464cf | 107595:69c12db7031d |
|---|---|
| 662 visual order. */ | 662 visual order. */ |
| 663 Lisp_Object bidi_display_reordering; | 663 Lisp_Object bidi_display_reordering; |
| 664 /* Non-nil means set beginning of lines at the right edge of | 664 /* Non-nil means set beginning of lines at the right edge of |
| 665 windows. */ | 665 windows. */ |
| 666 Lisp_Object direction_reversed; | 666 Lisp_Object direction_reversed; |
| 667 /* If non-nil, specifies which direction of text to force in each | |
| 668 paragraph. Nil means determine paragraph direction dynamically | |
| 669 for each paragraph. */ | |
| 670 Lisp_Object paragraph_direction; | |
| 667 /* Non-nil means do selective display; | 671 /* Non-nil means do selective display; |
| 668 see doc string in syms_of_buffer (buffer.c) for details. */ | 672 see doc string in syms_of_buffer (buffer.c) for details. */ |
| 669 Lisp_Object selective_display; | 673 Lisp_Object selective_display; |
| 670 #ifndef old | 674 #ifndef old |
| 671 /* Non-nil means show ... at end of line followed by invisible lines. */ | 675 /* Non-nil means show ... at end of line followed by invisible lines. */ |
