Preserve extent information in the command builder code.
src/ChangeLog addition:
2014-07-14 Aidan Kehoe <kehoea@parhasard.net>
* event-stream.c:
* event-stream.c (mark_command_builder):
* event-stream.c (finalize_command_builder): Removed.
* event-stream.c (allocate_command_builder):
* event-stream.c (free_command_builder): Removed. Use
free_normal_lisp_object() instead.
* event-stream.c (echo_key_event):
* event-stream.c (regenerate_echo_keys_from_this_command_keys):
Detach all extents here.
* event-stream.c (maybe_echo_keys):
* event-stream.c (reset_key_echo):
* event-stream.c (execute_help_form):
* event-stream.c (Fnext_event):
* event-stream.c (command_builder_find_leaf_no_jit_binding):
* event-stream.c (command_builder_find_leaf):
* event-stream.c (lookup_command_event):
* events.h (struct command_builder):
Move the command builder's echo_buf to being a Lisp string rather
than a malloced Ibyte array. This allows passing through extent
information, which was previously dropped. It also simplifies the
allocation and release code for the command builder.
Rename echo_buf_index to echo_buf_fill_pointer, better reflecting
its function.
Don't rely on zero-termination (something not particularly
compatible with Lisp-level code) when showing a substring of
echo_buf that differs from that designated by
echo_buf_fill_pointer, keep a separate counter instead and use
that.
* minibuf.c:
* minibuf.c (echo_area_append):
Use the new START and END keyword arguments to #'append-message,
rather than consing a new string for basically every #'next-event
prompt displayed.
test/ChangeLog addition:
2014-07-14 Aidan Kehoe <kehoea@parhasard.net>
* automated/extent-tests.el:
Check that extent information is passed through to the echo area
correctly with #'next-event's PROMPT argument.
lisp/ChangeLog addition:
2014-07-14 Aidan Kehoe <kehoea@parhasard.net>
* simple.el (raw-append-message):
Use #'write-sequence in this, take its START and END keyword
arguments, so our callers don't have to cons as much.
* simple.el (append-message):
Pass through START and END here.
| author |
Aidan Kehoe <kehoea@parhasard.net> |
| date |
Mon, 14 Jul 2014 13:42:42 +0100 |
| parents |
d96db265d893 |
| children |
0ef278ff2894 |
| rev |
line source |
|
623
|
1 This directory tree holds version 21.5 of XEmacs.
|
|
|
2
|
|
2564
|
3 The information in this file has been superseded by the XEmacs FAQ.
|
|
623
|
4
|
|
2564
|
5 The easiest way to read the FAQ is to go to
|
|
623
|
6
|
|
2564
|
7 http://www.xemacs.org/Documentation/21.5/html/xemacs-faq_1.html
|
|
623
|
8
|
|
2564
|
9 You can also the local copy of the FAQ inside XEmacs by using
|
|
|
10 use Help->XEmacs FAQ from the menu, or `C-h F'.
|
|
0
|
11
|
|
2564
|
12 If you don't have XEmacs running and can't access the web,
|
|
|
13 look directly at `man/xemacs-faq.texi' or `info/xemacs-faq.info'.
|
|
623
|
14
|
|
|
15
|