Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: [BUG] With CORRECT_ALL, an interrupted correct puts a truncated entry in history



On Wed, Dec 6, 2023 at 7:03 AM Vincent Lefevre <vincent@xxxxxxxxxx> wrote:
>
> On 2023-12-05 13:22:07 -0800, Bart Schaefer wrote:
> > On Tue, Dec 5, 2023 at 4:57 AM Vincent Lefevre <vincent@xxxxxxxxxx> wrote:
> > >
> > > I thought that this would have been put in a temporary buffer,
> > > until the (possibly corrected) command is validated.
> >
> > I'm not sure what you think "validated" means here.
>
> Once the user has no longer any way to discard the command line,
> which will then be really run.

Ah.  It's in the buffer managed in ZLE as $BUFFER, but corrections
apply left to right as that buffer is converted into a parse tree,
they don't alter the buffer itself.

> > I'm not going to make a decision on that without further feedback.
>
> Yes, that's why I had suggested an explicit action for that

Altering the prompt to add more cases is one of the things I won't do
without feedback.

> Or just use 'e', then immediately put the command in the history
> without running it. Is there a zle widget for that? I would find
> this useful even when there are no spelling corrections.

That would be push-input, which is not bound to anything by default,
but could probably be bound to ESC (shift)Q without disrupting use of
push-line on ESC q.

Correction is not itself a ZLE action -- it happens after ZLE has
returned control to the parser, and works even if ZLE is disabled.  So
there's no widget to fiddle with it.




Messages sorted by: Reverse Date, Date, Thread, Author