首页>教程>Linux 命令手册> 文件内容查看与处理 >Linux hunspell 命令 - 交互式文本拼写检查纠正校对工具

Linux hunspell 命令 - 交互式文本拼写检查纠正校对工具

hunspell 命令(英文全称:hun spell)是一款开源、跨平台的拼写检查、词干提取工具,它基于 Myspell 扩展的基础上进行开发的,兼容 Ispell 命令的操作习惯,支持多种语言词典,可对纯文本、HTML、LaTeX、ODT、XML 等格式文档进行交互拼写检查,很多的办公软件都是使用 hunspell 作为拼写检查工具。

[!WARNING]

hunspell 命令支持多语言,可以自行安装词典,如法语语言包 hunspell-fr,但是当前没有中文词典,也可以直接下载词典从 https://github.com/wooorm/dictionaries、OpenOffice 或 LibreOffice 的词典库下载,放到 /usr/share/hunspell/ 目录中。

系统 hunspell

多数 Linux 发行版默认没有预装 hunspell,可以使用如下的命令安装 hunspell。

Debian / Ubuntu 系列安装 hunspell

使用如下步骤安装 hunspell:

1)更新软件源:

sudo apt update

2)安装 hunspell 及英文基础词典:

sudo apt install hunspell hunspell-en-us

RHEL / AlmaLinux / Rocky Linux 系列安装 hunspell

使用如下步骤安装 hunspell:

1)更新软件源

sudo dnf check-update

2)安装 hunspell 及英文基础词典

sudo dnf install hunspell hunspell-en-US

同类工具对比

如下给出一些常用的拼写检查工具之间的功能对比:

  • ispell:早期经典的拼写检查工具,词典生态与多格式文件支持方面不如 hunspell
  • aspell:智能纠错功能比较好,但是形态分析、多词典叠加检查功能不如 hunspell
  • hunspell:支持复合词检查、多词典链式加载等功能,还可以添加专业领域的词典,是 LibreOffice 等软件默认使用的拼写检查引擎

hunspell 命令语法结构

如下给出 hunspell 命令的基本语法结构形式:

hunspell [选项] [文件...]

语法结构解释说明:

  • [选项]:用于控制检查行为、词典的一些选项
  • [文件...]:需要进行拼写检查的文档

hunspell 命令使用示例

如下给出一些 hunspell 命令的使用示例,能够更好的说明如何使用 hunspell 命令。

[!TIP]

默认情况下 hunspell 会根据文件的扩展名来判断文件的类型,来对文件进行拼写检查。

交互式检查 HTML 文件

使用默认的系统词典检查 HTML 文件:

hunspell example.html

指定 en_US 词典检查文本文件

使用 -d 选项指定使用特定的语言的词典文件来检查文件内容的拼写:

hunspell -d en_US example.txt

批量列出所有拼写错误单词

使用 -l 选项以非交互方式列出所有的拼写错误的单词:

hunspell -l example.txt

使用自定义个人词典检查拼写

使用 -p 选项指定个人词典:

hunspell -p good_words.txt example.txt

hunspell 命令选项详解

如下给出 hunspell 命令的选项的详细解释说明:

选项详细功能说明
-1只检查每行以制表符分隔后的第一个字段
-a管道模式,便于脚本的调用
--check-apostrophe强制把 Unicode 右单引号(U+2019)作为一个字符来检查
--check-url跳过内容中的 URL、邮箱、路径等文件信息
-D显示加载词典时使用的路径信息与系统可用词典列表
-d dict指定拼写检查时使用的词典,多词典用之间使用逗号分隔
-G只输出拼写正确的单词或行
-H按照 HTML/SGML 语法结构来检查文件内容,检查时会忽略标签信息,只检查内容
-h, --help显示简易的帮助信息
-i enc指定输入文本使用的字符编码
-L只输出包含错误单词的行
-l以非交互模式输出输出错误单词的列表
-m对单词进行解析,输出单词的词缀信息
-n以 nroff/troff 格式来检查文档的内容
-O按照 OpenDocument 格式文档来检查内容
-P pwd指定加载加密词典时需要使用的密码
-p dict指定自定义个人词典
-r标记低频的词汇,提示一些可能潜在的拼写错误
-s提取单词的词根信息
-t按照 LaTeX 文档,来检查内容,检查时会忽略命令信息
-v, --version显示版本信息并退出
-vv输出 Ispell 兼容格式的版本信息
-w从一个单词或者一行的输入中输出错误单词信息
-X按 XML 语法结构,检查内容,会忽略标签与属性信息

结语

hunspell 是 Linux 系统下的一款功齐全、生态成熟的拼写检查工具,它能够支持多种文件格式、多种语言,也可集成到脚本中或者应用中来检查拼写内容。

在本文中介绍了 hunspell 命令的基本语法结构,给出了 hunspell 命令的详细使用示例,最后也给出了 hunspell 命令的所有选项的详细解释说明。hunspell 命令可用于检查中文,但是目前缺少中文词典。