GNU bug report logs - #61310
Eshell modifying and running output regression

Previous Next

Package: emacs;

Reported by: Morgan Smith <Morgan.J.Smith <at> outlook.com>

Date: Mon, 6 Feb 2023 04:24:01 UTC

Severity: normal

Done: Jim Porter <jporterbugs <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


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

From: Jim Porter <jporterbugs <at> gmail.com>
To: Morgan Smith <Morgan.J.Smith <at> outlook.com>, 61310 <at> debbugs.gnu.org
Subject: Re: bug#61310: Eshell modifying and running output regression
Date: Sun, 5 Feb 2023 21:51:45 -0800
[Message part 1 (text/plain, inline)]
On 2/5/2023 8:18 PM, Morgan Smith wrote:
> eshell allows you to modify the output of a command and run it.  It is a
> beautiful thing.

Interesting. I didn't realize this was possible in Eshell (I only 
thought you could re-run old *inputs*).

> I don't know much about fields but it looks like it is not necessary to
> have a command-output field at all.  I propose we get rid of that.  If
> you want to keep the field, can we make it sticky or something? 

The output field is actually necessary (or else Eshell would need to be 
cleverer about some things). The main issue is that if a command doesn't 
output a newline, the command's output can end up on the same line as 
the prompt:

  ~ $ *echo -n [output]
  [output]~ $

If the output had no field, C-a would move to the very beginning of the 
line, not to the beginning of the input field. Maybe this is a bug in 
how fields are handled, but changing field handling in general is 
probably too risky.

So instead, let's make the output field sticky as you say. Here's a fix 
for that plus regression tests so this won't break in the future.
[0001-Ensure-that-Eshell-users-can-run-lines-of-command-ou.patch (text/plain, attachment)]

This bug report was last modified 2 years and 82 days ago.

Previous Next


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