     return undefined unless @transaction
     return true
     window.trans = @transaction
-    console.log "set window.trans"
     typedSingleChars = (patch.oldText == "" && patch.newText != "" for patch in @transaction.patches)
     _.every(typedSingleChars)
 

  #
  # Returns nothing.
  execute: (count=1) ->
    # if we already have typed text, we've already been executed.

    @editor.beginTransaction()
    operator = new Delete(@editor, @vimState, allowEOL: true, selectOptions: {excludeWhitespace: true})
    operator.compose(@motion)
    operator.execute(count)
    return super if @typed
    @vimState.activateInsertMode(transactionStarted = true)
    @typed = true


  constructor: (@transaction) ->

  buildInsertText: ->
    return undefined unless @isJustTyping()
    typedCharacters = (patch.newText for patch in @transaction.patches)
    typedCharacters.join("")
