- Add support for cancellation of checking requests (fixes vscode-ltex#253)
- Show
Use ...
quick fixes before other quick fixes (fixes vscode-ltex#297) - Limit number of
Use ...
quick fixes to 5 (see vscode-ltex#297) - Add
isChecking
anddocumentUriBeingChecked
fields to result of_ltex.getServerStatus
- Add support for
\phantom
,\hphantom
, and\vphantom
(LATEX) - Fix wrong underlining of words starting with markup (fixes #69)
- Prefix all command names with an underscore to mark them as internal (for hiding them from the user in some clients):
ltex.addToDictionary
→_ltex.addToDictionary
ltex.disableRules
→_ltex.disableRules
ltex.hideFalsePositives
→_ltex.hideFalsePositives
ltex.checkDocument
→_ltex.checkDocument
ltex.getServerStatus
→_ltex.getServerStatus
- Add support for Org; use the code language ID
org
(fixes vscode-ltex#277) - Add basic support for reStructuredText; use the code language ID
restructuredtext
(fixes vscode-ltex#32) - Add
--server-type=tcpSocket
option to communicate over a TCP socket - Add
--host
and--port
options to control host and port of the TCP socket - Add
--[no-]endless
option to keep the server alive when the client terminates the connection - Add
-h
and--help
options to show help message - Add
-V
option as alias for--version
- Remove support of single CR characters as line endings
- Fix
.Rnw
not recognized for R Sweave documents when running_ltex.checkDocument
- Fix newlines accepted as whitespace in magic comments
- Use picocli for parsing of command-line arguments
- Update LanguageTool to 5.3 (see LT 5.3 release notes)
- Update LSP4J to 0.12.0
- Enhance support of accents in LATEX by using Unicode combining diacritical marks, normalized via Unicode Normalization Form C (fixes vscode-ltex#269)
- 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}
, Č) (PR #57 by @ed359, fixes #56) - Add support for special characters in LATEX:
\L
(Ł),\SS
(ẞ),\i
(ı),\j
(ȷ), and\l
(ł) (PR #57 by @ed359, fixes #56) - Add
FR_SPELLING_RULE
as a rule for unknown words (PR #47 by Nicolas Sicard (@biozic)) - Use LATEX parser for documents with code language ID
tex
(PR #54 by Lucas Alber (@LDAP), fixes #53) - Add support for Markdown Extra definition lists (fixes vscode-ltex#268)
- Ignore non-object values for
InitializeParams.initializationOptions
(fixes #65)
- Remove support for settings that are deprecated since 8.0.0:
ltex.ignoreInRuleSentence
,ltex.commands.ignore
,ltex.commands.dummy
,ltex.environments.ignore
,ltex.markdown.ignore
, andltex.markdown.dummy
- Replace
ltex/serverStatus
request withltex.getServerStatus
command - Add support for magic comments inside HTML comments in Markdown (
<!-- ltex: SETTINGS -->
) - Check frame title in argument of LATEX Beamer frames (fixes vscode-ltex#239)
- Add
range
argument toltex.checkDocument
- Check documents even if their code language is not supported
- Fix comment sign before babel commands not recognized (see vscode-ltex#245)
- Fix removing items in settings with a hyphen prefix sometimes not working
- Fix space not added between two arguments of LATEX commands
- Fix manually checking BibTEX documents not working
- Fix words in dictionary containing markup not recognized
- Add support for Pandoc-style inline math (
$...$
) and display math ($$...$$
with$$
being at the beginning/end of a Markdown block) to Markdown parser (fixes vscode-ltex#210) - Fix false positives for words added by
Add to dictionary
for Slovak rule IDsMUZSKY_ROD_NEZIV_A
,ZENSKY_ROD_A
, andSTREDNY_ROD_A
(fixes vscode-ltex#221) - Fix BibTEX field
seealso
not ignored, ignorecategory
andparent
(see vscode-ltex#211) - Disable
UPPERCASE_SENTENCE_START
in BibTEX files (see vscode-ltex#211) - Move rule ID to the end of diagnostic messages as VS Code truncates the messages if the Problems panel is narrow (fixes vscode-ltex#233)
- Fix regression that messages of possible spelling mistakes are not prepended with the respective unknown words (see vscode-ltex#161)
- Fix crash when using
\begin
or\end
without an argument (fixes vscode-ltex#236) - Change
$/progress
tokens to include a UUID instead of a counter
- Add support for BibTEX files (language code
bibtex
, fixes vscode-ltex#211) - Add setting
ltex.bibtex.fields
to control which BibTEX fields should be checked - Add support for GitLab Flavored Markdown, especially inline math (e.g.,
$`E = mc^2`$
, see vscode-ltex#210) - Add support for Markdown tables as in GitHub Flavored Markdown (fixes vscode-ltex#218)
- Add support for more commands of the
glossaries
LATEX package - Enable
Add to dictionary
quick fix for Slovak rule IDsMUZSKY_ROD_NEZIV_A
,ZENSKY_ROD_A
, andSTREDNY_ROD_A
(fixes vscode-ltex#221) - Remove superfluous spaces in messages of diagnostics
- Fix handling of
\r\n
(Windows) line terminators in Markdown - Use Flexmark's YAML Front Matter extension to ignore YAML front matter in Markdown instead of own handling
- Print Flexmark AST of Markdown documents to log when
ltex.ltex-ls.logLevel
is"finest"
- Ignore
\pgfmathsetmacro
,\setmainfont
, and\theoremstyle
- Fix accent commands such as
\O
in math mode resulting in diagnostics (fixes vscode-ltex#216)
- Make versioning independent of vscode-ltex; LTEX LS now adheres to Semantic Versioning 2.0.0
- Require support of LSP 3.15
- Update LanguageTool to 5.2 (see LT 5.2 release notes)
- Add
ltex.additionalRules.enablePickyRules
to still be able to detect false friends after the update of LanguageTool (default:false
) - Replace
ltex/progress
with$/progress
(fixes #34) - Add
customCapabilities
inInitializeParams.initializationOptions
- Remove unneeded command arguments
type
andcommand
- Replace
\dots
with Unicode ellipsis…
instead of three dots...
to fix some false positives - Add documentation
- Migrate from Travis CI to GitHub Actions
- Prepend messages of possible spelling mistakes with the respective unknown words (fixes vscode-ltex#161)
- Add support for optional arguments of
\newtheorem
- Fix wrong position of diagnostics when using a recognized LATEX command with a non-recognized set of arguments due to an infinite loop (fixes vscode-ltex#167)
- Update LSP4J to 0.10.0
- Upgrade from Java 8 to Java 11 (see announcement, fixes vscode-ltex#39)
- Add workaround to eliminate the need for workspace-specific setting names;
ltex.dictionary
,ltex.disabledRules
, andltex.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) - Rename settings:
ltex.workspaceDictionary
,ltex.workspaceFolderDictionary
→ltex.dictionary
ltex.workspaceDisabledRules
,ltex.workspaceFolderDisabledRules
→ltex.disabledRules
ltex.workspaceEnabledRules
,ltex.workspaceFolderEnabledRules
→ltex.enabledRules
ltex.ignoreInRuleSentence
→ltex.hiddenFalsePositives
ltex.commands.ignore
,ltex.commands.dummy
→ltex.latex.commands
ltex.environments.ignore
→ltex.latex.environments
ltex.markdown.ignore
,ltex.markdown.dummy
→ltex.markdown.nodes
- 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 - Rename object keys of
ltex.configurationTarget
:addToDictionary
→dictionary
disableRule
→disabledRules
ignoreRuleInSentence
→hiddenFalsePositives
- Add
userExternalFile
,workspaceExternalFile
, andworkspaceFolderExternalFile
enumeration values toltex.configurationTarget
, which enables saving settings to external files (see documentation, fixes vscode-ltex#144 and vscode-ltex#145) - Change default of
ltex.configurationTarget
fordictionary
,disabledRules
, andhiddenFalsePositives
toworkspaceFolderExternalFile
- Add
ltex.checkFrequency
to control when LTEX checks documents (fixes vscode-ltex#142) - Add
LTeX: Show status information
command to show information about the status of LTEX - Add support for
\usepackage[LANGUAGE]{babel}
if in the same file as the text to be checked (fixes vscode-ltex#140) - Add support for more BibLATEX commands such as
\autocite
,\citeauthor
, etc. (fixes vscode-ltex#143) - Add support for overriding hard-coded command signatures (fixes #27)
- Move handling of external setting files from ltex-ls to vscode-ltex
- Increase duration before sentences expire in the result cache to 60 minutes
- Fix many settings changes cleared sentence cache, which led to performance issues, e.g., changing the
ltex.enabled
setting via magic comments (see vscode-ltex#134) - Remove dependency on
org.apache.httpcomponents:httpclient
by using the HTTP client that comes with Java 11 when connecting to an HTTP LanguageTool server
- Fix delayed publication of diagnostics by adding workaround to guess the caret position
- Fix recheck being triggered when generating list of quick fixes; this should improve speed
- Add support for
\ell
as well as\mathcal
,\mathfrak
, etc. to vowel detection (fixes vscode-ltex#131) - Add setting
ltex.ltex-ls.logLevel
to control the verbosity of the server log - 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
- Restructure and simplify internal quick fix and command structure, removing the need for pseudo-telemetry notifications
- Update LanguageTool to 5.1 (see LT 5.1 release notes)
- Add support for HTML entities such as
ä
and©
in Markdown - Fix missing tilde expansion for external dictionary files
- Improve logging
- Fix performance issue with multiple languages in one document via magic comments due to LanguageTool being reinitialized on each keystroke (fixes vscode-ltex#124)
- Fix
NullPointerException
when supplying relative paths to external dictionary files - Fix German log messages
- Add support for external dictionary files (fixes vscode-ltex#118)
- Add support for enabling/disabling LTEX only for specific file types via
ltex.enabled
(see vscode-ltex#19) - Add support for
acro
commands such as\DeclareAcronym
and\ac
(see vscode-ltex#19) - Add support for
\addcontentsline
(see vscode-ltex#19) - Add support for
\printbibliography
and\printglossary
without argument - Ignore parenthesis arguments of
textblock
s (see vscode-ltex#19) - Fix optional argument of heading commands such as
\section
parsed incorrectly (fixes vscode-ltex#123) - Include stack traces when logging exceptions
- Change scope of
ltex.dictionary
,ltex.disabledRules
, andltex.enabledRules
toapplication
; these are now user-specific settings that can only be configured in user settings - Add settings
ltex.workspaceDictionary
,ltex.workspaceDisabledRules
, andltex.workspaceEnabledRules
withwindow
scope to amend the corresponding user-specific settings; these are workspace-specific settings that should be configured in workspace settings - Add settings
ltex.workspaceFolderDictionary
,ltex.workspaceFolderDisabledRules
, andltex.workspaceFolderEnabledRules
withresource
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 - Rename
"global"
value forltex.configurationTarget
to"user"
("global"
is still supported, but deprecated) - Remove deprecated settings
ltex.javaHome
,ltex.performance.initialJavaHeapSize
,ltex.performance.maximumJavaHeapSize
,ltex.performance.sentenceCacheSize
,ltex.*.dictionary
,ltex.*.enabledRules
, andltex.*.disabledRules
(deprecation since 5.0.0) - Update LanguageTool to 5.0.2 (see LT 5.0.2 release notes)
- Fix skipping of YAML front matter (fixes vscode-ltex#104)
- Add support for
an
article when before a formula starting with a vowel (e.g.,an $n$-dimensional problem
, fixes vscode-ltex#92) - Add support for
~/
and~\
in settings (fixes vscode-ltex#99)
- Add commands
LTeX: Check current document
andLTeX: Check all documents in workspace
(fixes vscode-ltex#84) - Add setting
ltex.clearDiagnosticsWhenClosingFile
- Skip front matter in Markdown
- Ignore more LATEX preamble commands (e.g.,
\automark
,\color
,\DeclareSIUnit
,\directlua
,\setuptoc
) - Add support for German babel hyphenation commands
"-
,""
,"|
,"=
,"~
- Use non-breaking space for
~
- Fix another problem with spaces in paths on Windows (fixes vscode-ltex#80)
- LTEX LS support for Java 8 will end on November 1, 2020 (see documentation and vscode-ltex#39)
- Add support for babel commands (see documentation, fixes vscode-ltex#81)
- Fix problems with spaces in paths on Windows (fixes vscode-ltex#80)
- Make Windows startup script (
ltex-ls.bat
) honorJAVA_HOME
(fixes vscode-ltex#75)
- Fix freezes when checking German text by working around languagetool-org/languagetool#3181 introduced by LanguageTool 5.0 (fixes vscode-ltex#68)
- Update LanguageTool to 5.0 (see LT 5.0 release notes)
- Delay diagnostics at the current caret position (e.g., incomplete word or sentence) until the user has finished typing (fixes vscode-ltex#46)
- Add
enabled
to magic comments (fixes vscode-ltex#67) - Fix
\todo
couldn't be ignored (fixes vscode-ltex#63) - Fix wrong language-dependent settings used for magic comments
- Fix add to dictionary and disable rule quick fixes using wrong language when used with magic comments
- Improve code quality by fixing hundreds of Checkstyle, SpotBugs, and Checker Framework warnings
- Migrate from Gradle to Maven
- Update Maven dependencies
- Include all languages in LTEX LS; this removes the need for language support extensions (fixes vscode-ltex#6)
- Adhere to semantic versioning. This means that the version of LTEX LS is not tied to the version of LanguageTool anymore, as the version of LanguageTool is not a semantic version. LTEX LS 5.0.0 uses LanguageTool 4.9.
- Rename settings:
ltex.<LANGUAGE>.dictionary
toltex.dictionary
(object with<LANGUAGE>
keys)ltex.<LANGUAGE>.disabledRules
toltex.disabledRules
(object with<LANGUAGE>
keys)ltex.<LANGUAGE>.enabledRules
toltex.enabledRules
(object with<LANGUAGE>
keys)ltex.javaHome
toltex.java.path
ltex.performance.initialJavaHeapSize
toltex.java.initialHeapSize
ltex.performance.maximumJavaHeapSize
toltex.java.maximumHeapSize
ltex.performance.sentenceCacheSize
toltex.sentenceCacheSize
- Add support for external LanguageTool HTTP servers (fixes vscode-ltex#36)
- Add support for magic comments, enables changing the language in the middle of documents (fixes vscode-ltex#21)
- Check
\footnote
and\todo
contents separately, preventing “double period” warnings (fixes vscode-ltex#42) - Add support for more BibLATEX citation commands, add support for plural dummies, add support for
\eg
,\egc
,\ie
,\iec
(fixes vscode-ltex#43) - Add visual feedback in status bar during startup and checks that take a long time
- Remove
null
types and default values from settings, use empty string/array/object instead (fixes vscode-ltex#41) - Use proper server/client model for language server/client
- Make documentation of vscode-ltex more extensive, put it on own website
- Revert back to Java 8
- Remove support for external LanguageTool HTTP servers
- Update required version of Java (now 11 or newer)
- Add support for external LanguageTool HTTP servers (fixes vscode-ltex#36)
- Add support for
\autoref
,\pageref
,\autopageref
(fixes vscode-ltex#37)
- Fix sentence cache was invalidated when a single ignore sentence rule was present (fixes vscode-ltex#29)
- Use thin non-breaking space for
\,
(fixes vscode-ltex#35)
- Update LanguageTool to 4.9 (see LT 4.9 release notes)
- Update other Java dependencies
- Reduce file size (omitting unneeded dependencies)
- Fix spelling errors for French dummies (fixes vscode-ltex#27)
- Fix
\dots
in math mode being interpreted as...
- Update the Markdown parser flexmark-java to 0.60.2; this increases the speed of parsing Markdown
- Add possibility to ignore Markdown elements or replace them by dummy words via
ltex.markdown.ignore
andltex.markdown.dummy
(fixes vscode-ltex#26) - Ignore Markdown code blocks by default
- Replace auto-links and inline Markdown code with dummy words by default
- Fix match positions were sometimes off by one, especially in Markdown documents
- Rewrite
MarkdownAnnotatedTextBuilder
- Add support for R Sweave
.rnw
files (fixes vscode-ltex#22) - Enable fixing multiple diagnostics at once (fixes vscode-ltex#23)
- Add support for
\euro
(fixes vscode-ltex#25)
- No changes, dummy release
- Add
ltex.performance
settings to give users more control over Java's RAM usage - Change default initial Java heap size to 64 MB
- Change default maximum Java heap size to 512 MB
- Change default sentence cache size from 10000 to 2000 sentences
- Enable ignoring environments such as
lstlisting
andverbatim
- Add
ltex.environments.ignore
setting for defining own environments to ignore
- Add
disabledRules
andenabledRules
settings (requires update of language extensions) - Add
disable rule
quick fix - Fix a bug where the
codeAction
request gets stuck in infinite loop - Fix another
NullPointerException
for word2vec
- Fix null pointer error for word2vec quick fixes (fixes vscode-ltex#12)
- Add missing error message if legacy false friends could not be loaded
- Add
ltex.additionalRules.motherTongue
setting to enable detection of false friends (fixes vscode-ltex#11) - Change defaults for
ltex.additionalRules
settings from""
tonull
- Update LanguageTool to 4.7 (see LT 4.7 release notes)
- Support multi-root workspaces, all configuration settings except
ltex.enabled
are now resource-specific (fixes vscode-ltex#7) - Save dictionary settings under full language short code (e.g.,
en-US
instead ofen
). If you already have a dictionary underltex.en.dictionary
and useen-US
as language (noten
), you have to rename the settings name toltex.en-US.dictionary
(similarly for other languages). - Remove diagnostics when a file is closed
- Prevent insertion of text in TikZ mode
- Add support for more commands such as
\newenvironment
,\newgeometry
, and\pagenumbering
- Fix LTEX LS not reinitialized after a language extension has been installed (which was missing during initialization)
- Patch LanguageTool's
AnnotatedText
with linear interpolation to hopefully fix thefromPos must be less than toPos
LT errors for good - Fix
\footnote
in math mode messed up text mode and math mode - Increase robustness in case locale or settings are not provided
- Ignore all brace and bracket arguments after
\begin{environment}
(tabular
,array
, etc.) - Add support for some more commands and environments such as
\pagestyle
andeqnarray
- Detect and prevent infinite loops in
LatexAnnotatedTextBuilder
- Fix infinite loop with other line endings than
\n
- Fix some more
fromPos must be less than toPos
LT errors - Check for interrupts to avoid 100% CPU usage on timeout (this doesn't fix any bugs though)
- Add support for
\email
,\href
, and\verb|...|
- Add support for more citation commands (
\citep
,\citet
, etc.) - Add support for float/theorem definition commands and starred sectioning commands
- Fix
NullPointerException
if LanguageTool has not been initialized (fixes #1)
- Fix
NullPointerException
inmain
- Initial release