   @extend()
 
   execute: ->
-    if @typedText?
-      return unless @typedText
+    if @insertedText?
+      return unless @insertedText
       @editor.transact =>
-        @editor.insertText(@typedText, normalizeLineEndings: true)
-        toDelete = @typedText.length - @countChars('\n', @typedText)
+        @editor.insertText(@insertedText, normalizeLineEndings: true)
+        toDelete = @insertedText.length - @countChars('\n', @insertedText)
         for selection in @editor.getSelections()
           count = toDelete
           selection.delete() while count-- and not selection.cursor.isAtEndOfLine()

    @target.select()
    if @haveSomeSelection()
      @setTextToRegister @editor.getSelectedText()
      if @target.isLinewise?() and not @typedText?
        for selection in @editor.getSelections()
          selection.insertText("\n", autoIndent: true)
          selection.cursor.moveLeft()

      when 'below' then @editor.insertNewlineBelow()
    @editor.getLastCursor().skipLeadingWhitespace()

    if @insertedText?
      # We'll have captured the inserted newline, but we want to do that
      # over again by hand, or differing indentations will be wrong.
      @insertedText = @insertedText.trimLeft()
      super
    else
      @vimState.activate('insert')
