diff options
-rw-r--r-- | configure.ac | 3 | ||||
-rw-r--r-- | data/db.struct | 283 | ||||
-rw-r--r-- | scm/Makefile.am | 8 | ||||
-rw-r--r-- | scm/elchr.h | 39 | ||||
-rw-r--r-- | scm/elstr.c | 701 | ||||
-rw-r--r-- | scm/mod.c | 10 | ||||
-rw-r--r-- | scm/utf8.c | 2135 | ||||
-rw-r--r-- | scm/utf8.h | 68 | ||||
-rw-r--r-- | xml/pl/rhmata.xml | 46 | ||||
-rw-r--r-- | xml/ru/rhmata.xml | 20 | ||||
-rw-r--r-- | xml/uk/alfabhta.xml | 4 | ||||
-rw-r--r-- | xml/uk/antonimies.xml | 882 | ||||
-rw-r--r-- | xml/uk/arithmi.xml | 571 | ||||
-rw-r--r-- | xml/uk/ellinika.xml | 2 |
14 files changed, 4714 insertions, 58 deletions
diff --git a/configure.ac b/configure.ac index 1750ac4..0f83e04 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -25,11 +25,14 @@ AC_CANONICAL_SYSTEM | |||
25 | AM_INIT_AUTOMAKE(no-exeext) | 25 | AM_INIT_AUTOMAKE(no-exeext) |
26 | 26 | ||
27 | ## * Checks for programs. | 27 | ## * Checks for programs. |
28 | AC_PROG_CC | ||
29 | AM_PROG_LIBTOOL | ||
28 | 30 | ||
29 | M4='`cd $(top_srcdir); pwd`/scripts/missing --run m4' | 31 | M4='`cd $(top_srcdir); pwd`/scripts/missing --run m4' |
30 | AC_SUBST(M4) | 32 | AC_SUBST(M4) |
31 | 33 | ||
32 | AM_GNU_GETTEXT([external], [need-ngettext]) | 34 | AM_GNU_GETTEXT([external], [need-ngettext]) |
35 | |||
33 | AM_GNU_GETTEXT_VERSION([0.17]) | 36 | AM_GNU_GETTEXT_VERSION([0.17]) |
34 | 37 | ||
35 | MU_CHECK_GUILE(,, | 38 | MU_CHECK_GUILE(,, |
diff --git a/data/db.struct b/data/db.struct index 7db7828..c4d6460 100644 --- a/data/db.struct +++ b/data/db.struct | |||
@@ -1,19 +1,19 @@ | |||
1 | # This file is part of Ellinika | 1 | -- This file is part of Ellinika |
2 | # Copyright (C) 2004, 2005, 2007 Sergey Poznyakoff | 2 | -- Copyright (C) 2004, 2005, 2007 Sergey Poznyakoff |
3 | # | 3 | -- |
4 | # Ellinika is free software; you can redistribute it and/or modify | 4 | -- Ellinika is free software; you can redistribute it and/or modify |
5 | # it under the terms of the GNU General Public License as published by | 5 | -- it under the terms of the GNU General Public License as published by |
6 | # the Free Software Foundation; either version 3 of the License, or | 6 | -- the Free Software Foundation; either version 3 of the License, or |
7 | # (at your option) any later version. | 7 | -- (at your option) any later version. |
8 | # | 8 | -- |
9 | # Ellinika is distributed in the hope that it will be useful, | 9 | -- Ellinika is distributed in the hope that it will be useful, |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 | -- but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 | -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 | # GNU General Public License for more details. | 12 | -- GNU General Public License for more details. |
13 | # | 13 | -- |
14 | # You should have received a copy of the GNU General Public License | 14 | -- You should have received a copy of the GNU General Public License |
15 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | 15 | -- along with this program. If not, see <http://www.gnu.org/licenses/>. |
16 | # | 16 | -- |
17 | 17 | ||
18 | set names utf8; | 18 | set names utf8; |
19 | CREATE DATABASE ellinika CHARACTER SET utf8 COLLATE utf8_bin; | 19 | CREATE DATABASE ellinika CHARACTER SET utf8 COLLATE utf8_bin; |
@@ -21,7 +21,7 @@ CREATE DATABASE ellinika CHARACTER SET utf8 COLLATE utf8_bin; | |||
21 | use ellinika; | 21 | use ellinika; |
22 | 22 | ||
23 | CREATE TABLE pos( | 23 | CREATE TABLE pos( |
24 | id bigint not null, # REL 0 | 24 | id bigint not null, -- REL 0 |
25 | name char(64) not null , | 25 | name char(64) not null , |
26 | abbr char(12) not null, | 26 | abbr char(12) not null, |
27 | abbr_lat char(12) not null, | 27 | abbr_lat char(12) not null, |
@@ -66,17 +66,17 @@ INSERT INTO pos VALUES(conv("1000000",16,10), "πρόθεση", "πρόθ. | |||
66 | INSERT INTO pos VALUES(conv("2000000",16,10), "σύνδεσμος", "σύνδ.", "conj", 'Y'); | 66 | INSERT INTO pos VALUES(conv("2000000",16,10), "σύνδεσμος", "σύνδ.", "conj", 'Y'); |
67 | 67 | ||
68 | CREATE TABLE dict( | 68 | CREATE TABLE dict( |
69 | ident int(32), # REL 1,3,4 | 69 | ident int(32), -- REL 1,3,4 |
70 | word varchar(128), # REL 6 | 70 | word varchar(128), -- REL 6 |
71 | sound varchar(128), | 71 | sound varchar(128), |
72 | pos int(4), # REL 0 | 72 | pos int(4), -- REL 0 |
73 | forms blob, | 73 | forms blob, |
74 | INDEX (ident), | 74 | INDEX (ident), |
75 | INDEX (word) | 75 | INDEX (word) |
76 | ); | 76 | ); |
77 | 77 | ||
78 | CREATE TABLE locus( | 78 | CREATE TABLE locus( |
79 | ident int(32), # REL 4 | 79 | ident int(32), -- REL 4 |
80 | lang varchar(8) not null, | 80 | lang varchar(8) not null, |
81 | file varchar(128) binary, | 81 | file varchar(128) binary, |
82 | line int(32), | 82 | line int(32), |
@@ -85,7 +85,7 @@ CREATE TABLE locus( | |||
85 | ); | 85 | ); |
86 | 86 | ||
87 | CREATE TABLE articles( | 87 | CREATE TABLE articles( |
88 | ident int(32) not null, # REL 1 | 88 | ident int(32) not null, -- REL 1 |
89 | subindex int(32) not null, | 89 | subindex int(32) not null, |
90 | lang varchar(8), | 90 | lang varchar(8), |
91 | meaning blob, | 91 | meaning blob, |
@@ -95,10 +95,10 @@ CREATE TABLE articles( | |||
95 | ); | 95 | ); |
96 | 96 | ||
97 | CREATE TABLE topic( | 97 | CREATE TABLE topic( |
98 | ident int(32) not null auto_increment, # REL 2 | 98 | ident int(32) not null auto_increment, -- REL 2 |
99 | lang varchar(8) not null, | 99 | lang varchar(8) not null, |
100 | title varchar(128) not null, | 100 | title varchar(128) not null, |
101 | category int(32) not null, # REL 5 | 101 | category int(32) not null, -- REL 5 |
102 | UNIQUE (ident), | 102 | UNIQUE (ident), |
103 | INDEX (title), | 103 | INDEX (title), |
104 | INDEX (title,category), | 104 | INDEX (title,category), |
@@ -106,14 +106,14 @@ CREATE TABLE topic( | |||
106 | ); | 106 | ); |
107 | 107 | ||
108 | CREATE TABLE topic_tab ( | 108 | CREATE TABLE topic_tab ( |
109 | topic_ident int(32) not null, # REL 2 | 109 | topic_ident int(32) not null, -- REL 2 |
110 | word_ident int(32) not null, # REL 1 | 110 | word_ident int(32) not null, -- REL 1 |
111 | INDEX (topic_ident), | 111 | INDEX (topic_ident), |
112 | INDEX (word_ident) | 112 | INDEX (word_ident) |
113 | ); | 113 | ); |
114 | 114 | ||
115 | CREATE TABLE category ( | 115 | CREATE TABLE category ( |
116 | category int(32) not null auto_increment, # REL 5 | 116 | category int(32) not null auto_increment, -- REL 5 |
117 | lang varchar(8) not null, | 117 | lang varchar(8) not null, |
118 | title varchar(128) not null, | 118 | title varchar(128) not null, |
119 | description blob, | 119 | description blob, |
@@ -123,8 +123,8 @@ CREATE TABLE category ( | |||
123 | 123 | ||
124 | CREATE TABLE links( | 124 | CREATE TABLE links( |
125 | type enum('XREF','ANT') not null, | 125 | type enum('XREF','ANT') not null, |
126 | ident int(32) not null, # REL 1 | 126 | ident int(32) not null, -- REL 1 |
127 | xref int(32) not null, # REL 1 | 127 | xref int(32) not null, -- REL 1 |
128 | INDEX (ident), | 128 | INDEX (ident), |
129 | UNIQUE (ident,xref) | 129 | UNIQUE (ident,xref) |
130 | ); | 130 | ); |
@@ -138,23 +138,238 @@ CREATE TABLE stat( | |||
138 | 138 | ||
139 | CREATE TABLE pending_links( | 139 | CREATE TABLE pending_links( |
140 | type enum('CLOSED','XREF','ANT') not null, | 140 | type enum('CLOSED','XREF','ANT') not null, |
141 | originator int(32) not null, # REL 3 | 141 | originator int(32) not null, -- REL 3 |
142 | word varchar(128) # REL 6 | 142 | word varchar(128) -- REL 6 |
143 | ); | 143 | ); |
144 | 144 | ||
145 | CREATE TABLE news( | 145 | CREATE TABLE news( |
146 | ident int(32) not null auto_increment, # REL 7 | 146 | ident int(32) not null auto_increment, -- REL 7 |
147 | date datetime not null, | 147 | date datetime not null, |
148 | UNIQUE(ident), | 148 | UNIQUE(ident), |
149 | INDEX(date) | 149 | INDEX(date) |
150 | ); | 150 | ); |
151 | 151 | ||
152 | CREATE TABLE newsart( | 152 | CREATE TABLE newsart( |
153 | ident int(32) not null, # REL 7 | 153 | ident int(32) not null, -- REL 7 |
154 | lang varchar(8), | 154 | lang varchar(8), |
155 | header varchar(255), | 155 | header varchar(255), |
156 | text blob, | 156 | text blob, |
157 | UNIQUE(ident), | 157 | UNIQUE(ident), |
158 | INDEX(lang) | 158 | INDEX(lang) |
159 | ); | 159 | ); |
160 | 160 | ||
161 | ---- | ||
162 | |||
163 | CREATE TABLE verbflect( | ||
164 | ident int(32) not null, -- REL 8 | ||
165 | sing1 varchar(32), | ||
166 | sing2 varchar(32), | ||
167 | sing3 varchar(32), | ||
168 | plur1 varchar(32), | ||
169 | plur2 varchar(32), | ||
170 | plur3 varchar(32), | ||
171 | UNIQUE(ident) | ||
172 | ); | ||
173 | |||
174 | CREATE TABLE conjugation( | ||
175 | conj char(2), -- REL 9 | ||
176 | voice enum('act','pas'), -- Ενεργητηκή/Μεσοπαθητική | ||
177 | mode enum('ind','sub','imp'), | ||
178 | tense varchar(128), | ||
179 | thema enum('pres','aor','pass','synt'), -- Ενεστώτα, Αόριστου, Αόριστου μεσοπαθητικής, syntethic | ||
180 | suffix char(32), | ||
181 | flect int(32), -- REL 8 | ||
182 | accmap char(7), -- accent map | ||
183 | particle char(2), -- NULL/θα/να | ||
184 | aux varchar(128), -- REL 10 | ||
185 | auxtense char(32), | ||
186 | KEY (conj), | ||
187 | KEY (voice), | ||
188 | KEY (mode) | ||
189 | ); | ||
190 | |||
191 | CREATE TABLE participle ( | ||
192 | conj char(2), -- REL 9 | ||