mirror of
https://github.com/neovim/neovim.git
synced 2025-10-17 23:31:51 +00:00
vim-patch:8.2.3227: 'virtualedit' can only be set globally
Problem: 'virtualedit' can only be set globally.
Solution: Make 'virtualedit' global-local. (Gary Johnson, closes vim/vim#8638)
53ba05b090
I changed some macros to unsigned integer literals to avoid compiler warnings.
This commit is contained in:
@@ -909,7 +909,7 @@ static int insert_handle_key(InsertState *s)
|
||||
ins_ctrl_o();
|
||||
|
||||
// don't move the cursor left when 'virtualedit' has "onemore".
|
||||
if (ve_flags & VE_ONEMORE) {
|
||||
if (get_ve_flags() & VE_ONEMORE) {
|
||||
ins_at_eol = false;
|
||||
s->nomove = true;
|
||||
}
|
||||
@@ -6905,8 +6905,7 @@ int oneright(void)
|
||||
|
||||
// move "l" bytes right, but don't end up on the NUL, unless 'virtualedit'
|
||||
// contains "onemore".
|
||||
if (ptr[l] == NUL
|
||||
&& (ve_flags & VE_ONEMORE) == 0) {
|
||||
if (ptr[l] == NUL && (get_ve_flags() & VE_ONEMORE) == 0) {
|
||||
return FAIL;
|
||||
}
|
||||
curwin->w_cursor.col += l;
|
||||
@@ -8028,7 +8027,7 @@ static bool ins_esc(long *count, int cmdchar, bool nomove)
|
||||
&& !VIsual_active
|
||||
))
|
||||
&& !revins_on) {
|
||||
if (curwin->w_cursor.coladd > 0 || ve_flags == VE_ALL) {
|
||||
if (curwin->w_cursor.coladd > 0 || get_ve_flags() == VE_ALL) {
|
||||
oneleft();
|
||||
if (restart_edit != NUL) {
|
||||
curwin->w_cursor.coladd++;
|
||||
|
Reference in New Issue
Block a user