     return diffChunks
 
   # highlights the word differences between lines
-  highlightWordDiff: (SplitDiffCompute, chunks) ->
-    leftColor = @getConfig('leftEditorColor')
-    rightColor = @getConfig('rightEditorColor')
+  _highlightWordDiff: (SplitDiffCompute, chunks) ->
+    leftColor = @_getConfig('leftEditorColor')
+    rightColor = @_getConfig('rightEditorColor')
     for c in chunks
       # make sure this chunk matches to another
       if c.newLineStart? && c.oldLineStart?

      theOutput = err
    exit = (code) =>
      if code == 0
        @resumeUpdateDiff(SplitDiffCompute, editors, computedDiff)
      else
        console.log('BufferedNodeProcess code was ' + code)
        console.log(theOutput)
    process = new BufferedNodeProcess({command, args, stdout, stderr, exit})
    # --- kick off background process to compute diff ---

  resumeUpdateDiff: (SplitDiffCompute, editors, computedDiff) ->
    @linkedDiffChunks = @evaluateDiffOrder(computedDiff.chunks)

    @displayDiff(editors, computedDiff)

    @isWordDiffEnabled = @getConfig('diffWords')
    if @isWordDiffEnabled
      @highlightWordDiff(SplitDiffCompute, @linkedDiffChunks)

    syncHorizontalScroll = @getConfig('syncHorizontalScroll')
    @syncScroll = new SyncScroll(editors.editor1, editors.editor2, syncHorizontalScroll)
    @syncScroll.syncPositions()

  # called by "Disable" command
  # removes diff and sync scroll, disposes of subscriptions
  disable: (displayMsg) ->
    @isEnabled = false

    if @editorSubscriptions?
      @editorSubscriptions.dispose()
      @editorSubscriptions = null

    if @diffViewEditor1?
      if @wasEditor1SoftWrapped
        @diffViewEditor1.enableSoftWrap()
      if @wasEditor1Created
        @diffViewEditor1.cleanUp()

    if @diffViewEditor2?
      if @wasEditor2SoftWrapped
        @diffViewEditor2.enableSoftWrap()
      if @wasEditor2Created
        @diffViewEditor2.cleanUp()

    @clearDiff()

    @diffChunkPointer = 0
    @isFirstChunkSelect = true
    @wasEditor1SoftWrapped = false
    @wasEditor1Created = false
    @wasEditor2SoftWrapped = false
    @wasEditor2Created = false
    @hasGitRepo = false

    if displayMsg
      atom.notifications.addInfo('Split Diff Disabled', {dismissable: false})

  # called by "Move to next diff" command
  nextDiff: ->
    if !@isFirstChunkSelect
      @diffChunkPointer++
      if @diffChunkPointer >= @linkedDiffChunks.length
        @diffChunkPointer = 0
    else
      @isFirstChunkSelect = false

    @selectDiffs(@linkedDiffChunks[@diffChunkPointer])

  # called by "Move to previous diff" command
  prevDiff: ->
    if !@isFirstChunkSelect
      @diffChunkPointer--
      if @diffChunkPointer < 0
        @diffChunkPointer = @linkedDiffChunks.length - 1
    else
      @isFirstChunkSelect = false

    @selectDiffs(@linkedDiffChunks[@diffChunkPointer])

  selectDiffs: (diffChunk) ->
    if diffChunk? && @diffViewEditor1? && @diffViewEditor2?
      @diffViewEditor1.deselectAllLines()
      @diffViewEditor2.deselectAllLines()

          else
            @diffViewEditor1.setWordHighlights(c.oldLineStart + i, [{changed: true, value: @diffViewEditor1.getLineText(c.oldLineStart + i)}], 'removed', @isWhitespaceIgnored)


  _getConfig: (config) ->
    atom.config.get("split-diff.#{config}")

  _setConfig: (config, value) ->
    atom.config.set("split-diff.#{config}", value)
