Upcoming Fundamental Changes

  • New versions of LTEX released on or after January 14, 2022, will require VS Code 1.61.0 or later

13.1.0 — “The ConTEXt Paradigm” (November 28, 2021)

  • New: Add support for ConTEXt — ltex-ls#120
  • New: Add support for strikethrough as in GitHub Flavored Markdownltex-ls#123
  • New: Always check selected text when running LTeX: Check Selection, even non-comment parts of programs — #457
  • New: Add support for the minted package (LATEX) — #463
  • New: Add support for the Pandoc language variable lang in YAML front matter (Markdown) — #465
  • 🔧 Change: Update LTEX LS to 15.2.0

13.0.0 — “The Completion Setting Excitation” (October 30, 2021)

  • 🔧 Change: Add ltex.completionEnabled to disable completion by default — #443
  • 🐛 Bug fix: Fix StringIndexOutOfBoundsException in AnnotatedTextFragment.getSubstringOfPlainText#442
  • 🐛 Bug fix: Fix handling of multiple subsequent whitespace characters in XHTML (e.g., CRLF)
  • 🔧 Change: Update LTEX LS to 15.0.0

12.2.0 — “The Completion Hypothesis” (October 19, 2021)

  • 🔧 Change: Rename ltex.ltex-ls.languageToolHttpServerUriltex.languageToolHttpServerUri; the previous name is deprecated
  • 🔧 Change: Rename ltex.ltex-ls.languageToolOrgUsernameltex.languageToolOrg.username; the previous name is deprecated
  • 🔧 Change: Rename ltex.ltex-ls.languageToolOrgApiKeyltex.languageToolOrg.apiKey; the previous name is deprecated
  • New: Add completion support for English and German (begin typing a word and press Ctrl+Space) — #409
  • 🐛 Bug fix: Fix Add '...' to dictionary quick fix missing for Austrian and Swiss German — #431
  • 🔧 Change: Move documentation to https://valentjn.github.io/ltex
  • 🔧 Change: Update LTEX LS to 14.1.0

12.1.0 — “The coc.nvim Diffusion” (October 16, 2021)

  • New: Publish coc.nvim version as coc-ltex to npm

12.0.0 — “The Premium Emanation” (October 14, 2021)

  • 🔧 Change: Bundle Java with LTEX LS; Java is not downloaded separately anymore and bundled Java is used if ltex.java.path is not set
  • 🗑 Removal: Remove setting ltex.java.forceTrySystemWide
  • 🔧 Change: Update LanguageTool to 5.5 (see LT 5.5 release notes)
  • New: Add support for automatic language detection via language short code auto; language variants like en-US are not detected, only generic languages like en; this will result in spelling errors not being reported — ltex-ls#103
  • New: Provide ID of LanguageTool rule via diagnostics code, not as part of diagnostics message
  • New: Link diagnostics to LanguageTool website with more information
  • New: Add support for the main option of the babel package (LATEX) — #391
  • New: Add setting ltex.ltex-ls.languageToolOrgUsername to set username on languagetool.org for Premium API access — #398
  • New: Add setting ltex.ltex-ls.languageToolOrgApiKey to set API key on languagetool.org for Premium API access — #398
  • New: Add support for ltex.dictionary when using a LanguageTool HTTP server
  • 🔧 Change: Handle disabled rules ourselves to prevent reinitialization of LanguageTool when running the Disable rule quick fix — #390
  • 🐛 Bug fix: Fix LanguageTool reinitialized when running the Add '...' to dictionary quick fix — #390
  • 🐛 Bug fix: Fix wrong parsing of inline math formulas in Markdown when using dollar signs as delimiters and containing only one character (e.g., $a$)
  • 🐛 Bug fix: Fix used i18n keys removed in LTEX LS
  • 🐛 Bug fix: Fix fallback from German to English i18n in LTEX LS
  • New: Add support for coc.nvim (Vim/Neovim) — ltex-ls#103
  • 🔧 Change: Update bundled Java runtime to 11.0.12+7 (see list of OpenJDK fixes)
  • 🗑 Removal: Remove transition code for upgrading from LTEX 4.x
  • 🔧 Change: Update LTEX LS to 14.0.0

11.0.0 — “The Kotlin Conundrum” (August 11, 2021)

10.5.0 — “The XHTML Calculation” (July 12, 2021)

  • 🔧 Change: Update LanguageTool to 5.4 (see LT 5.4 release notes)
  • New: Add support for XHTML — #342
  • 🐛 Bug fix: Fix markup before actual grammar/spelling errors included in errors — #349
  • 🐛 Bug fix: Fix error when checking LATEX documents ending with specific commands — #341
  • New: Fix name of Portuguese babel language names, add support for Brazilian Portuguese babel language names — ltex-ls#72
  • 🗑 Removal: Remove unnecessary files from packaged extension (reduces size from 570 KB to 160 KB)
  • 🔧 Change: Update LTEX LS to 12.3.0

10.4.0 — “The Walkthrough Implementation” (June 12, 2021)

  • 🔧 Change: Enable LTEX in untrusted workspaces (introduced in VS Code 1.57.0)
  • New: Add walkthrough for VS Code’s Getting Started page (introduced in VS Code 1.57.0)

10.3.0 — “The Orphan Disintegration” (June 5, 2021)

  • 🔧 Change: Enable LTEX in Jupyter notebooks in VS Code Insiders (as soon as the native notebooks are released by VS Code, this will automatically work in regular VS Code)
  • New: Add support for \setplength (LATEX)
  • 🐛 Bug fix: Fix LTEX LS not closed when VS Code or workspace is closed — #325
  • 🔧 Change: Update LTEX LS to 12.2.0

10.2.0 — “The Long Document Reverberation” (May 1, 2021)

  • 🔧 Change: Show Use ... quick fixes before other quick fixes — #297
  • 🔧 Change: Limit number of Use ... quick fixes to 5 — #297
  • New: Add checking status to output of LTeX: Show Status Information
  • New: Add support for \phantom, \hphantom, and \vphantom (LATEX)
  • 🐛 Bug fix: Fix almost infinite loops when checking very long documents — #253
  • 🐛 Bug fix: Fix wrong underlining of words starting with markup — ltex-ls#69
  • 🔧 Change: Update bundled AdoptOpenJDK JRE to 11.0.11+9 (see list of OpenJDK fixes)
  • 🔧 Change: Update LTEX LS to 12.1.0

10.1.0 — “The Org Summation” (April 18, 2021)

  • New: Add support for Org — #277
  • New: Add basic support for reStructuredText — #32
  • New: Add LTeX: Reset and Restart command to reset the extension and restart LTEX LS (equivalent to reloading the VS Code window)
  • 🐛 Bug fix: Fix .Rnw not recognized for R Sweave documents when running LTeX: Check All Documents in Workspace
  • 🐛 Bug fix: Fix inconsistent titles of German commands
  • 🐛 Bug fix: Hide internal commands in table of keyboard shortcuts to prevent confusion — #282
  • 🔧 Change: Engineering: A running instance of LTEX LS, if it has been started with --server-type=tcpSocket, will be chosen over starting a new instance; this enables simultaneous debugging of vscode-ltex and ltex-ls
  • 🔧 Change: Update LTEX LS to 12.0.0

10.0.0 — “The Unicode Simulation” (April 5, 2021)

  • 🔧 Change: Update required version of VS Code (now 1.52.0 or newer)
  • 🔧 Change: Update LanguageTool to 5.3 (see LT 5.3 release notes)
  • New: Add LTeX: Activate Extension to activate the extension in case it has not been activated before
  • 🔧 Change: Automatically activate extension if one of the LTEX commands is executed
  • New: Enhance support of accents in LATEX by using Unicode combining diacritical marks, normalized via Unicode Normalization Form C#269
  • New: Add support for many accents in LATEX: double acute (e.g., \H{O}, Ő), line below (e.g., \b{h}, ẖ), dot below (e.g., \d{A}, Ạ), ogonek (e.g., \k{A}, Ą), breve (e.g., \u{A}, Ă), and caron (e.g., \v{C}, Č) — ltex-ls#56, ltex-ls#57, @ed359
  • New: Add support for special characters in LATEX: \L (Ł), \SS (ẞ), \i (ı), \j (ȷ), and \l (ł) — ltex-ls#56, ltex-ls#57, @ed359
  • New: Add FR_SPELLING_RULE as a rule for unknown words — ltex-ls#47, Nicolas Sicard (@biozic)
  • 🔧 Change: Use LATEX parser for documents with code language ID texltex-ls#53, ltex-ls#54, Lucas Alber (@LDAP)
  • 🔧 Change: Change type of ltex.additionalRules.motherTongue to enum to clarify possible values — #260
  • 🔧 Change: Update LSP4J to 0.12.0
  • 🔧 Change: Update LTEX LS to 11.0.0

9.0.0 — “The HTML Evaporation” (February 12, 2021)

  • 🗑 Removal: Remove support for settings that are deprecated since 8.0.0: ltex.workspaceDictionary, ltex.workspaceFolderDictionary, ltex.workspaceDisabledRules, ltex.workspaceFolderDisabledRules, ltex.workspaceEnabledRules, ltex.workspaceFolderEnabledRules, ltex.ignoreInRuleSentence, ltex.commands.ignore, ltex.commands.dummy, ltex.environments.ignore, ltex.markdown.ignore, and ltex.markdown.dummy
  • 🗑 Removal: Remove support for values for ltex.configurationTarget that are deprecated since 7.0.0 or 8.0.0: "global" (deprecated since 7.0.0), "addToDictionary", "disableRule", and "ignoreRuleInSentence"
  • New: Add support for magic comments inside HTML comments in Markdown (<!-- ltex: SETTINGS -->)
  • 🔧 Change: Check frame title in argument of LATEX Beamer frames — #239
  • New: Add LTeX: Check Selection to check text in documents with unsupported code languages
  • 🐛 Bug fix: Fix comment sign before babel commands not recognized — #245
  • 🐛 Bug fix: Fix removing items in settings with a hyphen prefix sometimes not working
  • 🐛 Bug fix: Fix space not added between two arguments of LATEX commands
  • 🐛 Bug fix: Fix manually checking BibTEX documents not working
  • 🐛 Bug fix: Fix words in dictionary containing markup not recognized
  • 🔧 Change: Update bundled AdoptOpenJDK JRE to 11.0.10+9 (see list of OpenJDK fixes)
  • 🔧 Change: Update LTEX LS to 10.0.0

8.4.0 — “The Math Optimization” (January 29, 2021)

  • New: Add support for Pandoc-style inline math ($...$) and display math ($$...$$ with $$ being at the beginning/end of a Markdown block) to Markdown parser — #210
  • 🐛 Bug fix: Fix false positives for words added by Add to dictionary for Slovak rule IDs MUZSKY_ROD_NEZIV_A, ZENSKY_ROD_A, and STREDNY_ROD_A#221
  • 🐛 Bug fix: Fix BibTEX field seealso not ignored, ignore category and parent#211
  • 🔧 Change: Disable UPPERCASE_SENTENCE_START in BibTEX files — #211
  • 🔧 Change: Move rule ID to the end of diagnostic messages as VS Code truncates the messages if the Problems panel is narrow — #233
  • 🐛 Bug fix: Fix regression that messages of possible spelling mistakes are not prepended with the respective unknown words — #161
  • 🐛 Bug fix: Fix crash when using \begin or \end without an argument — #236
  • 🔧 Change: Use Title Case for titles of commands
  • 🔧 Change: Update LTEX LS to 9.2.0

8.3.0 — “The BibTEX Experimentation” (January 24, 2021)

  • New: Add support for BibTEX files (language code bibtex) — #211
  • New: Add setting ltex.bibtex.fields to control which BibTEX fields should be checked
  • New: Add support for GitLab Flavored Markdown, especially inline math (e.g., $`E = mc^2`$) — #210
  • New: Add support for Markdown tables as in GitHub Flavored Markdown#218
  • New: Add support for more commands of the glossaries LATEX package
  • 🔧 Change: Enable Add to dictionary quick fix for Slovak rule IDs MUZSKY_ROD_NEZIV_A, ZENSKY_ROD_A, and STREDNY_ROD_A#221
  • 🗑 Removal: Remove superfluous spaces in messages of diagnostics
  • 🐛 Bug fix: Fix LTEX LS not starting if Java version string does not contain a minor version (e.g., "16") — #224
  • 🐛 Bug fix: Fix handling of \r\n (Windows) line terminators in Markdown
  • 🔧 Change: Use Flexmark’s YAML Front Matter extension to ignore YAML front matter in Markdown instead of own handling
  • 🐛 Bug fix: Fix documentation on the number of backslashes for ltex.latex.commands#232
  • 🔧 Change: Print Flexmark AST of Markdown documents to log when ltex.ltex-ls.logLevel is "finest"
  • 🔧 Change: Update LTEX LS to 9.1.0

8.2.1 — “The Accent Ramification” (January 13, 2021)

  • 🔧 Change: Ignore \pgfmathsetmacro, \setmainfont, and \theoremstyle
  • 🐛 Bug fix: Fix accent commands such as \O in math mode resulting in diagnostics — #216
  • 🔧 Change: Update issue labels when reporting bugs or requesting features
  • 🔧 Change: Update LTEX LS to 9.0.1

8.2.0 — “The Separation Displacement” (January 3, 2021)

  • 🔧 Change: Make versioning of LTEX LS independent of vscode-ltex; see the changelog of vscode-ltex to find out which version of LTEX LS a particular version of vscode-ltex uses
  • 🔧 Change: Update LanguageTool to 5.2 (see LT 5.2 release notes)
  • New: Add ltex.additionalRules.enablePickyRules to still be able to detect false friends after the update of LanguageTool (default: false)
  • 🔧 Change: Only check file types for which LTEX has been enabled when running LTeX: Check All Documents in Workspace#183
  • 🐛 Bug fix: Fix scope of ltex.hiddenFalsePositives (was application-scoped, is now resource-scoped)
  • 🔧 Change: Replace \dots with Unicode ellipsis &#x2026; instead of three dots ... to fix some false positives
  • 🔧 Change: Update LTEX LS to 9.0.0

8.1.1 — “The Action Postulate” (November 24, 2020)

  • 🔧 Change: Migrate from Travis CI to GitHub Actions
  • 🔧 Change: Update LTEX LS to 8.1.1

8.1.0 — “The Prepending Annihilation” (November 15, 2020)

  • 🔧 Change: Prepend messages of possible spelling mistakes with the respective unknown words — #161
  • New: Add support for optional arguments of \newtheorem
  • 🐛 Bug fix: Fix wrong position of diagnostics when using a recognized LATEX command with a non-recognized set of arguments due to an infinite loop — #167
  • 🔧 Change: Avoid misleading popup prompting to install Java on Mac, use ltex.java.forceTrySystemWide to force trying a system-wide Java installation — #162
  • 🔧 Change: Update bundled AdoptOpenJDK JRE to 11.0.9+11 (see list of OpenJDK fixes)
  • 🔧 Change: Update LSP4J to 0.10.0
  • 🔧 Change: Update LTEX LS to 8.1.0

8.0.0 — “The Setting Transformation” (November 1, 2020)

  • 🔧 Change: Upgrade from Java 8 to Java 11 (see announcement) — #39
  • New: Add workaround to eliminate the need for workspace-specific setting names; ltex.dictionary, ltex.disabledRules, and ltex.enabledRules can now be used in multiple setting scopes (user settings, workspace settings, and workspace folder settings) at the same time without overriding each other; instead, the settings of the different scopes will be properly merged (see documentation)
  • 🔧 Change: Rename ltex.workspaceDictionary, ltex.workspaceFolderDictionaryltex.dictionary
  • 🔧 Change: Rename ltex.workspaceDisabledRules, ltex.workspaceFolderDisabledRulesltex.disabledRules
  • 🔧 Change: Rename ltex.workspaceEnabledRules, ltex.workspaceFolderEnabledRulesltex.enabledRules
  • 🔧 Change: Rename ltex.ignoreInRuleSentenceltex.hiddenFalsePositives
  • 🔧 Change: Rename ltex.commands.ignore, ltex.commands.dummyltex.latex.commands
  • 🔧 Change: Rename ltex.environments.ignoreltex.latex.environments
  • 🔧 Change: Rename ltex.markdown.ignore, ltex.markdown.dummyltex.markdown.nodes
  • 🔧 Change: Change format of ltex.latex.commands, ltex.latex.environments, ltex.markdown.nodes to be objects (with key = command and value = action, e.g., "ignore", "dummy", etc.) instead of arrays
  • 🔧 Change: Rename addToDictionarydictionary in ltex.configurationTarget
  • 🔧 Change: Rename disableRuledisabledRules in ltex.configurationTarget
  • 🔧 Change: Rename ignoreRuleInSentencehiddenFalsePositives in ltex.configurationTarget
  • New: Add userExternalFile, workspaceExternalFile, and workspaceFolderExternalFile enumeration values to ltex.configurationTarget, which enables saving settings to external files (see documentation) — #144, #145
  • 🔧 Change: Change default of ltex.configurationTarget for dictionary, disabledRules, and hiddenFalsePositives to workspaceFolderExternalFile
  • New: Add ltex.statusBarItem to permanently display LTEX’s status in the status bar — #141
  • New: Add ltex.checkFrequency to control when LTEX checks documents — #142
  • New: Add LTeX: Show Status Information command to show information about the status of LTEX
  • New: Add support for \usepackage[LANGUAGE]{babel} if in the same file as the text to be checked — #140
  • New: Add support for more BibLATEX commands such as \autocite, \citeauthor, etc. — #143
  • New: Add support for overriding hard-coded command signatures — ltex-ls#27
  • New: Add verification for downloaded files (LTEX LS and Java)
  • 🔧 Change: Move handling of external setting files from ltex-ls to vscode-ltex
  • 🔧 Change: Better resolve relative paths to external setting files, either with respect to the .vscode directory of the workspace folder if any, the .vscode directory of the workspace if any, or the global storage directory of the extension (see documentation) — #146
  • 🔧 Change: Slightly change logo
  • 🔧 Change: Improve logging in case of problems with the initialization of ltex-ls
  • 🔧 Change: Increase duration before sentences expire in the result cache to 60 minutes
  • 🐛 Bug fix: Fix many settings changes cleared sentence cache, which led to performance issues, e.g., changing the ltex.enabled setting via magic comments — #134
  • 🗑 Removal: Remove dependency on org.apache.httpcomponents:httpclient by using the HTTP client that comes with Java 11 when connecting to an HTTP LanguageTool server
  • 🔧 Change: Update LTEX LS to 8.0.0

7.3.1 — “The Delay Correlation” (October 12, 2020)

  • 🐛 Bug fix: Fix delayed publication of diagnostics by adding workaround to guess the caret position
  • 🐛 Bug fix: Fix recheck being triggered when generating list of quick fixes; this should improve speed
  • 🐛 Bug fix: Fix comment in readme
  • 🔧 Change: Update LTEX LS to 7.3.1

7.3.0 — “The Debugging Formulation” (October 10, 2020)

  • New: Add support for \ell as well as \mathcal, \mathfrak, etc. to vowel detection — #131
  • New: Add setting ltex.ltex-ls.logLevel to control the verbosity of the server log of LTEX LS
  • New: Add command ltex.requestFeature to quickly request a new feature in LTEX via VS Code
  • New: Add button to set ltex.trace.server to "verbose" when reporting a bug
  • 🐛 Bug fix: Fix diagnostics sometimes not lined up with the text with switching back from incremental to full document updates; unfortunately, this disables the delayed publication of diagnostics at the caret position
  • 🔧 Change: Restructure and simplify internal quick fix and command structure, removing the need for pseudo-telemetry notifications
  • 🔧 Change: Update LTEX LS to 7.3.0

7.2.0 — “The LanguageTool Acquisition” (September 27, 2020)

  • 🔧 Change: Update LanguageTool to 5.1 (see LT 5.1 release notes)
  • New: Add support for HTML entities such as &auml; and &copy; in Markdown
  • 🐛 Bug fix: Fix missing tilde expansion for external dictionary files
  • 🔧 Change: Improve logging of LTEX LS
  • 🔧 Change: Update LTEX LS to 7.2.0

7.1.2 — “The Magic Configuration” (September 22, 2020)

  • 🐛 Bug fix: Fix performance issue with multiple languages in one document via magic comments due to LanguageTool being reinitialized on each keystroke — #124
  • 🔧 Change: Update LTEX LS to 7.1.2

7.1.1 — “The Relative Malfunction” (September 20, 2020)

  • 🐛 Bug fix: Fix NullPointerException when supplying relative paths to external dictionary files
  • 🐛 Bug fix: Fix German log messages
  • 🔧 Change: Update LTEX LS to 7.1.1

7.1.0 — “The External Accumulation” (September 20, 2020)

  • New: Add support for external dictionary files — #118
  • New: Add support for enabling/disabling LTEX only for specific file types via ltex.enabled#19
  • New: Add support for acro commands such as \DeclareAcronym and \ac#19
  • New: Add support for \addcontentsline#19
  • New: Add support for \printbibliography and \printglossary without argument
  • 🔧 Change: Ignore parenthesis arguments of textblocks — #19
  • 🐛 Bug fix: Fix optional argument of heading commands such as \section parsed incorrectly — #123
  • 🔧 Change: Include stack traces when logging exceptions
  • 🐛 Bug fix: Fix some links (bug reporter, offline installation, readme)
  • 🔧 Change: Update LTEX LS to 7.1.0

7.0.0 — “The Workspace Solution” (September 13, 2020)

  • 🔧 Change: Change scope of ltex.dictionary, ltex.disabledRules, and ltex.enabledRules to application; these are now user-specific settings that can only be configured in user settings
  • New: Add settings ltex.workspaceDictionary, ltex.workspaceDisabledRules, and ltex.workspaceEnabledRules with window scope to amend the corresponding user-specific settings; these are workspace-specific settings that should be configured in workspace settings
  • New: Add settings ltex.workspaceFolderDictionary, ltex.workspaceFolderDisabledRules, and ltex.workspaceFolderEnabledRules with resource scope to amend the corresponding user-specific and workspace-specific settings; these are workspace-folder-specific settings that should be configured in workspace folder settings
  • 🔧 Change: Change default of ltex.configurationTarget for addToDictionary to workspaceFolder, i.e., by default, words will now be added to the workspace-folder-specific settings instead of the user-specific settings
  • New: Rename "global" value for ltex.configurationTarget to "user" ("global" is still supported, but deprecated)
  • 🗑 Removal: Remove deprecated settings ltex.javaHome, ltex.performance.initialJavaHeapSize, ltex.performance.maximumJavaHeapSize, ltex.performance.sentenceCacheSize, ltex.*.dictionary, ltex.*.enabledRules, and ltex.*.disabledRules (deprecation since 5.0.0)
  • 🔧 Change: Update LanguageTool to 5.0.2 (see LT 5.0.2 release notes)
  • 🐛 Bug fix: Fix skipping of YAML front matter — #104
  • 🔧 Change: Update LTEX LS to 7.0.0

6.3.0 — “The Vowel Extraction” (August 22, 2020)

  • New: Add support for an article when before a formula starting with a vowel (e.g., an $n$-dimensional problem) — #92
  • New: Add support for ~/ and ~\ in settings — #99
  • 🐛 Bug fix: Fix links to documentation in various places (readme, changelog, error messages, etc.)
  • 🔧 Change: Update LTEX LS to 6.3.0

6.2.0 — “The Command Isotope” (August 7, 2020)

6.1.1 — “The Space Saturation” (July 26, 2020)

  • 🐛 Bug fix: Fix another problem with spaces in paths when using LTEX LS on Windows — #80
  • 🔧 Change: Update LTEX LS to 6.1.1

6.1.0 — “The babel Momentum” (July 26, 2020)

  • New: Download Java 11 if only Java 8 is installed; LTEX support for Java 8 will end on November 1, 2020 (see documentation) — #39
  • New: Add support for babel commands (see documentation) — #81
  • 🐛 Bug fix: Fix problems with spaces in paths when using LTEX LS on Windows — #80
  • 🔧 Change: Update bundled AdoptOpenJDK JRE to 11.0.8+10 (see list of OpenJDK fixes)
  • 🔧 Change: Update some NPM dependencies
  • 🔧 Change: Update LTEX LS to 6.1.0

6.0.2 — “The Startup Congruence” (July 11, 2020)

  • 🔧 Change: Make Windows startup script of LTEX LS (ltex-ls.bat) honor JAVA_HOME#75
  • 🔧 Change: Relicense vscode-ltex under the Mozilla Public License Version 2.0
  • 🔧 Change: Update some NPM dependencies
  • 🔧 Change: Update LTEX LS to 6.0.2

6.0.1 — “The Freeze Paradox” (July 2, 2020)

6.0.0 — “The Internationalization Proposition” (June 28, 2020)

  • 🔧 Change: Update LanguageTool to 5.0 (see LT 5.0 release notes)
  • New: Add support for internationalized user interface of LTEX
  • New: Add German translations for user interface of LTEX
  • 🔧 Change: Delay diagnostics at the current caret position (e.g., incomplete word or sentence) until the user has finished typing — #46
  • New: Add enabled to magic comments — #67
  • New: Add command LTeX: Report Bug in LTeX for reporting LTEX bugs from within VS Code
  • 🐛 Bug fix: Fix \todo couldn’t be ignored — #63
  • 🐛 Bug fix: Fix wrong language-dependent settings used for magic comments
  • 🐛 Bug fix: Fix add to dictionary and disable rule quick fixes using wrong language when used with magic comments
  • 🐛 Bug fix: Fix deprecation message for ltex.performance.maximumJavaHeapSize not shown
  • 🐛 Bug fix: Improve code quality of LTEX LS by fixing hundreds of Checkstyle, SpotBugs, and Checker Framework warnings
  • 🔧 Change: Migrate LTEX LS from Gradle to Maven
  • 🔧 Change: Update NPM dependencies
  • 🔧 Change: Update Maven dependencies
  • 🔧 Change: Update LTEX LS to 6.0.0

5.0.2 — “The Disabling Submergence” (June 18, 2020)

  • 🐛 Bug fix: Fix Disable rule quick fix using wrong setting structure — #61

5.0.1 — “The Acceptance Incursion” (June 7, 2020)

5.0.0 — “The Rewrite Materialization” (June 1, 2020)

  • New: Download LTEX LS on demand with all languages already included; this removes the need for language support extensions — #6
  • 🔧 Change: Download Java distribution on demand if no suitable Java installation has been found — #5
  • 🔧 Change: Adhere to Semantic Versioning 2.0.0. This means that the version of LTEX is not tied to the version of LanguageTool anymore, as the version of LanguageTool is not a semantic version. LTEX 5.0.0 uses LanguageTool 4.9.
  • 🔧 Change: Rename ltex.<LANGUAGE>.dictionaryltex.dictionary (object with <LANGUAGE> keys)
  • 🔧 Change: Rename ltex.<LANGUAGE>.disabledRulesltex.disabledRules (object with <LANGUAGE> keys)
  • 🔧 Change: Rename ltex.<LANGUAGE>.enabledRulesltex.enabledRules (object with <LANGUAGE> keys)
  • 🔧 Change: Rename ltex.javaHomeltex.java.path
  • 🔧 Change: Rename ltex.performance.initialJavaHeapSizeltex.java.initialHeapSize
  • 🔧 Change: Rename ltex.performance.maximumJavaHeapSizeltex.java.maximumHeapSize
  • 🔧 Change: Rename ltex.performance.sentenceCacheSizeltex.sentenceCacheSize
  • New: Add support for external LanguageTool HTTP servers — #36
  • New: Add support for magic comments, enables changing the language in the middle of documents — #21
  • 🐛 Bug fix: Check \footnote and \todo contents separately, preventing “double period” warnings — #42
  • New: Add support for more BibLATEX citation commands, add support for plural dummies, add support for \eg, \egc, \ie, \iec#43
  • New: Add visual feedback in status bar during startup and checks that take a long time
  • 🗑 Removal: Remove null types and default values from settings, use empty string/array/object instead — #41
  • 🔧 Change: Use proper server/client model for language server/client
  • 🔧 Change: Make documentation more extensive, put it on own website
  • 🔧 Change: Update LTEX LS to 5.0.0

4.9.3 — “The Java Collapse” (May 7, 2020)

  • 🔧 Change: Revert to Java 8
  • 🗑 Removal: Remove support for external LanguageTool HTTP servers
  • 🔧 Change: Update LTEX LS to 4.9.3

4.9.2 — “The Server Renormalization” (May 6, 2020)

  • 🔧 Change: Update required version of Java (now 11 or newer)
  • New: Add support for external LanguageTool HTTP servers — #36
  • New: Add support for \autoref, \pageref, \autopageref#37
  • 🔧 Change: Update LTEX LS to 4.9.2

4.9.1 — “The Sentence Cache Acceleration” (May 1, 2020)

  • 🐛 Bug fix: Fix sentence cache was invalidated when a single ignore sentence rule was present — #29
  • 🔧 Change: Use thin non-breaking space for \,#35
  • 🔧 Change: Update LTEX LS to 4.9.1

4.9.0 — “The Update Alternative” (March 28, 2020)

  • 🔧 Change: Update LanguageTool to 4.9 (see LT 4.9 release notes)
  • 🔧 Change: Update other Java dependencies
  • 🔧 Change: Update NPM dependencies
  • 🔧 Change: Update required version of VS Code (now 1.39.0 or newer)
  • 🔧 Change: Reduce file size of extension (omitting unneeded dependencies)
  • New: Add usage instructions to readme
  • 🔧 Change: Update LTEX LS to 4.9.0

4.7.10 — “The French Capacitance” (March 12, 2020)

  • 🐛 Bug fix: Fix spelling errors for French dummies — #27
  • 🐛 Bug fix: Fix \dots in math mode being interpreted as ...
  • 🔧 Change: Minor changes in readme, changelog, and package.json
  • 🔧 Change: Update LTEX LS to 4.7.10

4.7.9 — “The Markdown Resonance” (February 29, 2020)

  • 🔧 Change: Update Markdown parser Flexmark to 0.60.2; this increases the speed of parsing Markdown
  • New: Add possibility to ignore Markdown elements or replace them by dummy words via ltex.markdown.ignore and ltex.markdown.dummy#26
  • 🔧 Change: Ignore Markdown code blocks by default
  • 🔧 Change: Replace auto-links and inline Markdown code with dummy words by default
  • 🐛 Bug fix: Fix match positions were sometimes off by one, especially in Markdown documents
  • 🔧 Change: Rewrite MarkdownAnnotatedTextBuilder
  • 🔧 Change: Update LTEX LS to 4.7.9

4.7.8 — “The Multi-Diagnostic Equivalency” (February 16, 2020)

  • New: Add support for R Sweave .rnw files — #22
  • 🔧 Change: Enable fixing multiple diagnostics at once — #23
  • New: Add ltex.javaHome setting to control the JAVA_HOME environment variable — #24, @mpolitze
  • New: Add support for \euro#25
  • 🔧 Change: Minor changes in readme
  • 🔧 Change: Update LTEX LS to 4.7.8

4.7.7 — “The Preview Perturbation” (November 23, 2019)

  • 🗑 Removal: Remove preview status from extension
  • 🔧 Change: Update LTEX LS to 4.7.7

4.7.6 — “The Java Thermalization” (November 10, 2019)

  • New: Add ltex.performance settings to give users more control over Java’s RAM usage
  • 🔧 Change: Change default initial Java heap size to 64 MB
  • 🔧 Change: Change default maximum Java heap size to 512 MB
  • 🔧 Change: Change default sentence cache size from 10000 to 2000 sentences
  • 🔧 Change: Rename logs, enable logging of client messages even if no folder is open
  • New: Add more examples to readme
  • 🔧 Change: Update LTEX LS to 4.7.6

4.7.5 — “The Listing Collapse” (October 22, 2019)

  • 🔧 Change: Enable ignoring environments such as lstlisting and verbatim
  • New: Add ltex.environments.ignore setting for defining own environments to ignore
  • 🔧 Change: Update LTEX LS to 4.7.5

4.7.4 — “The Disabling Allocation” (October 15, 2019)

  • New: Add disabledRules and enabledRules settings (requires update of language extensions)
  • New: Add disable rule quick fix
  • 🐛 Bug fix: Fix a bug where the codeAction request gets stuck in infinite loop
  • 🐛 Bug fix: Fix another NullPointerException for word2vec
  • 🔧 Change: Update LTEX LS to 4.7.4

4.7.3 — “The word2vec Erosion” (October 7, 2019)

  • 🐛 Bug fix: Fix null pointer error for word2vec quick fixes — #12
  • 🔧 Change: Update LTEX LS to 4.7.3

4.7.2 — “The Message Dissection” (October 2, 2019)

  • New: Add missing error message if legacy false friends could not be loaded
  • 🔧 Change: Update LTEX LS to 4.7.2

4.7.1 — “The Mother Tongue Factor” (October 2, 2019)

  • New: Add ltex.additionalRules.motherTongue setting to enable detection of false friends — #11
  • 🔧 Change: Change defaults for ltex.additionalRules settings from "" to null
  • 🔧 Change: Update LTEX LS to 4.7.1

4.7.0 — “The Multi-Root Observation” (October 1, 2019)

  • 🔧 Change: Update LanguageTool to 4.7 (see LT 4.7 release notes)
  • New: Support multi-root workspaces, all configuration settings except ltex.enabled are now resource-specific — #7
  • 🔧 Change: Save dictionary settings under full language short code (e.g., en-US instead of en). If you already have a dictionary under ltex.en.dictionary and use en-US as language (not en), you have to rename the settings name to ltex.en-US.dictionary (similarly for other languages).
  • 🗑 Removal: Remove diagnostics when a file is closed
  • 🐛 Bug fix: Prevent insertion of text in TikZ mode
  • New: Add support for more commands such as \newenvironment, \newgeometry, and \pagenumbering
  • 🔧 Change: Update LTEX LS to 4.7.0

4.6.13 — “The Remote Permeability” (September 26, 2019)

  • 🐛 Bug fix: Fix language extensions not installable on remote machines — #8
  • 🐛 Bug fix: Fix LTEX LS not reinitialized after a language extension has been installed (which was missing during initialization)
  • 🔧 Change: Update LTEX LS to 4.6.13

4.6.12 — “The Interpolation Entanglement” (September 25, 2019)

  • 🐛 Bug fix: Patch LanguageTool’s AnnotatedText with linear interpolation to hopefully fix the fromPos must be less than toPos LT errors for good
  • 🐛 Bug fix: Fix \footnote in math mode messed up text mode and math mode
  • 🔧 Change: Increase robustness in case locale or settings are not provided
  • 🔧 Change: Ignore all brace and bracket arguments after \begin{environment} (tabular, array, etc.)
  • New: Add support for some more commands and environments such as \pagestyle and eqnarray
  • 🔧 Change: Update LTEX LS to 4.6.12

4.6.11 — “The Infinite Loop Contraction” (September 23, 2019)

  • 🐛 Bug fix: Detect and prevent infinite loops in LatexAnnotatedTextBuilder
  • 🐛 Bug fix: Fix infinite loop with other line endings than \n
  • 🐛 Bug fix: Fix some more fromPos must be less than toPos LT errors
  • 🔧 Change: Check for interrupts to avoid 100% CPU usage on timeout (this doesn’t fix any bugs though)
  • New: Add support for \email, \href, and \verb|...|
  • New: Add support for more citation commands (\citep, \citet, etc.)
  • New: Add support for float/theorem definition commands and starred sectioning commands
  • 🔧 Change: Update LTEX LS to 4.6.11

4.6.10 — “The Plaintext Decay” (September 18, 2019)

  • 🔧 Change: Don’t check plaintext files — #4
  • 🐛 Bug fix: Fix NullPointerException if LanguageTool has not been initialized — ltex-ls#1
  • 🔧 Change: Update LTEX LS to 4.6.10

4.6.9 — “The Bundle Valuation” (September 8, 2019)

  • 🔧 Change: Bundle Node.js modules to decrease number of files in the extension (this means a slight performance gain)
  • 🔧 Change: Update LTEX LS to 4.6.9

4.6.8 — “The Severity Manifestation” (September 7, 2019)

  • New: Add setting ltex.diagnosticSeverity to control where and how the diagnostics appear
  • 🐛 Bug fix: Change default severity from warning to info
  • New: Add possibility to ignore a LanguageTool rule in a sentence via quick fix
  • New: Add setting ltex.configurationTarget to control which settings.json to update when using one of the quick fixes
  • 🐛 Bug fix: More commands like \PackageWarning and \addbibresource are ignored
  • New: Add support for \url and \nolinkurl
  • New: Add support for more accents (\`, \', \^, \~, \", \=, \., …)
  • 🔧 Change: Command names can now include @ (this assumes that users don’t write something like \example@gmail.com with a command \example, otherwise replace with \example{}@gmail.com)
  • 🔧 Change: Ignore alignment argument of tabular environment
  • 🔧 Change: Update LTEX LS to 4.6.8

4.6.7 — “The Model Combustion” (September 2, 2019)

  • New: Add possibility to use language model n-gram data, neural network model data, or word2vec model data
  • 🔧 Change: Add to dictionary now always modifies global settings

4.6.6 — “The Timeout Theorem” (September 2, 2019)

  • 🐛 Bug fix: Fix fromPos must be less than toPos LT errors
  • New: Localization of diagnostics, initially support of English and German
  • New: Add timeout for latex.AnnotatedTextBuilder; unfortunately this only displays an error, but does not kill the process
  • New: Add support for \(, \), \[, \]
  • 🔧 Change: Don’t insert spaces before \text in display math

4.6.5 — “The Consistency Integration” (September 2, 2019)

  • 🔧 Change: Make readme and package.json consistent
  • 🐛 Bug fix: Fix second arguments of \(re)newcommand not ignored

4.6.4 — “The Umlaut Expansion” (September 1, 2019)

  • 🔧 Change: Ignore some commands often found in LATEX preambles
  • New: Support umlauts and eszett

4.6.3 — “The Version Interruption” (September 1, 2019)

  • 🐛 Bug fix: Fix deployed *.vsix needed Java 11, not 8

4.6.2 — “The vsce Minimization” (September 1, 2019)

  • 🔧 Change: Don’t include vsce in extension

4.6.1 — “The Badges Vortex” (September 1, 2019)

  • 🔧 Change: Link badges in readme

4.6.0 — “The LTEX Resurgence” (September 1, 2019)

  • 🔧 Change: Forked abandoned repository, rename to vscode-ltex
  • 🔧 Change: Update LanguageTool to 4.6 (see LT 4.6 release notes)
  • 🔧 Change: Update other dependencies (vscode, vscode-languageclient, LSP, JUnit, Gradle)
  • 🔧 Change: Implement simple LATEX parser

3.8.0 (July 8, 2017)

  • 🔧 Change: Update LanguageTool to 3.8 (see LT 3.8 release notes)
  • 🔧 Change: Update versioning to reflect LanguageTool versioning
  • 🗑 Removal: Remove preview flag since no blocker issues have been reported

0.0.4 (June 22, 2017)

0.0.3 (June 14, 2017)

  • 🐛 Bug fix: Fix checking of files when no folder was open
  • 🐛 Bug fix: Prevent virtual files (including those from Git) from being checked — adamvoss/vscode-languagetool#2

0.0.2 (June 12, 2017)

  • New: Allow any LanguageTool supported language to be used through the use of supplemental extensions
  • 🗑 Removal: Remove built-in English support

0.0.1 (June 3, 2017)

  • New: Initial release