anchor.diff:              let lead = selection.GetLeadOffset editor
               let anchor = selection.GetAnchorOffset editor
               Math.Min(lead, anchor), Math.Max(lead, anchor)
  +        | SelectionStart -> editor.Caret.Offset, vimState.visualStartOffset
           | _ -> editor.Caret.Offset, editor.Caret.Offset
   
   type XSVim() =
  
positive.code:         | "v" -> Some VisualMode
          | "<C-v>" -> Some VisualBlockMode
          | "V" -> Some VisualLineMode
          | _ -> None
  
      let (|Keys|_|) (keys:string) =
  
negative.code:                 topVisibleLine + ((editor.VAdjustment.PageSize / editor.LineHeight) |> int))
          bottomVisibleLine - topVisibleLine
  
      let getRange (vimState:VimState) (editor:TextEditorData) motion =
          let line = editor.GetLine editor.Caret.Line
          match motion with
          | Right -> 
  