anchor.diff:      let getCommand (repeat: int option) commandType textObject =
           Some { repeat=(match repeat with | Some r -> r | None -> 1); commandType=commandType; textObject=textObject }
   
  +    let wait = getCommand (Some 1) DoNothing Nothing
       member x.RunCommand command =
           let start, finish = VimHelpers.getRange textEditorData command.textObject
           match command.commandType with
           | Move -> x.Editor.CaretOffset <- finish
  +        | Delete -> 
  +            x.Editor.SetSelection(start, finish)
  +            ClipboardActions.Cut(textEditorData)
           | _ -> ()
   
       override x.Initialize() =
  
positive.code:         let action =
              match keyList with
              | [ Movement m ] -> getCommand multiplier Move m
              | [ Action action; 'd' ] -> getCommand multiplier action WholeLine
              | [ Action action; 't'; c ] -> getCommand multiplier action (ToCharInclusive c)
              | [ Action action; 'f'; c ] -> getCommand multiplier action (ToCharExclusive c)
              | _ -> None
  
          match multiplier, action with
          | _, Some action' ->
              MonoDevelop.Core.LoggingService.LogDebug (sprintf "%A" action')
              x.RunCommand action'
              keys.Clear()
              false
          | None, None -> base.KeyPress descriptor
          | _, _ -> false
  
negative.code:     | Select
      | Delete
      | Change
      | DoNothing
  
  //type Repeater =
  //    | Repeat of int
  
  type TextObject =
      | Character
  