diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroupBase.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroupBase.kt
index b779317e4..ef7caafda 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroupBase.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimMotionGroupBase.kt
@@ -49,7 +49,9 @@ abstract class VimMotionGroupBase : VimMotionGroup {
         editor.mode.isEndAllowedIgnoringOnemore,
       )
       val newPos = VimVisualPosition(line, normalisedColumn, false)
-      return editor.visualPositionToOffset(newPos).toAdjustedMotionOrError(intendedColumn)
+      val newOffset = editor.visualPositionToOffset(newPos)
+      val adjustedOffset = editor.normalizeOffset(newOffset, editor.isEndAllowed)
+      return adjustedOffset.toAdjustedMotionOrError(intendedColumn)
     }
 
     if (line < 0) {