GNU bug report logs - #27919
25.2.50; dired + eshell-ls: fallback to external ls fails

Previous Next

Package: emacs;

Reported by: Tino Calancha <tino.calancha <at> gmail.com>

Date: Wed, 2 Aug 2017 16:00:03 UTC

Severity: minor

Tags: confirmed

Found in version 25.2.50

To reply to this bug, email your comments to 27919 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to jwiegley <at> gmail.com, bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Wed, 02 Aug 2017 16:00:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Tino Calancha <tino.calancha <at> gmail.com>:
New bug report received and forwarded. Copy sent to jwiegley <at> gmail.com, bug-gnu-emacs <at> gnu.org. (Wed, 02 Aug 2017 16:00:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.2.50; dired + eshell-ls: fallback to external ls fails
Date: Thu, 03 Aug 2017 00:59:31 +0900
X-Debbugs-CC: John Wiegley <jwiegley <at> gmail.com>

emacs -r -Q -l em-ls -l esh-cmd -eval "(customize-set-variable 'eshell-ls-use-in-dired t)"

M-: (dired source-directory "-lg") RET
;; Signal eshell-interactive-output-p: (wrong-type-argument arrayp nil)

It fails because eshell-current-handles is nil.
Even if this variable is set, then (throw 'eshell-external ...
in `eshell--do-opts' won't be catched.

The following works:
M-x eshell RET
ls -lg (eval source-directory) RET


In GNU Emacs 25.2.50.3 (x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
 of 2017-08-03 built on calancha-pc
Windowing system distributor 'The X.Org Foundation', version 11.0.11902000
System Description:	Debian GNU/Linux 9.1 (stretch)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Wed, 02 Aug 2017 19:07:02 GMT) Full text and rfc822 format available.

Message #8 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Tino Calancha <tino.calancha <at> gmail.com>
Cc: 27919 <at> debbugs.gnu.org
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Wed, 02 Aug 2017 12:06:15 -0700
>>>>> "TC" == Tino Calancha <tino.calancha <at> gmail.com> writes:

TC> M-: (dired source-directory "-lg") RET
TC> ;; Signal eshell-interactive-output-p: (wrong-type-argument arrayp nil)

Why would eshell be involving with using dired at all?  Do you have a
customization present that is causing this?

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Thu, 03 Aug 2017 03:17:01 GMT) Full text and rfc822 format available.

Message #11 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: 27919 <at> debbugs.gnu.org, Tino Calancha <tino.calancha <at> gmail.com>
Subject: Re: bug#27919: 25.2.50; dired + eshell-ls: fallback to external ls
 fails
Date: Thu, 3 Aug 2017 12:16:50 +0900 (JST)

On Wed, 2 Aug 2017, John Wiegley wrote:

>>>>>> "TC" == Tino Calancha <tino.calancha <at> gmail.com> writes:
>
> TC> M-: (dired source-directory "-lg") RET
> TC> ;; Signal eshell-interactive-output-p: (wrong-type-argument arrayp nil)
>
> Why would eshell be involving with using dired at all?  Do you have a
> customization present that is causing this?
Not me.  I am just testing all the functionality available.
Someone added in 2000 a defcustom `eshell-ls-use-in-dired', so 
that you can run eshell-ls to list directories with Dired.

Now i understand why i get this error: the dired support was added
'a posteriori'.

I think an user who want to set `eshell-ls-use-in-dired' non-nil is
likely someone with no external 'ls' installed.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Thu, 03 Aug 2017 18:48:01 GMT) Full text and rfc822 format available.

Message #14 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Tino Calancha <calancha <at> gmail.com>
Cc: 27919 <at> debbugs.gnu.org, Tino Calancha <tino.calancha <at> gmail.com>
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Thu, 03 Aug 2017 11:47:01 -0700
>>>>> Tino Calancha <calancha <at> gmail.com> writes:

> Now i understand why i get this error: the dired support was added 'a
> posteriori'.

> I think an user who want to set `eshell-ls-use-in-dired' non-nil is likely
> someone with no external 'ls' installed.

I added eshell-ls-use-in-dired long ago, to support a Windows machine I was
working on.  At least the bug report now makes much more sense, thank you.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Thu, 03 Aug 2017 21:36:01 GMT) Full text and rfc822 format available.

Message #17 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: Tino Calancha <calancha <at> gmail.com>, 27919 <at> debbugs.gnu.org,
 Tino Calancha <tino.calancha <at> gmail.com>
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Thu, 03 Aug 2017 17:35:31 -0400
John Wiegley wrote:

>> I think an user who want to set `eshell-ls-use-in-dired' non-nil is likely
>> someone with no external 'ls' installed.
>
> I added eshell-ls-use-in-dired long ago, to support a Windows machine I was
> working on.  At least the bug report now makes much more sense, thank you.

Why is it desirable to use eshell ls with dired instead of ls-lisp?
Maybe it would be better to remove it rather than fix it.
(It usually goes well when I suggest this...)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Thu, 03 Aug 2017 21:47:01 GMT) Full text and rfc822 format available.

Message #20 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Glenn Morris <rgm <at> gnu.org>
Cc: Tino Calancha <calancha <at> gmail.com>, 27919 <at> debbugs.gnu.org,
 Tino Calancha <tino.calancha <at> gmail.com>
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Thu, 03 Aug 2017 14:46:14 -0700
>>>>> Glenn Morris <rgm <at> gnu.org> writes:

> Why is it desirable to use eshell ls with dired instead of ls-lisp? Maybe it
> would be better to remove it rather than fix it. (It usually goes well when
> I suggest this...)

I like it more than ls-lisp, and it pays attention to all the same options you
can use to configure eshell/ls at the Eshell command-line.  If anything, why
not get rid of ls-lisp?

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Fri, 04 Aug 2017 06:06:02 GMT) Full text and rfc822 format available.

Message #23 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: calancha <at> gmail.com, rgm <at> gnu.org, 27919 <at> debbugs.gnu.org,
 tino.calancha <at> gmail.com
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Fri, 04 Aug 2017 09:04:39 +0300
> From: John Wiegley <jwiegley <at> gmail.com>
> Date: Thu, 03 Aug 2017 14:46:14 -0700
> Cc: Tino Calancha <calancha <at> gmail.com>, 27919 <at> debbugs.gnu.org,
> 	Tino Calancha <tino.calancha <at> gmail.com>
> 
> If anything, why not get rid of ls-lisp?

Because (a) it's much smaller than Eshell, so better suited for
something that's preloaded; and (b) it supports quite a few options
that Eshell doesn't, AFAIK, and which Windows users might expect to be
available, as they are available in "other file-system browsers".

I actually think that getting rid of any of these two is not a good
idea, but that's me.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Fri, 04 Aug 2017 08:35:02 GMT) Full text and rfc822 format available.

Message #26 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: Glenn Morris <rgm <at> gnu.org>, 27919 <at> debbugs.gnu.org,
 Tino Calancha <tino.calancha <at> gmail.com>
Subject: Re: bug#27919: 25.2.50; dired + eshell-ls: fallback to external ls
 fails
Date: Fri, 4 Aug 2017 17:34:35 +0900 (JST)

On Thu, 3 Aug 2017, John Wiegley wrote:

>>>>>> Glenn Morris <rgm <at> gnu.org> writes:
>
>> Why is it desirable to use eshell ls with dired instead of ls-lisp? Maybe it
>> would be better to remove it rather than fix it. (It usually goes well when
>> I suggest this...)
>
> I like it more than ls-lisp, and it pays attention to all the same options you
> can use to configure eshell/ls at the Eshell command-line.  If anything, why
> not get rid of ls-lisp?
I think 'The battle of emulated ls with elisp' is about to start.  I read
about in a Tolkien book; don't remember who won, though.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Fri, 04 Aug 2017 17:06:01 GMT) Full text and rfc822 format available.

Message #29 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: calancha <at> gmail.com, rgm <at> gnu.org, 27919 <at> debbugs.gnu.org,
 tino.calancha <at> gmail.com
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Fri, 04 Aug 2017 10:05:07 -0700
>>>>> Eli Zaretskii <eliz <at> gnu.org> writes:

> Because (a) it's much smaller than Eshell, so better suited for something
> that's preloaded; and (b) it supports quite a few options that Eshell
> doesn't, AFAIK, and which Windows users might expect to be available, as
> they are available in "other file-system browsers".

I wonder then how hard it would be to adapt Eshell to use ls-lisp.  Does
ls-lisp provide more than just dired-suited output?  eshell/ls tries hard to
be pretty at the shell prompt too.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Fri, 04 Aug 2017 17:24:02 GMT) Full text and rfc822 format available.

Message #32 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: John Wiegley <jwiegley <at> gmail.com>
Cc: calancha <at> gmail.com, rgm <at> gnu.org, 27919 <at> debbugs.gnu.org,
 tino.calancha <at> gmail.com
Subject: Re: bug#27919: 25.2.50;
 dired + eshell-ls: fallback to external ls fails
Date: Fri, 04 Aug 2017 20:23:09 +0300
> From: John Wiegley <jwiegley <at> gmail.com>
> Cc: rgm <at> gnu.org,  calancha <at> gmail.com,  27919 <at> debbugs.gnu.org,  tino.calancha <at> gmail.com
> Date: Fri, 04 Aug 2017 10:05:07 -0700
> 
> Does ls-lisp provide more than just dired-suited output?

Not really.  But it has options like ls-lisp-dirs-first,
ls-lisp-ignore-case, ls-lisp-format-time-list, and
ls-lisp-use-localized-time-format.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Fri, 04 Aug 2017 17:38:01 GMT) Full text and rfc822 format available.

Message #35 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>, John Wiegley <jwiegley <at> gmail.com>
Cc: calancha <at> gmail.com, 27919 <at> debbugs.gnu.org, tino.calancha <at> gmail.com
Subject: RE: bug#27919: 25.2.50; dired + eshell-ls: fallback to external ls
 fails
Date: Fri, 4 Aug 2017 10:37:15 -0700 (PDT)
> > Does ls-lisp provide more than just dired-suited output?
> 
> Not really.  But it has options like ls-lisp-dirs-first,
> ls-lisp-ignore-case, ls-lisp-format-time-list, and
> ls-lisp-use-localized-time-format.

And such options are also supported by libraries such as
`dired-sort-menu.el' (also by Francis J. Wright).

https://www.emacswiki.org/emacs/DiredSortMenu




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#27919; Package emacs. (Thu, 10 Feb 2022 08:00:02 GMT) Full text and rfc822 format available.

Message #38 received at 27919 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Tino Calancha <tino.calancha <at> gmail.com>
Cc: john wiegley <jwiegley <at> gmail.com>, 27919 <at> debbugs.gnu.org
Subject: Re: bug#27919: 25.2.50; dired + eshell-ls: fallback to external ls
 fails
Date: Thu, 10 Feb 2022 08:59:23 +0100
Tino Calancha <tino.calancha <at> gmail.com> writes:

> emacs -r -Q -l em-ls -l esh-cmd -eval "(customize-set-variable 'eshell-ls-use-in-dired t)"
>
> M-: (dired source-directory "-lg") RET
> ;; Signal eshell-interactive-output-p: (wrong-type-argument arrayp nil)
>
> It fails because eshell-current-handles is nil.
> Even if this variable is set, then (throw 'eshell-external ...
> in `eshell--do-opts' won't be catched.

This bug is still present in Emacs 29.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) confirmed. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Thu, 10 Feb 2022 08:00:03 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 126 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.