         workspace.update()
 
   evalAllWeaveChunks: ->
-    {editor, mod, edpath} = @currentContext()
+    {editor, mod, edpath} = @_currentContext()
     atom.commands.dispatch atom.views.getView(editor), 'inline-results:clear-all'
     evalall({
               path: edpath

    client.import rpc: ['eval', 'evalall', 'evalrepl', 'evalshow'], msg: ['cd', 'clearLazy']

module.exports =
  currentContext: ->
    editor = atom.workspace.getActiveTextEditor()
    mod = modules.current() ? 'Main'
    edpath = client.editorPath(editor) || 'untitled-' + editor.getBuffer().id
    {editor, mod, edpath}

  eval: ({move, cell}={}) ->
    {editor, mod, edpath} = @currentContext()
    selector = if cell? then cells else blocks
    Promise.all selector.get(editor).map ({range, line, text, selection}) =>
      selector.moveNext editor, selection, range if move

    }

  gotoSymbol: (word, range) ->
    {editor, mod, edpath} = @_currentContext()
    {word, range} = words.getWord(editor) unless word? and range?
    if word.length == 0 || !isNaN(word) then return
    client.import("methods")({word: word, mod: mod}).then (symbols) =>
      @ink.goto.goto symbols unless symbols.error

  toggleDocs: (word, range) ->
    {editor, mod, edpath} = @_currentContext()
    {word, range} = words.getWord(editor) unless word? and range?
    if word.length == 0 || !isNaN(word) then return
    client.import("docs")({word: word, mod: mod}).then (result) =>
