From f76df6dabdea4474fd166a641eecef1d0704e611 Mon Sep 17 00:00:00 2001 From: Ivan Gagarinov Date: Wed, 17 Jul 2024 19:36:19 +0500 Subject: [PATCH] add ru readme --- .vscode/settings.json | 11 ++++ README.md | 2 +- README.ru.md | 124 ++++++++++++++++++++++++++++++++++++ ignored_languagetool_errors | 12 ++++ 4 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 .vscode/settings.json create mode 100644 README.ru.md create mode 100644 ignored_languagetool_errors diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..740cca3 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,11 @@ +{ + "languageToolLinter.languageTool.ignoredWordsInWorkspace": [ + "languagetool-cli", + "игнорила", + "игнорить", + "игнорятся", + "пуллреквест", + "регулярку", + "игнорит" + ] +} diff --git a/README.md b/README.md index 2d6f377..d577b20 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Options: auto to guess the language automatically (default: "auto") -i, --ignore Path to file with ignore contexts (default: - "/content/ignore") + "/content/ignored_languagetool_errors") -h, --help display help for command ``` diff --git a/README.ru.md b/README.ru.md new file mode 100644 index 0000000..5720387 --- /dev/null +++ b/README.ru.md @@ -0,0 +1,124 @@ +# languagetool-cli + +Утилита для поиска различных ошибок в тексте. Работает на базе [https://languagetool.org/](https://languagetool.org/). Позволяет проверять не только орфографию, синтаксис и т.д., но и стилистику текста. + +## Требования + +* Docker + +## Проверка ошибок + +Для запуска проверки нужно выполнить команду: + +```bash +docker run --rm -v ./:/content hexlet/languagetool-cli node ./bin/run.js check +``` + +* *directory* — директория, внутри которой выполняется работа, например, может быть текущая директория *\./*. Директория связывается с директорией */content* в контейнере +* *filePath* — путь к файлам для проверки. Можно указать регулярку, например, */content/\*\*/\*.md* — проверит все файлы с расширением *.md* + +Пример: + +```bash +docker run --rm -v ./fixtures:/content hexlet/languagetool-cli node ./bin/run.js check /content/**/*.md +``` + +Справка: + +```bash +docker run --rm -v ./fixtures:/content hexlet/languagetool-cli node ./bin/run.js check -h + +Usage: run check [options] [dir_path] + +Fix errors with overwriting files + +Arguments: + dir_path path to files (default: "/content") + +Options: + -r, --rules "rule1, rule2, ..." languagetools rules + -l, --language A language code like en-US, de-DE, fr, or + auto to guess the language automatically + (default: "auto") + -i, --ignore Path to file with ignore contexts (default: + "/content/ignored_languagetool_errors") + -h, --help display help for command +``` + +## Добавление ошибок в игнор + +Утилита позволяет игнорить ошибки. Делается это одновременно несколькими способами: + +* Во-первых, мы добавляем новые слова, которые утилита не знает, в файл *ignore_dictionary.txt*. Если вы столкнулись с какими-то ложными срабатываниями на новых словах, присылайте пуллреквест с этими словами, чтобы утилита их игнорила. +* Во-вторых, утилита проверяет конфиг [плагина languagtool для VSCode](https://marketplace.visualstudio.com/items?itemName=davidlday.languagetool-linter), который обычно находится по пути *.vscode/settings.json*. Слова из него так же игнорятся, как в предыдущем способе +* Третий способ уже отличается тем, что он игнорит конкретные места с ошибками. Пример: утилита выдает ошибку на множественное использование пробелов, а эти пробелы нам нужны для стилизации таблицы. Чтобы утилита игнорила такие ошибки, достаточно создать файл *ignored_languagetool_errors* в директории, которая привязывается к */context*. В этот файл нужно скопировать вывод с ошибками (вместе с разделительными символами). Либо утилита может создать сама этот файл командой + ```bash + docker run --rm -v ./:/content hexlet/languagetool-cli node ./bin/run.js ignore + ``` + То есть используется команда `ignore` вместо `check`. В остальном команда не отличается. После выполнения этой команды создастся файл *ignored_languagetool_errors*, в него будут помещены все текущие ошибки. При желании путь к файлу можно поменять с помощью опции `--ignore` (см. справку) + +## Сценарий работы + +Обычный сценарий работы с утилитой выглядит так: + +* Проверяете ошибки в тексте с помощью команды *check* +* Исправляете нужные ошибки + + +## Автоматическое исправление ошибок + +Утилита умеет автоматически исправлять некоторые ошибки. Но делает это не всегда хорошо и только если есть варианты для замены слов. Некоторые ошибки, особенно стилистические, не предполагают таких вариантов. Утилита в таком случае не поправит ошибку. Утилита перезаписывает файлы при исправлении, поэтому этой функциональностью нужно пользоваться осторожно. Рекомендуется исправлять вручную. + +```bash +docker run --rm -v ./:/content hexlet/languagetool-cli node ./bin/run.js fix +``` + +Пример: + +```bash +docker run --rm -v ./fixtures:/content hexlet/languagetool-cli node ./bin/run.js fix /content/**/*.md +``` + +Справка: + +```bash +docker run --rm -v ./fixtures:/content hexlet/languagetool-cli node ./bin/run.js fix -h + +Usage: run fix [options] + +Options: + -r, --rules "rule1, rule2, ..." languagetools rules + -l, --language A language code like en-US, de-DE, fr, or + auto to guess the language automatically + (default: "auto") + -h, --help display help for command +``` + +## Получения списка слов с ошибками + +Утилита может записать список слов, в которых нашла ошибка. Это бывает нужно, если вы хотите добавить слова в игнор. По умолчанию слова запишутся в файл *wrong_words.txt*: + +```bash +docker run --rm -v ./:/content hexlet/languagetool-cli node ./bin/run.js words +``` + +Пример: + +```bash +docker run --rm -v ./fixtures:/content hexlet/languagetool-cli node ./bin/run.js words /content/**/*.md +``` + +Справка: + +```bash +docker run --rm -v ./:/content hexlet/languagetool-cli node ./bin/run.js words -h + +Options: + -r, --rules "rule1, rule2, ..." languagetools rules + -l, --language A language code like en-US, de-DE, fr, or + auto to guess the language automatically + (default: "auto") + -f, --file Destination (default: "wrong_words.txt") + -h, --help display help for command + +``` diff --git a/ignored_languagetool_errors b/ignored_languagetool_errors new file mode 100644 index 0000000..f691560 --- /dev/null +++ b/ignored_languagetool_errors @@ -0,0 +1,12 @@ +README.ru.md:38:43:7 +...уется команда `` вместо ``. В остальном команда не отличается. После выполнения этой ко... +Предлог «в» предполагает употребление существительного в винительном или предложном падеже: «команде» +Предлагаемые варианты: +команде +------------------------ +README.ru.md:38:43:7 +... можно поменять с помощью опции `` (см. справку) ## Сценарий работы Обычный сценарий ... +Это предложение не начинается с заглавной буквы. +Предлагаемые варианты: +Справку +------------------------