   observeCursorPositionChange: ->
     @editor.onDidChangeCursorPosition (event) =>
       return if @isLocked()
+
       {oldBufferPosition, newBufferPosition, textChanged, cursor} = event
       return if textChanged or
         (not cursor.selection.isEmpty()) or


  # vim-mode-plus integration
  autoChangeModeForVimState: (vimState) ->
    @disposables.add @onDidMoveToPrompt -> vimState.activate('insert') unless vimState.isMode('insert')
    @disposables.add @onDidMoveToItemArea -> vimState.activate('normal') if vimState.isMode('insert')

        # Skip is not activeEditor, important to skip auto-refresh on direct-edit.
        @refresh(force: true) if isActiveEditor(@providerEditor)

      needToSyncToProviderEditor = (event) =>
        isActiveEditor(@providerEditor) and
          not event.textChanged and
          event.oldBufferPosition.row isnt event.newBufferPosition.row

      @disposables.add @providerEditor.onDidChangeCursorPosition (event) =>
        if needToSyncToProviderEditor(event)
          @syncToProviderEditor()

      @disposables.add @providerEditor.onDidDestroy(@destroy.bind(this))

