From: "Óscar Fuentes" <ofv@wanadoo.es>
To: 52794@debbugs.gnu.org
Subject: bug#52794: 28.0.90; Eshell: error while completing
Date: Sat, 25 Dec 2021 18:50:53 +0100 [thread overview]
Message-ID: <8735mgshdu.fsf@telefonica.net> (raw)
emacs -Q
M-x eshell
Go to a directory with two or more files with the same prefix. The Emacs
build directory, for instance. Let's suppose the prefix is `c'.
mv c* foo[TAB]
Debugger entered--Lisp error: (wrong-type-argument stringp ("config.log" "config.log~" "config.status"))
string-match("\\.\\.\\.+/" ("config.log" "config.log~" "config.status"))
#f(compiled-function (arg) #<bytecode 0x18cd73f57cbbd741>)((eshell-extended-glob (eshell-convert (concat "c" "*"))))
mapcar(#f(compiled-function (arg) #<bytecode 0x18cd73f57cbbd741>) ("mv" (eshell-extended-glob (eshell-convert (concat "c" "*"))) "l"))
eshell-complete-parse-arguments()
pcomplete-parse-arguments(nil)
pcomplete-completions()
pcomplete-completions-at-point()
completion--capf-wrapper(pcomplete-completions-at-point all)
run-hook-wrapped(completion--capf-wrapper pcomplete-completions-at-point all)
completion-at-point()
funcall-interactively(completion-at-point)
call-interactively(completion-at-point nil nil)
command-execute(completion-at-point)
The patch below fixes the problem, which if my analysis is correct, was
introduced by:
commit 9224a863192b1317ef307bcc76abfdfbad73b796
Author: Michalis V <mvar.40k@gmail.com>
Date: Fri Aug 27 18:46:04 2021 +0200
Fix completion of extended "..." syntax in eshell
* lisp/eshell/em-cmpl.el (eshell-complete-parse-arguments): Expand
"..." (bug#19626).
emacs/lisp/eshell/em-cmpl.el
@@ -380,7 +380,7 @@
(setq val (number-to-string val)))
;; expand .../ etc that only eshell understands to
;; standard ../../
- ((string-match "\\.\\.\\.+/" val)
+ ((and (stringp val) (string-match "\\.\\.\\.+/" val))
(setq val (eshell-expand-multiple-dots val))))
(or val "")))
args)
The problem is that `val' is a list when more than one file matches the
glob, and then `string-match' errors-out.
Ok to commit in emacs-28 ?
next reply other threads:[~2021-12-25 17:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-25 17:50 Óscar Fuentes [this message]
2021-12-27 14:50 ` bug#52794: 28.0.90; Eshell: error while completing Óscar Fuentes
2021-12-27 14:52 ` Lars Ingebrigtsen
2021-12-27 15:07 ` Óscar Fuentes
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=8735mgshdu.fsf@telefonica.net \
--to=ofv@wanadoo.es \
--cc=52794@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).