Поиск по сайту:

Проверьте орфографические ошибки с помощью средства проверки орфографии GNU Aspell в Linux

Сегодня мы поговорим о GNU Aspell, бесплатной независимой программе проверки орфографии с открытым исходным кодом. Вы можете использовать его как библиотеку или независимую программу проверки орфографии в своих Unix-подобных операционных системах. Aspell предложит возможную замену слов с ошибками в слове/документе. В отличие от других средств проверки правописания, таких как Ispell, Aspell также может легко проверять документы в UTF-8 без использования специального словаря. Он также поддерживает одновременное использование нескольких словарей. В этом кратком руководстве мы увидим, как установить Aspell и как использовать его для проверки орфографических ошибок в данном слове и/или документе.

Установите программу проверки правописания GNU Aspell в Linux.

GNU Aspell доступен в репозиториях по умолчанию большинства дистрибутивов Linux, поэтому установка не составит большого труда.

В Arch Linux и его производных, таких как Antergos, Manjaro Linux, запустите:

sudo pacman -S aspell

В Федоре:

sudo dnf install aspell

В RHEL, CentOS:

sudo yum install epel-release
sudo yum install aspell

В Дебиане, Убунту:

sudo apt-get install aspell

Добавление словарей

По умолчанию в Aspell нет словарей. Чтобы добавить словарь, например английского, достаточно установить этот пакет — aspell-en. Аналогичным образом, чтобы добавить словарь испанского языка, установите пакет aspell-es.

Его также можно найти в репозиториях по умолчанию. Например, чтобы добавить словарь английского языка в Arch Linux, выполните:

sudo pacman -S aspell-en

В Дебиане, Убунту:

sudo apt-get install aspell-en

В Федоре:

sudo dnf install aspell-en

В RHEL/CentOS:

sudo yum install aspell-en

Чтобы добавить словарь испанского языка, используйте следующие команды:

Арка Линукс:

sudo pacman -S aspell-es

Дебиан/Убунту:

sudo apt-get install aspell-es

Федора:

sudo dnf install aspell-es

RHEL/CentOS:

sudo yum install aspell-es

После того, как вы установили все словари, вы можете убедиться, доступны ли необходимые словари, с помощью команды:

$ aspell dicts
en
en-variant_0
en-variant_1
en-variant_2
en-w_accents
en-wo_accents
en_CA
en_CA-variant_0
en_CA-variant_1
en_CA-w_accents
en_CA-wo_accents
en_GB
en_GB-ise
en_GB-ise-w_accents
en_GB-ise-wo_accents
en_GB-ize
en_GB-ize-w_accents
en_GB-ize-wo_accents
en_GB-variant_0
en_GB-variant_1
en_GB-w_accents
en_GB-wo_accents
en_US
en_US-variant_0
en_US-variant_1
en_US-w_accents
en_US-wo_accents
es

Итак, в моей системе установлены два словаря: английский (включая его варианты) и испанский. Теперь давайте посмотрим, как проверить орфографию слова или документа с помощью Aspell.

Проверьте орфографические ошибки с помощью средства проверки орфографии GNU Aspell в словах или документах.

Проверка орфографии отдельных слов

По умолчанию Aspell использует английский язык для проверки правописания.

Давайте проверим написание слова. Для этого введите:

aspell -a

Теперь введите любое слово с ошибкой. Aspell сравнит данное слово со словарями и отобразит возможные предложения по правильному написанию.

@(#) International Ispell Version 3.1.20 (but really Aspell 0.60.6.1)
englsh
& englsh 7 0: English, Englisher, Engels, English's, Englishes, Engels's, encl

Если вы введете правильное слово, оно будет отмечено звездочкой.

$ aspell -a
@(#) International Ispell Version 3.1.20 (but really Aspell 0.60.6.1)
English
*

Чтобы использовать другой язык, например испанский, просто используйте флаг '-l' с кодом языка, как показано ниже:

$ aspell -a -l es
@(#) International Ispell Version 3.1.20 (but really Aspell 0.60.6.1)
Holla 
& Holla 30 0: Hola, Halla, Holea, Hollé, Holló, Hulla, Hila, Hollad, Hollar, Hiela, Huella, Olla, Hala, Bolla, Folla, Molla, Polla, Rolla, Solla, Tolla, Halle, Hallo, Hallé, Halló, Helea, Holee, Holeo, Holeé, Holeó, Huela

Здесь "es" — это языковой код испанского языка.

Мы также можем проверить орфографические ошибки в различных вариантах языка. Например, чтобы проверить орфографические ошибки в словаре канадского английского, используйте -d и формат языка (вы можете просмотреть доступные английские варианты с помощью команды «aspell dicts»).

aspell -a -d en_CA

Чтобы выйти из проверки орфографии, введите CTRL+c.

Вы также можете использовать команду «echo» в сочетании с aspell, чтобы проверить наличие орфографических ошибок в слове. Взгляните на следующий пример.

echo englsh | aspell -a

Пример вывода будет:

@(#) International Ispell Version 3.1.20 (but really Aspell 0.60.6.1)
& englsh 7 0: English, Englisher, Engels, English's, Englishes, Engels's, encl

Как видите, Aspell предлагает возможные замены слова «englsh» с ошибкой.

Если вы хотите проверить правописание на другом языке, например испанском, используйте флаг "-l" вместе с кодом языка, как показано ниже.

echo englsh | aspell -a -l es

Чтобы проверить написание слова с ошибкой в словаре канадского английского языка, запустите:

echo englsh | aspell -a -d en_CA

Альтернативно вы можете проверить орфографию слова, как показано ниже.

aspell -a <<< englsh

Или воспользуйтесь этим, если хотите проверить правописание на другом языке.

aspell -a -l es <<< englsh

Проверка правописания в файле

У меня есть файл ostechnix.txt с несколькими строками. Вот содержимое этого файла.

$ cat ostechnix.txt
welcom
englsh
Tamil
Linux
securty

Теперь позвольте мне проверить этот файл на предмет возможных орфографических ошибок.

cat ostechnix.txt | aspell list

Пример вывода:

welcom
englsh
securty

Как видите, Aspell выводит список слов с ошибками из данного файла. Чтобы использовать другой язык, используйте флаг «-l», как показано ниже.

cat ostechnix.txt | aspell list -l es

Чтобы в интерактивном режиме проверить файл на наличие возможных орфографических ошибок, мы можем использовать:

aspell check ostechnix.txt

Вот результат выполнения вышеуказанной команды. Aspell предлагает возможные замены слова с ошибкой. Просто выберите правильные слова, введя соответствующее число из предложенных слов.

Я набираю 1 (номер один):

Как только вы выберете правильное написание, aspell обновит файл правильным словом и автоматически перейдет к другому слову, отобразит предложения и так далее.

Если вы считаете, что выбранные слова написаны правильно, введите 'i', чтобы игнорировать, или введите 'a', чтобы добавить слово в словарь. Это может быть полезно для команд Linux или любых технических слов, которых нет в словарях.

Вы также можете ввести 'r', чтобы заменить выбранное слово своим собственным написанием, и нажать ВВОД, чтобы обновить изменения.

Чтобы добавить нижний регистр для выбранного слова, введите 'l'. После того как вы исправите все слова, вы ничего не увидите в выводе.

Опять же, если вы хотите проверить правописание на другом языке, просто используйте 'l', как я упоминал в предыдущих примерах.

Рекомендуется к прочтению:

  • Как использовать функцию проверки орфографии в текстовом редакторе Vim

Добавление словарей вручную

Некоторые словари могут быть недоступны в репозиториях вашего дистрибутива по умолчанию. Например, словарь тамильского языка недоступен в репозиториях Arch Linux по умолчанию. Итак, у меня не было другого выбора, кроме как скомпилировать и установить его из исходного кода, как описано ниже.

Загрузите словарь по вашему выбору здесь.

wget https://ftp.gnu.org/gnu/aspell/dict/ta/aspell6-ta-20040424-1.tar.bz2

Распакуйте скачанный архив:

tar xvf aspell6-ta-20040424-1.tar.bz2

Перейдите в каталог aspell:

cd aspell6-ta-20040424-1/

Скомпилируйте и установите, как показано ниже:

./configure
make
sudo make install

После успешной установки словаря вы увидите только что установленный словарь:

$ aspell dicts
[...]
en_US
en_US-variant_0
en_US-variant_1
en_US-w_accents
en_US-wo_accents
es
ta

Здесь ta — код тамильского языка.

Теперь вы можете проверить правописание с помощью нового словаря, как показано ниже.

echo வணக்கம் | aspell -a -l ta

Чтобы установить другие словари, просто обратитесь к файлу README загруженного словаря.

Для получения более подробной информации посетите официальный сайт, указанный ниже.

  • Веб-сайт GNU Aspell

Статьи по данной тематике