wende / autocomplete-elixir

Intelligent Elixir autocompletion provider for Atom autocomplete-plus
MIT License
42 stars 11 forks source link

Uncaught TypeError: Cannot read property 'length' of undefined #97

Closed alexfilatov closed 6 years ago

alexfilatov commented 6 years ago

Atom: 1.19.0 x64 Electron: 1.6.9 OS: Mac OS X 10.12.5 Thrown From: autocomplete-elixir package 1.5.14

Stack Trace

Uncaught TypeError: Cannot read property 'length' of undefined

At /Users/alex/.dotfiles/atom/packages/autocomplete-elixir/lib/alchemide/doendmatcher.coffee:17

TypeError: Cannot read property 'length' of undefined
    at Object.module.exports.handleMatch (/packages/autocomplete-elixir/lib/alchemide/doendmatcher.coffee:17:35)
    at /packages/autocomplete-elixir/lib/autocomplete-elixir-client.coffee:21:23
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at TextEditor.module.exports.TextEditor.cursorMoved (/Applications/Atom.app/Contents/Resources/app/src/text-editor.js:2187:33)
    at Selection.module.exports.Selection.markerDidChange (/Applications/Atom.app/Contents/Resources/app/src/selection.js:920:27)
    at /Applications/Atom.app/Contents/Resources/app/src/selection.js:41:30
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at DisplayMarker.module.exports.DisplayMarker.notifyObservers (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/display-marker.js:248:33)
    at /Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/display-marker.js:53:32
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at Marker.module.exports.Marker.emitChangeEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/marker.js:424:26)
    at Marker.module.exports.Marker.update (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/marker.js:365:18)
    at MarkerLayer.module.exports.MarkerLayer.restoreFromSnapshot (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/marker-layer.js:282:24)
    at TextBuffer.module.exports.TextBuffer.restoreFromMarkerSnapshot (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:1516:85)
    at TextBuffer.module.exports.TextBuffer.revertToCheckpoint (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:950:20)
    at TextBuffer.module.exports.TextBuffer.transact (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:902:20)
    at TextEditor.module.exports.TextEditor.transact (/Applications/Atom.app/Contents/Resources/app/src/text-editor.js:1672:32)
    at TextEditor.module.exports.TextEditor.moveCursors (/Applications/Atom.app/Contents/Resources/app/src/text-editor.js:2173:25)
    at TextEditor.module.exports.TextEditor.setCursorScreenPosition (/Applications/Atom.app/Contents/Resources/app/src/text-editor.js:1968:25)
    at TextEditorComponent.didMouseDownOnContent (/Applications/Atom.app/Contents/Resources/app/src/text-editor-component.js:1717:25)

Commands

     -0:25.7.0 fuzzy-finder:toggle-file-finder (div.tool-panel.tree-view)
     -0:25.4.0 core:paste (input.hidden-input)
     -0:24.1.0 core:confirm (input.hidden-input)
     -0:22.8.0 core:move-right (input.hidden-input)
     -0:22.6.0 core:move-left (input.hidden-input)
     -0:22.5.0 core:move-right (input.hidden-input)
     -0:22.4.0 core:move-left (input.hidden-input)
     -0:21.9.0 core:move-right (input.hidden-input)
     -0:21.7.0 core:move-left (input.hidden-input)
     -0:21.6.0 core:move-right (input.hidden-input)
     -0:21.5.0 core:move-left (input.hidden-input)
  2x -0:20.8.0 core:move-right (input.hidden-input)
     -0:20.3.0 core:move-left (input.hidden-input)
     -0:20.2.0 core:move-right (input.hidden-input)

Non-Core Packages

atom-elixir 0.2.3 
autocomplete-elixir 1.5.14 
busy-signal 1.4.3 
dracula-syntax 2.0.5 
dracula-ui 0.6.0 
git-plus 7.9.3 
intentions 1.1.2 
language-elixir 0.19.0 
linter 2.2.0 
linter-elixirc 1.6.0 
linter-ui-default 1.6.3 
callmiy commented 6 years ago

Go to .../atom/packages/autocomplete-elixir/lib/alchemide/doendmatcher.coffee, find the line with this code: lastLineNo = editor.buffer.lines.length - 1 and change to lastLineNo = editor.buffer.getLines().length - 1.

Hope it helps.

yetti commented 6 years ago

@samba6 Thanks, this fixed it for me. 👍

niklasmoeller commented 6 years ago

Nice. Had that problem for quite some time now. Hope this gets fixed in the next version, too :)

andresilveirah commented 6 years ago

nice @samba6 thanks for taking the time to find the problem

webokeja commented 6 years ago

Thanks, this fixed it for me. 👍