diff src/normal.c @ 25380:ac88cd21ae88 v8.2.3227

patch 8.2.3227: 'virtualedit' can only be set globally Commit: https://github.com/vim/vim/commit/53ba05b09075f14227f9be831a22ed16f7cc26b2 Author: Gary Johnson <garyjohn@spocom.com> Date: Mon Jul 26 22:19:10 2021 +0200 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 https://github.com/vim/vim/issues/8638)
author Bram Moolenaar <Bram@vim.org>
date Mon, 26 Jul 2021 22:30:05 +0200
parents aa55d6d17625
children 4101d78f78e2
line wrap: on
line diff
--- a/src/normal.c
+++ b/src/normal.c
@@ -5757,7 +5757,7 @@ n_start_visual_mode(int c)
 
     // Corner case: the 0 position in a tab may change when going into
     // virtualedit.  Recalculate curwin->w_cursor to avoid bad highlighting.
-    if (c == Ctrl_V && (ve_flags & VE_BLOCK) && gchar_cursor() == TAB)
+    if (c == Ctrl_V && (get_ve_flags() & VE_BLOCK) && gchar_cursor() == TAB)
     {
 	validate_virtcol();
 	coladvance(curwin->w_virtcol);
@@ -6780,7 +6780,7 @@ adjust_cursor(oparg_T *oap)
     // - 'virtualedit' is not "all" and not "onemore".
     if (curwin->w_cursor.col > 0 && gchar_cursor() == NUL
 		&& (!VIsual_active || *p_sel == 'o')
-		&& !virtual_active() && (ve_flags & VE_ONEMORE) == 0)
+		&& !virtual_active() && (get_ve_flags() & VE_ONEMORE) == 0)
     {
 	--curwin->w_cursor.col;
 	// prevent cursor from moving on the trail byte
@@ -7014,7 +7014,7 @@ nv_esc(cmdarg_T *cap)
 set_cursor_for_append_to_line(void)
 {
     curwin->w_set_curswant = TRUE;
-    if (ve_flags == VE_ALL)
+    if (get_ve_flags() == VE_ALL)
     {
 	int save_State = State;