diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/TillCharacterMotion.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/TillCharacterMotion.kt
index 2f143afbe..50f64a67d 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/TillCharacterMotion.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/action/motion/leftright/TillCharacterMotion.kt
@@ -76,6 +76,13 @@ sealed class TillCharacterMotion(
       )
     }
     injector.motion.setLastFTCmd(tillCharacterMotionType, argument.character)
+    
+    val offset = if (!finishBeforeCharacter) ""
+    else if (direction == Direction.FORWARDS) "s-1"
+    else "s+1"
+    
+    injector.searchGroup.setLastSearchState(argument.character.let { if (it == '.') "\\." else it.toString() }, offset, direction)
+    
     return res.toMotionOrError()
   }
 }
diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroup.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroup.kt
index c69407eec..76ef5a033 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroup.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroup.kt
@@ -206,4 +206,17 @@ interface VimSearchGroup {
    * Returns true if any text is selected in the visible editors, false otherwise.
    */
   fun isSomeTextHighlighted(): Boolean
+
+  /**
+   * Sets the last search state purely for tests
+   *
+   * @param pattern         The pattern to save. This is the last search pattern, not the last substitute pattern
+   * @param patternOffset   The pattern offset, e.g. `/{pattern}/{offset}`
+   * @param direction       The direction to search
+   */
+  fun setLastSearchState(
+    pattern: String,
+    patternOffset: String,
+    direction: Direction,
+  )
 }
diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroupBase.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroupBase.kt
index b0b09237c..94d17b258 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroupBase.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/api/VimSearchGroupBase.kt
@@ -1425,8 +1425,7 @@ abstract class VimSearchGroupBase : VimSearchGroup {
    * @param patternOffset   The pattern offset, e.g. `/{pattern}/{offset}`
    * @param direction       The direction to search
    */
-  @TestOnly
-  fun setLastSearchState(
+  override fun setLastSearchState(
     pattern: String,
     patternOffset: String,
     direction: Direction,