Re: [dev] [RFC] Design of a vim like text editor

From: Marc André Tanner <>
Date: Wed, 24 Sep 2014 21:36:12 +0200

On Wed, Sep 24, 2014 at 06:12:30PM +0200, Silvan Jegen wrote:
> On Tue, Sep 23, 2014 at 08:03:45PM +0200, ale rimoldi wrote:
> > - o does not go into insert mode (how easy it is to switch my habits to oi?)
> > - a does not append
> > - end of line is not the last char in the line but the end of line character
> > - P does not paste before
> >
> > and here the only real bug i noticed:
> >
> > - <count>> indents count+1 lines
> >
> > [...]
> >
> > zt zz zb redraw the current line at the top, center or bottom of the screen
> >
> > o O should go into insert mode after adding the line
> > a appends at the current cursor place
> > . should also repeat insert actions
> > $ should jump to the last char in the line not on the hidden return char
> > in normal mode, when the cursor is at the end of the line it should be on the last char.
> > x should not delete the end of line character (but this might be solved with the placement issue above)
> > implement the difference between word and WORD
> Nice observations with which I agree.
> I too think that both macros and the visual block mode belong to the
> essential functionality of Vim. Hopefully I will find the time to work
> on these for vis.

Looking forward to it! In the meantime I implemented some of the low hanging
fruits from your TODO list (thanks for sharing it).

> Additionally I found the following differences to Vim (a.k.a. my TODO
> list...):
> - 'J' in visual mode is not implemented

Why would one use it?

> - 'r' does move the cursor


> - Visual line mode


> - dd is not .-able

Seems to work here

> - dd does not work when used at the end of the file

Yes, not a big deal (for now)

> - Pasting a yy'd line with 'p' moves the cursor one additional line down

Can't reproduce

> - M behaviour when used on file contents smaller than window (bottom vs
> middle of the shown buffer)


> - ZZ should be implemented
> - ZQ should be implemented

These should work now?

> - 't' stops one character short

I think what you mean is that it wasn't an inclusive movement? That is
in combination with an operator it would stop one character short,
the movement itself was correct?

Anyway should be fixed now.

> - Implement ';' and ','

Should not be that hard.

> - 'p' does not allow for a count

This might require some reconsideration about how count is handled
in general. vis currently only has one count for both operators and
movements. vim multiplies them if I recall correctly. vis doesn't
do this at the moment. It just performs the movement count times but
preserves the value given in OperatorContext->count. Hence also my
question the other day regarding how to shift m lines by n levels ...

Strictly speaking 'p' is not even an operator but it is implemented
that way to make it repeatable.

 Marc André Tanner >< >< GPG key: CF7D56C0
Received on Wed Sep 24 2014 - 21:36:12 CEST

This archive was generated by hypermail 2.3.0 : Wed Sep 24 2014 - 21:48:07 CEST