Hi Bram, 2013/6/16(Sun) 00:55:06 UTC+9 Bram Moolenaar: > Patch 7.3.1200 > > Problem: When calling setline() from Insert mode, using CTRL-R =, undo does > > not work properly. (Israel Chauca) > > Solution: Sync undo after evaluating the expression. (Christian Brabandt) > > Files: src/edit.c, src/testdir/test61.in, src/testdir/test61.ok
This patch works fine on new buffer or existing file(one line) editing. However, This patch seems incomplete when existing file(two or more lines) editing. How to reproduce. 1. $ echo -e "\n" > foo $ od -t x1c foo 0000000 0a 0a \n \n 0000002 $ vim -N -u NONE --noplugin foo 2. input below. ia<Esc>o1<Esc>a2<C-R>=setline('.','1234')<CR><CR><Esc> 3. Contents of the buffer -------- a 120 34 -------- 4. undo (first time) -------- a 12 34 -------- 5. undo (second time) -------- a 1 <=== ? 34 -------- 6. undo (third time) -------- a 34 <--- ?? -------- Best regards, Hirohito Higashi -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.