GNU Aspell - 免费,开源和独立的拼写检查
今天,我们将谈论GNU Aspell,免费,开源和独立的拼写检查。
我们可以在UNIX的操作系统上用作库或者独立的拼写检查器。
Aspell将建议在单词/文档中替换拼写错误的单词。
与像Ispell这样的其他拼写检查不同,Aspell也可以轻松检查UTF-8中的文档,而无需使用特殊字典。
它还支持一次使用多个词典。
在这篇简短的教程中,我们将看到如何安装Aspell以及如何使用它来检查给定的单词和/或者文档中的拼写错误。
在Linux上安装GNU Aspell拼写检查器
GNU Aspell可在大多数Linux发行版的默认存储库中提供,因此安装不会是一个大的优惠。
关于Arch Linux,如Antergos,Manjaro Linux,运行:
$sudo pacman -S aspell
关于Fedora:
$sudo dnf install aspell
在Rhel,Centos:
$sudo yum install epel-release
$sudo yum install aspell
在Debian,Ubuntu:
$sudo apt-get install aspell
添加词典
默认情况下,Aspell不会有任何字典。
要添加字典,例如英语,只需安装此软件包Aspell-en。
同样,要添加西班牙语字典,请安装Aspell-es包。
这也可以在默认存储库中找到。
例如,在Arch Linux上添加英语词典,运行:
$sudo pacman -S aspell-en
在Debian,Ubuntu:
$sudo apt-get install aspell-en
关于Fedora:
$sudo dnf install aspell-en
Rhel/CentOS:
$sudo yum install aspell-en
要添加西班牙语字典,请使用以下命令:
Arch Linux:
$sudo pacman -S aspell-es
debian/ubuntu:
$sudo apt-get install aspell-es
Fedora:
$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
拼写检查文件
我有一个文件theitroad.txt,其中几行。
这是此文件的内容。
$cat theitroad.txt welcom englsh Tamil Linux securty
现在,让我检查这个文件是否有任何可能的拼写错误。
$cat theitroad.txt | aspell list
示例输出:
welcom englsh securty
正如我们所看到的,Aspell列出了给定文件中的拼写错误的单词。
要使用另一种语言,请使用如下所示的"-l"标志。
$cat theitroad.txt | aspell list -l es
要交互地检查文件以进行可能的拼写错误,我们可以使用:
$aspell check theitroad.txt
以下是上述命令的输出。
Aspell建议拼错单词的可能更换。
只需通过建议单词输入相关数字即可选择正确的单词。
我键入1(第一个):
选择正确的拼写后,Aspell会用正确的单词更新文件,并自动移动到另一个单词并显示建议等。
如果我们认为拼写对所选单词正确,请键入"i"以忽略或者键入'a'以将单词添加到字典中。
这对Linux命令或者词典中未列出的任何技术单词都很有用。
我们还可以使用自己的拼写键入"r"以替换所选单词,然后按Enter更新更改。
要为所选单词添加小写,请键入"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