Grammar/spell checker using LanguageTool with support for LaTeX, Markdown, and others
npm install coc-ltex![latest release!version number!release date][website]
![installs][website]
![rating][marketplace]



 \




 
LTEX provides offline grammar checking of various markup languages in Vim/Neovim using LanguageTool (LT) and coc.nvim. LTEX currently supports BibTEX, ConTEXt, LATEX, Markdown, Org, reStructuredText, R Sweave, and XHTML documents. In addition, LTEX can check comments in many popular programming languages (optional, opt-in).
The difference to regular spell checkers is that LTEX not only detects spelling errors, but also many grammar and stylistic errors such as:
- This is an mistake.
- The bananas is tasty.
- We look forward to welcome you.
- Are human beings any different than animals?
A classic use case of LTEX is checking scientific LATEX papers, but why not check your next blog post, book chapter, or long e-mail before you send it to someone else?
[Find more information and documentation about LTEX on the official website.][website]
LTEX is a successor (since it's a fork) of the abandoned LanguageTool for Visual Studio Code extension by Adam Voss†.
!Grammar/Spell Checker for VS Code with LanguageTool and LaTeX Support
- Supported markup languages: BibTEX, ConTEXt, LATEX, Markdown, Org, reStructuredText, R Sweave, XHTML
- Comment checking in many popular programming languages (optional, opt-in)
- Comes with everything included, no need to install Java or LanguageTool
- Offline checking: Does not upload anything to the internet
- Supports over 20 languages: English, French, German, Dutch, Chinese, Russian, etc.
- Issue highlighting with hover description
- Replacement suggestions via quick fixes
- User dictionaries
- Multilingual support with babel commands or magic comments
- Possibility to use external LanguageTool servers
- [Extensive documentation][website]
- 64-bit Linux, Mac, or Windows operating system
- Node.js 14.16.0 or later
- Vim or Neovim with coc.nvim 0.0.80 or newer
1. Install the requirements listed above
2. Install coc-ltex by running :CocInstall coc-ltex
3. If you want to check LaTeX documents: Add let g:coc_filetype_map = {'tex': 'latex'} to ~/.vimrc (Vim) or ~/.config/nvim/init.vim (workaround for #425, until neoclide/coc.nvim#3433 is released)
4. Open a LaTeX or a Markdown document
5. Wait until ltex-ls has been downloaded and started
6. Grammar/spelling errors will be displayed! (if there are any)
- General Information
- Overview
- Installation & Usage
- Via Editor Extensions
- Official Extensions
- Third-Party Extensions
- Via Language Clients
- Via Command Line
- Supported Languages
- Code Languages
- Markup Languages
- Programming Languages
- Natural Languages
- Advanced Usage
- Magic Comments
- Multilingual LATEX Documents with the babel Package
- Set Language in Markdown with YAML Front Matter
- Hiding False Positives with Regular Expressions
- LanguageTool HTTP Servers
- Settings
- ltex.enabled
- ltex.language
- ltex.dictionary
- ltex.disabledRules
- ltex.enabledRules
- ltex.hiddenFalsePositives
- ltex.bibtex.fields
- ltex.latex.commands
- ltex.latex.environments
- ltex.markdown.nodes
- ltex.configurationTarget
- ltex.additionalRules.enablePickyRules
- ltex.additionalRules.motherTongue
- ltex.additionalRules.languageModel
- ltex.additionalRules.neuralNetworkModel
- ltex.additionalRules.word2VecModel
- ltex.languageToolHttpServerUri
- ltex.languageToolOrg.username
- ltex.languageToolOrg.apiKey
- ltex.ltex-ls.path
- ltex.ltex-ls.logLevel
- ltex.java.path
- ltex.java.initialHeapSize
- ltex.java.maximumHeapSize
- ltex.sentenceCacheSize
- ltex.completionEnabled
- ltex.diagnosticSeverity
- ltex.checkFrequency
- ltex.clearDiagnosticsWhenClosingFile
- ltex.statusBarItem
- ltex.trace.server
- FAQ
- General Questions
- What's the difference between vscode-ltex, ltex-ls, and LanguageTool?
- Why does LTEX have such a high CPU load?
- How can I check multiple languages at once?
- Why does LTEX check in a different language than expected?
- How can I fix multiple spelling errors at the same time?
- How can I prevent \text{...} in math mode from producing false positives?
- What does LTEX stand for?
- Where can I ask a question that's not answered here?
- Questions about vscode-ltex
- How can I prevent vscode-ltex from redownloading ltex-ls after every update?
- Where does vscode-ltex save its settings (e.g., dictionary, false positives)?
- How can I map the Use '...' quick fix to a keyboard shortcut in VS Code?
- Code of Conduct
- Our Pledge
- Our Standards
- Enforcement Responsibilities
- Scope
- Enforcement
- Enforcement Guidelines
- 1. Correction
- 2. Warning
- 3. Temporary Ban
- 4. Permanent Ban
- Attribution
- vscode-ltex / coc-ltex
- Installation & Usage (vscode-ltex)
- Download Providers
- Requirements
- How to Install and Use
- Offline Installation
- First Alternative: Download the Offline Version of LTEX
- Second Alternative: Download ltex-ls/Java Manually
- Installation & Usage (coc-ltex)
- Download Providers
- Requirements
- How to Install and Use
- Setting Scopes & Files
- Multi-Scope Settings
- External Setting Files
- Commands
- LTeX: Activate Extension
- LTeX: Check Selection
- LTeX: Check Current Document
- LTeX: Check All Documents in Workspace
- LTeX: Clear Diagnostics in Current Document
- LTeX: Clear All Diagnostics
- LTeX: Show Status Information
- LTeX: Reset and Restart
- LTeX: Report Bug in LTeX
- LTeX: Request Feature for LTeX
- Changelog
- Contributing
- Ways of Contribution
- How to Report Bugs
- Known Issues and Limitations
- How to Request Features
- How to Set Up the Project
- How to Contribute Code
- How to Test Pre-Releases
- How to Edit the Documentation
- How to Translate the User Interface
- ltex-ls (LTEX LS)
- Installation
- Download Providers
- Requirements
- Installation
- Server Usage
- Startup
- Command-Line Arguments
- Exit Codes
- Checking Documents with the LSP
- Settings
- Quick Fixes
- Commands
- _ltex.addToDictionary (Client)
- _ltex.disableRules (Client)
- _ltex.hideFalsePositives (Client)
- _ltex.checkDocument (Server)
- _ltex.getServerStatus (Server)
- Custom LSP Extensions
- Custom Initialization Options
- Custom Requests and Notifications
- ltex/workspaceSpecificConfiguration (⮎)
- CLI Usage
- Startup
- Command-Line Arguments
- Exit Codes
- Changelog
- Contributing
- Ways of Contribution
- How to Report Bugs
- Known Issues and Limitations
- How to Request Features
- How to Set Up the Project
- How to Contribute Code
- How to Test Pre-Releases
- How to Edit the Documentation
- How to Translate the User Interface
[marketplace]: https://marketplace.visualstudio.com/items?itemName=valentjn.vscode-ltex
[website]: https://valentjn.github.io/ltex