Can't get my Scrivener to learn certain words on Macbook Pro

macOS’s dictionary is a text file, and can be found at:

~/Library/Spelling/LocalDictionary

2 Likes

Yes, you could even add words to that file with a simple text editor (though you might need to restart programs to see those changes take effect). But outside of cases like adding hundreds of words at a time, in most cases, I think the above described approach of using the spell check window will be easiest to work with, and does not suffer the oddities with inline markings that we’ve been seeing in more recent versions of macOS.

Hopefully this next update clears things up, but I worry that them adding even more complexity on top of the text editor isn’t going to help (the LLM stuff).

1 Like

When there’s a word or spelling that I want to add to the dictionary, I used to be able to right click the word and choose “learn.” And while that does happen occasionally still, most of the time I get a menu that doesn’t include the option. Instead I have to scroll down to spelling and start the spelling/grammar engine, open it, and choose from the popup.

Why has this behavior changed, and is there a way to get back to the old behavior? I’d like “learn” to be available always when I right click a word.

I’ve been using Scrivener for over a decade and I continue to have an odd problem. There are certain words that are not in my Scrivener dictionary, and are highlighted as misspelled, but when I right-click to add or ignore the spelling, the menu doesn’t give me an option to do either.

This has continued to happen more and more over the years, and it seems to be happening at random. My version of scrivener is completely updated, so I don’t understand what is preventing me from making this simple update.

TIA!

Mac Scrivener depends on Mac OS for spellchecking. The first thing to check would be to see if you can add the word(s) from TextEdit.

1 Like

It seems that Scrivener will not accept learned words with apostrophe’s as correct, as in T’chck. It will offer to learn them and add it to the dictionary, but will still consider the word as spelled wrong. The added words are handled fine by TextEdit, and the word is contained in the Apple dictionary as well.

The new location for the dictionary is:
~/Library/Group Containers/group.com.apple.AppleSpell/Library/Spelling/LocalDictionary

I haven’t been able to find a workaround for this.

Secondly (and weirdly), Scrivener seems to have a memory of words that were learned at one point but aren’t anymore. That is, the word will be underlined but the contextual menu will offer to “unlearn.” This does nothing except change the modification date of the above LocalDictionary file (which hadn’t contained the word in the first place). After this, Scrivener will still underline the word but not offer to learn or ignore.

The remembered words aren’t in the old LocalDictionary files that were in ~/Library/Spelling either.

I discovered this by opening a file I hadn’t looked at in a few years, or on this computer at all.

I can get around this by editing the LocalDictionary file directly or telling TextEdit to add it to the dictionary, at which point Scrivener will accept the word again.

Retype the words with an apostrophe in Synopsis and let it learn the word there.
Synopsis is plain text, whereas the rest of Scrivener is RTF.
In Synopsis, you need to highlight the whole word to add it to a customised dictionary, else it ignores your effort.

Indeed, in synopsis Scrivener see’s the words as correct without doing anything. The words in question are already in the system’s LocalDictionary file. Doesn’t help with regular writing, unfortunately.

Do you use smart quotes or straight quotes in the Editor? With smart quotes, the apostrophe is actually a different glyph, and it’s possible that’s confusing the spellchecker. (Which, to be clear, would be a bug, but at least you’d have an explanation.)

1 Like

Okay. It’s how we fix it in Windows, not in Mac it seems.

That was it, thank you! Apple spellcheck automatically converts the smart quotes to plain quotes when it stores it in the LocalDictionary. Learning a word in TextEdit does the same thing.

However, if I insert the word with the smart single quote into the LocalDictionary file directly, Scrivener accepts the word happily.

:grinning:

What should happen – but apparently doesn’t – is that the spellcheck engine should convert to straight quotes before checking the word.

1 Like