unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: No Wayman <iarchivedmywholelife@gmail.com>
To: 44360@debbugs.gnu.org
Subject: bug#44360: 28.0.50; describe-map-tree wrong-type-arg error
Date: Sat, 31 Oct 2020 17:11:00 -0400	[thread overview]
Message-ID: <87r1perti3.fsf@gmail.com> (raw)



In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit,
cairo version 1.17.3, Xaw3d scroll bars)
 of 2020-10-30 built on arch
Repository revision: 3e63213a1fef16ffe38a5024a83d8782e98aabe1
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version
11.0.12009000
System Description: Arch Linux

The recent lisp implementation of
`describe-map-tree'/`describe-map'[1]
cause `describe-buffer-bindings' to throw an error in some cases.
Reproduction case:

0. emacs -Q
1. open an ansi-term buffer
2. switch to *scratch* buffer in other window
3. eval:

#+begin_src emacs-lisp
(describe-buffer-bindings (get-buffer "*ansi-term*") [27])
#+end_src

Errors with the following stack trace:

#+begin_src emacs-lisp
Debugger entered--Lisp error: (wrong-type-argument listp
term-send-raw-meta)
  describe-map-tree((keymap #^[nil nil keymap #^^[3 0
  set-mark-command
move-beginning-of-line backward-char mode-specific-command-prefix
delete-char
move-end-of-line forward-char keyboard-quit help-command
indent-for-tab-command
electric-newline-and-maybe-indent kill-line recenter-top-bottom
...] #^^[1 0
#^^[2 0 #^^[3 0 set-mark-command move-beginning-of-line
 backward-char
mode-specific-command-prefix delete-char move-end-of-line
forward-char
keyboard-quit help-command indent-for-tab-command
electric-newline-and-maybe-indent kill-line recenter-top-bottom
...]
self-insert-command self-insert-command self-insert-command
self-insert-command
self-insert-command self-insert-command self-insert-command
self-insert-command
self-insert-command self-insert-command self-insert-command
self-insert-command
...] self-insert-command self-insert-command self-insert-command
self-insert-command self-insert-command self-insert-command
self-insert-command
self-insert-command self-insert-command self-insert-command
self-insert-command
self-insert-command ...] self-insert-command self-insert-command
self-insert-command self-insert-command self-insert-command
self-insert-command
self-insert-command self-insert-command self-insert-command ...]
... ... ... ...
... ... ... ... ... ... ... ... ...) t (... ...) [27] "\f\nGlobal
Bindi..." t
nil t nil) describe-buffer-bindings(#<buffer *ansi-term*> [27])
(progn
(describe-buffer-bindings (get-buffer "*ansi-term*") [27]))
eval((progn
(describe-buffer-bindings (get-buffer "*ansi-term*") [27])) t)
elisp--eval-last-sexp(nil) eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
call-interactively(eval-last-sexp nil
nil) command-execute(eval-last-sexp)
#+end_src

In addition to this error, the *Message* buffer shows multiple
headers of the form on each call:

#+begin_src emacs-lisp
^L
Input decoding map translations Starting With ESC:
key             binding
---             -------
#+end_src

This breaks the popular which-key package in a couple of ways.
I'm working on a patch for that, but I wanted to check to see if
this behavior is correct before working around it.

[1] possible commits of interest:
647b1c5142 - Translate describe_map to Lisp (12 days ago) <Stefan 
Kangas>
afd31f9e62 - Translate describe_map_tree to Lisp (12 days ago) 
<Stefan Kangas>
dcf9cd47ae - Add new Lisp implementation of 
sbustitute-commands-keys <Stefan Kangas>


Thank you,
Nicholas Vollmer





             reply	other threads:[~2020-10-31 21:11 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-31 21:11 No Wayman [this message]
2020-11-01 22:00 ` bug#44360: 28.0.50; describe-map-tree wrong-type-arg error Stefan Kangas
2020-11-01 22:26   ` No Wayman
2020-11-01 23:49     ` Stefan Kangas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r1perti3.fsf@gmail.com \
    --to=iarchivedmywholelife@gmail.com \
    --cc=44360@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).