Mercurial > vim
changeset 6318:5e998fc610d5 v7.4.492
updated for version 7.4.492
Problem: In Insert mode, after inserting a newline that inserts a comment
leader, CTRL-O moves to the right. (ZyX) Issue 57.
Solution: Correct the condition for moving the cursor back to the NUL.
(Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Fri, 31 Oct 2014 19:20:36 +0100 |
parents | 7bcb17fdf87a |
children | 6524c7a6ab2c |
files | src/edit.c src/testdir/test4.in src/testdir/test4.ok src/version.c |
diffstat | 4 files changed, 14 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/edit.c +++ b/src/edit.c @@ -6916,8 +6916,12 @@ stop_insert(end_insert_pos, esc, nomove) } if (curwin->w_cursor.lnum != tpos.lnum) curwin->w_cursor = tpos; - else if (cc != NUL) - ++curwin->w_cursor.col; /* put cursor back on the NUL */ + else + { + tpos.col++; + if (cc != NUL && gchar_pos(&tpos) == NUL) + ++curwin->w_cursor.col; /* put cursor back on the NUL */ + } /* <C-S-Right> may have started Visual mode, adjust the position for * deleted characters. */
--- a/src/testdir/test4.in +++ b/src/testdir/test4.in @@ -17,6 +17,9 @@ othis should be auto-indented G?this is a othis should be in column 1:wq " append text without autoindent to Xxx G:r Xxx " include Xxx in the current file +:set fo+=r " issue #57 do not move cursor on <c-o> when autoindent is set +Go# abcdef2hi +d0o# abcdef2hid0 :?startstart?,$w! test.out :qa! ENDTEST