将字典添加到Aspell/Pspell

ede*_*eye 6 php aspell pspell

我已成功安装Aspell并使用Pspell编译PHP,一切似乎都运行正常.

我唯一无法做的就是创建一个"忽略"单词列表,或者个人字典,但是你要引用它.

我已经尝试了这里这里概述的步骤,但都没有任何效果.

如上面的链接和Aspell文档中所述,我尝试创建手册中概述的个人字典:

personal_ws-1.1 en 0
Rubiflex
quasirhombicosidodecahedron
Run Code Online (Sandbox Code Playgroud)

我将它放在aspell目录,我的主目录,根目录中,它从未被选中.Aspell文档实际上从未说明它应该存在的位置或者如何以其他方式加载它.

另一个参考是创建单个单词列表:

创建一个txt文件,其中包含您要添加到字典中的单词,其中每个单词都在一个单独的行上,然后运行以下命令:

 aspell --lang=en create master ./custom.rws < test.txt
Run Code Online (Sandbox Code Playgroud)

这将创建一个名为custom.rws的文件,该文件将包含字典的aspell编码字.只要扩展名为.rws,您就可以将文件命名为任意名称.现在将其添加到字典中,通过运行以下命令将custom.rws文件移动到字典位置/ usr/lib/aspell:

cp custom.rws /usr/lib/aspell/

要完成将其添加到字典,请通过运行以下命令将其更改为字典目录:

 cd /usr/lib/aspell/
 then edit the following file: nano en_US.multi
Run Code Online (Sandbox Code Playgroud)

并添加以下行:

add custom.rws

这些方法似乎都不起作用,我找不到任何关于如何正确添加字典或单词列表的明确示例.这是我能找到的两种最有前途的方法,但都没有效果.有谁知道我怎么能让Aspell使用我创建的个人字典文件?

感谢您的时间.

编辑:这里概述步骤对我有用.它们与此处列出的非常相似,除了后者指的是"en_US.multi",前者指的是"en.multi".将自定义列表添加到en.multi(而不是en_US.multi)后,它按预期工作.

小智 2

对于我对 Perl 的 Text::Aspell 模块和代码的最新工作,以确定查询公司搜索引擎的 Web 访问者的母语,我遇到了您描述的一些陷阱(Aspell6 中未实现个人词典)。不过,我使用“额外字典”的概念来解决这个问题,每种可能的语言都有一个。

我还必须解决阿斯佩尔没有阿拉伯语、希伯来语、日语、中文和韩语词典的事实。这些语言是专门处理的。

您可以在http://vouters.dyndns.org/tima/Linux-Windows-Perl-Aspell-Determining_the_country_of_a_Web_query.html查看适用于运行 Windows/MinGW 的 Linux 和 Windows 的完整最新 Perl 和 bash 代码。您可以使用文档参考部分中的 URL 链接将一些 Perl 的代码概念调整为 PHP。