Automating dictionary.lst? (Was: Re: openoffice.org-spellcheck-fr-fr in 1.0.2 don't work)
Rene Engelhard wrote:
As you said mktemp is the error, I added a chmod 644
/etc/openoffice/dictionary.lst in my prerm's.
New openoffice.org-spellcheck-de will be uploaded in a few minutes...
Cannot that "/etc/openoffice/dictionary.lst" file be created in a more
automated way than is actually? Seems that parsing the contents of the
ooo dir gives enough info to do that (provided some overrides are given
to help). I have done a quick perl script to test that possibility
(attached to this message). It is more a proof of concept, and there are
surely special cases where it gives wrong results but seems to work.
Other possibility would be using some of the dictionaries-common support
developed for ispell dictionaries and wordlists.
Cheers,
--
=====================================================================
Agustin Martin Domingo, Dpto. de Fisica, ETS Arquitectura Madrid,
(U. Politecnica de Madrid) tel: +34 91-336-6536, Fax: +34 91-336-6554,
email:agmartin@aq.upm.es, http://corbu.aq.upm.es/~agmartin/welcome.html
#!/usr/bin/perl -w
$ooodir="/usr/lib/openoffice/share/dict/ooo";
%overridehyph=("nn","NO",
"nb","NO");
chdir $ooodir;
@entries = <*.dic>;
@dictionaries = grep {not /^hyph/} @entries;
@hyphenfiles = grep {/^hyph/} @entries;
foreach $d ( @dictionaries ){
$d =~ s/\.dic//;
my ( $lang, $country ) = split("_",$d);
print "DICT $lang $country $d\n";
}
foreach $h ( @hyphenfiles ){
$h =~ s/\.dic$//;
$lang = $h;
$lang =~ s/^hyph_//;
$country = uc($lang);
$country = $overridehyph{$lang} if exists $overridehyph{$lang};
print "HYPH $lang $country $h\n";
}
Reply to: