运维相关 · 2009年7月7日 0

关于aspell英文拼写建议使用自定义字典

我的环境是ubuntu,所以安装很简单

sudo apt-get install php5-pspell
sudo apt-get install libpspell-dev

这样就行了,记得重启apache

将你需要的单词作成一个文本文件,每行一个词,记得,一定是单词,短语是不行的,就是说词的中间不能有空格,有了也不会出错,只是会被忽略掉而已。

aspell --lang=en create master ./custom.rws < test.txt

使用这个命令生成字典文件,然后copy到aspell的目录下,比如我的是/usr/lib/aspell/

sudo cp custom.rws /usr/lib/aspell/

编辑en-wo_accents.multi你会看到如下的内容

add en-common.rws
add en_US-wo_accents-only.rws
add en_GB-ise-wo_accents-only.rws

这三个是英文查询时候会用到的3个字典,我这里的需求比较特殊,所以我只使用我自己的字典,那么将这三行都注释掉,添加上刚才我们的字典文件就可以了
下面就是我的文件内容

#add en-common.rws
#add en_US-wo_accents-only.rws
#add en_GB-ise-wo_accents-only.rws
add custom.rws

这就搞定了,写个小程序试试吧

<?php
$word    = 'look at s';
$pspell_link = pspell_new('en');
$sug = pspell_suggest($pspell_link, $word);
$suggestions = array_unique($sug);
print_r($suggestions);
?>