comparison src/keymap.c @ 68758:13c1b7c5f555

* data.c (Findirect_function): Add NOERROR arg. All callers changed to pass Qnil for NOERROR. * keymap.c (current_minor_maps_error): Remove. (current_minor_maps): Pass Qt for NOERROR to Findirect_function instead of using internal_condition_case_1+current_minor_maps_error.
author Kim F. Storm <storm@cua.dk>
date Fri, 10 Feb 2006 00:00:31 +0000
parents 3bd95f4f2941
children 08d3f0c89d49 b98066f4aa10 4b3d39451150
comparison
equal deleted inserted replaced
68757:3c76b1d6eff0 68758:13c1b7c5f555
66 Lisp_Object Vminibuffer_local_completion_map; 66 Lisp_Object Vminibuffer_local_completion_map;
67 67
68 /* keymap used for minibuffers when doing completion in filenames */ 68 /* keymap used for minibuffers when doing completion in filenames */
69 Lisp_Object Vminibuffer_local_filename_completion_map; 69 Lisp_Object Vminibuffer_local_filename_completion_map;
70 70
71 /* keymap used for minibuffers when doing completion in filenames 71 /* keymap used for minibuffers when doing completion in filenames
72 with require-match*/ 72 with require-match*/
73 Lisp_Object Vminibuffer_local_must_match_filename_map; 73 Lisp_Object Vminibuffer_local_must_match_filename_map;
74 74
75 /* keymap used for minibuffers when doing completion and require a match */ 75 /* keymap used for minibuffers when doing completion and require a match */
76 /* was MinibufLocalMustMatchMap */ 76 /* was MinibufLocalMustMatchMap */
1368 some systems, static gets macro-defined to be the empty string. 1368 some systems, static gets macro-defined to be the empty string.
1369 Ickypoo. */ 1369 Ickypoo. */
1370 static Lisp_Object *cmm_modes = NULL, *cmm_maps = NULL; 1370 static Lisp_Object *cmm_modes = NULL, *cmm_maps = NULL;
1371 static int cmm_size = 0; 1371 static int cmm_size = 0;
1372 1372
1373 /* Error handler used in current_minor_maps. */
1374 static Lisp_Object
1375 current_minor_maps_error ()
1376 {
1377 return Qnil;
1378 }
1379
1380 /* Store a pointer to an array of the keymaps of the currently active 1373 /* Store a pointer to an array of the keymaps of the currently active
1381 minor modes in *buf, and return the number of maps it contains. 1374 minor modes in *buf, and return the number of maps it contains.
1382 1375
1383 This function always returns a pointer to the same buffer, and may 1376 This function always returns a pointer to the same buffer, and may
1384 free or reallocate it, so if you want to keep it for a long time or 1377 free or reallocate it, so if you want to keep it for a long time or
1476 break; 1469 break;
1477 cmm_size = newsize; 1470 cmm_size = newsize;
1478 } 1471 }
1479 1472
1480 /* Get the keymap definition--or nil if it is not defined. */ 1473 /* Get the keymap definition--or nil if it is not defined. */
1481 temp = internal_condition_case_1 (Findirect_function, 1474 temp = Findirect_function (XCDR (assoc), Qt);
1482 XCDR (assoc),
1483 Qerror, current_minor_maps_error);
1484 if (!NILP (temp)) 1475 if (!NILP (temp))
1485 { 1476 {
1486 cmm_modes[i] = var; 1477 cmm_modes[i] = var;
1487 cmm_maps [i] = temp; 1478 cmm_maps [i] = temp;
1488 i++; 1479 i++;
3880 DEFVAR_LISP ("minibuffer-local-completion-map", &Vminibuffer_local_completion_map, 3871 DEFVAR_LISP ("minibuffer-local-completion-map", &Vminibuffer_local_completion_map,
3881 doc: /* Local keymap for minibuffer input with completion. */); 3872 doc: /* Local keymap for minibuffer input with completion. */);
3882 Vminibuffer_local_completion_map = Fmake_sparse_keymap (Qnil); 3873 Vminibuffer_local_completion_map = Fmake_sparse_keymap (Qnil);
3883 Fset_keymap_parent (Vminibuffer_local_completion_map, Vminibuffer_local_map); 3874 Fset_keymap_parent (Vminibuffer_local_completion_map, Vminibuffer_local_map);
3884 3875
3885 DEFVAR_LISP ("minibuffer-local-filename-completion-map", 3876 DEFVAR_LISP ("minibuffer-local-filename-completion-map",
3886 &Vminibuffer_local_filename_completion_map, 3877 &Vminibuffer_local_filename_completion_map,
3887 doc: /* Local keymap for minibuffer input with completion for filenames. */); 3878 doc: /* Local keymap for minibuffer input with completion for filenames. */);
3888 Vminibuffer_local_filename_completion_map = Fmake_sparse_keymap (Qnil); 3879 Vminibuffer_local_filename_completion_map = Fmake_sparse_keymap (Qnil);
3889 Fset_keymap_parent (Vminibuffer_local_filename_completion_map, 3880 Fset_keymap_parent (Vminibuffer_local_filename_completion_map,
3890 Vminibuffer_local_completion_map); 3881 Vminibuffer_local_completion_map);
3891 3882
3892 3883
3893 DEFVAR_LISP ("minibuffer-local-must-match-map", &Vminibuffer_local_must_match_map, 3884 DEFVAR_LISP ("minibuffer-local-must-match-map", &Vminibuffer_local_must_match_map,
3894 doc: /* Local keymap for minibuffer input with completion, for exact match. */); 3885 doc: /* Local keymap for minibuffer input with completion, for exact match. */);
3895 Vminibuffer_local_must_match_map = Fmake_sparse_keymap (Qnil); 3886 Vminibuffer_local_must_match_map = Fmake_sparse_keymap (Qnil);
3896 Fset_keymap_parent (Vminibuffer_local_must_match_map, 3887 Fset_keymap_parent (Vminibuffer_local_must_match_map,
3897 Vminibuffer_local_completion_map); 3888 Vminibuffer_local_completion_map);
3898 3889
3899 DEFVAR_LISP ("minibuffer-local-must-match-filename-map", 3890 DEFVAR_LISP ("minibuffer-local-must-match-filename-map",
3900 &Vminibuffer_local_must_match_filename_map, 3891 &Vminibuffer_local_must_match_filename_map,
3901 doc: /* Local keymap for minibuffer input with completion for filenames with exact match. */); 3892 doc: /* Local keymap for minibuffer input with completion for filenames with exact match. */);
3902 Vminibuffer_local_must_match_filename_map = Fmake_sparse_keymap (Qnil); 3893 Vminibuffer_local_must_match_filename_map = Fmake_sparse_keymap (Qnil);
3903 Fset_keymap_parent (Vminibuffer_local_must_match_filename_map, 3894 Fset_keymap_parent (Vminibuffer_local_must_match_filename_map,
3904 Vminibuffer_local_must_match_map); 3895 Vminibuffer_local_must_match_map);
3905 3896
3906 DEFVAR_LISP ("minor-mode-map-alist", &Vminor_mode_map_alist, 3897 DEFVAR_LISP ("minor-mode-map-alist", &Vminor_mode_map_alist,
3907 doc: /* Alist of keymaps to use for minor modes. 3898 doc: /* Alist of keymaps to use for minor modes.
3908 Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read 3899 Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read