X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/c717b32678affe3864f0d5024a9de514c950214d..34c48e575a30f075daedda6b487c7d24181743be:/src/ChangeLog diff --git a/src/ChangeLog b/src/ChangeLog index 2b4f498a0b..3ca0241f47 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,4 +1,283 @@ -2011-05-05 Paul Eggert +2011-06-11 Eli Zaretskii + + * xdisp.c (next_element_from_buffer): Improve commentary for when + the iterator is before prev_stop. + (init_iterator): Initialize bidi_p from the default value of + bidi-display-reordering, not from buffer-local value. Use the + buffer-local value only if initializing for buffer iteration. + (handle_invisible_prop): Support invisible properties on strings + that are being bidi-reordered. + (reseat_to_string): Enable bidi-related code. + (set_iterator_to_next): Support bidi reordering of C strings and + Lisp strings. + (next_element_from_string): Support bidi reordering of Lisp + strings. + (handle_stop_backwards): Support Lisp strings as well. + (display_mode_line, display_mode_element): Temporarily force L2R + paragraph direction. + (display_string): Support display of R2L glyph rows. Use + IT_STRING_CHARPOS when displaying from a Lisp string. + +2011-06-10 Eli Zaretskii + + * xdisp.c (Fcurrent_bidi_paragraph_direction): Initialize + itb.string.lstring. + (compute_display_string_pos, compute_display_string_end): + Fix calculation of the object to scan. Fixes an error when using + arrow keys. + (next_element_from_buffer): Don't abort when IT_CHARPOS is before + base_level_stop; instead, set base_level_stop to BEGV. Fixes + crashes in vertical-motion. + +2011-06-09 Eli Zaretskii + + * xdisp.c (compute_display_string_pos): First arg is now struct + `text_pos *'; all callers changed. Support display properties on + Lisp strings. + (compute_display_string_end): Support display properties on Lisp + strings. + (init_iterator, reseat_1, reseat_to_string): Initialize the + string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS + when iterating on a string not from display properties). + + * bidi.c (bidi_fetch_char): Support strings with display + properties. + + * dispextern.h (struct bidi_string_data): New member bufpos. + (compute_display_string_pos): Update prototype. + +2011-06-09 Eli Zaretskii + + * bidi.c (bidi_level_of_next_char): Allow the sentinel "position" + to pass the test for valid cached positions. + + * xdisp.c (init_iterator): Call bidi_init_it only of a valid + buffer position was specified. Initialize paragraph_embedding to + L2R. + (reseat_to_string): Initialize the bidi iterator (for now ifdef'ed + out). + (display_string): If we need to ignore text properties of + LISP_STRING, set IT->stop_charpos to IT->end_charpos. (The + original value of -1 will not work with bidi.) + + * dispextern.h (struct bidi_string_data): New member lstring. + +2011-06-09 Eli Zaretskii + + * xdisp.c (Fcurrent_bidi_paragraph_direction): Initialize + itb.string.s to NULL (avoids a crash in bidi_paragraph_init). + +2011-06-08 Eli Zaretskii + + * bidi.c (bidi_paragraph_info): Delete unused struct. + (bidi_cache_idx, bidi_cache_last_idx): Declare EMACS_INT. + (bidi_cache_start): New variable. + (bidi_cache_reset): Reset bidi_cache_idx to bidi_cache_start, not + to zero. + (bidi_cache_fetch_state, bidi_cache_search) + (bidi_cache_find_level_change, bidi_cache_iterator_state) + (bidi_cache_find, bidi_peek_at_next_level) + (bidi_level_of_next_char, bidi_find_other_level_edge) + (bidi_move_to_visually_next): Compare cache index with + bidi_cache_start rather than with zero. + (bidi_fetch_char): Accept new argument STRING; all callers + changed. Support iteration over a string. + (bidi_paragraph_init, bidi_resolve_explicit_1) + (bidi_resolve_explicit, bidi_resolve_weak) + (bidi_level_of_next_char, bidi_move_to_visually_next): Support + iteration over a string. + (bidi_set_sor_type, bidi_resolve_explicit_1) + (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit + can now be zero (for strings); special values 0 and -1 were + changed to -1 and -2, respectively. + (bidi_char_at_pos): New function. + (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak): + Call it instead of FETCH_MULTIBYTE_CHAR. + (bidi_move_to_visually_next): Abort if charpos or bytepos were not + initialized to valid values. + (bidi_init_it): Don't initialize charpos and bytepos with invalid + values. + + * xdisp.c (compute_display_string_pos) + (compute_display_string_end): Accept additional argument STRING. + (init_iterator, reseat_1): Initialize bidi_it->string.s to NULL. + (reseat_to_string): Initialize bidi_it->string.s and + bidi_it->string.schars. + + * dispextern.h (struct bidi_string_data): New structure. + (struct bidi_it): New member `string'. Make flag members be 1-bit + fields, and put them last in the struct. + (compute_display_string_pos, compute_display_string_end): Update + prototypes. + +2011-06-04 Eli Zaretskii + + * bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int. + +2011-06-03 Eli Zaretskii + + * bidi.c (bidi_fetch_char_advance): Remove unused and + unimplemented function. + +2011-05-28 Eli Zaretskii + + * xdisp.c (set_cursor_from_row): Set start and stop points + according to the row's direction when priming the loop that looks + for the glyph on which to display cursor. + (single_display_spec_intangible_p): Function deleted. + (display_prop_intangible_p): Reimplement to call + handle_display_spec instead of single_display_spec_intangible_p. + Accept 3 additional arguments needed by handle_display_spec. This + fixes incorrect cursor motion across display property with complex + values: lists, `(when COND...)' forms, etc. + (single_display_spec_string_p): Support property values that are + lists with the argument STRING its top-level element. + (display_prop_string_p): Fix the condition for processing a + property that is a list to be consistent with handle_display_spec. + + * keyboard.c (adjust_point_for_property): Adjust the call to + display_prop_intangible_p to its new signature. + + * dispextern.h (display_prop_intangible_p): Adjust prototype. + +2011-05-21 Eli Zaretskii + + * xdisp.c (handle_display_spec): New function, refactored from the + last portion of handle_display_prop. + (compute_display_string_pos): Accept additional argument + FRAME_WINDOW_P. Call handle_display_spec to determine whether the + value of a `display' property is a "replacing spec". + (handle_single_display_spec): Accept 2 additional arguments BUFPOS + and FRAME_WINDOW_P. If IT is NULL, don't set up the iterator from + the display property, but just return a value indicating whether + the display property will replace the characters it covers. + (Fcurrent_bidi_paragraph_direction): Initialize the nchars and + frame_window_p members of struct bidi_it. + + * bidi.c (bidi_fetch_char): Accept additional argument + FRAME_WINDOW_P and pass it to compute_display_string_pos. All + callers changed. + (bidi_init_it): Accept additional argument FRAME_WINDOW_P and use + it to initialize the frame_window_p member of struct bidi_it. + + * dispextern.h (struct bidi_it): New member frame_window_p. + (bidi_init_it, compute_display_string_pos): Update prototypes. + +2011-05-14 Eli Zaretskii + + * xdisp.c (compute_display_string_pos): Non-trivial implementation. + (compute_display_string_end): New function. + (push_it): Accept second argument POSITION, where pop_it should + jump to continue iteration. + + * dispextern.h (compute_display_string_end): Declare prototype. + + * bidi.c (bidi_resolve_explicit_1): Use ZV for disp_pos. + (bidi_fetch_char): Implement support for runs of characters + covered by display strings. + + * bidi.c (bidi_fetch_char): Accept also character position + corresponding to BYTEPOS. DISP_POS is now a character position, + not a byte position. All callers changed. + (bidi_cache_iterator_state, bidi_resolve_explicit_1) + (bidi_resolve_explicit, bidi_resolve_weak) + (bidi_level_of_next_char, bidi_move_to_visually_next): Abort if + bidi_it->nchars is non-positive. + (bidi_level_of_next_char): Don't try to lookup the cache for the + next/previous character if nothing is cached there yet, or if we + were just reseat()'ed to a new position. + (bidi_paragraph_init, bidi_resolve_explicit_1) + (bidi_level_of_next_char): Fix arguments in the calls to + bidi_fetch_char. + +2011-05-10 Eli Zaretskii + + * xdisp.c (compute_display_string_pos): New function. + (reseat_1): Initialize bidi_it.disp_pos. + + * bidi.c (bidi_copy_it): Use offsetof. + (bidi_fetch_char, bidi_fetch_char_advance): New functions. + (bidi_cache_search, bidi_cache_iterator_state) + (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak) + (bidi_level_of_next_char, bidi_move_to_visually_next): Support + character positions inside a run of characters covered by a + display string. + (bidi_paragraph_init, bidi_resolve_explicit_1) + (bidi_level_of_next_char): Call bidi_fetch_char and + bidi_fetch_char_advance instead of FETCH_CHAR and + FETCH_CHAR_ADVANCE. + (bidi_init_it): Initialize new members. + (LRE_CHAR, RLE_CHAR, PDF_CHAR, LRO_CHAR, RLO_CHAR): Remove macro + definitions. + (bidi_explicit_dir_char): Lookup character type in bidi_type_table, + instead of using explicit *_CHAR codes. + (bidi_resolve_explicit, bidi_resolve_weak): Use + FETCH_MULTIBYTE_CHAR instead of FETCH_CHAR, as reordering of + bidirectional text is supported only in multibyte buffers. + + * dispextern.h (struct bidi_it): New members nchars and disp_pos. + ch_len is now EMACS_INT. + (compute_display_string_pos): Declare prototype. + +2011-05-09 Andreas Schwab + + * w32menu.c (set_frame_menubar): Fix submenu allocation. + +2011-05-07 Eli Zaretskii + + * w32console.c (Fset_screen_color): Doc fix. + (Fget_screen_color): New function. + (syms_of_ntterm): Defsubr it. + + * callproc.c (call_process_cleanup): Don't close and unlink the + temporary file if Fcall_process didn't create it in the first + place. + (Fcall_process): Don't create tempfile if stdout of the child + process will be redirected to a file specified with `:file'. + Don't try to re-open tempfile in that case, and set fd[0] to -1 as + cue to call_process_cleanup not to close that handle. + +2011-05-07 Ben Key + + * makefile.w32-in: The bootstrap-temacs rule now makes use of + one of two shell specific rules, either bootstrap-temacs-CMD or + bootstrap-temacs-SH. The bootstrap-temacs-SH rule is identical + to the previous implementation of the bootstrap-temacs rule. + The bootstrap-temacs-CMD rule is similar to the previous + implementation of the bootstrap-temacs rule except that it + makes use of the ESC_CFLAGS variable instead of the CFLAGS + variable. + + These changes, along with some changes to nt/configure.bat, + nt/gmake.defs, and nt/nmake.defs, are required to extend my + earlier fix to add support for --cflags and --ldflags options + that include quotes so that it works whether make uses cmd or + sh as the shell. + +2011-05-06 Michael Albinus + + * dbusbind.c (QCdbus_type_unix_fd): Declare static. + (xd_remove_watch): Don't check QCdbus_type_unix_fd for SYMBOLP, it + is a constant. + (Fdbus_init_bus, xd_read_queued_messages): Bus can be a symbol or + a string. Handle both cases. + (Fdbus_call_method_asynchronously, Fdbus_register_signal) + (Fdbus_register_method): Use Qinvalid_function. + +2011-05-06 Juanma Barranquero + + * makefile.w32-in: Update dependencies. + (LISP_H): Add inttypes.h and stdin.h. + (PROCESS_H): Add unistd.h. + +2011-05-06 Eli Zaretskii + + * lread.c: Include limits.h (fixes the MS-Windows build broken by + 2011-05-06T07:13:19Z!eggert@cs.ucla.edu). + +2011-05-06 Paul Eggert + + * image.c (Finit_image_library) [!HAVE_NTGUI]: Omit unused local. * term.c (vfatal): Remove stray call to va_end. It's not needed and the C Standard doesn't allow it here anyway. @@ -53,6 +332,8 @@ (EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Define to 64-bit on 32-bit hosts that have 64-bit int, so that they can access large files. + However, temporarily disable this change unless the temporary + symbol WIDE_EMACS_INT is defined. * lread.c, process.c: Do not include ; lisp.h does it now. @@ -109,6 +390,16 @@ * fns.c (Frandom): Let EMACS_UINT be wider than unsigned long. +2011-05-06 Juanma Barranquero + + * gnutls.c (DEF_GNUTLS_FN): + * image.c (DEF_IMGLIB_FN): Make function pointers static. + +2011-05-05 Andreas Schwab + + * lread.c (lisp_file_lexically_bound_p): Stop scanning at end + marker. (Bug#8610) + 2011-05-05 Eli Zaretskii * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]: