diff options
| author | Stefan Monnier | 2011-08-03 17:40:06 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2011-08-03 17:40:06 -0400 |
| commit | 640c8776f65beda19e4d4221b1cc2fe7a4b503d0 (patch) | |
| tree | 63db8386b0bb79328e9f4dce9a7efab2373847e4 | |
| parent | 8a10d76c8770781641cc742beb6a2ba653c99e00 (diff) | |
| download | emacs-640c8776f65beda19e4d4221b1cc2fe7a4b503d0.tar.gz emacs-640c8776f65beda19e4d4221b1cc2fe7a4b503d0.zip | |
* src/keymap.c (Fmake_composed_keymap): Move to subr.el.
* lisp/subr.el (make-composed-keymap): Move from C. Change calling
convention, and improve docstring to bring attention to a subtle point.
* lisp/minibuffer.el (completing-read-default): Adjust accordingly.
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/minibuffer.el | 15 | ||||
| -rw-r--r-- | lisp/subr.el | 14 | ||||
| -rw-r--r-- | src/ChangeLog | 114 | ||||
| -rw-r--r-- | src/keymap.c | 12 |
5 files changed, 85 insertions, 76 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 28d78fa7302..6a6abdf7e42 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2011-08-03 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * subr.el (make-composed-keymap): Move from C. Change calling | ||
| 4 | convention, and improve docstring to bring attention to a subtle point. | ||
| 5 | * minibuffer.el (completing-read-default): Adjust accordingly. | ||
| 6 | |||
| 1 | 2011-08-03 Michael Albinus <michael.albinus@gmx.de> | 7 | 2011-08-03 Michael Albinus <michael.albinus@gmx.de> |
| 2 | 8 | ||
| 3 | * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell) | 9 | * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell) |
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index d62b377954d..0a2774de572 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el | |||
| @@ -2754,15 +2754,12 @@ See `completing-read' for the meaning of the arguments." | |||
| 2754 | base-keymap | 2754 | base-keymap |
| 2755 | ;; Layer minibuffer-local-filename-completion-map | 2755 | ;; Layer minibuffer-local-filename-completion-map |
| 2756 | ;; on top of the base map. | 2756 | ;; on top of the base map. |
| 2757 | ;; Use make-composed-keymap so that set-keymap-parent | 2757 | (make-composed-keymap |
| 2758 | ;; doesn't modify minibuffer-local-filename-completion-map. | 2758 | minibuffer-local-filename-completion-map |
| 2759 | (let ((map (make-composed-keymap | 2759 | ;; Set base-keymap as the parent, so that nil bindings |
| 2760 | minibuffer-local-filename-completion-map))) | 2760 | ;; in minibuffer-local-filename-completion-map can |
| 2761 | ;; Set base-keymap as the parent, so that nil bindings | 2761 | ;; override bindings in base-keymap. |
| 2762 | ;; in minibuffer-local-filename-completion-map can | 2762 | base-keymap))) |
| 2763 | ;; override bindings in base-keymap. | ||
| 2764 | (set-keymap-parent map base-keymap) | ||
| 2765 | map))) | ||
| 2766 | (result (read-from-minibuffer prompt initial-input keymap | 2763 | (result (read-from-minibuffer prompt initial-input keymap |
| 2767 | nil hist def inherit-input-method))) | 2764 | nil hist def inherit-input-method))) |
| 2768 | (when (and (equal result "") def) | 2765 | (when (and (equal result "") def) |
diff --git a/lisp/subr.el b/lisp/subr.el index ef19797012a..d57c507a548 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -526,6 +526,20 @@ but optional second arg NODIGITS non-nil treats them like other chars." | |||
| 526 | (define-key map (char-to-string loop) 'digit-argument) | 526 | (define-key map (char-to-string loop) 'digit-argument) |
| 527 | (setq loop (1+ loop)))))) | 527 | (setq loop (1+ loop)))))) |
| 528 | 528 | ||
| 529 | (defun make-composed-keymap (maps &optional parent) | ||
| 530 | "Construct a new keymap composed of MAPS and inheriting from PARENT. | ||
| 531 | When looking up a key in the returned map, the key is looked in each | ||
| 532 | keymap of MAPS in turn until a binding is found. | ||
| 533 | If no binding is found in MAPS, the lookup continues in PARENT, if non-nil. | ||
| 534 | As always with keymap inheritance, a nil binding in MAPS overrides | ||
| 535 | any corresponding binding in PARENT, but it does not override corresponding | ||
| 536 | bindings in other keymaps of MAPS. | ||
| 537 | MAPS can be a list of keymaps or a single keymap. | ||
| 538 | PARENT if non-nil should be a keymap." | ||
| 539 | `(keymap | ||
| 540 | ,@(if (keymapp maps) (list maps) maps) | ||
| 541 | ,@parent)) | ||
| 542 | |||
| 529 | (defun define-key-after (keymap key definition &optional after) | 543 | (defun define-key-after (keymap key definition &optional after) |
| 530 | "Add binding in KEYMAP for KEY => DEFINITION, right after AFTER's binding. | 544 | "Add binding in KEYMAP for KEY => DEFINITION, right after AFTER's binding. |
| 531 | This is like `define-key' except that the binding for KEY is placed | 545 | This is like `define-key' except that the binding for KEY is placed |
diff --git a/src/ChangeLog b/src/ChangeLog index eb184899a85..726ef7bce90 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2011-08-03 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * keymap.c (Fmake_composed_keymap): Move to subr.el. | ||
| 4 | |||
| 1 | 2011-08-03 Paul Eggert <eggert@cs.ucla.edu> | 5 | 2011-08-03 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 6 | ||
| 3 | * fontset.c (dump_fontset) [FONTSET_DEBUG]: Declare EXTERNALLY_VISIBLE | 7 | * fontset.c (dump_fontset) [FONTSET_DEBUG]: Declare EXTERNALLY_VISIBLE |
| @@ -19,8 +23,8 @@ | |||
| 19 | non-zero. | 23 | non-zero. |
| 20 | 24 | ||
| 21 | * bidi.c (bidi_fetch_char): Accept an additional argument | 25 | * bidi.c (bidi_fetch_char): Accept an additional argument |
| 22 | DISP_PROP_P, and pass it to compute_display_string_pos. Only | 26 | DISP_PROP_P, and pass it to compute_display_string_pos. |
| 23 | handle text covered by a display string if DISP_PROP_P is returned | 27 | Only handle text covered by a display string if DISP_PROP_P is returned |
| 24 | non-zero. All callers of bidi_fetch_char changed. | 28 | non-zero. All callers of bidi_fetch_char changed. |
| 25 | 29 | ||
| 26 | 2011-08-02 Stefan Monnier <monnier@iro.umontreal.ca> | 30 | 2011-08-02 Stefan Monnier <monnier@iro.umontreal.ca> |
| @@ -366,8 +370,8 @@ | |||
| 366 | 370 | ||
| 367 | * xdisp.c (move_it_in_display_line_to): Record the best matching | 371 | * xdisp.c (move_it_in_display_line_to): Record the best matching |
| 368 | position for TO_CHARPOS while scanning the line, and restore it on | 372 | position for TO_CHARPOS while scanning the line, and restore it on |
| 369 | exit if none of the characters scanned was an exact match. Fixes | 373 | exit if none of the characters scanned was an exact match. |
| 370 | vertical-motion and pos-visible-in-window-p under bidi redisplay | 374 | Fixes vertical-motion and pos-visible-in-window-p under bidi redisplay |
| 371 | when exact match is impossible due to invisible text, and the | 375 | when exact match is impossible due to invisible text, and the |
| 372 | lines are truncated. | 376 | lines are truncated. |
| 373 | 377 | ||
| @@ -552,8 +556,8 @@ | |||
| 552 | (reseat_to_string): Initialize bidi_it->string.s and | 556 | (reseat_to_string): Initialize bidi_it->string.s and |
| 553 | bidi_it->string.schars. | 557 | bidi_it->string.schars. |
| 554 | (Fcurrent_bidi_paragraph_direction): Initialize itb.string.s to | 558 | (Fcurrent_bidi_paragraph_direction): Initialize itb.string.s to |
| 555 | NULL (avoids a crash in bidi_paragraph_init). Initialize | 559 | NULL (avoids a crash in bidi_paragraph_init). |
| 556 | itb.string.lstring. | 560 | Initialize itb.string.lstring. |
| 557 | (init_iterator): Call bidi_init_it only of a valid | 561 | (init_iterator): Call bidi_init_it only of a valid |
| 558 | buffer position was specified. Initialize paragraph_embedding to | 562 | buffer position was specified. Initialize paragraph_embedding to |
| 559 | L2R. | 563 | L2R. |
| @@ -569,12 +573,12 @@ | |||
| 569 | (init_iterator, reseat_1, reseat_to_string): Initialize the | 573 | (init_iterator, reseat_1, reseat_to_string): Initialize the |
| 570 | string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS | 574 | string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS |
| 571 | when iterating on a string not from display properties). | 575 | when iterating on a string not from display properties). |
| 572 | (compute_display_string_pos, compute_display_string_end): Fix | 576 | (compute_display_string_pos, compute_display_string_end): |
| 573 | calculation of the object to scan. Fixes an error when using | 577 | Fix calculation of the object to scan. Fixes an error when using |
| 574 | arrow keys. | 578 | arrow keys. |
| 575 | (next_element_from_buffer): Don't abort when IT_CHARPOS is before | 579 | (next_element_from_buffer): Don't abort when IT_CHARPOS is before |
| 576 | base_level_stop; instead, set base_level_stop to BEGV. Fixes | 580 | base_level_stop; instead, set base_level_stop to BEGV. |
| 577 | crashes in vertical-motion. | 581 | Fixes crashes in vertical-motion. |
| 578 | (next_element_from_buffer): Improve commentary for when | 582 | (next_element_from_buffer): Improve commentary for when |
| 579 | the iterator is before prev_stop. | 583 | the iterator is before prev_stop. |
| 580 | (init_iterator): Initialize bidi_p from the default value of | 584 | (init_iterator): Initialize bidi_p from the default value of |
| @@ -587,8 +591,8 @@ | |||
| 587 | (next_element_from_string): Support bidi reordering of Lisp | 591 | (next_element_from_string): Support bidi reordering of Lisp |
| 588 | strings. | 592 | strings. |
| 589 | (handle_stop_backwards): Support Lisp strings as well. | 593 | (handle_stop_backwards): Support Lisp strings as well. |
| 590 | (display_string): Support display of R2L glyph rows. Use | 594 | (display_string): Support display of R2L glyph rows. |
| 591 | IT_STRING_CHARPOS when displaying from a Lisp string. | 595 | Use IT_STRING_CHARPOS when displaying from a Lisp string. |
| 592 | (init_iterator): Don't initialize it->bidi_p for strings | 596 | (init_iterator): Don't initialize it->bidi_p for strings |
| 593 | here. | 597 | here. |
| 594 | (reseat_to_string): Initialize it->bidi_p for strings here. | 598 | (reseat_to_string): Initialize it->bidi_p for strings here. |
| @@ -670,8 +674,8 @@ | |||
| 670 | displayed in margins. (Bug#8133) (Bug#8867) | 674 | displayed in margins. (Bug#8133) (Bug#8867) |
| 671 | Return MOVE_POS_MATCH_OR_ZV only if iterator position is past | 675 | Return MOVE_POS_MATCH_OR_ZV only if iterator position is past |
| 672 | TO_CHARPOS. | 676 | TO_CHARPOS. |
| 673 | (pos_visible_p): Support positions in bidi-reordered lines. Save | 677 | (pos_visible_p): Support positions in bidi-reordered lines. |
| 674 | and restore bidi cache. | 678 | Save and restore bidi cache. |
| 675 | 679 | ||
| 676 | * bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int. | 680 | * bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int. |
| 677 | (bidi_paragraph_info): Delete unused struct. | 681 | (bidi_paragraph_info): Delete unused struct. |
| @@ -691,8 +695,8 @@ | |||
| 691 | `len' according to what STRING_CHAR_AND_LENGTH expects. | 695 | `len' according to what STRING_CHAR_AND_LENGTH expects. |
| 692 | (bidi_paragraph_init, bidi_resolve_explicit_1) | 696 | (bidi_paragraph_init, bidi_resolve_explicit_1) |
| 693 | (bidi_resolve_explicit, bidi_resolve_weak) | 697 | (bidi_resolve_explicit, bidi_resolve_weak) |
| 694 | (bidi_level_of_next_char, bidi_move_to_visually_next): Support | 698 | (bidi_level_of_next_char, bidi_move_to_visually_next): |
| 695 | iteration over a string. | 699 | Support iteration over a string. |
| 696 | (bidi_set_sor_type, bidi_resolve_explicit_1) | 700 | (bidi_set_sor_type, bidi_resolve_explicit_1) |
| 697 | (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit | 701 | (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit |
| 698 | can now be zero (for strings); special values 0 and -1 were | 702 | can now be zero (for strings); special values 0 and -1 were |
| @@ -723,20 +727,20 @@ | |||
| 723 | (bidi_cache_fetch_state, bidi_cache_search) | 727 | (bidi_cache_fetch_state, bidi_cache_search) |
| 724 | (bidi_cache_find_level_change, bidi_cache_ensure_space) | 728 | (bidi_cache_find_level_change, bidi_cache_ensure_space) |
| 725 | (bidi_cache_iterator_state, bidi_cache_find) | 729 | (bidi_cache_iterator_state, bidi_cache_find) |
| 726 | (bidi_find_other_level_edge, bidi_cache_start_stack): All | 730 | (bidi_find_other_level_edge, bidi_cache_start_stack): |
| 727 | variables related to cache indices are now EMACS_INT. | 731 | All variables related to cache indices are now EMACS_INT. |
| 728 | 732 | ||
| 729 | * dispextern.h (struct bidi_string_data): New structure. | 733 | * dispextern.h (struct bidi_string_data): New structure. |
| 730 | (struct bidi_it): New member `string'. Make flag members be 1-bit | 734 | (struct bidi_it): New member `string'. Make flag members be 1-bit |
| 731 | fields, and put them last in the struct. | 735 | fields, and put them last in the struct. |
| 732 | (compute_display_string_pos, compute_display_string_end): Update | 736 | (compute_display_string_pos, compute_display_string_end): |
| 733 | prototypes. | 737 | Update prototypes. |
| 734 | (bidi_push_it, bidi_pop_it): Add prototypes. | 738 | (bidi_push_it, bidi_pop_it): Add prototypes. |
| 735 | (struct iterator_stack_entry): New members bidi_p, | 739 | (struct iterator_stack_entry): New members bidi_p, |
| 736 | paragraph_embedding, and from_disp_prop_p. | 740 | paragraph_embedding, and from_disp_prop_p. |
| 737 | (struct it): Member bidi_p is now a bit field 1 bit wide. | 741 | (struct it): Member bidi_p is now a bit field 1 bit wide. |
| 738 | (bidi_shelve_cache, bidi_unshelve_cache): Declare | 742 | (bidi_shelve_cache, bidi_unshelve_cache): |
| 739 | prototypes. | 743 | Declare prototypes. |
| 740 | 744 | ||
| 741 | * .gdbinit (xvectype, xvector, xcompiled, xchartable, xboolvector) | 745 | * .gdbinit (xvectype, xvector, xcompiled, xchartable, xboolvector) |
| 742 | (xpr, xfont, xbacktrace): Use "header.size" when accessing vectors | 746 | (xpr, xfont, xbacktrace): Use "header.size" when accessing vectors |
| @@ -1018,7 +1022,7 @@ | |||
| 1018 | (char_table_set_range): Adjuted for the above change. | 1022 | (char_table_set_range): Adjuted for the above change. |
| 1019 | (map_sub_char_table): Delete args default_val and parent. Add arg | 1023 | (map_sub_char_table): Delete args default_val and parent. Add arg |
| 1020 | top. Give decoded values to a Lisp function. | 1024 | top. Give decoded values to a Lisp function. |
| 1021 | (map_char_table): Adjusted for the above change. Give decoded | 1025 | (map_char_table): Adjust for the above change. Give decoded |
| 1022 | values to a Lisp function. Gcpro more variables. | 1026 | values to a Lisp function. Gcpro more variables. |
| 1023 | (uniprop_table_uncompress) | 1027 | (uniprop_table_uncompress) |
| 1024 | (uniprop_decode_value_run_length): New functions. | 1028 | (uniprop_decode_value_run_length): New functions. |
| @@ -1035,10 +1039,10 @@ | |||
| 1035 | and Sput_unicode_property_internal. Defvar_lisp | 1039 | and Sput_unicode_property_internal. Defvar_lisp |
| 1036 | char-code-property-alist. | 1040 | char-code-property-alist. |
| 1037 | 1041 | ||
| 1038 | * composite.c (CHAR_COMPOSABLE_P): Adjusted for the change of | 1042 | * composite.c (CHAR_COMPOSABLE_P): Adjust for the change of |
| 1039 | Vunicode_category_table. | 1043 | Vunicode_category_table. |
| 1040 | 1044 | ||
| 1041 | * font.c (font_range): Adjusted for the change of | 1045 | * font.c (font_range): Adjust for the change of |
| 1042 | Vunicode_category_table. | 1046 | Vunicode_category_table. |
| 1043 | 1047 | ||
| 1044 | 2011-07-07 Dan Nicolaescu <dann@ics.uci.edu> | 1048 | 2011-07-07 Dan Nicolaescu <dann@ics.uci.edu> |
| @@ -1067,14 +1071,14 @@ | |||
| 1067 | (store_monospaced_changed): Add comment. Call dpyinfo_valid. | 1071 | (store_monospaced_changed): Add comment. Call dpyinfo_valid. |
| 1068 | (struct xsettings): Move font inside HAVE_XFT. | 1072 | (struct xsettings): Move font inside HAVE_XFT. |
| 1069 | (GSETTINGS_TOOL_BAR_STYLE, GSETTINGS_FONT_NAME): New defines. | 1073 | (GSETTINGS_TOOL_BAR_STYLE, GSETTINGS_FONT_NAME): New defines. |
| 1070 | (GSETTINGS_MONO_FONT): Renamed from SYSTEM_MONO_FONT. | 1074 | (GSETTINGS_MONO_FONT): Rename from SYSTEM_MONO_FONT. |
| 1071 | Move inside HAVE_XFT. | 1075 | Move inside HAVE_XFT. |
| 1072 | (something_changed_gsettingsCB): Renamed from something_changedCB. | 1076 | (something_changed_gsettingsCB): Rename from something_changedCB. |
| 1073 | Check for changes in GSETTINGS_TOOL_BAR_STYLE and GSETTINGS_FONT_NAME | 1077 | Check for changes in GSETTINGS_TOOL_BAR_STYLE and GSETTINGS_FONT_NAME |
| 1074 | also. | 1078 | also. |
| 1075 | (GCONF_TOOL_BAR_STYLE, GCONF_FONT_NAME): New defines. | 1079 | (GCONF_TOOL_BAR_STYLE, GCONF_FONT_NAME): New defines. |
| 1076 | (GCONF_MONO_FONT): Renamed from SYSTEM_MONO_FONT. Move inside HAVE_XFT. | 1080 | (GCONF_MONO_FONT): Rename from SYSTEM_MONO_FONT. Move inside HAVE_XFT. |
| 1077 | (something_changed_gconfCB): Renamed from something_changedCB. | 1081 | (something_changed_gconfCB): Rename from something_changedCB. |
| 1078 | Check for changes in GCONF_TOOL_BAR_STYLE and GCONF_FONT_NAME also. | 1082 | Check for changes in GCONF_TOOL_BAR_STYLE and GCONF_FONT_NAME also. |
| 1079 | (parse_settings): Move check for font inside HAVE_XFT. | 1083 | (parse_settings): Move check for font inside HAVE_XFT. |
| 1080 | (read_settings, apply_xft_settings): Add comment. | 1084 | (read_settings, apply_xft_settings): Add comment. |
| @@ -1087,8 +1091,8 @@ | |||
| 1087 | (init_gconf): Add comment. Get values for GCONF_TOOL_BAR_STYLE | 1091 | (init_gconf): Add comment. Get values for GCONF_TOOL_BAR_STYLE |
| 1088 | and GCONF_FONT_NAME. Move check for fonts within HAVE_XFT. | 1092 | and GCONF_FONT_NAME. Move check for fonts within HAVE_XFT. |
| 1089 | (xsettings_initialize): Call init_gsettings last. | 1093 | (xsettings_initialize): Call init_gsettings last. |
| 1090 | (xsettings_get_system_font, xsettings_get_system_normal_font): Add | 1094 | (xsettings_get_system_font, xsettings_get_system_normal_font): |
| 1091 | comment. | 1095 | Add comment. |
| 1092 | 1096 | ||
| 1093 | 2011-07-05 Paul Eggert <eggert@cs.ucla.edu> | 1097 | 2011-07-05 Paul Eggert <eggert@cs.ucla.edu> |
| 1094 | 1098 | ||
| @@ -1271,7 +1275,7 @@ | |||
| 1271 | (syms_of_xsettings): Initialize gsettings_client, gsettings_obj | 1275 | (syms_of_xsettings): Initialize gsettings_client, gsettings_obj |
| 1272 | to NULL. | 1276 | to NULL. |
| 1273 | 1277 | ||
| 1274 | * Makefile.in (SETTINGS_CFLAGS, SETTINGS_LIBS): Renamed from | 1278 | * Makefile.in (SETTINGS_CFLAGS, SETTINGS_LIBS): Rename from |
| 1275 | GCONF_CFLAGS/LIBS. | 1279 | GCONF_CFLAGS/LIBS. |
| 1276 | 1280 | ||
| 1277 | 2011-06-29 Martin Rudalics <rudalics@gmx.at> | 1281 | 2011-06-29 Martin Rudalics <rudalics@gmx.at> |
| @@ -2018,7 +2022,7 @@ | |||
| 2018 | 2022 | ||
| 2019 | * character.c, coding.c, doprnt.c, editfns.c, eval.c: | 2023 | * character.c, coding.c, doprnt.c, editfns.c, eval.c: |
| 2020 | All uses of STRING_BYTES_MAX replaced by STRING_BYTES_BOUND. | 2024 | All uses of STRING_BYTES_MAX replaced by STRING_BYTES_BOUND. |
| 2021 | * lisp.h (STRING_BYTES_BOUND): Renamed from STRING_BYTES_MAX. | 2025 | * lisp.h (STRING_BYTES_BOUND): Rename from STRING_BYTES_MAX. |
| 2022 | 2026 | ||
| 2023 | * character.c (string_escape_byte8): Fix nbytes/nchars typo. | 2027 | * character.c (string_escape_byte8): Fix nbytes/nchars typo. |
| 2024 | 2028 | ||
| @@ -2127,8 +2131,8 @@ | |||
| 2127 | Qclone_number. Remove external declaration of Qdelete_window. | 2131 | Qclone_number. Remove external declaration of Qdelete_window. |
| 2128 | (Fbuffer_list): Rewrite doc-string. Minor restructuring of | 2132 | (Fbuffer_list): Rewrite doc-string. Minor restructuring of |
| 2129 | code. | 2133 | code. |
| 2130 | (Fget_buffer_create, Fmake_indirect_buffer, Frename_buffer): Run | 2134 | (Fget_buffer_create, Fmake_indirect_buffer, Frename_buffer): |
| 2131 | Qbuffer_list_update_hook if allowed. | 2135 | Run Qbuffer_list_update_hook if allowed. |
| 2132 | (Fother_buffer): Rewrite doc-string. Major rewrite for new | 2136 | (Fother_buffer): Rewrite doc-string. Major rewrite for new |
| 2133 | buffer list implementation. | 2137 | buffer list implementation. |
| 2134 | (other_buffer_safely): New function. | 2138 | (other_buffer_safely): New function. |
| @@ -2139,8 +2143,8 @@ | |||
| 2139 | (record_buffer): Inhibit quitting and rewrite using quittable | 2143 | (record_buffer): Inhibit quitting and rewrite using quittable |
| 2140 | functions. Run Qbuffer_list_update_hook if allowed. | 2144 | functions. Run Qbuffer_list_update_hook if allowed. |
| 2141 | (Frecord_buffer, Funrecord_buffer): New functions. | 2145 | (Frecord_buffer, Funrecord_buffer): New functions. |
| 2142 | (switch_to_buffer_1, Fswitch_to_buffer): Remove. Move | 2146 | (switch_to_buffer_1, Fswitch_to_buffer): Remove. |
| 2143 | switch-to-buffer to window.el. | 2147 | Move switch-to-buffer to window.el. |
| 2144 | (bury-buffer): Move to window.el. | 2148 | (bury-buffer): Move to window.el. |
| 2145 | (Vbuffer_list_update_hook): New variable. | 2149 | (Vbuffer_list_update_hook): New variable. |
| 2146 | 2150 | ||
| @@ -2168,8 +2172,8 @@ | |||
| 2168 | (select_window_norecord, select_frame_norecord): Move in front | 2172 | (select_window_norecord, select_frame_norecord): Move in front |
| 2169 | of run_window_configuration_change_hook. Remove now obsolete | 2173 | of run_window_configuration_change_hook. Remove now obsolete |
| 2170 | declarations. | 2174 | declarations. |
| 2171 | (Fset_window_buffer): Rewrite doc-string. Call | 2175 | (Fset_window_buffer): Rewrite doc-string. |
| 2172 | Qrecord_window_buffer. | 2176 | Call Qrecord_window_buffer. |
| 2173 | (keys_of_window): Move binding for other-window to window.el. | 2177 | (keys_of_window): Move binding for other-window to window.el. |
| 2174 | 2178 | ||
| 2175 | 2011-06-11 Chong Yidong <cyd@stupidchicken.com> | 2179 | 2011-06-11 Chong Yidong <cyd@stupidchicken.com> |
| @@ -2251,8 +2255,8 @@ | |||
| 2251 | orig_total_lines. | 2255 | orig_total_lines. |
| 2252 | (Fdelete_window, delete_window): Remove. Window deletion is | 2256 | (Fdelete_window, delete_window): Remove. Window deletion is |
| 2253 | handled by window.el. | 2257 | handled by window.el. |
| 2254 | (window_loop): Remove DELETE_OTHER_WINDOWS case. Replace | 2258 | (window_loop): Remove DELETE_OTHER_WINDOWS case. |
| 2255 | Fdelete_window calls with calls to Qdelete_window. | 2259 | Replace Fdelete_window calls with calls to Qdelete_window. |
| 2256 | (Fdelete_other_windows): Remove. Deleting other windows is | 2260 | (Fdelete_other_windows): Remove. Deleting other windows is |
| 2257 | handled by window.el. | 2261 | handled by window.el. |
| 2258 | (window_fixed_size_p): Remove. Fixed-sizeness of windows is | 2262 | (window_fixed_size_p): Remove. Fixed-sizeness of windows is |
| @@ -2275,8 +2279,8 @@ | |||
| 2275 | (grow_mini_window, shrink_mini_window): Implement by calling | 2279 | (grow_mini_window, shrink_mini_window): Implement by calling |
| 2276 | Qresize_root_window_vertically, resize_window_check and | 2280 | Qresize_root_window_vertically, resize_window_check and |
| 2277 | resize_window_apply. | 2281 | resize_window_apply. |
| 2278 | (saved_window, Fset_window_configuration, save_window_save): Do | 2282 | (saved_window, Fset_window_configuration, save_window_save): |
| 2279 | not handle orig_top_line, orig_total_lines, and | 2283 | Do not handle orig_top_line, orig_total_lines, and |
| 2280 | resize_proportionally. | 2284 | resize_proportionally. |
| 2281 | (window_min_height, window_min_width): Move to window.el. | 2285 | (window_min_height, window_min_width): Move to window.el. |
| 2282 | (keys_of_window): Move bindings for delete-other-windows, | 2286 | (keys_of_window): Move bindings for delete-other-windows, |
| @@ -2296,8 +2300,8 @@ | |||
| 2296 | * xdisp.c (init_xdisp): Don't use set_window_height but set | 2300 | * xdisp.c (init_xdisp): Don't use set_window_height but set |
| 2297 | heights directly. | 2301 | heights directly. |
| 2298 | 2302 | ||
| 2299 | * xfns.c (x_set_menu_bar_lines, x_set_tool_bar_lines): Use | 2303 | * xfns.c (x_set_menu_bar_lines, x_set_tool_bar_lines): |
| 2300 | resize_frame_windows instead of change_window_heights and run | 2304 | Use resize_frame_windows instead of change_window_heights and run |
| 2301 | run_window_configuration_change_hook. | 2305 | run_window_configuration_change_hook. |
| 2302 | 2306 | ||
| 2303 | * w32fns.c (x_set_tool_bar_lines): Use resize_frame_windows | 2307 | * w32fns.c (x_set_tool_bar_lines): Use resize_frame_windows |
| @@ -2319,8 +2323,8 @@ | |||
| 2319 | (Frun_window_configuration_change_hook, make_parent_window) | 2323 | (Frun_window_configuration_change_hook, make_parent_window) |
| 2320 | (resize_window_check, resize_window_apply, Fresize_window_apply) | 2324 | (resize_window_check, resize_window_apply, Fresize_window_apply) |
| 2321 | (resize_frame_windows, Fsplit_window_internal) | 2325 | (resize_frame_windows, Fsplit_window_internal) |
| 2322 | (Fdelete_window_internal, Fresize_mini_window_internal): New | 2326 | (Fdelete_window_internal, Fresize_mini_window_internal): |
| 2323 | functions. | 2327 | New functions. |
| 2324 | (syms_of_window): New variables Vwindow_splits and Vwindow_nest. | 2328 | (syms_of_window): New variables Vwindow_splits and Vwindow_nest. |
| 2325 | 2329 | ||
| 2326 | 2011-06-08 Martin Rudalics <rudalics@gmx.at> | 2330 | 2011-06-08 Martin Rudalics <rudalics@gmx.at> |
| @@ -2340,8 +2344,8 @@ | |||
| 2340 | (Fwindow_nest, Fset_window_nest, Fwindow_new_total) | 2344 | (Fwindow_nest, Fset_window_nest, Fwindow_new_total) |
| 2341 | (Fwindow_normal_size, Fwindow_new_normal, Fwindow_prev_buffers) | 2345 | (Fwindow_normal_size, Fwindow_new_normal, Fwindow_prev_buffers) |
| 2342 | (Fset_window_prev_buffers, Fwindow_next_buffers) | 2346 | (Fset_window_prev_buffers, Fwindow_next_buffers) |
| 2343 | (Fset_window_next_buffers, Fset_window_clone_number): New | 2347 | (Fset_window_next_buffers, Fset_window_clone_number): |
| 2344 | functions. | 2348 | New functions. |
| 2345 | (Fwindow_hscroll, Fwindow_at, Fwindow_point, Fwindow_start) | 2349 | (Fwindow_hscroll, Fwindow_at, Fwindow_point, Fwindow_start) |
| 2346 | (Fwindow_end, Fwindow_line_height, Fset_window_dedicated_p): | 2350 | (Fwindow_end, Fwindow_line_height, Fset_window_dedicated_p): |
| 2347 | Doc-string fixes. | 2351 | Doc-string fixes. |
| @@ -2367,10 +2371,10 @@ | |||
| 2367 | (Fwindow_top_line, window_body_lines, Fwindow_body_size) | 2371 | (Fwindow_top_line, window_body_lines, Fwindow_body_size) |
| 2368 | (Fwindow_list_1): New functions. | 2372 | (Fwindow_list_1): New functions. |
| 2369 | (window_box_text_cols): Replace with window_body_cols. | 2373 | (window_box_text_cols): Replace with window_body_cols. |
| 2370 | (Fwindow_width, Fscroll_left, Fscroll_right): Use | 2374 | (Fwindow_width, Fscroll_left, Fscroll_right): |
| 2371 | window_body_cols instead of window_box_text_cols. | 2375 | Use window_body_cols instead of window_box_text_cols. |
| 2372 | (delete_window, Fset_window_configuration): Call | 2376 | (delete_window, Fset_window_configuration): |
| 2373 | delete_all_subwindows with window as argument. | 2377 | Call delete_all_subwindows with window as argument. |
| 2374 | (delete_all_subwindows): Take a window as argument and not a | 2378 | (delete_all_subwindows): Take a window as argument and not a |
| 2375 | structure. Rewrite. | 2379 | structure. Rewrite. |
| 2376 | (window_loop): Remove handling of GET_LRU_WINDOW and | 2380 | (window_loop): Remove handling of GET_LRU_WINDOW and |
| @@ -2381,8 +2385,8 @@ | |||
| 2381 | window_box_text_cols. delete_all_subwindows now takes a | 2385 | window_box_text_cols. delete_all_subwindows now takes a |
| 2382 | Lisp_Object as argument. | 2386 | Lisp_Object as argument. |
| 2383 | 2387 | ||
| 2384 | * indent.c (compute_motion, Fcompute_motion): Use | 2388 | * indent.c (compute_motion, Fcompute_motion): |
| 2385 | window_body_cols instead of window_box_text_cols. | 2389 | Use window_body_cols instead of window_box_text_cols. |
| 2386 | 2390 | ||
| 2387 | * frame.c (delete_frame): Call delete_all_subwindows with root | 2391 | * frame.c (delete_frame): Call delete_all_subwindows with root |
| 2388 | window as argument. | 2392 | window as argument. |
diff --git a/src/keymap.c b/src/keymap.c index c461fdddbbc..3b0edbf4fb3 100644 --- a/src/keymap.c +++ b/src/keymap.c | |||
| @@ -150,17 +150,6 @@ in case you use it as a menu with `x-popup-menu'. */) | |||
| 150 | return Fcons (Qkeymap, Qnil); | 150 | return Fcons (Qkeymap, Qnil); |
| 151 | } | 151 | } |
| 152 | 152 | ||
| 153 | DEFUN ("make-composed-keymap", Fmake_composed_keymap, Smake_composed_keymap, | ||
| 154 | 0, MANY, 0, | ||
| 155 | doc: /* Construct and return a new keymap composed of KEYMAPS. | ||
| 156 | When looking up a key in the returned map, the key is looked in each | ||
| 157 | keymap in turn until a binding is found. | ||
| 158 | usage: (make-composed-keymap &rest KEYMAPS) */) | ||
| 159 | (ptrdiff_t nargs, Lisp_Object *args) | ||
| 160 | { | ||
| 161 | return Fcons (Qkeymap, Flist (nargs, args)); | ||
| 162 | } | ||
| 163 | |||
| 164 | /* This function is used for installing the standard key bindings | 153 | /* This function is used for installing the standard key bindings |
| 165 | at initialization time. | 154 | at initialization time. |
| 166 | 155 | ||
| @@ -3761,7 +3750,6 @@ be preferred. */); | |||
| 3761 | defsubr (&Sset_keymap_parent); | 3750 | defsubr (&Sset_keymap_parent); |
| 3762 | defsubr (&Smake_keymap); | 3751 | defsubr (&Smake_keymap); |
| 3763 | defsubr (&Smake_sparse_keymap); | 3752 | defsubr (&Smake_sparse_keymap); |
| 3764 | defsubr (&Smake_composed_keymap); | ||
| 3765 | defsubr (&Smap_keymap_internal); | 3753 | defsubr (&Smap_keymap_internal); |
| 3766 | defsubr (&Smap_keymap); | 3754 | defsubr (&Smap_keymap); |
| 3767 | defsubr (&Scopy_keymap); | 3755 | defsubr (&Scopy_keymap); |