Spellchecking
PyCharm checks the spelling of all your source code, including variable names, text in strings, comments, literals, and commit messages. For this purpose, PyCharm provides a dedicated Typo inspection which is enabled by default.
The Typo inspection detects and highlights words that are not included in any dictionary. You can either correct the spelling or save the word to the dictionary.
Correct a misspelled word
Place the caret at any word highlighted by the Typo inspection.
Click or press Alt+Enter to show the available intention actions.
Select one of the suggested fixes from the list.
In string literals and comments, only the spelling of this particular word at caret changes. For code elements, such as names of variables, functions, classes, and other symbols, the inspection also suggests changing all occurrences via the Rename refactoring.
Save a word to dictionary
If a detected typo is actually a valid word, you can add it to a user-defined dictionary that extends the built-in dictionaries.
Place the caret at a word highlighted by the Typo inspection.
Click or press Alt+Enter to show the available intention actions.
Select the Save to dictionary action to add the word to the user's dictionary and skip it in the future.
If you have added the word by mistake, press Ctrl+Z to remove it from the dictionary.
By default, PyCharm saves words to the global application-level dictionary. You can choose to save words to the project-level dictionary if the spelling is correct only for this particular project. For more information, refer to Select the default dictionary for saving words.
Find all spelling mistakes
The Typo inspection highlights typos in the current file. You can also run the inspection on your entire project or a set of files. For more information, refer to Run a single inspection.
In the main menu, go to
or press Ctrl+Alt+Shift+I.In the Enter inspection name popup, find and select the Typo inspection.
In the Run 'Typo' dialog, select the scope in which you want to run the inspection, and other options, such as a file mask filter. Then click OK.
PyCharm will run the Typo inspection on all files in the selected scope and show all found typos in a separate tab of the Problems tool window.
Configure the Typo inspection
By default, the Typo inspection checks all text, including code elements, string literals, and comments in all scopes.
Press Ctrl+Alt+S to open the IDE settings and then select
.Expand the Proofreading node and click Typo in the central pane.
In the right-hand pane, configure the Typo inspection:
- Severity
Specify the severity level and the scope in which to apply this level.
For example, if you want typos to stand out more, select Error or Warning to highlight typos similar to syntax errors or warnings in your code.
- Options
Specify the type of content to check:
Process code: check various code elements.
Process literals: check text inside string literals.
Process comments: check text inside comments.
Suppress the Typo inspection
Like with any other inspection, you can suppress the Typo inspection for specific files and code elements.
Place the caret at a word highlighted by the Typo inspection.
Click or press Alt+Enter to show the available intention actions.
On one of the suggested fixes, press the right arrow key or click and select Suppress for class or another relevant suppress action.
Depending on the language and code element, this adds a special annotation or comment that tells the editor to suppress the relevant inspection in the corresponding scope. For example, in case of Python, suppressing the Typo inspection for a class adds the following annotation before the class declaration:
This suppresses all spelling checks within the class scope.
For more information, refer to Suppress inspections.
Disable spellchecking
Press Ctrl+Alt+S to open the IDE settings and then select
.Clear the checkbox next to the Typo inspection.
Dictionaries
PyCharm includes bundled dictionaries for all configured languages. You cannot change them directly, but you can extend the spellchecker in other ways:
Save words to a built-in global or project dictionary.
Add plain-text files with the .dic extension that contain lists of words.
You can add Hunspell dictionaries, each of which consists of two files: the DIC file that contains a list of words with the applicable modification rules and the AFF file that lists prefixes and suffixes regulated by a specific modification rule. For example, en_GB.dic and en_GB.aff.
Configure the spellchecker dictionaries
Press Ctrl+Alt+S to open the IDE settings and then select
.Configure the list of custom dictionaries:
To add a new custom dictionary to the list, click or press Alt+Insert and specify the location of the required file.
To edit the contents of a custom dictionary in PyCharm, select it and click or press Enter. The corresponding file will open in a new editor tab.
To remove a custom dictionary from the list, select it and click or press Alt+Delete.
Select the default dictionary for saving words
By default, PyCharm saves words to the global application-level dictionary. You can choose to save words to the project-level dictionary if the spelling is correct only for this particular project.
Press Ctrl+Alt+S to open the IDE settings and then select
.Select either the built-in project-level or application-level dictionary or disable the option to prompt you every time you save a word.
Add accepted words manually
Press Ctrl+Alt+S to open the IDE settings and then select
.Add words to the Accepted words list. PyCharm adds manually accepted words to the project-level dictionary.
You can't add words that are already present in one of the dictionaries and mixed-case words, such as
CamelCase
andsnake_case
.
Share dictionaries
PyCharm stores the built-in project-level dictionary with other project-related files. This means that anyone working with the project has access to the words stored in this dictionary.
To share your application-level dictionary, use the bundled Settings Sync plugin.