camelcase-aware dictionary-based spell detection in code
Detects misspelled words in code by splitting camelCase identifiers into constituent words and matching each against language-specific dictionaries, enabling detection of typos in variable names like 'getUserNme' without false positives on legitimate camelCase patterns. Uses offline dictionary matching rather than ML models, processing the current file in real-time as the developer types.
Unique: Implements camelCase-aware word splitting for identifier spell checking, treating 'getUserNme' as three words ('get', 'User', 'Nme') rather than a single unknown token, enabling detection of typos in naming conventions common to programming languages without flagging legitimate camelCase patterns as errors
vs alternatives: Outperforms generic spell checkers by understanding code-specific naming conventions (camelCase), whereas tools like Grammarly or native OS spell checkers would flag all camelCase identifiers as misspellings
multi-language dictionary support with add-on extensions
Provides spell checking in 40+ languages through a modular architecture where the core extension includes English (US) by default, and additional language dictionaries are installed as separate VS Code extensions. Each language add-on extends the base spell checker with language-specific dictionaries and rules, allowing developers to switch languages via the `cSpell.language` configuration setting.
Unique: Uses a modular extension architecture where language support is decoupled from the core spell checker, allowing users to install only the languages they need rather than bundling all dictionaries, reducing extension size and improving performance for monolingual projects
vs alternatives: More flexible than monolithic spell checkers that bundle all languages, but requires more manual setup than tools like Grammarly that auto-detect language context
custom dictionary configuration for project-specific terminology
Allows developers to define custom dictionaries at the project, workspace, or user level to whitelist domain-specific terms, acronyms, brand names, and technical jargon that would otherwise be flagged as misspellings. Custom dictionaries are stored in configuration files and merged with the base language dictionaries during spell checking, enabling teams to maintain a shared vocabulary of approved terms.
Unique: Enables project-level vocabulary management through configuration-driven custom dictionaries, allowing teams to version-control approved terminology alongside code rather than relying on individual spell checker settings or external glossaries
vs alternatives: More flexible than fixed dictionaries but less sophisticated than ML-based spell checkers that can infer context and learn domain terminology automatically
inline quick fix suggestions with one-click corrections
Integrates with VS Code's Quick Fix UI (lightbulb icon) to display spelling correction suggestions directly in the editor. When a misspelled word is detected, developers can position their cursor on the underlined word and press Ctrl+. (or Cmd+. on Mac) to open a dropdown menu of suggested corrections, then click to apply the fix with a single action. This integrates into the standard VS Code diagnostics and code action pipeline.
Unique: Leverages VS Code's native Quick Fix and code action infrastructure to provide spell checking corrections as first-class editor actions, integrating seamlessly with other linters and code actions rather than requiring a separate UI panel or command
vs alternatives: More integrated into the editor workflow than external spell checkers, but less powerful than IDE-native spell checkers that can batch-correct multiple errors or provide context-aware suggestions
real-time spell checking with inline diagnostics
Continuously monitors the currently open file in VS Code and displays misspelled words as inline squiggly underlines (red wavy lines) in real-time as the developer types. Diagnostics are published to VS Code's diagnostics pipeline and appear in the Problems panel, allowing developers to see all spelling errors in the current file at a glance. Spell checking runs asynchronously to avoid blocking the editor.
Unique: Implements asynchronous real-time spell checking that publishes diagnostics to VS Code's standard diagnostics pipeline, allowing spell checking to coexist with other linters and type checkers without blocking editor responsiveness
vs alternatives: More responsive than batch spell checking tools, but less comprehensive than project-wide spell checkers that can identify errors across multiple files and provide unified reporting
scope-aware spell checking for code comments, strings, and identifiers
Applies spell checking selectively to different code scopes: code comments (both single-line and multi-line), string literals, and identifiers (variable/function names). The spell checker distinguishes between these scopes and applies appropriate rules — for example, camelCase splitting is applied to identifiers but not to comments. This scope awareness reduces false positives by avoiding spell checking in contexts where misspellings are intentional or irrelevant.
Unique: Implements scope-aware spell checking that treats comments, strings, and identifiers as distinct contexts with different rules (e.g., camelCase splitting for identifiers but not comments), reducing false positives compared to naive spell checkers that treat all text equally
vs alternatives: More sophisticated than simple regex-based spell checkers that flag all unknown words, but less powerful than AST-based approaches that could provide even more precise scope detection
vs code settings integration with cspell configuration namespace
Integrates spell checker configuration into VS Code's standard settings system using the `cSpell.*` configuration namespace. Developers can configure spell checking behavior via VS Code's Settings UI, `settings.json` file, or workspace-level configuration files. Configuration options include language selection, custom dictionaries, and other spell checker parameters, allowing per-user, per-workspace, and per-project customization.
Unique: Leverages VS Code's native settings system and configuration hierarchy (user, workspace, folder) to provide multi-level spell checking configuration, allowing teams to define shared rules in workspace settings while allowing individual developers to override with user settings
vs alternatives: More integrated into VS Code than external spell checkers with separate configuration files, but less powerful than project-specific configuration files (like `.cspellrc.json`) that could be version-controlled and shared
dictionary-based word validation with offline lookup
Performs spell checking by comparing words against a pre-built dictionary loaded into memory at extension startup. The dictionary is stored as a compiled data structure (format unknown — likely a trie or hash set for O(1) lookup) and does not require network access. Validation is performed locally on the user's machine, ensuring privacy and fast response times. The extension does not use machine learning models or external APIs; it relies entirely on static dictionary matching.
Unique: Implements pure offline dictionary matching without ML models or external APIs. This is a deliberate design choice prioritizing privacy and performance over adaptive learning. The extension does not track user corrections or learn from usage patterns.
vs alternatives: Faster and more private than cloud-based spell checkers (e.g., Grammarly) because validation happens locally. No API calls or data transmission. Works offline without internet connectivity.
+2 more capabilities