/ltex-ls

LTeX Language Server: LSP language server for LanguageTool :mag::heavy_check_mark: with support for LaTeX :mortar_board:, Markdown :pencil:, and others

Primary LanguageKotlinMozilla Public License 2.0MPL-2.0

LTEX LS — LTEX Language Server

version numberrelease date

vscode-ltex  CI status  stars  open issues closed issues
ltex-ls  CI status  coverage  stars  open issues closed issues

LTEX LS (LTEX Language Server) implements a language server according to the Language Server Protocol (LSP) and provides grammar and spelling errors in markup documents (LATEX, Markdown, etc.). The documents are checked with LanguageTool.

Typically, you start the language server (either locally or remotely), you send the language server your LATEX or Markdown document, and it will respond with a list of the grammar and spelling errors in it. To use LTEX LS in this way, you have to use a language client (usually an editor or an extension of the editor) that communicates with LTEX LS according to the LSP.

However, it is also possible to supply LTEX LS paths to files and directories to be checked as command-line arguments. In this mode, LTEX LS will print the results to standard output, and no language client is necessary.

The reference language client of LTEX LS is the LTEX extension for Visual Studio Code (vscode-ltex), whose development LTEX LS follows closely and vice versa.

Find more information (how to install, how to use, etc.) at the website of LTEX.

Features

  • Supported markup languages: BibTEX, ConTEXt, Git commit messages, LATEX, Markdown, Org, Quarto, reStructuredText, R Markdown, 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.
  • Replacement suggestions via quick fixes
  • Completion support for English and German
  • User dictionaries
  • Multilingual support with babel commands or magic comments
  • Possibility to use external LanguageTool servers
  • Extensive documentation