anchor.diff:              | NotInsertMode, [ FindChar _; ] -> wait
               | NotInsertMode, [ Action _; FindChar _; ] -> wait
               | NormalMode, [ "g"; "g" ] -> [ run Move StartOfDocument ]
  +            | NormalMode, [ "g"; "d" ] -> [ run GoToDeclaration Nothing ]
               | NormalMode, [ "g" ] -> wait
               | NormalMode, [ "." ] -> [ run RepeatLastAction Nothing ]
               | NormalMode, [ ";" ] -> match state.findCharCommand with Some command -> [ command ] | None -> []
  
positive.code:             | JoinLines -> Vi.ViActions.Join editor
              | InsertLine Before -> MiscActions.InsertNewLineAtEnd editor
              | InsertLine After -> editor.Caret.Column <- 1; MiscActions.InsertNewLine editor; CaretMoveActions.Up editor
              | _ -> ()
  
          match command.commandType with
  
negative.code:     | BlockInsert
      | Change
      | Go
      | GoToDeclaration
      | SwitchMode of VimMode
      | Undo
      | Redo
  