texmacs-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Texmacs-dev] Logical cursor movement


From: Álvaro Tejero Cantero
Subject: Re: [Texmacs-dev] Logical cursor movement
Date: 19 Aug 2002 20:03:10 +0200

On Thu, 2002-08-15 at 13:18, Joris van der Hoeven wrote:
> 
> I am thinking again about implementing logical cursor movement.
> I do not know when I will actually do it, but I would like to
> get your opinion (especially Alvaro's opinion) about it.
> 
> First of all, I think that there are basically two types of
> logical cursor movement. The first one tries to reproduce
> the graphical cursor movement "as good as it can" and
> is the less interesting one, except for internal purposes
> such as search/replace or for putting the cursor at a place
> which was graphically hard to obtain.
> The second kind of logical cursor movement aims at moving
> around "at a given depth", like from one cell to another
> in a matrix or from one argument to another in a macro expansion.
> 
> The first type of cursor movement basically only implements
> 'go-right' and 'go-left' in a satisfactory way.
> For instance given $a + \frac{b}{c} + d$ and
> moving to the right behind 'a', yields the successive positions
> 
>   $a +| \frac{b}{c} + d$
>   $a + \frac{|b}{c} + d$
>   $a + \frac{b|}{c} + d$
>   $a + \frac{b}{|c} + d$
>   $a + \frac{b}{c|} + d$
>   $a + \frac{b}{c}| + d$
>   $a + \frac{b}{c} +| d$
>   $a + \frac{b}{c} + d|$
>   $a + \frac{b}{c} + d$|
> 
> Moving up and down strongly depends on the particular kind
> of markup one is in. For instance, inside normal text,
> 'go-down' might go to the beginning of the next paragraph.

Right. How do you plan to make logical and physical cursor movement
coexist? Perhaps arrows for one and A-arrows for the other?. 

> As to the second kind of cursor movement, we first have 'go-right',
> 'go-left' (and 'go-up' and 'go-down' in matrix-like structures) 
> which go to the next and previous argument.
> However, we have some choice here, since we may move
> to the end or the start of the next argument.

I am not sure I understand this. What is the start or the end of an
argument if it's still not filled?. I will be able to comment the
following when I have understood this properly... An example would help.

> When inside a matrix, we have the following options
> for moving right resp. left:
> 
> 1. Always go to the end
> 
>    ........  ...|....  ........  ........
>    ........  ........  .......|  ........
>    ........  ........  ........  .......|
> 
>    ........  ...|....  ........  ........
>    .......|  ........  ........  ........
> 
> 
> 2. To the end when moving right and start when moving left
> 
>    ........  ...|....  ........  ........
>    ........  ........  .......|  ........
>    ........  ........  ........  .......|
> 
>    ........  ...|....  ........  ........
>    |.......  ........  ........  ........
> 
> 
> 3. Inverted 2
> 
>    ........  ...|....  ........  ........
>    ........  ........  |.......  ........
>    ........  ........  ........  |.......
>    ........  ........  ........  .......| [optional]
> 
>    ........  ...|....  ........  ........
>    .......|  ........  ........  ........
>    |.......  ........  ........  ........ [optional]
> 
> 
> 4. Other variant
> 
>    ........  ...|....  ........  ........
>    ........  .......|  ........  ........
>    ........  ........  .......|  ........
>    ........  ........  ........  .......|
> 
>    ........  ...|....  ........  ........
>    ........  |.......  ........  ........
>    |.......  ........  ........  ........
> 
> 
> Etc. What would you prefer.
> 
> The level-wise cursor movement should also come
> with natural actions to go to the last or first argument and
> to leave (enter) a given level at the right hand or
> left hand side.
> 
> Did I forget something? One might also wish to have bindings
> to move the previous and next words and potentially mix that
> with the structured movements. I am not sure whether this would
> be really handy though.

I'm thinking about the issue (more precisely, trying to remember what
did I think some months ago). Although my thoughts were mostly about
*text* environments.

One question: the logical cursor movement inside macros would mimic the
creation order of the arguments?.

álvaro.


-- 
álvaro.tejero.cantero
alqua.com, la red en estudio
"La perfection est atteinte non quand il ne reste rien à
ajouter, mais quand il ne reste rien à enlever"
Saint-Exupéry.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]