# HG changeset patch # User Richard M. Stallman # Date 756611803 0 # Node ID 27d6275810a72bee2b816aff6ad8d342c361d43c # Parent 0cf95629f6c439a8fc1d004538956c3030c16346 (Fsubstitute_command_keys): Ignore menu bar bindings. (Fdocumentation_property): 3 args is maximum. diff -r 0cf95629f6c4 -r 27d6275810a7 src/doc.c --- a/src/doc.c Thu Dec 23 01:55:14 1993 +0000 +++ b/src/doc.c Thu Dec 23 01:56:43 1993 +0000 @@ -183,7 +183,7 @@ return doc; } -DEFUN ("documentation-property", Fdocumentation_property, Sdocumentation_property, 2, 2, 0, +DEFUN ("documentation-property", Fdocumentation_property, Sdocumentation_property, 2, 3, 0, "Return the documentation string that is SYMBOL's PROP property.\n\ This is like `get', but it can refer to strings stored in the\n\ `etc/DOC' file; and if the value is a string, it is passed through\n\ @@ -409,6 +409,8 @@ } else if (strp[0] == '\\' && strp[1] == '[') { + Lisp_Object firstkey; + changed = 1; strp += 2; /* skip \[ */ start = strp; @@ -425,6 +427,13 @@ tem = Fintern (make_string (start, length), Qnil); tem = Fwhere_is_internal (tem, keymap, Qnil, Qt, Qnil); + /* Disregard menu bar bindings; it is positively annoying to + mention them when there's no menu bar, and it isn't terribly + useful even when there is a menu bar. */ + firstkey = Faref (tem, make_number (0)); + if (EQ (firstkey, Qmenu_bar)) + tem = Qnil; + if (NILP (tem)) /* but not on any keys */ { new = (unsigned char *) xrealloc (buf, bsize += 4);