typos-vscode
Source code spell checker for Visual Studio Code and LSP clients
typos is a low false-positive source code spell checker. This project exposes typos
via a Language Server Protocol (LSP) server and Visual Studio Code extension to provide a fast, low memory, in-editor spell checker.
Install
- Vscode: Install Typos spell checker from the VSCode Marketplace.
- Other clients: Download
typos-lsp
from the releases page. - Neovim: for a LSP config see neovim/nvim-lspconfig.
Features
Usage
Once installed typos
will automatically execute when you open or edit any file.
To disable typos
per workspace, see disable this extension.
Config file support
Supports config fields in typos.toml
, _typos.toml
, or .typos.toml
, except:
files.ignore*
- have no effect.default.check-filename
- file names are never spell checked.default.check-file
- files are always checked.*.binary
- binary files are always checked.
Config files will be read from the workspace folder or its parents. If there is no workspace folder, then no config file will be read and the typos defaults will be used.
Settings
This extension contributes the following settings:
typos.config
: Custom config. Used together with any workspace config files, taking precedence for settings declared in both. Equivalent to the typos--config
cli argument.typos.diagnosticSeverity
: How typos are rendered in the editor, eg: as errors, warnings, information, or hints.typos.logLevel
: Logging level of the language server. Logs appear in the Output -> Typos pane.typos.path
: Path to thetypos-lsp
binary. If empty the bundled binary will be used.typos.trace.server
: Traces the communication between VS Code and the language server. Recommended for debugging only.
Commands
Command | Description |
---|---|
Typos: Restart | Restart the server. |
Caveats
- File names are not spell checked.
- Server must be restarted after changing the config files (ie: typos.toml).
Why aren't my misspellings being corrected?
To minimise false-positives typos
only suggests corrections for known misspellings, rather than unknown words like a traditional spell-checker. For more info see Why was ... not corrected?.