Command line interface towards languagetool (https://languagetool.org)
This is some kind of work in progress as a side-kick besides writing a book. For a list of open issues, please refer to the to-dos.
You have to have a running LanguageTool-Server (see https://dev.languagetool.org/http-server) on port 8081
Usage: language-tool [options] [files...]
Arguments:
files Input files
Options:
-v, --verbose Debug output (default: false)
--enabled-rules <rules...>
--disabled-rules <rules...>
--enabled-categories <categories...>
--disabled-categories <categories...>
--only-enabled Use enabled rules only (default: false)
-r, --rule-config <files...>
--url <url>
--concurrent <concurrent>
--output-format <format> Output format (choices: "pretty", "vim", "reviewdog", default: "pretty")
-l, --language <language> Sprache (default: "auto")
-m, --mother-tongue <mother-tongue> Mother tongue
-h, --help display help for command
Sets the language to be used.
The mother tongue. If set, some more grammar checks are performed
Adds rules that are processed for all files. The syntax is described in Configuration Files below.
You can add as many files as needed
Enables/disables rules given by rule-id.
Enables/disables rules given by rule-id.
Output messages a pretty
(user friedly) or computer readable (vim
, reviewdog
) format.
Limit the number of concurrent requests to the LanguageTool-server in parallel. The default is set to 2.
<!-- languagetool-disable-file german_grammar_rule(atembar) -->
<!-- languagetool-enable-file german_grammar_rule(atembar) -->
<!-- languagetool-disable-line german_grammar_rule(atembar) -->
<!-- languagetool-enable-line german_grammar_rule(atembar) -->
<!-- languagetool-disable-next-line german_grammar_rule(atembar) -->
<!-- languagetool-enable-next-line german_grammar_rule(atembar) -->
This needs <<TBD>>
The file contains a simple syntax:
-
Every line can contain a command, which is either
disabled
orenabled
, followed by rules in the forrule-id
, followed by an optional token in parens. -
A line starting with a hash sign ('#') represents a comment
An example:
# missing in lexicon
disable german_grammar_rule(atembar) german_grammar_rule(atembare)
# A Name
disable GERMAN_SPELLER_RULE(Brom)
# This book contains a lot of repeating starts
disable GERMAN_WORD_REPEAT_BEGINNING_RULE