dictionary - remove - webstorm spell checker

How to create a shared editable dictionary for Intellij Idea spellchecking? (2)

As a Git specific alternative to suggestion by Mark Vedder:

Depending on your situation, you might want to add the following or similar to your .gitignore file to keep the per developer dictionary files in the central git repo:

# Exclude IntelliJ files, they will be recreated from the build files.
# But keep dictionaries to have less false positives in spellcheck inspection.

It is required to have a dictionary for Intellij Idea spellchecking, that meets the following requirements:

  1. May be shared by VCS, so all developers can use it
  2. Every developer should be able to edit it easily

As far as I know, where are 2 types of dictionaries in Idea:

  1. One user dictionary, named "%username%.xml" (Settings-->Spelling-->Accepted Words)
  2. Number of custom dictionaries, "*.dic" (Settings-->Spelling-->Dictionaries)

But none of them meets the requirements.

User dictionary is easy to edit (Alt+Enter "Save ... to dictionary") and can be added to VCS, but it has a predefined user name, so it's impossible to share (e.g. developer A shared his A.xml, but developer B can't use it, because his Idea project only works with B.xml)

Custom dictionary has no problems with sharing, but it should be edited manually and it needs to reestart Idea to apply changes (e.g. make it see new words)

I've not found a plugin to solve that problem or any similar question, which makes me think that nobody needs such dictionary or the answer is too obvious.

So, is there any way to do it?

In addition to @Yole's answer, you might also want to consider using option 2 (as listed in your question) along with option 1. A good strategy I've seen used is to use the system dictionaries (of option 2) for words common across all/most projects in your domain. Create a VCS project for just the dictionary file(s) and commit them. Have your developers check-out/clone that VCS project/repo on their PCs. Then set those dictionaries in their default settings (File > Other Settings > Default Settings) so they will be present for all new projects. Then have the developers set up a scheduled script (either via a cron job or Windows task scheduler) to regularly update those dictionaries. Developers will need to restart IDEA occasionally to get any new versions. But once those 'domain' word files get established, they will not change too frequently. And it saves you from having to add routine words to the project level dictionary.

Then use the project dictionary for project specific words.

When a new unknown word is encountered, developers can add it to the poject dictionary via Alt+Enter. If it's a word that is likely to occur across all projects (say the name of a company your company merged with or the name of a new library you will use a lot), they can take a moment and add it to the "all projects" dictionary and commit/push it.

Finally you may want to vote/watch these feature requests:

  • IDEA-26854 Spelling: doesn't reload changes .dic files
  • IDEA-121886 Improve ability to handle multiple spelling dictionaries