Accepting request 37270 from OpenOffice.org:UNSTABLE

Copy from OpenOffice.org:UNSTABLE/myspell-dictionaries based on submit request 37270 from user pmladek

OBS-URL: https://build.opensuse.org/request/show/37270
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/myspell-dictionaries?expand=0&rev=14
This commit is contained in:
OBS User autobuild 2010-04-08 10:36:00 +00:00 committed by Git OBS Bridge
parent e7cda4d828
commit ef24528f63
6 changed files with 2526 additions and 1254 deletions

View File

@ -0,0 +1,621 @@
#!/usr/bin/perl -w
# This script changes the definite article of ProductName
use strict;
use File::Copy;
my $args = join ' ', @ARGV;
# start to cound dictionary sources from a non-zero value
my $sources_counter = 1000;
# FIXME: we need a global variable to pass the data to the sort function
my $pdata_sort = undef;
############################################################
# loading data
############################################################
sub save_locale_data($$$)
{
my ($pdata, $locale, $pld) = @_;
my @conditions = ();
push @conditions, $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
push @conditions, 'default';
# default pack suffix
unless (defined $pld->{'default'}{'pack_suffix'}) {
$pld->{'default'}{'pack_suffix'} = lc $pld->{'default'}{'language'};
$pld->{'default'}{'pack_suffix'} =~ s/\s+/\-/g;
}
# default provided lang
unless (defined $pld->{'default'}{'prov_lang'}) {
$pld->{'default'}{'prov_lang'} = $locale;
$pld->{'default'}{'prov_lang'} =~ s/_.*//;
}
# required tags:
# source is not required because one source tarball might provide more dictionaries
# license
die "Error: license tag is not defined for the locale $locale, line $.\n" unless (defined $pld->{'default'}{'license'});
# version
foreach my $condition_tag (@conditions) {
die "Error: version tag is not defined for the locale $locale, line $.\n" unless (defined $pld->{$condition_tag}{'version'});
}
# finally save the locale data
$pdata->{'dict'}{$locale} = $pld;
# udpate the list of used licenses (for source package
foreach my $condition_tag (@conditions) {
if (defined $pld->{$condition_tag}{'license'}) {
foreach my $license (@{$pld->{$condition_tag}{'license'}}) {
$pdata->{'license'}{$license} = 1;
}
}
}
}
sub add_condition_tag($$$)
{
my ($pld, $locale, $condition_tag) = @_;
if ($condition_tag ne 'default') {
if (defined $pld->{'condition_tag'}) {
die "Error: Only one condition is supported for one dictionary, line $.\n" if ($pld->{'condition_tag'} ne $condition_tag);
} else {
$pld->{'condition_tag'} = $condition_tag;
% {$pld->{$condition_tag}} = ();
}
} else {
% {$pld->{'default'}} = () unless (defined $pld->{'default'});
}
}
sub save_locale_data_string($$$$$)
{
my ($pld, $locale, $condition_tag, $tag, $value) = @_;
add_condition_tag($pld, $locale, $condition_tag);
die "Error: Tag $tag defined twice, line $.\n" if (defined $pld->{$condition_tag}{$tag});
$pld->{$condition_tag}{$tag} = $value;
}
sub add_locale_data_list($$$$$)
{
my ($pld, $locale, $condition_tag, $tag, $value) = @_;
add_condition_tag($pld, $locale, $condition_tag);
foreach my $item ( split(/,\s*/, $value) ) {
if ( $tag eq 'types' && ! ($item =~ m/^(myspell|hunspell|hyphen|thesaurus)$/) ) {
print STDERR "Warning: unknown type $item on line $.\n";
}
@ {$pld->{$condition_tag}{$tag}} = () unless (defined $pld->{$condition_tag}{$tag});
push @ {$pld->{$condition_tag}{$tag}}, $item;
}
}
sub read_data($$)
{
my ($pdata, $data_file) = @_;
my $curLang;
my $locale = undef;
# pointer to locale data
my $pld = undef;
my $condition = undef;
my $condition_dict = undef;
my $condition_tag = 'default';
my $condition_else = undef;
my $condition_dict_was = undef;
open DATA , "< $data_file" or die "Can't open '$data_file'\n";
while( my $line = <DATA>){
chomp $line;
# ignore comments
$line =~ s/#.*$//;
# print "just empty line?\n";
# empty line
if ( $line =~ m/^\w*$/ ) {
next;
}
# %if
if ( $line =~ m/^(\%if.*)$/ ) {
die "Error: FIXME: %if with more levels are not supported, line $.\n" if (defined $condition || defined $condition_else || $condition_tag ne 'default');
$condition = "$1";
next;
}
# %else
if ( $line =~ m/^\%else\s*$/ ) {
die "Error: No %if defined for %else at line $.\n" unless ($condition_tag ne 'default');
$condition_tag = 'default';
$condition_else = 1;
next;
}
# %endif
if ( $line =~ m/^\%endif\s*$/ ) {
die "Error: Define the default doctionary using %else, line $.\n" if ($condition_tag ne 'default');
if (defined $condition_else) {
$condition_else = undef;
} elsif (defined $condition_dict) {
$condition_dict = undef;
# the next line must define another dictionary (=> the locale: tag must follow)
$condition_dict_was = 1;
} else {
die "Error: %endif does not match %if at line $.\n";
}
next;
}
# tags
if ( $line =~ m/^(\w+):\s*(.*)$/ ) {
# support uppercase tag names
my $tag = lc($1);
my $value = $2;
# remove blank characters from the end of the value
$value =~ s/\s*$//;
die "Error: no value defined for the tag $tag, line $.\n" unless ($value);
if ( $tag eq 'locale' ) {
die "Error: locale $value already defined earlier, line $.\n" if ( defined ($pdata->{'dict'}{$value}) );
# a section for new language starts => save the old data
save_locale_data($pdata, $locale, $pld) if defined ($locale);
$locale = $value;
% {$pdata->{'dict'}{$locale}} = ();
$pld = \% {$pdata->{'dict'}{$locale}};
if (defined $condition) {
$condition_dict = $condition;
$pld->{'contition_dict'} = $condition;
$condition = undef;
}
# good, this was the right place to put the %endif for the whole dictionary
$condition_dict_was = undef;
next;
}
if (defined $condition_dict_was) {
die "Error: %endif on wrong place, line $.\n" .
" You either need to put %if-%endif are the whole dictionary or you must\n" .
" use :%if-%else-%endif to define a specific dictionary for a specific\n" .
" distribution, line\n";
}
if (defined $condition) {
$condition_tag = $condition;
$condition = undef;
}
if ( $tag eq 'encoding' ||
$tag eq 'language' ||
$tag eq 'pack_suffix' ||
$tag eq 'prov_lang' ||
$tag eq 'source' ||
$tag eq 'url' ||
$tag eq 'version' ) {
save_locale_data_string($pld, $locale, $condition_tag, $tag, $value);
next;
}
if ( $tag eq 'dependency' ||
$tag eq 'license' ||
$tag eq 'types' ||
$tag eq 'prep' ) {
add_locale_data_list($pld, $locale, $condition_tag, $tag, $value);
next;
}
}
die "Synrax error in $data_file, line $.\n";
}
save_locale_data($pdata, $locale, $pld) if defined ($locale);
close(DATA);
}
############################################################
# writing sections
############################################################
##################################
# conditional lines
sub write_conditional_prep_hack($$$)
{
my ($pld, $locale, $condition_tag) = @_;
my $out = "";
foreach my $hack (@{$pld->{$condition_tag}{'prep'}}) {
$out .= "$hack\n";
}
return $out;
}
sub write_conditional_version_definition($$$)
{
my ($pld, $locale, $condition_tag) = @_;
my $out = "";
$out .= "\%define ${locale}_version $pld->{$condition_tag}{'version'}\n" if (defined $pld->{$condition_tag}{'version'});
return $out;
}
sub write_conditional_sources_unpack($$$)
{
my ($pld, $locale, $condition_tag) = @_;
my $out = "";
$out .= " \%\{S:$pld->{$condition_tag}{'source_number'}\} \\\n" if (defined $pld->{$condition_tag}{'source_number'});
}
sub write_conditional_encoding($$$)
{
my ($pld, $locale, $condition_tag) = @_;
my $out = "";
$out .= " \"${locale}\") coding=\"$pld->{$condition_tag}{'encoding'}\" ;;\n" if (defined $pld->{$condition_tag}{'encoding'});
return $out;
}
##############################
# simple sections
sub write_do_not_edit_section($)
{
my $out = "###################################################################\n" .
"## DO NOT EDIT THIS SPEC FILE\n" .
"## Generated by:\n" .
"## perl myspell-dictionaries-gen-spec $args\n" .
"###################################################################";
return $out;
}
sub write_all_licenses_section($)
{
my ($pdata) = @_;
my @licenses = sort (keys %{$pdata->{'license'}});
my $out = join ", ", @licenses;
return $out;
}
##############################
# all langs sections
sub write_sources_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
my $out = "";
my @conditions = ();
push @conditions, $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
push @conditions, 'default';
foreach my $condition_tag (@conditions) {
if (defined $pld->{$condition_tag}{'source'}) {
$pld->{$condition_tag}{'source_number'} = $sources_counter++;
$out .= "Source$pld->{$condition_tag}{'source_number'}: $pld->{$condition_tag}{'source'}\n";
}
}
return $out;
}
sub write_lang_name_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
my $out = "";
$out .= " \"${locale}\") lang_name=\"$pld->{'default'}{'pack_suffix'}\" ;;\n" if (defined $pld->{'default'}{'pack_suffix'});
return $out;
}
sub write_encoding_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
my $out = "";
my $condition_tag = undef;
$condition_tag = $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
if ((defined $pld->{'default'}{'encoding'}) ||
(defined $condition_tag && defined $pld->{$condition_tag}{'encoding'})) {
$out .= write_conditional_lines($pld, $locale, \&write_conditional_encoding, 1);
}
return $out;
}
##############################
# optional langs sections
sub write_metadata_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
my $out = "";
my $condition_tag = undef;
$condition_tag = $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
$out .= write_conditional_lines($pld, $locale, \&write_conditional_version_definition, 0);
$out .= "\%package -n myspell-$pld->{'default'}{'pack_suffix'}\n";
$out .= "License: " . join (", ", @{$pld->{'default'}{'license'}}) . "\n";
if (defined $condition_tag) {
$out .= "Version: %${locale}_version\n";
} else {
$out .= "Version: $pld->{'default'}{'version'}\n";
}
$out .= "Release: 1\n";
$out .= "Group: Productivity/Text/Spell\n";
$out .= "Summary: $pld->{'default'}{'language'} Dictionary for MySpell\n";
$out .= "Provides: myspell-dictionary\n";
$out .= "Provides: ooo-dictionaries:/usr/lib/ooo-1.1/share/dict/ooo/${locale}.dic\n";
$out .= "Provides: locale(OpenOffice_org:$pld->{'default'}{'prov_lang'}) locale(seamonkey-spellchecker:$pld->{'default'}{'prov_lang'})\n";
if (defined $pld->{'default'}{'dependency'}) {
foreach my $dep (@{$pld->{'default'}{'dependency'}}) {
$out .= "$dep\n";
}
}
$out .= "\n";
$out .= "%description -n myspell-$pld->{'default'}{'pack_suffix'}\n";
$out .= "The $pld->{'default'}{'language'} dictionary for MySpell.\n";
$out .= "\n";
$out .= "The MySpell spell-checker is used by the OpenOffice.org office suite,\n";
$out .= "the Mozilla Composer, and the Mozilla Mail message composition window.\n";
return $out;
}
sub write_sources_unpack_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
return write_conditional_lines($pld, $locale, \&write_conditional_sources_unpack, 1);
}
# dict-specific hacks in the %prep section
sub write_prep_hacks_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
my $out = "";
my $condition_tag = undef;
$condition_tag = $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
if ((defined $pld->{'default'}{'prep'}) ||
(defined $condition_tag && defined $pld->{$condition_tag}{'prep'})) {
$out .= write_conditional_lines($pld, $locale, \&write_conditional_prep_hack, 1);
}
return $out;
}
sub write_files_section($$)
{
my ($pdata, $locale) = @_;
my $pld = \% {$pdata->{'dict'}{$locale}};
return "\%files -f ${locale}.list -n myspell-$pld->{'default'}{'pack_suffix'}\n";
}
########################################################
# universal writing functions
sub sort_dictionaries()
{
# sort the dictionaries by the package name
$pdata_sort->{'dict'}{$a}->{'default'}{'pack_suffix'} cmp $pdata_sort->{'dict'}{$b}->{'default'}{'pack_suffix'};
}
# the text is different on different distributions
sub write_conditional_lines($$$$)
{
my ($pld, $locale, $write_conditional_lines, $write_default ) = @_;
my $out = "";
my $condition_tag = undef;
$condition_tag = $pld->{'condition_tag'} if (defined $pld->{'condition_tag'});
my $conditional_lines = "";
$conditional_lines = & {$write_conditional_lines} ($pld, $locale, $condition_tag) if (defined $condition_tag);
my $default_lines = & {$write_conditional_lines} ($pld, $locale, 'default');
# write the %if, %else, %endif liens only when the condition is defined and something to write is defined
my $write_condition = undef;
$write_condition = 1 if ($condition_tag && ($conditional_lines || $default_lines));
if ($write_condition) {
$out .= "$pld->{'condition_tag'}\n";
$out .= $conditional_lines;
$out .= "\%else\n";
}
if ($write_condition || $write_default) {
$out .= & {$write_conditional_lines} ($pld, $locale, 'default');
}
if ($write_condition) {
$out .= "\%endif\n";
}
return $out;
}
# the text is repeated for each locale
# it is used only for selected distributions
# entire dictionary is disabled on some distributions
sub write_locale_sections_optional($$$)
{
my ($pdata, $write_section, $delimiter) = @_;
my $out = "";
$pdata_sort = $pdata;
foreach my $locale (sort sort_dictionaries keys %{$pdata->{'dict'}}) {
$out .= "$pdata->{'dict'}{$locale}->{'contition_dict'}\n" if (defined $pdata->{'dict'}{$locale}->{'contition_dict'});
$out .= & {$write_section} ($pdata, $locale);
$out .= "\%endif\n" if (defined $pdata->{'dict'}{$locale}->{'contition_dict'});
$out .= "$delimiter";
}
return $out;
}
# the text is repeated for each locale
# it is used on all distributions
sub write_locale_sections($$)
{
my ($pdata, $write_section) = @_;
my $out = "";
$pdata_sort = $pdata;
foreach my $locale (sort sort_dictionaries keys %{$pdata->{'dict'}}) {
$out .= & {$write_section} ($pdata, $locale);
}
return $out;
}
# the text is not repeated for each locale
sub write_simple_section($$)
{
my ($pdata, $write_section) = @_;
return & {$write_section} ($pdata);
}
sub write_spec($$)
{
my ($pdata, $spec_template) = @_;
my $all_licenses = write_simple_section ($pdata, \&write_all_licenses_section);
my $do_not_edit = write_simple_section ($pdata, \&write_do_not_edit_section);
my $sources = write_locale_sections ($pdata, \&write_sources_section);
my $metadata = write_locale_sections_optional ($pdata, \&write_metadata_section, "\n\n\n");
my $sources_unpack = write_locale_sections_optional ($pdata, \&write_sources_unpack_section, "");
my $prep_hacks = write_locale_sections_optional ($pdata, \&write_prep_hacks_section, "");
my $lang_name = write_locale_sections ($pdata, \&write_lang_name_section);
my $encoding = write_locale_sections ($pdata, \&write_encoding_section);
my $files = write_locale_sections_optional ($pdata, \&write_files_section, "\n");
my $spec = $spec_template;
$spec =~ s/.in$//;
print "Generating $spec...\n";
open TEMPLATE , "< $spec_template" or die "Can't open '$spec_template'\n";
open SPEC , "> $spec" or die "Can't open '$spec for writing'\n";
while( my $line = <TEMPLATE>) {
$line =~ s/\@ALL_LICENSES\@/$all_licenses/;
$line =~ s/\@DO_NOT_EDIT_COMMENT\@/$do_not_edit/;
$line =~ s/\@SOURCES\@/$sources/;
$line =~ s/\@METADATA\@/$metadata/;
$line =~ s/\@SOURCES_UNPACK@/$sources_unpack/;
$line =~ s/\@PREP_HACKS@/$prep_hacks/;
$line =~ s/\@LANG_NAME@/$lang_name/;
$line =~ s/\@ENCODING@/$encoding/;
$line =~ s/\@FILES@/$files/;
print SPEC $line;
}
close(TEMPLATE);
close(SPEC);
}
############################################################
# main stuff
############################################################
sub usage()
{
print "This tool generates the help spec files\n\n" .
"Usage:\n".
"\tmyspell-dictionaries-gen-spec [--help] spec_template.in data_file\n\n";
}
# info about data structure
# it is a hash, keys introduce perl-like structure items:
# 'dict' ... hash; key is the primary locale for the given dictioanry, e.g. "en_US"
# the value is hash that store an information about ech dictionary using
# tags; the known tags are:
# 'language' hash(*) of string; language name, e.g Catalan, German, Norwegian Bokmaal
# 'pack_suffix' hash(*) of string; package name is normaly defined by the language name (lowercase,
# underscore instread of space); you might define a non-standard one
# using this tag, e.g norsk-bokmaal for Norwegian Bokmaal
# 'prov_lang' hash(*) of string; most dictionaries provides the language defined by the locale;
# you might force the full locale using this tag; just mention
# the full locale here again, e.g. de_DE vs de_AT
# 'version' hash(*) of string; package version, e.g. 2.1.5
# 'source' hash(*) of string; source file name, e.g. catalan.oxt
# 'source_number' hash(*) of integers; number of the source file, e.g. 1000, 1001, 1002
# 'license' hash(*) of array of strings; comma separated list of dictionary licenses, e.g. GPLv2, LGPLv2.1
# 'types' hash(*) of array of strings; comma separated list of included dictionary types; possible values are:
# myspell, hunspell, hyphen, thesaurus
# 'url' hash(*) of string; url where the dictionary sources was taken from, e.g.
# http://extensions.services.openoffice.org/project/dict-catalan
# 'encoding' hash(*) of string; documentation files in non-UTF-8 enconding should be recoded; the original
# encoding is guessed from the locale; you might define another encoding
# here, e.g. ISO-8859-1
# 'depdendency' hash(*) of array of strings; extra dependency, e,g. Conflicts: myspell-german-old
# 'prep' hash(*) of array of strings; extra hacks for the %prep section
#
# the above tags are taken from the data file; the hash also support some extra keys:
# 'contition_dict' string; defines a condition under which the dictionary is packaged, e.g. %if %suse_version <= 1120
# 'license' ... hash; key is the license used for a dictionary, e.g. LGPLv2; it is used to generate
# licenses for the source package
#
# hash(*) of ... - key is the condition under which the tag is defined; it is usually used to define a special tag
# for another distro; the key 'default' defines tags for the default distro, ...
my %data;
my $spec_template;
my $data_file;
my $help;
for my $arg (@ARGV) {
if ($arg eq '--help' || $arg eq '-h') {
usage;
exit 0;
} else {
-f $arg || die "Error: The file does not exist: $arg\n";
if (! defined $spec_template) {
$spec_template = $arg;
} elsif (! defined $data_file) {
$data_file = $arg;
} else {
die "Error: Too many arguments!\n";
}
}
}
die "Error: Spec file template is not defined, try --help" unless (defined $spec_template);
die "Error: Data file is not defined, try --help" unless (defined $data_file);
read_data(\%data, $data_file);
write_spec(\%data, $spec_template);

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Wed Apr 7 17:50:57 CEST 2010 - pmladek@suse.cz
- started to generate the spec file using a script:
+ avoid duplicated information; reduce cut&paste errors
+ update License tags according to Kalman's notes
+ list all licenses for the source package
-------------------------------------------------------------------
Mon Mar 16 16:31:29 CEST 2010 - kkemenczy@opensuse.org
- Remove German myspell dictionaries from openSUSE 11.3 and later

View File

@ -1,97 +0,0 @@
af_ZA african
ar_DZ arabic
as_IN assamese
be_UA belarusian
bg_BG bulgarian
bn_BD bengali
br_FR breton
ca_ES catalan
cs_CZ czech
cy_GB welsh
da_DK danish
de_AT austrian
de_DE german
de_CH nswiss
el_GR greek
en_AU australian
en_GB british
en_NZ new-zealand
en_US american
en_ZA south-african-english
eo_EO esperanto
es_AR spanish-argentine
es_BO spanish-bolivian
es_CL spanish-chilean
es_CO spanish-colombian
es_CR spanish-costa-rican
es_DO spanish-dominican
es_EC spanish-ecuadorian
es_ES spanish
es_GT spanish-guatemalan
es_HN spanish-honduran
es_MX mexican
es_NI spanish-nicaraguan
es_PA spanish-panamanian
es_PE spanish-peruvian
es_PR spanish-puerto-rican
es_PY spanish-paraguayan
es_SV spanish-salvadorean
es_UY spanish-uruguayan
es_VE spanish-venezuelan
et_EE estonian
fa_IR persian
fo_FO faroese
fr_FR french
ga_IE irish
gd_GB gaelic-scots
gl_ES galician
gu_IN gujarati
he_IL hebrew
hi_IN hindi
hr_HR croatian
hu_HU hungarian
ht_HT haitian
id_ID indonese
is_IS icelandic
it_IT italian
km_KH khmer
ku_TR kurdish
lt_LT lithuanian
lv_LV latvian
mai_IN maithili
mg_MG malagasy
mi_NZ maory
mk_MK macedonian
ml_IN malayalam
mr_IN marathi
ms_MY malay
nb_NO norsk-bokmaal
nl_NL dutch
nn_NO norsk-nynorsk
nr_ZA ndebele
ny_MW chichewa
oc_FR occitan-lengadocian
pl_PL polish
pt_BR brazilian
pt_PT portuguese
qu_EC kichwa
ro_RO romanian
ru_RU russian
rw_RW kinyarwanda
sk_SK slovak
sl_SI slovene
sq_AL albanian
ss_ZA swati
st_ZA sotho-northern
sv_SE swedish
sv_FI swedish-finland
sw_KE kiswahili
th_TH thai
tl_PH tagalog
tn_ZA setswana
ts_ZA tsonga
uk_UA ukrainian
ve_ZA venda
vi_VN vietnamese
xh_ZA xhosa
zu_ZA zulu

965
myspell-dictionaries.data Normal file
View File

@ -0,0 +1,965 @@
# file format:
#
# comments are separated by #
#
# supported tags
# Language: language name, e.g Catalan, German, Norwegian Bokmaal
# pack_suffix: package name is normaly defined by the language name (lowercase,
# underscore instread of space); you might define a non-standard one
# using this tag, e.g norsk-bokmaal for Norwegian Bokmaal
# Locale: locale supported by the dictionary, e.g ca_ES
# Prov_lang: most dictionaries provides the language defined by the locale;
# you might force the full locale using this tag; just mention
# the full locale here again, e.g. de_DE vs de_AT
# Version: package version, e.g. 2.1.5
# Source: source file name, e.g. catalan.oxt
# License: comma separated list of dictionary licenses, e.g. GPLv2, LGPLv2.1
# Types: comma separated list of included dictionary types; possible values are:
# myspell, hunspell, hyphen, thesaurus
# URL: url where the dictionary sources was taken from, e.g.
# http://extensions.services.openoffice.org/project/dict-catalan
# Encoding: documentation files in non-UTF-8 enconding should be recoded; the original
# encoding is guessed from the locale; you might define another encoding
# here, e.g. ISO-8859-1
# dependency: extra dependency, e,g. Conflicts: myspell-german-old
# Prep: extra hacks for the %prep section
# the whole dictionary might be disabled on some distribution: use %if <condition> and %endif
# around all tags related to the dictionary
# the Version, Source, License tags might be conditional: use %if <condition>, %else, and %endif
# to define the default and distro-specific values
Locale: af_ZA
Language: African
URL: http://extensions.services.openoffice.org/project/dict_af
Version: 20080701
Types: hunspell, hyphen
License: LGPLv2.1
Source: dict-af.oxt
Locale: ar_DZ
Language: Arabic
URL: http://extensions.services.openoffice.org/project/arabic-spell
Version: 20080110
Types: hunspell
# under investigation, it belongs to several countries
Prep: mv dict-ar/ar.aff dict-ar/ar_DZ.aff
Prep: mv dict-ar/ar.dic dict-ar/ar_DZ.dic
# this project is under GPL/LGPL/MPL tri-license, see
# http://ayaspell.sourceforge.net/
License: GPLv2+, LGPLv2.1+, MPLv1.1
Source: dict-ar.oxt
Locale: as_IN
Language: Assamese
Prov_lang: as_IN
URL: http://extensions.services.openoffice.org/project/AssameseDict
Version: 1.0.3
Types: hunspell
License: GPLv2, LGPLv2.1, MPLv1.1
Source: as_IN.oxt
Locale: bg_BG
Language: Bulgarian
URL: http://extensions.services.openoffice.org/project/dictionaries-bg
Version: 4.1.5
Types: myspell, hyphen, thesaurus
License: GPLv2
Source: dictionaries-bg.oxt
Locale: bn_BD
Language: Bengali
Prov_lang: bn_BD
URL: http://extensions.services.openoffice.org/project/dict-bn
Version: 20080201
Types: hunspell
License: GPLv2+
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_bn_IN
Source: dict-bn.oxt
Locale: be_UA
Language: Belarusian
Prov_lang: be_UA
URL: http://extensions.services.openoffice.org/project/dict-be-classic
Version: 1.1
Types: myspell, hyphen
Prep: mv dict-be-classic/be-classic.aff dict-be-classic/be_UA.aff
Prep: mv dict-be-classic/be-classic.dic dict-be-classic/be_UA.dic
License: GPLv3
Source: dict-be-classic.oxt
Locale: br_FR
Language: Breton
Prov_lang: br_FR
URL: http://extensions.services.openoffice.org/project/Dict-br_Drouizig
Version: 0.3
Types: hunspell
License: LGPLv2.1+
Source: dict-br_0.3.oxt
Locale: ca_ES
Language: Catalan
URL: http://extensions.services.openoffice.org/project/dict-catalan
Version: 2.1.5
Types: hunspell
License: GPLv2, LGPLv2.1
# TODO mail to the owner to solve this
Prep: mv catalan/dictionaries/catalan.aff catalan/dictionaries/ca_ES.aff
Prep: mv catalan/dictionaries/catalan.dic catalan/dictionaries/ca_ES.dic
#, hyphen available: http://extensions.services.openoffice.org/project/ca_hyph
#, thesaurus available: http://extensions.services.openoffice.org/project/thesaurus-ca
Source: catalan.oxt
Locale: cs_CZ
Language: Czech
Types: myspell
URL: http://extensions.services.openoffice.org/project/dict-cs
Version: 20080822
Types: hunspell, hyphen, thesaurus
License: GPLv2
Source: dict-cs-2.0.oxt
Locale: cy_GB
Language: Welsh
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Welsh_.28Wales.29
Version: 20040425
Types: myspell
License: GPLv2
Source: cy_GB.tar.bz2
Locale: da_DK
Language: Danish
URL: http://extensions.services.openoffice.org/project/dict-da
Version: 20090925 # 1.4
Types: hunspell, hyphen
License: GPLv2, LGPLv2.1, MPLv1.1
#, thesaurus available: http://extensions.services.openoffice.org/project/danske_synonymer
Source: dict-da-current.oxt
%if %suse_version <= 1120
Locale: de_AT
Language: Austrian
Prov_lang: de_AT
URL: http://extensions.services.openoffice.org/project/dict-de_AT_frami
Version: 20100307
Types: hunspell, hyphen, thesaurus
# TODO need to send request to the developer
Prep: mv dict-de_AT-frami_2010-03-07/de_AT_frami/de_AT_frami.aff dict-de_AT-frami_2010-03-07/de_AT_frami/de_AT.aff
Prep: mv dict-de_AT-frami_2010-03-07/de_AT_frami/de_AT_frami.dic dict-de_AT-frami_2010-03-07/de_AT_frami/de_AT.dic
License: GPLv2+
Source: dict-de_AT-frami_2010-03-07.oxt
%endif
%if %suse_version <= 1120
Locale: de_CH
Language: Swiss
pack_suffix: nswiss
Prov_lang: de_CH
URL: http://extensions.services.openoffice.org/project/dict-de_CH_frami
Version: 20100307
Types: hunspell, hyphen, thesaurus
# TODO need to send request to the developer
Prep: mv dict-de_CH-frami_2010-03-07/de_CH_frami/de_CH_frami.aff dict-de_CH-frami_2010-03-07/de_CH_frami/de_CH.aff
Prep: mv dict-de_CH-frami_2010-03-07/de_CH_frami/de_CH_frami.dic dict-de_CH-frami_2010-03-07/de_CH_frami/de_CH.dic
License: GPLv2+
Source: dict-de_CH-frami_2010-03-07.oxt
%endif
%if %suse_version <= 1120
Locale: de_DE
Language: German
URL: http://extensions.services.openoffice.org/project/dict-de_DE_frami
Version: 20100307
Types: hunspell, hyphen, thesaurus
Dependency: Provides: myspell-german-dictionary
Dependency: Conflicts: myspell-german-old
# TODO need to send request to the developer
Prep: mv dict-de_DE-frami_2010-03-07/de_DE_frami/de_DE_frami.aff dict-de_DE-frami_2010-03-07/de_DE_frami/de_DE.aff
Prep: mv dict-de_DE-frami_2010-03-07/de_DE_frami/de_DE_frami.dic dict-de_DE-frami_2010-03-07/de_DE_frami/de_DE.dic
License: GPLv2+
Source: dict-de_DE-frami_2010-03-07.oxt
%endif
Locale: el_GR
Language: Greek
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Greek_.28Greece.29
Version: 20041220
Types: myspell
License: GPLv2
# TODO check these in the future:
# - http://extensions.services.openoffice.org/project/el_dict
# - http://extensions.services.openoffice.org/project/dictionary-gr
Source: el_GR.tar.bz2
Locale: en_AU
Language: Australian
Prov_lang: en_AU
URL: http://extensions.services.openoffice.org/project/AustralianDictionary
Version: 20081215
Types: myspell, hyphen, thesaurus
License: GPLv2+
Source: dict-en-au-2008-12-15.oxt
Locale: en_GB
Language: British
Prov_lang: en_GB
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#English_.28AU.2CCA.2CGB.2CNZ.2CUS.2CZA.29
Version: 20061130
Types: myspell
License: LGPLv2.1
#, hyphen available: http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/hyph_en_GB.zip
#, thesaurus available: http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/thes_en_US_v2.zip
Source: en_GB.tar.bz2
Locale: en_NZ
Language: New Zealand
Prov_lang: en_NZ
URL: http://extensions.services.openoffice.org/project/dict-en-nz-2008-12-03
Version: 20081204 # 0.90.0
Types: myspell, hyphen, thesaurus
License: GPLv2, LGPLv2.1
Source: dict-en-nz-2008-12-03.oxt
Locale: en_US
Language: American
URL: http://extensions.services.openoffice.org/project/en_US-dict
Version: 20060207 # 1.0
Types: myspell
License: LGPLv2.1, BSD
Source: en_US.oxt
Locale: en_ZA
Language: South African English
Prov_lang: en_ZA
URL: http://extensions.services.openoffice.org/project/dict-en_ZA
Version: 20091022
Types: myspell
# opensource license on the web
License: LGPLv2.1 # as aspell legacy
Source: dict-en_ZA-2009.10.22.oxt
Locale: eo_EO
Language: Esperanto
URL: http://extensions.services.openoffice.org/project/literumilo
Version: 1.0
Types: hunspell
Prep: mv 1.0-dev/literumilo.aff 1.0-dev/eo_EO.aff
Prep: mv 1.0-dev/literumilo.dic 1.0-dev/eo_EO.dic
License: LGPLv3
Source: 1.0-dev.oxt
#Locale: en_CA
#Language: Canadian English
# NEW
#URL: http://extensions.services.openoffice.org/project/en_CA
#Version: 2.0.0
#Types: myspell, hyphen, thesaurus
# license issue >> TODO mail to the owner to free the dictionary
Locale: es_AR
Language: Argentine Spanish
pack_suffix: spanish-argentine
Prov_lang: es_AR
URL: http://extensions.services.openoffice.org/project/diccionario_es_AR
Version: 0.1
Types: myspell, hyphen, thesaurus
License: GPLv3, LGPLv2.1, MPLv1.1
Source: Diccionarios-Argentina_1.oxt
Locale: es_BO
Language: Bolivian Spanish
pack_suffix: spanish-bolivian
Prov_lang: es_BO
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_BO.tar.bz2
Locale: es_CL
Language: Chilean Spanish
pack_suffix: spanish-chilean
Prov_lang: es_CL
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_CL.tar.bz2
Locale: es_CO
Language: Colombian Spanish
pack_suffix: spanish-colombian
Prov_lang: es_CO
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_CO.tar.bz2
Locale: es_CR
Language: Costa Rican Spanish
pack_suffix: spanish-costa-rican
Prov_lang: es_CR
URL: http://extensions.services.openoffice.org/en/project/dicc-es_CR
Version: 0.4
Types: myspell
License: GPLv3, LGPLv3, MPLv1.1
Source: dicc-es_CR-0.4.oxt
Locale: es_DO
Language: Dominican Spanish
pack_suffix: spanish-dominican
Prov_lang: es_DO
Types: myspell
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_DO.tar.bz2
Locale: es_EC
Language: Ecuadorian Spanish
pack_suffix: spanish-ecuadorian
Prov_lang: es_EC
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_EC.tar.bz2
Locale: es_ES
Language: Spanish
# FIXME no source URL
Version: 20051029 # 0.1
Types: myspell
License: LGPLv2.1
Source: es_ES.tar.bz2
Locale: es_GT
Language: Guatemalan Spanish
pack_suffix: spanish-guatemalan
Prov_lang: es_GT
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_GT.tar.bz2
Locale: es_HN
Language: Honduran Spanish
pack_suffix: spanish-honduran
Prov_lang: es_HN
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_HN.tar.bz2
Locale: es_MX
Language: Mexican
Prov_lang: es_MX
URL: http://extensions.services.openoffice.org/project/es_MX-dictspell
Version: 20091103 # 0.3.0
Types: myspell
License: GPLv3, LGPLv3, MLP1.1
Source: es_MX.oxt
Locale: es_NI
Language: Nicaraguan Spanish
pack_suffix: spanish-nicaraguan
Prov_lang: es_NI
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_NI.tar.bz2
Locale: es_PA
Language: Panamanian Spanish
pack_suffix: spanish-panamanian
Prov_lang: es_PA
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_PA.tar.bz2
Locale: es_PE
Language: Peruvian Spanish
pack_suffix: spanish-peruvian
Prov_lang: es_PE
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_PE.tar.bz2
Locale: es_PR
Language: Puerto Rican Spanish
pack_suffix: spanish-puerto-rican
Prov_lang: es_PR
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_PR.tar.bz2
Locale: es_PY
Language: Paraguayan Spanish
pack_suffix: spanish-paraguayan
Prov_lang: es_PY
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_PY.tar.bz2
Locale: es_SV
Language: Salvadorean Spanish
pack_suffix: spanish-salvadorean
Prov_lang: es_SV
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_SV.tar.bz2
Locale: es_UY
Language: Uruguayan Spanish
pack_suffix: spanish-uruguayan
Prov_lang: es_UY
# FIXME no source URL
Version: 0.1
Types: myspell
License: LGPLv2.1
Source: es_UY.tar.bz2
Locale: es_VE
Language: Venezuelan Spanish
pack_suffix: spanish-venezuelan
Prov_lang: es_VE
URL: http://extensions.services.openoffice.org/project/dict-es_VE
Version: 1.0.1
Types: hunspell, hyphen, thesaurus
Prep: mv dict-es_VE/dictionaries/dic_es_VE.aff dict-es_VE/dictionaries/es_VE.aff
Prep: mv dict-es_VE/dictionaries/dic_es_VE.dic dict-es_VE/dictionaries/es_VE.dic
License: LGPLv3
Source: dict-es_VE.oxt
Locale: et_EE
Language: Estonian
URL: http://extensions.services.openoffice.org/project/dict_et
Version: 1.0
Types: myspell, hyphen
License: LGPLv2.1
Source: dict-et.oxt
Locale: fa_IR
Language: Persian
URL: http://extensions.services.openoffice.org/project/dict-fa
Version: 20070815
Types: hunspell
License: GPLv2
Source: fa_IR.tar.bz2
Locale: fo_FO
Language: Faroese
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Faroese_.28Faroe_Islands.29
Version: 20070816
Types: hunspell
License: GPLv2
Source: fo_FO.tar.bz2
Locale: fr_FR
Language: French
URL: http://extensions.services.openoffice.org/project/french-dictionary-classic-reform1990
Version: 20100125 # 3.5
Types: myspell, hyphen, thesaurus
# under investigation, it looks it belongs to several countries
Prep: mv ooo-dictionnaire-fr-reforme1990-v3.5/dictionaries/fr-reforme1990.aff ooo-dictionnaire-fr-reforme1990-v3.5/dictionaries/fr_FR.aff
Prep: mv ooo-dictionnaire-fr-reforme1990-v3.5/dictionaries/fr-reforme1990.dic ooo-dictionnaire-fr-reforme1990-v3.5/dictionaries/fr_FR.dic
License: GPLv2, LGPLv2.1, MLP1.1
Source: ooo-dictionnaire-fr-reforme1990-v3.5.oxt
Locale: ga_IE
Language: Irish
URL: http://extensions.services.openoffice.org/project/focloiri-gaeilge
Version: 20080805 # 4.4
Types: hunspell, hyphen, thesaurus
License: GPLv2
Source: focloiri-gaeilge-4.4.oxt
Locale: gd_GB
Language: Scottish Gaelic
pack_suffix: gaelic-scots
URL: http://extensions.services.openoffice.org/project/gd_GB
Version: 1.0
Types: hunspell
License: GPLv2
Source: gd_GB.oxt
Locale: gl_ES
Language: Galician
URL: http://extensions.services.openoffice.org/project/Extension_Corrector_galego_OOo
Version: 20080515 # 3.2
Types: hunspell
License: GPLv2
Source: corrector_OOo3.oxt
Locale: gu_IN
Language: Gujarati
URL: http://extensions.services.openoffice.org/project/dict-gu
Version: 20061015
Types: hunspell
License: GPLv2+
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_gu_IN
Source: dict-gu.oxt
Locale: he_IL
Language: Hebrew
URL: http://extensions.services.openoffice.org/project/dict-he
Version: 20080914 # 0.2
Types: myspell
License: GPLv2
Source: he-IL-dict.oxt
Locale: hi_IN
Language: Hindi
# Update
URL: http://extensions.services.openoffice.org/project/dict-hi
Version: 20090617
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_hi_IN
License: GPLv2
Source: dict-hi.oxt
Locale: hr_HR
Language: Croatian
URL: http://extensions.services.openoffice.org/project/dict-hr
Version: 20080813 # 1.0.0-beta-2 use 1.0.0.2
Types: myspell
License: GPLv3
Source: hr_HR.tar.bz2
Locale: hu_HU
Language: Hungarian
URL: http://extensions.services.openoffice.org/project/hu_dicts
Types: hunspell, hyphen, thesaurus
License: GPLv2, LGPLv2.1, MPLv1.1
%if %suse_version > 1110
# The new version requires hunspell-1.2.8
# The compound words are not processed correctly with older hunspell
Version: 20100126
Source: hu_HU-1.6.tar.gz
%else
Version: 20080315
Source: hu_HU.tar.bz2
%endif
Locale: ht_HT
Language: Haitian
URL: http://extensions.services.openoffice.org/project/kok
Version: 0.06
Types: hunspell
License: GPLv3+
Source: hunspell-ht-0.06.oxt
Locale: id_ID
Language: Indonese
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Indonesian_.28Indonesia.29
# URL: http://extensions.services.openoffice.org/project/Indonesian_dictionary
Version: 1.2
Types: myspell
License: GPLv2, LGPLv2.1, MPLv1.1
#, hyphen available on the same URL
Source: id_ID.tar.bz2
Locale: is_IS
Language: Icelandic
URL: http://extensions.services.openoffice.org/project/dict-is
Version: 20090823
Types: hunspell
License: GPLv2+
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_is
Source: Icelandic-dict-2009-08-23.oxt
Locale: it_IT
Language: Italian
URL: http://extensions.services.openoffice.org/project/Dict_it_IT
Version: 20081129
Types: hunspell, hyphen, thesaurus
License: GPLv3
Source: Dizionari.IT_20081129.oxt
Locale: km_KH
Language: Khmer
Prov_lang: km_KH
URL: http://extensions.services.openoffice.org/project/khmersbbic
Version: 1.1
Types: hunspell
License: GPLv3
Source: SBBIC-spellingchecker-OOo.1.1.oxt
Locale: ku_TR
Language: Kurdish
# accroding to the included .aff file
Encoding: ISO-8859-9
URL: http://extensions.services.openoffice.org/project/rastnivis
Version: 0.96.0
Types: myspell
License: GPLv3, LGPLv2.1, MPLv1.1
#, hyphen available: http://extensions.services.openoffice.org/project/kitandin
Source: rastnivis.oxt
Locale: lt_LT
Language: Lithuanian
URL: http://ftp.akl.lt/OpenOffice.org-extras/spell-checkers/
Version: 20081204
Types: hunspell
License: BSD3c
Source: dict-lt.oxt
Locale: lv_LV
Language: Latvian
URL: http://extensions.services.openoffice.org/project/dict_lv_LV
Version: 20090916 # 0.8.2
Types: hunspell, hyphen, thesaurus
License: LGPLv2.1
Source: dict_lv_LV-0.8.2.oxt
Locale: mai_IN
Language: Maithili
URL: http://extensions.services.openoffice.org/project/dict-mai
Version: 20100107
Types: hunspell
License: GPLv2, LGPLv2.1, MPLv1.1
Source: mai_IN.oxt
Locale: mg_MG
Language: Malagasy
# accroding to the included .aff file
Encoding: ISO-8859-1
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Malagasy_.28Madagascar.29
Version: 0.03
Types: myspell
License: GPLv2+
Source: mg_MG.tar.bz2
Locale: mk_MK
Language: Macedonian
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Macedonian_.28Former_Yugoslav_Republic_of_Macedonia.29
# URL: http://extensions.services.openoffice.org/project/dict-mk
Version: 20051126
Types: myspell
License: GPLv2
Source: mk_MK.tar.bz2
Locale: ml_IN
Language: Malayalam
Prov_lang: ml_IN
URL: http://extensions.services.openoffice.org/project/dict_ml_IN
Version: 1.1.0
Types: hunspell
License: GPLv2+, LGPLv2.1+, MPLv1.1
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_ml_IN
Source: ml_IN_dict-1-1.oxt
Locale: mi_NZ
Language: Maory
URL: http://extensions.services.openoffice.org/project/maori-papakupu
Version: 20080630 # 0.5
Types: hunspell
License: GPLv2+, LGPLv2.1+, MPLv1.1
Source: papakupu-mi_NZ-0.5.20080630.oxt
Locale: mr_IN
Language: Marathi
# Updated
URL: http://extensions.services.openoffice.org/project/dict-mr
Version: 20091210
Types: hunspell
License: GPLv3
#, hyphen available: http://extensions.services.openoffice.org/project/hyph_mr_IN
Source: dict-mr.oxt
Locale: ms_MY
Language: Malay
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Malay_.28Malaysia.29
Version: 20090808 # 0.1
Types: myspell
License: GFDLv1.1
Source: ms_MY.tar.bz2
Locale: nb_NO
Language: Norwegian Bokmaal
pack_suffix: norsk-bokmaal
URL: http://extensions.services.openoffice.org/project/Norwegian_dictionaries
Version: 20080310 # 2.0.10
Types: myspell, hyphen, thesaurus
License: GPLv2
# TODO New source available for future release: dictionary-no-NO-1.0.oxt
Source: nb_NO.tar.bz2
Locale: nl_NL
Language: Dutch
# Newly dict wannabe
URL: http://extensions.services.openoffice.org/project/dict-nl
Version: 20091002 # 1.10G
Types: hunspell, hyphen
License: BSD
Source: nl-dict.oxt
Locale: nn_NO
Language: Norwegian Nynorsk
pack_suffix: norsk-nynorsk
URL: http://extensions.services.openoffice.org/project/Norwegian_dictionaries
Version: 20080310 # 2.0.10
Types: myspell, hyphen, thesaurus
License: GPLv2
Source: nn_NO.tar.bz2
Locale: nr_ZA
Language: Ndebele
URL: http://extensions.services.openoffice.org/project/dict-nr
Version: 20091030
Types: myspell
# web opensource
License: LGPLv2.1 # as aspell legacy
Source: dict-nr_ZA-2009.10.30.oxt
Locale: ny_MW
Language: Chichewa
# accroding to the included .aff file
Encoding: ISO8859-14
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Chichewa_.28Malawi.29
Version: 0.01
Types: myspell
License: GPLv2+
Source: ny_MW.tar.bz2
Locale: oc_FR
Language: Occitan Lengadocian
URL: http://extensions.services.openoffice.org/project/spellchecker_occitan_lengadocian
Version: 0.6.1
Types: myspell
License: GPLv2+
Source: oc_fr.oxt
Locale: pl_PL
Language: Polish
URL: http://extensions.services.openoffice.org/project/pl-dict
Version: 20081206
Types: myspell, hyphen, thesaurus
License: GPLv2, LGPLv2.1, MPLv1.1, CC-SA1.0
Source: pl-dict.oxt
Locale: pt_BR
Language: Brazilian
Prov_lang: pt_BR
URL: http://extensions.services.openoffice.org/project/Vero
Version: 20100111 # 2.0.7
Types: myspell, hyphen
License: LGPLv2.1
Source: Vero_pt_BR_V207AOC.oxt
Locale: pt_PT
Language: Portuguese
URL: http://extensions.services.openoffice.org/project/ptPTdict
Version: 20091015 # 9.10.13.0
Types: hunspell, hyphen, thesaurus
License: GPLv2+, BSD
Source: oo3x-pt-PT.oxt
Locale: qu_EC
Language: Kichwa
Prov_lang: qu_EC
URL: http://extensions.services.openoffice.org/project/ptPTdict
Version: 0.4
Types: hunspell
License: GAGPLv3
Source: qu_EC.oxt
Locale: ro_RO
Language: Romanian
URL: http://extensions.services.openoffice.org/project/dictionaries-ro-contemporary
Version: 20091130 # 1.1
Types: hunspell, hyphen, thesaurus
License: GPLv2, LGPLv2.1, MPLv1.1
Source: dict-ro.1.1.oxt
Locale: ru_RU
Language: Russian
# TODO no source URL
Version: 20081013 # 0.3.4
Types: myspell, hyphen, thesaurus
License: GPLv3
# there is a newer version out there with copyrigh, try to catch the owner to release is
URL: http://extensions.services.openoffice.org/project/dict_ru_RU_hyph
Source: dict_ru_RU-0.3.4.oxt
Locale: rw_RW
Language: Kinyarwanda
URL: http://extensions.services.openoffice.org/project/dict_rw
Version: 20090218
Types: hunspell
# TODO need to send request to the developer
Prep: mv rw/rw.aff rw/rw_RW.aff
Prep: mv rw/rw.dic rw/rw_RW.dic
# TODO web opensource
License: LGPLv2.1 # as aspell legacy
# not correct file name
Source: rw.oxt
Locale: sk_SK
Language: Slovak
URL: http://extensions.services.openoffice.org/project/dict-sk
Version: 20100208
Types: hunspell, hyphen, thesaurus
License: GPLv2, LGPLv2.1, MPLv1.1
Source: dict-sk.oxt
Locale: sl_SI
Language: Slovene
URL: http://extensions.services.openoffice.org/project/pack-sl
Version: 20091130 # 1.0
Types: myspell, hyphen
License: LGPLv2.1+
Source: pack-sl.oxt
Locale: sq_AL
Language: Albanian
URL: http://extensions.services.openoffice.org/project/dict-sq
Version: 1.6.1 # 2007.10.15
Types: myspell
License: GPLv2+
Source: dict-sq.oxt
Locale: ss_ZA
Language: Swati
URL: http://extensions.services.openoffice.org/project/dict-ss
Version: 20091030
Types: myspell
# TODO web opensource
License: LGPLv2.1 # as aspell legacy
Source: dict-ss_ZA-2009.10.30.oxt
Locale: sv_SE
Language: Swedish
URL: http://extensions.services.openoffice.org/project/dict-sv
Version: 20100130 # 1.42
# type
License: GPLv2, LGPLv2.1, MPLv1.1
#, thesaurus available: http://extensions.services.openoffice.org/project/SweThes
Source: ooo_swedish_dict_1.42.oxt
Locale: sv_FI
Language: Swedish in Finland
pack_suffix: swedish-finland
URL: http://extensions.services.openoffice.org/project/dict-sv
Version: 20100131 # 1.42
# type
License: GPLv2, LGPLv2.1, MPLv1.1
#, thesaurus available: http://extensions.services.openoffice.org/project/SweThes
Source: ooo_swedish_finland_dict_1.42.oxt
# FIXME: st_ZA ? ns_ZA
Locale: st_ZA
Language: Northern Sotho
pack_suffix: sotho-northern
#URL: FIXME
Version: 20060123
# type: FIXME
License: LGPLv2.1+
Source: st_ZA.tar.bz2
Locale: sw_KE
Language: Kiswahili
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Kiswahili_.28East_Africa.29
Version: 20040516
Types: myspell
License: LGPLv2.1
# under investigation: http://extensions.services.openoffice.org/project/SwahiliSpellcheck
Source: sw_KE.tar.bz2
# sw_TZ
# TODO should we add it?
# URL: http://extensions.services.openoffice.org/project/SwahiliSpellcheck
Locale: th_TH
Language: Thai
URL: http://extensions.services.openoffice.org/project/dict-th
Version: 0.3
Types: myspell
License: LGPLv2.1
Source: th_TH.tar.bz2
Locale: tl_PH
Language: Tagalog
URL: http://extensions.services.openoffice.org/project/dict-tl
Version: 0.02
Types: myspell
License: GPLv2+
Source: tl_PH.tar.bz2
Locale: tn_ZA
Language: Setswana
URL: http://wiki.services.openoffice.org/wiki/Dictionaries#Setswana_.28Africa.29
Version: 20061023
Types: myspell
License: GPLv2+
# TODO new release bad download link: http://extensions.services.openoffice.org/project/dict-tn
Source: myspell-tn_ZA-20060123.tar.bz2
Locale: ts_ZA
Language: Tsonga
# hhttp://wiki.services.openoffice.org/wiki/Dictionaries#Tsonga_.28South_Africa.29
Version: 20060123
Types: myspell
License: LGPLv2.1
# TODO new release bad download link: http://extensions.services.openoffice.org/project/dict-ts
Source: ts_ZA.tar.bz2
Locale: uk_UA
Language: Ukrainian
URL: http://extensions.services.openoffice.org/project/dict-uk_UA
Version: 20090818 # 1.6.0
Types: hunspell
License: GPLv2, LGPLv2.1, MPLv1.1
Source: dict-uk_UA-1.6.0.oxt
Locale: ve_ZA
Language: Venda
URL: http://extensions.services.openoffice.org/project/dict-ve
Version: 20091030
Types: hunspell
# TODO web opensource
License: LGPLv2.1 # as aspell legacy
Source: dict-ve_ZA-2009.10.30.oxt
Locale: vi_VN
Language: Vietnamese
URL: http://extensions.services.openoffice.org/project/Vietnamese_SpellChecker
Version: 20091031 # 1.0.45
Types: hunspell
License: GPLv2
Source: vi_spellchecker_OOo3.oxt
Locale: xh_ZA
Language: Xhosa
URL: http://extensions.services.openoffice.org/project/dict-xh
Version: 20091030
Types: hunspell
# TODO web opensource
License: LGPLv2.1 # as aspell legacy
Source: dict-xh_ZA-2009.10.30.oxt
Locale: zu_ZA
Language: Zulu
URL: http://extensions.services.openoffice.org/project/dict-zu
Version: 20091210
Types: myspell
# TODO web opensource
License: LGPLv2.1 # as aspell legacy
Source: dict-zu_ZA-2009.12.10.oxt

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,175 @@
#
# spec file for package myspell-dictionaries (Version 20090731)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
@DO_NOT_EDIT_COMMENT@
Name: myspell-dictionaries
BuildRequires: recode unzip
License: @ALL_LICENSES@
Group: Productivity/Text/Spell
AutoReqProv: on
Version: 20090731
Release: 1
Summary: A Source Package for Dictionaries Used by MySpell
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
Url: http://lingucomponent.openoffice.org/download_dictionary.html
# Novell jargon bnc#306333
Source0: Nwordlist.tgz
Source1: myspell-dictionaries-gen-spec
Source2: myspell-dictionaries.data
# dictionaries
@SOURCES@
%description
This source package contains dictionaries for MySpell.
The MySpell spell-checker is used by the OpenOffice.org office suite,
the Mozilla Composer, and the Mozilla Mail message composition window.
@METADATA@
%prep
%setup -c
install -m 644 %{S:1} .
# unpack sources
for archive in \
@SOURCES_UNPACK@ ; do
archive_name=`basename $archive | sed -e "s|.zip$||" -e "s|.oxt$||" -e "s|.tar.gz$||" -e "s|.tar.bz2$||"`
mkdir $archive_name || exit 1;
case $archive in
*.zip|*.oxt)
cd $archive_name; unzip $archive || exit 1; cd -
;;
*.tar.gz)
tar -xzf $archive -C $archive_name || exit 1;
;;
*.tar.bz2)
tar -xjf $archive -C $archive_name || exit 1;
;;
*)
echo "Error: Do not know how to uncompress $archive"
exit 1;
;;
esac
done
#
# fix wrong filenames
@PREP_HACKS@#
# fix permissions
#
find . -type f -exec chmod 644 {} \;
%build
# add the Novell jargon into all dictionaries bnc#306333
# Beware! The Nwordlist must begin with a newline. Some files do not contain
# LF at the end of file.
for dic in `find . -name "*.dic` ; do
cat Nwordlist >> $dic
# delete empty lines if they were created in some cases
grep -v "^$" $dic > $dic.no_space && mv $dic.no_space $dic
done
%install
rm -f filelist.template
install -m 755 -d $RPM_BUILD_ROOT%{_datadir}/myspell/
for lang_dir in * ; do
test -d $lang_dir || continue
# temporary file list
filelist=`mktemp /tmp/myspell-dictionaries-XXXXXX`
echo "%%defattr(-,root,root)" >$filelist
echo "%%dir %{_datadir}/myspell/" >>$filelist
# install dictionaries
dic=
# support locales with 2 and 3 letters in the language code: ll_CC.aff and lll_CC.aff
for aff in `find $lang_dir -regextype posix-extended -regex ".*/[[:lower:]][[:lower:]][[:lower:]]?_[[:upper:]][[:upper:]].aff" | sort` ; do
dic=`echo $aff | sed -e "s|.aff$|.dic|"`
if ! test -f $dic ; then
echo "Warning: Found $aff but not $dic"
echo "Skipping $aff"
continue;
fi
# both .dic and .aff files exists => install them
for f in $aff $dic ; do
fname=$(basename $f)
if test -f $RPM_BUILD_ROOT%{_datadir}/myspell/$fname ; then
echo "Error: file already installed: $f"
echo " Probably is provided by two source tarballs"
exit 1;
fi
install -m 644 $f $RPM_BUILD_ROOT%{_datadir}/myspell/
echo %{_datadir}/myspell/$fname >>$filelist
done
done
# detect locale, lang and country
if test -n $dic ; then
# replace the underscore with a dot to be able to separate the language and the coutry code with the command "cut"
dic_pname=`basename $dic | sed "s|_|.|"`
lang=`echo $dic_pname | cut -d "." -f1`
country=`echo $dic_pname | cut -d "." -f2`
else
echo "Error: No dictionary found in $lang_dir"
exit 1;
fi
locale="${lang}_${country}"
# detect long language name
case "$locale" in
@LANG_NAME@ *) echo "Error: do not know language name for the locale $locale"
exit 1
;;
esac
# detect README encoding
coding=`LC_CTYPE="$locale" locale -k LC_CTYPE | grep charmap | sed "s|charmap=\"\(.*\)\"\$|\1|"`
# special hack for some locales
case "$locale" in
@ENCODING@ esac
# install documentation
docdir=%{_docdir}/myspell-$lang_name
mkdir -p $RPM_BUILD_ROOT$docdir
echo "%%doc $docdir" >>$filelist
for doc in `find $lang_dir -type f -printf "%%P\n" | \
grep -v -e ".aff$" -e ".dic$" -e ".dat$" -e ".idx$" \
-e ".orig$" -e ".old$" -e "~$" \
-e ".sh$" -e "makefile" -e "META-INF"` ; do
if ! test -f $lang_dir/$doc ; then
echo "Error: is not a file: $lang_dir/$doc"
exit 1;
fi
recode utf8..utf16 <$lang_dir/$doc >/dev/null 2>&1 || recode $coding..utf8 $lang_dir/$doc
dname=$(dirname $doc)
install -m 755 -d $RPM_BUILD_ROOT$docdir/$dname
install -m 644 $lang_dir/$doc $RPM_BUILD_ROOT$docdir/$dname
done
# rename the file list according to the detacted lang and country
mv $filelist $locale.list
# generate tempalte for the %files section
echo "%%files -f $locale.list -n myspell-$lang_name" >>filelist.template
echo "" >>filelist.template
done
%clean
rm -rf $RPM_BUILD_ROOT
@FILES@
%changelog