diff options
author | Richard M. Stallman <rms@gnu.org> | 1994-02-04 23:09:25 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1994-02-04 23:09:25 +0000 |
commit | c35902d1c59a5e8270f9e7b466df3b9aa63bf0f0 (patch) | |
tree | 7ed28f105b89dfc1c9518a5e7bdde13797fc68f0 /src/doc.c | |
parent | 013a5bf6e6e2dca97989b760eb3b1018957b564c (diff) | |
download | emacs-c35902d1c59a5e8270f9e7b466df3b9aa63bf0f0.tar.gz |
(Fsubstitute_command_keys): Pass keymap as that arg
to Fwhere_is_internal. Init keymap from Voverriding_local_map.
Diffstat (limited to 'src/doc.c')
-rw-r--r-- | src/doc.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/doc.c b/src/doc.c index dd84e52e326..6beab625de9 100644 --- a/src/doc.c +++ b/src/doc.c @@ -37,6 +37,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ Lisp_Object Vdoc_file_name; +extern Lisp_Object Voverriding_local_map; + Lisp_Object get_doc_string (filepos) long filepos; @@ -391,7 +393,11 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int name = Qnil; GCPRO4 (str, tem, keymap, name); - keymap = current_buffer->keymap; + /* KEYMAP is either nil (which means search all the active keymaps) + or a specified local map (which means search just that and the + global map). If non-nil, it might come from Voverriding_local_map, + or from a \\<mapname> construct in STR itself.. */ + keymap = Voverriding_local_map; bsize = XSTRING (str)->size; bufp = buf = (unsigned char *) xmalloc (bsize); @@ -425,7 +431,7 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int /* Save STRP in IDX. */ idx = strp - (unsigned char *) XSTRING (str)->data; tem = Fintern (make_string (start, length), Qnil); - tem = Fwhere_is_internal (tem, keymap, Qnil, Qt, Qnil); + tem = Fwhere_is_internal (tem, keymap, Qt, Qnil); /* Disregard menu bar bindings; it is positively annoying to mention them when there's no menu bar, and it isn't terribly |