Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: ZLE and handling of MARK
- X-seq: zsh-workers 12894
- From: Sven Wischnowsky <wischnow@xxxxxxxxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxxxxxx
- Subject: Re: ZLE and handling of MARK
- Date: Thu, 5 Oct 2000 10:18:13 +0200 (MET DST)
- In-reply-to: "Bart Schaefer"'s message of Sat, 9 Sep 2000 20:14:15 +0000
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
Bart Schaefer wrote:
> If one sets the mark in zle and then delete characters to the left of it
> by assigning to a slice of $BUFFER in a user-defined widget, the mark
> remains in the same numeric position rather than the same logical position.
>
> If instead one deletes characters by using the builtin widgets, the mark
> stays in the same logical position (its numeric position changes as the
> line gets shorter). The two cases should be consistent, no?
Yes, but how? The only `secure' change I can see is to update the
position of the mark if it is in $RBUFFER and only $LBUFFER is
changed. Otherwise we would need some, probably complicated, code to
check how $(|L|R)BUFFER was changed (ok, for deletion/insertion of
characters or short strings from/to the end/beginning of L/RBUFFER
this seems doable).
> One other observation:
>
> If one sets the mark and then moves around in the history, the mark stays
> at the same numeric position in each recalled line, moving only if a line
> is too short for it to stay in that position AND some reference to the mark
> is made (such as invoking exchange-point-and-mark). I'm not sure whether
> such behavior makes sense or not ... and if it changes, some functions in
> Functions/Zle will have to change, too.
It's a bit like emacs' line-movement, isn't it?
(I always thought the mark should be either attached to a history line
so that exchange-p-a-m would toggle between lines, or it should be
per-line. Maybe.)
Bye
Sven
--
Sven Wischnowsky wischnow@xxxxxxxxxxxxxxxxxxxxxxx
Messages sorted by:
Reverse Date,
Date,
Thread,
Author