diff options
author | Miles Bader <miles@gnu.org> | 2005-02-18 00:41:50 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2005-02-18 00:41:50 +0000 |
commit | 8d46efcc0f2045a1e5a2739c55ba6a88fbf4bcfc (patch) | |
tree | bc968a02587d51199537bb335d5494e756e35fdf /src/doc.c | |
parent | 8589dc17f80450f5773a2d449fa6d94c9bb04fe3 (diff) | |
parent | 9b516537a9899900647d4eae5ec8778e6837ad3c (diff) | |
download | emacs-8d46efcc0f2045a1e5a2739c55ba6a88fbf4bcfc.tar.gz |
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-15
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-95
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-96
Move Gnus images into etc/images
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-97
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-105
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-14
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-15
Update from CVS: lisp/imap.el (imap-log): Doc fix.
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-16
Merge from emacs--cvs-trunk--0
Diffstat (limited to 'src/doc.c')
-rw-r--r-- | src/doc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/doc.c b/src/doc.c index 1bb78c0c376..e1012b97198 100644 --- a/src/doc.c +++ b/src/doc.c @@ -882,6 +882,9 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int { struct buffer *oldbuf; int start_idx; + /* This is for computing the SHADOWS arg for describe_map_tree. */ + Lisp_Object active_maps = Fcurrent_active_maps (Qnil); + Lisp_Object earlier_maps; changed = 1; strp += 2; /* skip \{ or \< */ @@ -932,7 +935,13 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int else if (start[-1] == '<') keymap = tem; else - describe_map_tree (tem, 1, Qnil, Qnil, (char *)0, 1, 0, 0); + { + /* Get the list of active keymaps that precede this one. + If this one's not active, get nil. */ + earlier_maps = Fcdr (Fmemq (tem, Freverse (active_maps))); + describe_map_tree (tem, 1, Fnreverse (earlier_maps), + Qnil, (char *)0, 1, 0, 0, 1); + } tem = Fbuffer_string (); Ferase_buffer (); set_buffer_internal (oldbuf); |