typora / typora-issues

Bugs, suggestions or free discussions about the minimal markdown editor — Typora
https://typora.io
1.53k stars 58 forks source link

Learned words saving, but not being used, and gets overwritten #5146

Closed baardev closed 2 years ago

baardev commented 2 years ago

Licensed version of Typora 1.1.5 on Arch/Manjaro

When I add a word with "Learn Spelling" I can see it appear in .config/Typora/typora-dictionaries/user-dict.json, but when I close and open the doc, those same words appear underlined in red.

Spellcheck is turned on and defaults to "English (US)" My test file is "test.md" that consistd of one word "klipklop", and this is my user-dict.json

{"en-US":["klipklop"]}

These are all the files in .config/Typora/typora-dictionaries

en_US.aff en_US.dic en-US-LICENSE user-dict.json

Additionally, when I add a new word on a newly opened doc, it overwrites the previous dictionary and looks like

"en-US":["tholon"]}

wovano commented 2 years ago

Same problem here, using Typora for Windows (x64). The location of my user dictionary is %APPDATA%\Typora\typora-dictionaries\user-dict.json (default). The file gets overwritten everytime, so previously learned words are lost.

baardev commented 2 years ago

Just to add some info... I created a user_dict.json in .config/Typora/typora-dictionaries with one word in it. Copied that dict to a backup file, opened Typora, but that one word was still marked as misspelled. Learned that word, which overwrote the user_dict.json. diffed user_dict.json with the backup file and they were identical. So, how is it that Typora doesn't read the user_dict.json when it loads?

For those who are desperate for a spellcheck work around... create a new user_dict.txt file and select the Typora dictionaries then use hunspell command line to spellcheck (the user_dict.txt can easily be converted to a user_dict.json when this issue is resolved):

export DICPATH=/home/user/.config/Typora/typora-dictionaries 
hunspell -p /home/user/.config/Typora/typora-dictionaries/user-dict.txt filename.txt

Mispelled words will no longer appear as misspelled in Typora, but new words not in the default dict will still appear as misspelled.

Unfortunately, adding these new words to the hunspell dictionary with echo "newword\n#" | hunspell -a does nothing for Typora

baardev commented 2 years ago

I know someone is seeing this post as it was tagged, but no reply, at all? Is this a problem that is being looked at? Is there any plan to address it? Is this issue at the bottom of the pile, or even on the pile at all? I see this and related issues going back years, so it seems like this will not get fixed soon. I love Typora, which is why I paid for it, but this problem is going to make using it more trouble than its worth. Even if the problem isn't fixed 100%, can there at least be a tweak that would allow a workaround, like having Typora read the content of the user_dict.json when it loads?

Thank you

baardev commented 2 years ago

1.3.0-dev seems to have fixed everything! A million thanks for attending to this.

abnerlee commented 2 years ago

fixed in 1.3.6