]> code.delx.au - gnu-emacs/blobdiff - src/keymap.c
Merge from origin/emacs-24
[gnu-emacs] / src / keymap.c
index 9c7b4d29a3e6d12d52e00135a5a256021e70b576..b69b409fc2d8410ea43c3a27439c7db7a8818fff 100644 (file)
@@ -498,7 +498,7 @@ access_keymap_1 (Lisp_Object map, Lisp_Object idx,
            if (INTEGERP (idx) && (XFASTINT (idx) & CHAR_MODIFIER_MASK) == 0)
              {
                val = Faref (binding, idx);
-               /* `nil' has a special meaning for char-tables, so
+               /* nil has a special meaning for char-tables, so
                   we use something else to record an explicitly
                   unbound entry.  */
                if (NILP (val))
@@ -849,7 +849,7 @@ store_in_keymap (Lisp_Object keymap, register Lisp_Object idx, Lisp_Object def)
            if (NATNUMP (idx) && !(XFASTINT (idx) & CHAR_MODIFIER_MASK))
              {
                Faset (elt, idx,
-                      /* `nil' has a special meaning for char-tables, so
+                      /* nil has a special meaning for char-tables, so
                          we use something else to record an explicitly
                          unbound entry.  */
                       NILP (def) ? Qt : def);
@@ -1292,7 +1292,7 @@ static Lisp_Object
 append_key (Lisp_Object key_sequence, Lisp_Object key)
 {
   AUTO_LIST1 (key_list, key);
-  return Fvconcat (2, ((Lisp_Object []) { key_sequence, key_list }));
+  return CALLN (Fvconcat, key_sequence, key_list);
 }
 
 /* Given a event type C which is a symbol,
@@ -1652,10 +1652,14 @@ specified buffer position instead of point are used.
 
   if (NILP (position) && VECTORP (key))
     {
-      Lisp_Object event
-       /* mouse events may have a symbolic prefix indicating the
-          scrollbar or mode line */
-       = AREF (key, SYMBOLP (AREF (key, 0)) && ASIZE (key) > 1 ? 1 : 0);
+      Lisp_Object event;
+
+      if (ASIZE (key) == 0)
+       return Qnil;
+
+      /* mouse events may have a symbolic prefix indicating the
+        scrollbar or mode line */
+      event = AREF (key, SYMBOLP (AREF (key, 0)) && ASIZE (key) > 1 ? 1 : 0);
 
       /* We are not interested in locations without event data */
 
@@ -2435,8 +2439,7 @@ where_is_internal (Lisp_Object definition, Lisp_Object keymaps,
       if (NILP (where_is_cache))
        {
          /* We need to create the cache.  */
-         Lisp_Object args[2];
-         where_is_cache = Fmake_hash_table (0, args);
+         where_is_cache = Fmake_hash_table (0, NULL);
          where_is_cache_keymaps = Qt;
        }
       else
@@ -3731,8 +3734,8 @@ be preferred.  */);
   staticpro (&Vmouse_events);
   Vmouse_events = listn (CONSTYPE_PURE, 9,
                         Qmenu_bar,
-                        intern_c_string ("tool-bar"),
-                        intern_c_string ("header-line"),
+                        Qtool_bar,
+                        Qheader_line,
                         Qmode_line,
                         intern_c_string ("mouse-1"),
                         intern_c_string ("mouse-2"),
@@ -3740,9 +3743,6 @@ be preferred.  */);
                         intern_c_string ("mouse-4"),
                         intern_c_string ("mouse-5"));
 
-  DEFSYM (Qsingle_key_description, "single-key-description");
-  DEFSYM (Qkey_description, "key-description");
-
   /* Keymap used for minibuffers when doing completion.  */
   /* Keymap used for minibuffers when doing completion and require a match.  */
   DEFSYM (Qkeymapp, "keymapp");