Learn / ignore spelling [storage, and how to sync learned words]

Good evening everyone.

When doing learn or ignore spelling when are those words stored?

At the project level, whole Scrivener level or what?

Does that personalization sync across different macs?

Thank you.

I’ve always understood that Scrivener uses the system spellchecker. So I imagine any learned or ignored words will be stored on the computer. Probably in the Library folder somewhere.

Thank you. So if you «teach» a word into a project of yours on a certain mac, then, if you open the same synced project on another mac of yours, it will arise it as a spell error. I guess it would be better to have a dictionary related to the project.

Thank you.

For many years I have used Typinator as a utility to help with spelling related issues. I know there are certain errors I make all the time, such as transposing the h and the e in “the”, but Typinator corrects it for me automatically. I also have it set up so that certain words that occur frequently in my writing, and are a pain to type out (such as “psychodynamic”) are set up as abbreviations (such as jjpsyd) that get expanded to the full word. These expansions and corrections are synched to my two Macs using Dropbox. And, of course, they work in any program I use, not just Scrivener.

Learn Spelling adds word to the text file:

~/Library/Spelling/LocalDictionary

Ignore Spelling will temporarily ignore the misspelled word for that session, in all documents throughout the project.

Learn Spelling adds to the user file above, so if affects all apps using the system spellchecker.

No – unlike user preferences.

It would be very nice to have project-specific dictionaries.

Thank you. Maybe we could sync that dictionary file with Dropbox and symbolic links. Even so a project level dic would be great.

As for typinator, yes I do use text expansion a lot, I have textexpander.

Thank you.

This, BTW, is the reason that has been given for why there are no project-specific dictionary files and are not likely to be any time soon – the spell check functionality is built in to MacOS. Scrivener merely uses the function as presented by the system, with additional controls to spellcheck (or not) across all Scrivener, or by project. Since MacOS provides no facility to create custom dictionaries at any level more granular than per-user, Scrivener cannot do so without bypassing and rewriting the whole spellcheck codebase.

1 Like

I do this for all my Scrivener folders and files, though I use iCloud.

(Not everyone understands or even knows about symlinks, so usually I don’t mention them.)
Screenshot 2020-06-15 at 18.40.00.png

Hello all.

Does Scrivener have a dictionary where I can add custom words to it? I mean if I’m using Scrivener on my laptop and I add 20 or 30 learned words and then I want to continue using Scrivener on the desktop. Is there a way I can save learned words so that it’s shared between devices or is that not possible?

Thanks.

Scrivener uses Apple’s macOS Dictionary. I did a quick search with Google on “share apple dictionary across devices” and found what looks to be good instructions. I have not tried as I no longer have multiple devices. Try and please report back.

1 Like

I’ve merged your post into an already existing thread on the same topic, which contains some tips you might find useful.

Do note however that Apple keeps moving the file around, so you might have to look up where it actually is, in order to sync it properly. As of last year, this is where I found it.

3 Likes

Thank you for merging the post here.

I followed the link where you mentioned you found the file. Now that I have found it in the library, how do I actually move it over to Dropbox or iCloud etc. What are the steps to be able to move the Localdictionary file to a place where I can get it to sync? Can anybody help?

Thank you.

You don’t want to ultimately move it, because then it will essentially reset your learned word list system-wide. The Mac needs that file where it is and that’s the only place it will ever look for it.

If you are using a sync service that does not allow you to sync whatever files you want, wherever they might be, then unfortunately I cannot think of any way of making this work in 2025. The main issue is how Apple doesn’t respect either symbolic or hard links on this file.

  • The spell check system itself cannot properly write file changes through a standard symbolic link. It will just fail. So if you link the LocalDictionary file from the OS’s expected location, to your cloud sync folder, it refuses to write updates to it.
  • If you instead try to use a hard link, physically displaying the same disk data in two different places of the file system, the spelling engine will not care. It will take the current file’s data, update it with the new word, delete the original file and then write a whole new file on top of it, breaking the hard link (this is incidentally why symbolic links usually have to point at the sync folder, not the other way around, because sync services tend to delete-and-write).

But, again if you do use a sync service that gives you more freedom, you can just sync this Library subfolder folder directly between systems.