AtomLinter / linter-spell-latex

Provider for Atom linter-spell package to enable LaTeX spell checking.
MIT License
8 stars 7 forks source link

TypeError: Cannot read property 'startsWith' of null #17

Closed oscarlevin closed 7 years ago

oscarlevin commented 7 years ago

Some point recently I added a case sensitive word to my latex dictionary. I suspect I had my cursor at the beginning of the word (before the first letter). Since then, whenever I try to spell check a latex document, I get the error titled "TypeError: Cannot read property 'startsWith' of null" The details are as follows:

TypeError: Cannot read property 'startsWith' of null at ConfigWordList.isWordMatch (/home/oscar/.atom/packages/linter-spell/node_modules/linter-spell-word-list/main.js:25:17) at /home/oscar/.atom/packages/linter-spell/node_modules/linter-spell-word-list/main.js:49:38 at arraySome (/home/oscar/.atom/packages/linter-spell-latex/node_modules/lodash/lodash.js:732:11) at Object.some (/home/oscar/.atom/packages/linter-spell-latex/node_modules/lodash/lodash.js:9848:14) at /home/oscar/.atom/packages/linter-spell/node_modules/linter-spell-word-list/main.js:49:13 at ConfigWordList.checkWord (/home/oscar/.atom/packages/linter-spell/node_modules/linter-spell-word-list/main.js:45:12) at Object.checkWord (/home/oscar/.atom/packages/linter-spell/node_modules/linter-spell-word-list/main.js:20:57) at /home/oscar/.atom/packages/linter-spell/lib/dictionary-manager.js:46:58 at arrayMap (/home/oscar/.atom/packages/linter-spell/node_modules/lodash/lodash.js:645:23) at Object.map (/home/oscar/.atom/packages/linter-spell/node_modules/lodash/lodash.js:9505:14) at checkMisspelling (/home/oscar/.atom/packages/linter-spell/lib/dictionary-manager.js:46:16) at arrayMap (/home/oscar/.atom/packages/linter-spell/node_modules/lodash/lodash.js:645:23) at Object.map (/home/oscar/.atom/packages/linter-spell/node_modules/lodash/lodash.js:9505:14) at /home/oscar/.atom/packages/linter-spell/lib/dictionary-manager.js:66:30 at process._tickCallback (internal/process/next_tick.js:103:7)

I am pretty sure I reproduced this an another machine, but then recovered by adding the same word to my dictionary again, this time with the cursor in the middle of the word. On my first machine though I don't know how to fix it because I do not remember the word that caused the problem, nor can I find my personal dictionary to manually edit the bad entry (if that is the issue).

yitzchak commented 7 years ago

It could be a blank line in your dictionary. Look for $HOME/.hunspell_default

oscarlevin commented 7 years ago

Unfortunately no such luck. I was using aspell, removed that dictionary, the problem persisted. I switched to hunspell with no dictionary, still got the error. I uninstalled linter, linter-spell, linter-spell-latex, and after reinstalling, still get the error. But only on latex or tex documents. If I switch to plain text, I get no error (but hundreds of misspellings, since it doesn't like any latex).

yitzchak commented 7 years ago

This should be fixed due to yitzchak/linter-spell#34