<div dir="ltr">ah, i see. still, that's a pretty good result --- the bug doesn't actually affect the data :-)</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Feb 6, 2020 at 7:46 AM Jarno Mäkipää <<a href="mailto:jmakip87@gmail.com">jmakip87@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Oh yeah, sorry.<br>
<br>
Well techically they are not broken, but drawing of cursor position at<br>
end of line symbol does not work. its issue in draw_page()....<br>
<br>
Those movement commands work fine, and tests return correct results.<br>
And text is edited right i think. Hard to cover this with testing :(<br>
but anyway this needs to be fixed.<br>
<br>
-Jarno<br>
<br>
On Thu, Feb 6, 2020 at 1:54 AM enh <<a href="mailto:enh@google.com" target="_blank">enh@google.com</a>> wrote:<br>
><br>
> seems like $, A, and D are all broken now?<br>
><br>
> On Sun, Feb 2, 2020 at 5:52 AM Jarno Mäkipää <<a href="mailto:jmakip87@gmail.com" target="_blank">jmakip87@gmail.com</a>> wrote:<br>
> ><br>
> > I think this can be applied now. Unless someone is against it. Im<br>
> > personally starting to be happy with it. All tests pass, more tests<br>
> > can be written.<br>
> ><br>
> > (applies directly to master, on top or without tests patch send few minutes ago)<br>
> ><br>
> > Replaced dlist linelist with continuous memory blocks. This will allow<br>
> > editing huge files without billion mallocs. File is first opened with<br>
> > mmap() and mapped region is fully described in block_list as one block.<br>
> ><br>
> > Currently "valid" data is described as slices, when first loading file<br>
> > there is only one slice that points to memory existing in block_list.<br>
> > When cutting text, block_list is not freed or modified, but instead<br>
> > slice_list is modified to have "hole" between 2 slices. when inserting<br>
> > new mem_block is added, previos slices are cut in cursor position and<br>
> > new slice is added...<br>
> ><br>
> > Added functions to handling data inside block_list+slice_list<br>
> ><br>
> > insert_str(), cut_str() are used for all delete and add operations<br>
> > text_strrchr(), text_strchr() are used for searching lineendings<br>
> > text_byte(), text_codepoint(), text_getline() are for simple data access<br>
> ><br>
> > Implemented: more or less all previous functionality<br>
> ><br>
> > Implemented more proper file write:<br>
> > file is saved to .swp, blocks are unloaded, file permissions are copied,<br>
> > and atomic rename is called, block is reloaded<br>
> > chmod some defaults(rw-rw-r--) if original file could not be fstat (does<br>
> > not exist)<br>
> ><br>
> > FIX make all tests pass<br>
> ><br>
> > Removed: Some unused functions<br>
> > ---<br>
> > toys/pending/vi.c | 1347 +++++++++++++++++++++++++++++++----------------------<br>
> > 1 file changed, 791 insertions(+), 556 deletions(-)<br>
> > _______________________________________________<br>
> > Toybox mailing list<br>
> > <a href="mailto:Toybox@lists.landley.net" target="_blank">Toybox@lists.landley.net</a><br>
> > <a href="http://lists.landley.net/listinfo.cgi/toybox-landley.net" rel="noreferrer" target="_blank">http://lists.landley.net/listinfo.cgi/toybox-landley.net</a><br>
</blockquote></div>