     inputLog.groupEnd()
 
   mutationIsExpected: (mutationSummary) ->
-    return unless @inputSummary
-    return true if @inputSummary.keyName is "return"
-    unhandledAddition = mutationSummary.textAdded? and mutationSummary.textAdded isnt @inputSummary.textAdded
-    unhandledDeletion = mutationSummary.textDeleted? and not @inputSummary.didDelete
-    not (unhandledAddition or unhandledDeletion)
+    switch
+      when not @inputSummary
+        false
+      when @inputSummary.keyName is "backspace" and @inputSummary.keyModifier is "meta"
+        false
+      when @inputSummary.keyName is "return"
+        true
+      else
+        unhandledAddition = mutationSummary.textAdded? and mutationSummary.textAdded isnt @inputSummary.textAdded
+        unhandledDeletion = mutationSummary.textDeleted? and not @inputSummary.didDelete
+        not (unhandledAddition or unhandledDeletion)
 
   # File verification
 

        @responder?.insertString("\n", updatePosition: false)
        @requestRender()

    alt:
      backspace: (event) ->
        @delegate?.inputControllerWillPerformTyping()

    shift:
      return: (event) ->
        @delegate?.inputControllerWillPerformTyping()

          event.preventDefault()
          @expandSelectionInDirection("forward")

    alt:
      backspace: (event) ->
        @delegate?.inputControllerWillPerformTyping()

    meta:
      backspace: (event) ->
        @delegate?.inputControllerWillPerformTyping()

  # Private

  deleteInDirection: (direction) ->
