lingo 1.8.4.2 → 1.8.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +413 -325
- data/README +380 -131
- data/Rakefile +19 -21
- data/de/lingo-abk.txt +15 -17
- data/de/lingo-dic.txt +20210 -20659
- data/de/lingo-mul.txt +5 -13
- data/de/lingo-syn.txt +5 -8
- data/de/test_dic.txt +2 -0
- data/de/test_gen.txt +8 -0
- data/de/{test_mul2.txt → test_mu2.txt} +0 -0
- data/de/{test_singleword.txt → test_sgw.txt} +0 -0
- data/de/user-dic.txt +5 -7
- data/de.lang +64 -49
- data/en/lingo-dic.txt +6398 -6404
- data/en/lingo-irr.txt +2 -3
- data/en/lingo-mul.txt +6 -7
- data/en/lingo-wdn.txt +881 -1762
- data/en/user-dic.txt +2 -5
- data/en.lang +39 -39
- data/lib/lingo/app.rb +10 -6
- data/lib/lingo/attendee/abbreviator.rb +1 -0
- data/lib/lingo/attendee/decomposer.rb +2 -1
- data/lib/lingo/attendee/multi_worder.rb +5 -6
- data/lib/lingo/attendee/stemmer.rb +1 -1
- data/lib/lingo/attendee/synonymer.rb +4 -2
- data/lib/lingo/attendee/text_reader.rb +77 -57
- data/lib/lingo/attendee/text_writer.rb +1 -1
- data/lib/lingo/attendee/tokenizer.rb +101 -50
- data/lib/lingo/attendee/variator.rb +2 -1
- data/lib/lingo/attendee/vector_filter.rb +28 -6
- data/lib/lingo/attendee/word_searcher.rb +2 -1
- data/lib/lingo/attendee.rb +8 -4
- data/lib/lingo/call.rb +7 -3
- data/lib/lingo/cli.rb +8 -16
- data/lib/lingo/config.rb +11 -6
- data/lib/lingo/ctl.rb +54 -3
- data/lib/lingo/database/crypter.rb +8 -14
- data/lib/lingo/database/hash_store.rb +1 -1
- data/lib/lingo/database/{show_progress.rb → progress.rb} +7 -8
- data/lib/lingo/database/source/key_value.rb +6 -5
- data/lib/lingo/database/source/multi_key.rb +5 -2
- data/lib/lingo/database/source/multi_value.rb +6 -4
- data/lib/lingo/database/source/single_word.rb +2 -3
- data/lib/lingo/database/source/word_class.rb +24 -5
- data/lib/lingo/database/source.rb +5 -3
- data/lib/lingo/database.rb +102 -41
- data/lib/lingo/error.rb +24 -2
- data/lib/lingo/language/dictionary.rb +26 -54
- data/lib/lingo/language/grammar.rb +19 -23
- data/lib/lingo/language/lexical.rb +5 -1
- data/lib/lingo/language/lexical_hash.rb +7 -12
- data/lib/lingo/language/token.rb +10 -1
- data/lib/lingo/language/word.rb +35 -23
- data/lib/lingo/language/word_form.rb +5 -4
- data/lib/lingo/{show_progress.rb → progress.rb} +43 -30
- data/lib/lingo/srv/lingosrv.cfg +1 -1
- data/lib/lingo/srv/public/.gitkeep +0 -0
- data/lib/lingo/srv.rb +11 -6
- data/lib/lingo/version.rb +2 -2
- data/lib/lingo/web/lingoweb.cfg +1 -1
- data/lib/lingo/web/views/index.erb +4 -4
- data/lib/lingo/web.rb +4 -6
- data/lib/lingo.rb +4 -12
- data/lingo.cfg +1 -1
- data/lir.cfg +1 -1
- data/ru/lingo-dic.txt +33473 -2113
- data/ru/lingo-mul.txt +8430 -1913
- data/ru/lingo-syn.txt +1634 -0
- data/ru/user-dic.txt +6 -0
- data/ru.lang +49 -47
- data/spec/spec_helper.rb +4 -0
- data/test/attendee/ts_decomposer.rb +2 -2
- data/test/attendee/ts_synonymer.rb +3 -3
- data/test/attendee/ts_tokenizer.rb +215 -2
- data/test/attendee/ts_variator.rb +2 -2
- data/test/attendee/ts_word_searcher.rb +10 -6
- data/test/ref/artikel.seq +2 -2
- data/test/ref/artikel.vec +5 -5
- data/test/ref/artikel.ven +11 -11
- data/test/ref/artikel.ver +11 -11
- data/test/ref/lir.seq +13 -13
- data/test/ref/lir.vec +31 -31
- data/test/test_helper.rb +19 -5
- data/test/ts_database.rb +206 -77
- data/test/ts_language.rb +86 -26
- metadata +93 -49
- data/.rspec +0 -1
- data/de/test_syn2.txt +0 -1
data/ChangeLog
CHANGED
@@ -2,19 +2,62 @@
|
|
2
2
|
|
3
3
|
= Revision history for Lingo
|
4
4
|
|
5
|
+
== 1.8.5 [2014-10-02]
|
6
|
+
|
7
|
+
* Dictionary values (projections) are no longer sorted; hence, order of
|
8
|
+
definition affects processing.
|
9
|
+
* Lexicals in Lingo::Language::Word are no longer sorted; in particular,
|
10
|
+
compound parts keep their original order.
|
11
|
+
* Lexicals in Lingo::Language::Word are no longer cleaned from duplicates.
|
12
|
+
* Compiled dictionaries are updated whenever the Lingo version or their
|
13
|
+
configuration changes, not only when the source file's size or modification
|
14
|
+
time changes.
|
15
|
+
* Lingo::Attendee::Synonymer learned <tt>compound-parts</tt> option to also
|
16
|
+
generate synonyms for compound parts when set to +true+.
|
17
|
+
* Lingo::Attendee::TextReader learned better PDF-to-text conversion using the
|
18
|
+
+pdftotext+ command; specify <tt>filter: pdftotext</tt> in the config.
|
19
|
+
* Lingo::Attendee::VectorFilter learned +dict+ option to print words in
|
20
|
+
dictionary format (viz. Lingo::Database::Source::WordClass).
|
21
|
+
* Lingo::Attendee::VectorFilter learned +preamble+ option to print current
|
22
|
+
configuration to the beginning of the log file (<tt>debug: 'true'</tt>);
|
23
|
+
set <tt>preamble: false</tt> to disable.
|
24
|
+
* Multiword dictionaries compiled from base forms can now generate inflected
|
25
|
+
adjectives based on the gender of the head noun; set <tt>inflect: true</tt>
|
26
|
+
in the dictionary config.
|
27
|
+
* Lingo::Database::Source::WordClass supports gender information being encoded
|
28
|
+
in the dictionary as well as shorthand notation for multiple word
|
29
|
+
classes/genders.
|
30
|
+
* Lingo::Database::Source::WordClass supports compounds being encoded in the
|
31
|
+
dictionary (appending <tt>+</tt> to their parts' word classes is
|
32
|
+
recommended).
|
33
|
+
* Lingo::Database::Source removes leading and trailing whitespace from
|
34
|
+
dictionary lines.
|
35
|
+
* Lingo::Database::Crypter uses OpenSSL to encrypt/decrypt dictionaries.
|
36
|
+
Note: Can't decrypt dictionaries encrypted with the old scheme anymore.
|
37
|
+
* Lingo::Attendee::Tokenizer learned subset of MediaWiki syntax.
|
38
|
+
* Eliminated pathological behaviour of the +URLS+ rule in
|
39
|
+
Lingo::Attendee::Tokenizer.
|
40
|
+
* Fixed regression introduced in 1.8.2 where <tt>combine: all</tt> would no
|
41
|
+
longer work in Lingo::Attendee::MultiWorder.
|
42
|
+
* Updated and extended Russian dictionaries. (Yulia Dorokhova, Thomas Müller)
|
43
|
+
* +lingoctl+ no longer overwrites existing files without confirmation.
|
44
|
+
* +lingoctl+ learned +archive+ command.
|
45
|
+
* Dictionary cleanup.
|
46
|
+
|
5
47
|
== 1.8.4 [2013-10-18]
|
6
48
|
|
7
|
-
* Attendee::Sequencer accepts regular expression patterns.
|
8
|
-
* Attendee::Sequencer substitutes +0+ in the format string for the
|
9
|
-
pattern.
|
10
|
-
* Attendee::NonewordFilter learned +dict+ option to print nonewords
|
11
|
-
dictionary format.
|
12
|
-
* Added progress reporting to Attendee::TextReader for STDIN
|
49
|
+
* Lingo::Attendee::Sequencer accepts regular expression patterns.
|
50
|
+
* Lingo::Attendee::Sequencer substitutes +0+ in the format string for the
|
51
|
+
matched pattern.
|
52
|
+
* Lingo::Attendee::NonewordFilter learned +dict+ option to print nonewords
|
53
|
+
in dictionary format.
|
54
|
+
* Added progress reporting to Lingo::Attendee::TextReader for +STDIN+.
|
13
55
|
* <tt>lingoctl demo</tt> reports successful initialization.
|
14
|
-
* Russian localization for Lingo
|
15
|
-
* Lingo
|
16
|
-
* Lingo
|
17
|
-
* Lingo
|
56
|
+
* Russian localization for Lingo::Web. (Yulia Dorokhova, Thomas Müller)
|
57
|
+
* Lingo::Web learned parameter +hl+ to set UI language.
|
58
|
+
* Lingo::Web displays the configuration in use.
|
59
|
+
* Lingo::Srv accepts array of query strings in addition to single query
|
60
|
+
string.
|
18
61
|
* Meeting config takes precedence over language config.
|
19
62
|
* When dictionary entries are rejected during conversion, the location of the
|
20
63
|
reject file will be shown.
|
@@ -24,7 +67,7 @@
|
|
24
67
|
|
25
68
|
== 1.8.3 [2012-09-20]
|
26
69
|
|
27
|
-
* Fixed regression introduced in 1.8.2 where reading input from STDIN was no
|
70
|
+
* Fixed regression introduced in 1.8.2 where reading input from +STDIN+ was no
|
28
71
|
longer possible.
|
29
72
|
* Fixed regression introduced in 1.8.2 where Lingo would no longer run on Ruby
|
30
73
|
1.9.2.
|
@@ -33,40 +76,48 @@
|
|
33
76
|
* Fixed issue with BOM in config files.
|
34
77
|
* Modified character handling to accept *any* Unicode letter (_Alphabetic_)
|
35
78
|
and digit (<i>Decimal Number</i>).
|
36
|
-
* Modified Attendee::Tokenizer to use only hard-coded tokenization
|
37
|
-
|
38
|
-
*
|
39
|
-
|
40
|
-
*
|
79
|
+
* Modified Lingo::Attendee::Tokenizer to use only hard-coded tokenization
|
80
|
+
rules.
|
81
|
+
* Modified Lingo::Attendee::VectorFilter option +lexicals+ to be
|
82
|
+
case-sensitive.
|
83
|
+
* Improved overall performance and memory usage; Lingo::Attendee::Sequencer
|
84
|
+
changed the order sequences are inserted into the stream.
|
85
|
+
* Eliminated performance penalty caused by Lingo::Attendee::Abbreviator.
|
41
86
|
* Added Russian language support. (Yulia Dorokhova, Thomas Müller)
|
42
|
-
* Added +fields+ option to Attendee::TextReader to cut off field
|
43
|
-
defaults to +true+ in record (LIR) mode.
|
44
|
-
* Added +skip+ option to Attendee::TextReader to skip lines matching
|
45
|
-
pattern.
|
46
|
-
* Added +src+ option to Attendee::VectorFilter to print "source" part
|
47
|
-
compounds.
|
87
|
+
* Added +fields+ option to Lingo::Attendee::TextReader to cut off field
|
88
|
+
labels; defaults to +true+ in record (LIR) mode.
|
89
|
+
* Added +skip+ option to Lingo::Attendee::TextReader to skip lines matching
|
90
|
+
the given pattern.
|
91
|
+
* Added +src+ option to Lingo::Attendee::VectorFilter to print "source" part
|
92
|
+
of compounds.
|
48
93
|
* Added +lingosrv+ and +lingoweb+ executables. The former provides a simple
|
49
94
|
HTTP endpoint with JSON output; the latter serves a demo web interface.
|
50
95
|
* Refactored internal caching.
|
51
96
|
* Made dependency on Ruby version >= 1.9.2 explicit.
|
52
|
-
* Removed reporting facility (options
|
53
|
-
|
54
|
-
*
|
55
|
-
|
56
|
-
|
97
|
+
* Removed reporting facility (options <tt>--perfmon</tt> and
|
98
|
+
<tt>--status</tt>).
|
99
|
+
* Learned <tt>--profile</tt> option to collect profiling information while
|
100
|
+
running.
|
101
|
+
* Deprecated Lingo::Language::Grammar option +compositum+ (now +compound+),
|
102
|
+
Lingo::Config option +textreader+ (now +text_reader+), and
|
103
|
+
Lingo::Attendee::TextReader option +lir-record-pattern+ (now +records+);
|
104
|
+
they will be removed in Lingo 1.9.
|
57
105
|
|
58
106
|
== 1.8.2 [2012-04-19]
|
59
107
|
|
60
|
-
* Performance improvements regarding Attendee::VectorFilter
|
61
|
-
Attendee::NonewordFilter
|
62
|
-
* Added Attendee::Stemmer (implementing Porter's algorithm for suffix stripping).
|
63
|
-
* Added progress reporting to Attendee::TextReader; set <tt>progress: true</tt>
|
108
|
+
* Performance improvements regarding Lingo::Attendee::VectorFilter (as well
|
109
|
+
as Lingo::Attendee::NonewordFilter) memory usage; set <tt>sort: false</tt>
|
64
110
|
in the config.
|
65
|
-
* Added
|
66
|
-
|
67
|
-
*
|
68
|
-
|
69
|
-
|
111
|
+
* Added Lingo::Attendee::Stemmer (implementing Porter's algorithm for suffix
|
112
|
+
stripping).
|
113
|
+
* Added progress reporting to Lingo::Attendee::TextReader; set <tt>progress:
|
114
|
+
true</tt> in the config.
|
115
|
+
* Added directory and glob processing to Lingo::Attendee::TextReader (new
|
116
|
+
options +glob+ and +recursive+).
|
117
|
+
* Renamed Lingo::Attendee::TextReader option +lir-record-pattern+ to
|
118
|
+
+records+.
|
119
|
+
* Fixed Lingo::Attendee::Debugger to forward all objects so it can be
|
120
|
+
inserted between any two attendees in the config.
|
70
121
|
* Fixed regression introduced in 1.8.0 where Lingo would not use existing
|
71
122
|
compiled dictionary when source file is not present.
|
72
123
|
* Fixed "invalid byte sequence in UTF-8" on Windows for SDBM store.
|
@@ -92,39 +143,43 @@
|
|
92
143
|
* Executable may be run from outside installation root directory now.
|
93
144
|
See README for further details.
|
94
145
|
* Search path for dictionaries and configuration files; plugin system.
|
95
|
-
*
|
96
|
-
parameter in the config for this to trigger.
|
146
|
+
* Lingo::Attendee::TextReader can read from +STDIN+ if no files given;
|
147
|
+
leave out the +files+ parameter in the config for this to trigger.
|
97
148
|
* Status/performance details as well as progress information are now
|
98
|
-
printed on STDERR instead of STDOUT in order to not mix with regular
|
99
|
-
output. Learned
|
149
|
+
printed on +STDERR+ instead of +STDOUT+ in order to not mix with regular
|
150
|
+
output. Learned <tt>--log</tt> option to write such information to a file.
|
100
151
|
* Additional internal refactorings. (To be continued...)
|
101
152
|
|
102
153
|
== 1.7.1 [2011-10-24]
|
103
154
|
|
104
|
-
*
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
<tt
|
109
|
-
|
110
|
-
|
111
|
-
* New
|
155
|
+
* Lingo::Attendee::MultiWorder actually finds the *longest* matching multiword
|
156
|
+
group.
|
157
|
+
* Multiword entries in Lingo::Database::Source::SingleWord dictionaries now
|
158
|
+
respect <tt>def-wc</tt>; new parameter <tt>def-mul-wc</tt> to control
|
159
|
+
the word class for multiword entries (defaults to <tt>def-wc</tt>). Use
|
160
|
+
<tt>def-mul-wc: 'm'</tt> in your <tt>.lang</tt> to restore the previous
|
161
|
+
behaviour.
|
162
|
+
* New Lingo::Attendee::Formatter for configurable output formatting as an
|
163
|
+
alternative to Lingo::Attendee::TextWriter.
|
164
|
+
* New basic input filters to enable indexing of HTML/XML (and PDF) files.
|
112
165
|
* Updated the system dictionary.
|
113
166
|
* Switched license to Affero GPL.
|
114
167
|
|
115
168
|
== 1.7.0 [2010-12-15]
|
116
169
|
|
117
170
|
* More Ruby 1.9 compatibility.
|
118
|
-
* Extended VectorFilter to double as enhanced
|
119
|
-
|
120
|
-
* Fixed Sequencer to
|
121
|
-
|
171
|
+
* Extended Lingo::Attendee::VectorFilter to double as enhanced
|
172
|
+
Lingo::Attendee::NonewordFilter.
|
173
|
+
* Fixed Lingo::Attendee::Sequencer to recognize additional word classes beyond
|
174
|
+
the first.
|
175
|
+
* Fixed Lingo::Attendee::Sequencer to not prematurely flush the buffer, which
|
176
|
+
led to a decreased recognition rate.
|
122
177
|
* Housekeeping.
|
123
178
|
|
124
179
|
== 1.6.12 [2010-11-22]
|
125
180
|
|
126
181
|
* Ruby 1.9 compatibility, finally.
|
127
|
-
* Added lingoweb.rb
|
182
|
+
* Added <tt>lingoweb.rb</tt>, a plain & simple web frontend for Lingo.
|
128
183
|
* Added DIFF-LCS gem directly to Lingo distribution.
|
129
184
|
|
130
185
|
== 1.6.11 [2010-02-04]
|
@@ -132,19 +187,19 @@
|
|
132
187
|
* Redirect Lingo output to <tt>/dev/null</tt> during testing. Indicate error
|
133
188
|
with appropriate exit code.
|
134
189
|
* Replace usage of command-line diff with cross-plattform Ruby implementation
|
135
|
-
(requires diff-lcs[
|
190
|
+
(requires diff-lcs[https://rubygems.org/gems/diff-lcs]).
|
136
191
|
* Provide alternatives to standard zip command on windows platforms.
|
137
192
|
* Use +UNK+ itself if it doesn't have any lexicals.
|
138
193
|
* Use compo form instead of word form when lexicalizing compound entry for
|
139
194
|
multiword dictionaries.
|
140
|
-
* LexicalHash#[] must use target (not source) form.
|
195
|
+
* Lingo::Language::LexicalHash#[] must use target (not source) form.
|
141
196
|
* Optionally, try to find matches for all lexicals a word has.
|
142
|
-
*
|
197
|
+
* Made '-' a +PRINTABLE_CHAR+.
|
143
198
|
* Allow synonyms to be considered for multiword matching.
|
144
199
|
* Don't use compound parts.
|
145
200
|
* Introduced some (more or less arbitrary) line length limit. We can only
|
146
201
|
store values of a certain length anyway (with SDBM). Entries exceeding this
|
147
|
-
limit will be rejected and logged in the
|
202
|
+
limit will be rejected and logged in the <tt>.rev</tt> file.
|
148
203
|
|
149
204
|
== 1.6.10 [2009-11-09]
|
150
205
|
|
@@ -164,16 +219,17 @@
|
|
164
219
|
* BUGFIX: Token wurden durch den Caching-Mechanismus in ihrer Schreibweise
|
165
220
|
verändert (Groß-/Kleinschreibung).
|
166
221
|
* Englische Wörterbücher, ein Beispiel-Artikel und eine Konfiguration für das
|
167
|
-
Englische wurden aufgenommen. Aufruf mit lingo.rb -c lingo-en.cfg -l en
|
222
|
+
Englische wurden aufgenommen. Aufruf mit <tt>lingo.rb -c lingo-en.cfg -l en
|
223
|
+
<datei></tt>.
|
168
224
|
* Integration der Testumgebung für Entwickler.
|
169
225
|
* Die Attendees in den Lingo-Konfigurationsdateien werden automatisch
|
170
226
|
verkettet. Dies erspart mühsame Verlinkung von Hand und macht die
|
171
227
|
Konfiguration lesbarer.
|
172
228
|
* Modified parameters for Tokenizer and building of databases to handle UTF-8
|
173
|
-
correctly. Printable characters from the ASCII charset and every UTF
|
174
|
-
greater than x80 is now recognized as a non word breaking
|
175
|
-
diacritical characters are handled well.
|
176
|
-
* Added a command line option
|
229
|
+
correctly. Printable characters from the ASCII charset and every UTF
|
230
|
+
character greater than x80 is now recognized as a non word breaking
|
231
|
+
character. so now diacritical characters are handled well.
|
232
|
+
* Added a command line option <tt>-p</tt> for lingo.rb for making detailed
|
177
233
|
performance mesurements possible for each single attendee.
|
178
234
|
* Allow Lingo.new to be called from a different directory. (Still need to
|
179
235
|
Dir.chdir to #talk because of the dictionaries...).
|
@@ -192,8 +248,9 @@
|
|
192
248
|
|
193
249
|
* <b>Englische Wörterbücher ergänzt</b>
|
194
250
|
|
195
|
-
Lingo kann nun auch Englisch. Dazu muss beim Aufruf von Lingo die Option
|
196
|
-
angegeben werden. Ein englischer Artikel ist unter
|
251
|
+
Lingo kann nun auch Englisch. Dazu muss beim Aufruf von Lingo die Option
|
252
|
+
<tt>-l en</tt> angegeben werden. Ein englischer Artikel ist unter
|
253
|
+
txt/artikel-en.txt zu finden.
|
197
254
|
|
198
255
|
== 1.6.5 [2006-09-18]
|
199
256
|
|
@@ -220,23 +277,24 @@
|
|
220
277
|
|
221
278
|
* <b>Return-Codes</b>
|
222
279
|
|
223
|
-
Bei Aufruf der Hilfe oder bei Fehlersituationen, die intern abgefangen
|
224
|
-
wird der Return-Code 1 gesetzt, um somit bessere Steuerung in
|
225
|
-
Batchverarbeitung zu ermöglichen.
|
280
|
+
Bei Aufruf der Hilfe oder bei Fehlersituationen, die intern abgefangen
|
281
|
+
werden, wird der Return-Code 1 gesetzt, um somit bessere Steuerung in
|
282
|
+
der Batchverarbeitung zu ermöglichen.
|
226
283
|
|
227
284
|
== 1.6.1 [2006-03-22]
|
228
285
|
|
229
286
|
* <b>Fehlerkorrektur im Multiworder</b>
|
230
287
|
|
231
|
-
Der Multiworder hat sich in einem seltenen Spezialfall nicht korrekt
|
232
|
-
ist bereinigt.
|
288
|
+
Der Multiworder hat sich in einem seltenen Spezialfall nicht korrekt
|
289
|
+
verhalten. Das ist bereinigt.
|
233
290
|
|
234
291
|
== 1.6.0 [2006-03-20]
|
235
292
|
|
236
293
|
* <b>Wörterbücher umbenannt</b>
|
237
294
|
|
238
|
-
Die standardmäßig mitgelieferten Wörterbücher sind umbenannt worden in
|
239
|
-
und haben als einheitlichen Separator zwischen Schlüssel
|
295
|
+
Die standardmäßig mitgelieferten Wörterbücher sind umbenannt worden in
|
296
|
+
lingo-xxx.txt und haben als einheitlichen Separator zwischen Schlüssel
|
297
|
+
und Werten das '='-Zeichen.
|
240
298
|
|
241
299
|
* <b>Bereinigungen durchgeführt</b>
|
242
300
|
|
@@ -246,8 +304,9 @@
|
|
246
304
|
|
247
305
|
* <b>Wörterbücher umbenannt</b>
|
248
306
|
|
249
|
-
Die standardmäßig mitgelieferten Wörterbücher sind umbenannt worden in
|
250
|
-
haben als einheitlichen Separator zwischen Schlüssel
|
307
|
+
Die standardmäßig mitgelieferten Wörterbücher sind umbenannt worden in
|
308
|
+
lingo-xxx.txt und haben als einheitlichen Separator zwischen Schlüssel
|
309
|
+
und Werten das '='-Zeichen.
|
251
310
|
|
252
311
|
* <b>Bereinigungen durchgeführt</b>
|
253
312
|
|
@@ -257,130 +316,139 @@
|
|
257
316
|
|
258
317
|
* <b>Fehlerkorrektur Multiworder</b>
|
259
318
|
|
260
|
-
Ein klitzekleiner Fehler hat sich doch durch die übereifrig schnelle
|
261
|
-
der neuen Version eingeschlichen. Ist korrigiert und in
|
319
|
+
Ein klitzekleiner Fehler hat sich doch durch die übereifrig schnelle
|
320
|
+
Bereitstellung der neuen Version eingeschlichen. Ist korrigiert und in
|
321
|
+
die Testroutinen mit aufgenommen.
|
262
322
|
|
263
|
-
* <b>Punkt-Behandlung vollständig überarbeitet (Abbreviator wieder im
|
323
|
+
* <b>Punkt-Behandlung vollständig überarbeitet (Abbreviator wieder im
|
324
|
+
Einsatz!) => TEIL 2</b>
|
264
325
|
|
265
|
-
...hatte ich doch vergessen zu erwähnen, dass als Voraussetzung für das
|
266
|
-
der neu eingeführten Punkt-Behandlung ZWINGEND die
|
267
|
-
<tt>de.lang</tt> auskommentiert werden muss
|
326
|
+
...hatte ich doch vergessen zu erwähnen, dass als Voraussetzung für das
|
327
|
+
Funktionieren der neu eingeführten Punkt-Behandlung ZWINGEND die
|
328
|
+
Tokenizer-Regel 'ABRS' in der <tt>de.lang</tt> auskommentiert werden muss.
|
268
329
|
|
269
330
|
== 1.6.0rc2 [2006-03-09]
|
270
331
|
|
271
332
|
* <b>Vorsicht bei CFG-Dateien!</b>
|
272
333
|
|
273
|
-
Multiworder und Sequencer vertragen beide einen 'stopper'-Parameter, der in
|
274
|
-
Regel mit 'PUNCT,OTH_C' vorbelegt ist. Dies soll Token identifizieren,
|
275
|
-
die Regel gleichen Namens im Tokenizer erkannt wurden. Diese
|
276
|
-
umbenannt worden (weiß nicht mit welcher Version) in
|
277
|
-
die entsprechenden Einträge ändern auf
|
334
|
+
Multiworder und Sequencer vertragen beide einen 'stopper'-Parameter, der in
|
335
|
+
der Regel mit 'PUNCT,OTH_C' vorbelegt ist. Dies soll Token identifizieren,
|
336
|
+
die durch die Regel gleichen Namens im Tokenizer erkannt wurden. Diese
|
337
|
+
Regeln sind jedoch umbenannt worden (weiß nicht mit welcher Version) in
|
338
|
+
'PUNC' und 'OTHR'. Daher bitte die entsprechenden Einträge ändern auf
|
339
|
+
'PUNC,OTHR'.
|
278
340
|
|
279
|
-
* <b>Punkt-Behandlung vollständig überarbeitet (Abbreviator wieder im
|
341
|
+
* <b>Punkt-Behandlung vollständig überarbeitet (Abbreviator wieder im
|
342
|
+
Einsatz!)</b>
|
280
343
|
|
281
|
-
Die Behandlung des Zeichen '.' wurde komplett neu designet. Das Zeichen '.'
|
282
|
-
grundsätzlich in drei verschiedenen Kontexten vor:
|
344
|
+
Die Behandlung des Zeichen '.' wurde komplett neu designet. Das Zeichen '.'
|
345
|
+
kommt grundsätzlich in drei verschiedenen Kontexten vor:
|
283
346
|
|
284
347
|
1. Als Punkt hinter einer Zahl (1. = Erster, 2. = Zweiter,...)
|
285
348
|
2. Als Abkürzungspunkt
|
286
349
|
3. Der Satzendepunkt
|
287
350
|
|
288
|
-
Der 1. Fall ist sehr sicher durch eine Tokenizer-Regel zu identifizieren
|
289
|
-
wird daher hier nicht weiter betrachtet. Dabei wird kein Punkt-Token
|
290
|
-
sondern der Punkt im Stammwort mitgegeben (z.B. <1.>).
|
351
|
+
Der 1. Fall ist sehr sicher durch eine Tokenizer-Regel zu identifizieren
|
352
|
+
und wird daher hier nicht weiter betrachtet. Dabei wird kein Punkt-Token
|
353
|
+
erzeugt, sondern der Punkt im Stammwort mitgegeben (z.B. <1.>).
|
291
354
|
|
292
|
-
Zwischen dem 2. und dem 3. Fall macht der Tokenizer keine Unterscheidung
|
293
|
-
Der Punkt wird als eigenständiges Token erkannt und in den
|
294
|
-
weitergereicht. Der Abbreviator versucht nun
|
295
|
-
zu erkennen. Taucht ein Punkt im
|
296
|
-
|
297
|
-
|
298
|
-
weitergereicht.
|
355
|
+
Zwischen dem 2. und dem 3. Fall macht der Tokenizer keine Unterscheidung
|
356
|
+
mehr. Der Punkt wird als eigenständiges Token erkannt und in den
|
357
|
+
Verarbeitungsstrom weitergereicht. Der Abbreviator versucht nun
|
358
|
+
Abkürzungen anhand von Punkt-Token zu erkennen. Taucht ein Punkt im
|
359
|
+
Zeichenstrom auf, dann wird das vorhergehende Word im Abkürzungswörterbuch
|
360
|
+
nachgeschlagen. Wird das Wort dort gefunden, wird das Punkt-Token aus dem
|
361
|
+
Zeichenstrom entfernt und die Abkürzung als identifiziert weitergereicht.
|
299
362
|
|
300
|
-
Bleibt neben dem Satzendepunkt noch der Abkürzungspunkt z.B. in
|
301
|
-
(John F. Kennedy). Diese müssen vom Multiworder zuverlässig
|
302
|
-
Mehrwortgruppe erkannt und ggf. ebenfalls entfernt werden.
|
303
|
-
aufgebohrtet Testroutinen zeigten ein zuverlässiges
|
363
|
+
Bleibt neben dem Satzendepunkt noch der Abkürzungspunkt z.B. in
|
364
|
+
Personennamen (John F. Kennedy). Diese müssen vom Multiworder zuverlässig
|
365
|
+
als Teil einer Mehrwortgruppe erkannt und ggf. ebenfalls entfernt werden.
|
366
|
+
Die zusätzlich aufgebohrtet Testroutinen zeigten ein zuverlässiges
|
367
|
+
Verhalten.
|
304
368
|
|
305
369
|
== 1.6.0rc1 [2006-02-27]
|
306
370
|
|
307
371
|
* <b>Grundlegende architektonische Überarbeitung</b>
|
308
372
|
|
309
|
-
Die über ein Jahr gewachsene Struktur von Lingo wurde grundlich
|
310
|
-
Detailliertere Dokumentation folgt.
|
373
|
+
Die über ein Jahr gewachsene Struktur von Lingo wurde grundlich
|
374
|
+
überarbeitet. Detailliertere Dokumentation folgt.
|
311
375
|
|
312
376
|
* <b>Abbreviator entfernt</b>
|
313
377
|
|
314
|
-
Den Attendee Abbreviator gibt es nicht mehr. Seine Funktion wird vom
|
315
|
-
mit übernommen. Wenn ein Wort nicht erkannt wird, so prüft
|
316
|
-
Wort erneut mit abschließendem Punkt, wenn das
|
317
|
-
tatsächlich ein Punkt ist. In diesem Fall
|
318
|
-
entfernt.
|
378
|
+
Den Attendee Abbreviator gibt es nicht mehr. Seine Funktion wird vom
|
379
|
+
Wordsearcher mit übernommen. Wenn ein Wort nicht erkannt wird, so prüft
|
380
|
+
der Wordsearcher das Wort erneut mit abschließendem Punkt, wenn das
|
381
|
+
nächste Token im Zeichenstrom tatsächlich ein Punkt ist. In diesem Fall
|
382
|
+
wird das Punkt-Token aus dem Datenstrom entfernt.
|
319
383
|
|
320
384
|
* <b>Ocr_variator heißt jetzt Variator</b>
|
321
385
|
|
322
|
-
Kleine kosmetische Anpassung. Der Ocr-Bezug stimmt zwar historisch gesehen
|
323
|
-
mit der eigentlichen Funktion hat es jedoch nichts zu tun.
|
386
|
+
Kleine kosmetische Anpassung. Der Ocr-Bezug stimmt zwar historisch gesehen
|
387
|
+
noch, mit der eigentlichen Funktion hat es jedoch nichts zu tun.
|
324
388
|
|
325
389
|
* <b>Decomposer mit zusätzlicher Validitätsprüfung und Kennzeichnung</b>
|
326
390
|
|
327
|
-
Der Decomposer kann bei Bedarf Komposita einer zusätzlichen Prüfung
|
328
|
-
Ist der Schlüssel
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
Zeichen
|
391
|
+
Der Decomposer kann bei Bedarf Komposita einer zusätzlichen Prüfung
|
392
|
+
unterziehen. Ist der Schlüssel
|
393
|
+
<tt>de.lang:language/dictionary/compound/skip-sequences</tt> angegeben, der
|
394
|
+
z.B. in der Form <tt>skip-sequences: [ VS ]</tt> definiert wird, wird
|
395
|
+
zusätzlich geprüft, ob das Kompositum mit seinen Teilen diesen Wortklassen
|
396
|
+
entspricht. Hiernach werden Komposita verworfen, die aus
|
397
|
+
Verb-Substantiv-Kombination bestehen. Die Angabe des Parameters ist
|
398
|
+
optional. Zusätzlich werden bei Angabe des Schlüssels
|
399
|
+
<tt>de.lang:language/dictionary/compound/append-wordclass</tt>, der i.d.R.
|
400
|
+
einen ein Zeichen langen String enthält, die durch Zerlegung erkannten
|
401
|
+
Wortstämme markiert, in dem ihre Wortklasse das über diesen Schlüssel
|
402
|
+
definierte Zeichen angehangen bekommt.
|
337
403
|
|
338
404
|
* <b>Install.rb nicht mehr notwendig</b>
|
339
405
|
|
340
|
-
Die Umwandlung von Text-Dateien in SDBM-Dateien erfolgt nicht mehr über
|
341
|
-
sondern durch 'jeden' Lingoaufruf implizit. Beim öffnen der
|
342
|
-
automatisch die Aktualität geprüft und bei Bedarf eine
|
343
|
-
angestartet.
|
406
|
+
Die Umwandlung von Text-Dateien in SDBM-Dateien erfolgt nicht mehr über
|
407
|
+
Install, sondern durch 'jeden' Lingoaufruf implizit. Beim öffnen der
|
408
|
+
SDBM-Datei wird automatisch die Aktualität geprüft und bei Bedarf eine
|
409
|
+
erneute Übersetzung angestartet.
|
344
410
|
|
345
411
|
== 1.5.0 [2005-12-08]
|
346
412
|
|
347
413
|
* <b>Sprachkonfiguration aktualisiert</b>
|
348
414
|
|
349
|
-
Die Konfigurationsdatei de.lang ist an produktive Erfahrungen angepasst
|
350
|
-
Insbesondere werden jetzt alle Sonderzeichen der Zeichensätze
|
351
|
-
Windows-1252 vollständig erkannt, ohne dass laufend Zeichen
|
352
|
-
müssen.
|
415
|
+
Die Konfigurationsdatei de.lang ist an produktive Erfahrungen angepasst
|
416
|
+
worden. Insbesondere werden jetzt alle Sonderzeichen der Zeichensätze
|
417
|
+
ISO-8859-1 und Windows-1252 vollständig erkannt, ohne dass laufend Zeichen
|
418
|
+
nachgepflegt werden müssen.
|
353
419
|
|
354
420
|
* <b>Cachable arbeitet jetzt mit Duplikaten</b>
|
355
421
|
|
356
|
-
Objekte, die in den Cache von Datasource, Dictionary oder Grammer
|
357
|
-
wurden, wurden auch immer als Referenz ausgelesen. Die hatte
|
358
|
-
wenn Cacheinhalte im späteren Verlauf der Lingo-Kette
|
359
|
-
Veränderung auch alle nachfolgen aus dem Cache
|
360
|
-
D.h.: Wird das Wort <von|?> in den Cache
|
361
|
-
nachfolgenden Suchanfragen aus dem Cache
|
362
|
-
|
363
|
-
z.B. auf 'MU?' (Teil einer
|
364
|
-
|
365
|
-
|
422
|
+
Objekte, die in den Cache von Datasource, Dictionary oder Grammer
|
423
|
+
übernommen wurden, wurden auch immer als Referenz ausgelesen. Die hatte
|
424
|
+
zur Folge, dass wenn Cacheinhalte im späteren Verlauf der Lingo-Kette
|
425
|
+
verändert wurden, diese Veränderung auch alle nachfolgen aus dem Cache
|
426
|
+
gelesenen Objekte betraf. D.h.: Wird das Wort <von|?> in den Cache
|
427
|
+
geschrieben, so werden alle nachfolgenden Suchanfragen aus dem Cache
|
428
|
+
bedient. So weit so gut. Wenn ein Attendee nach Cacheauslesen der Meinung
|
429
|
+
ist, er müsste für das Objekt das Attribut z.B. auf 'MU?' (Teil einer
|
430
|
+
Mehrwortgruppe) ändern, dann wurde dadurch auch das Element im Cache
|
431
|
+
geändert. Nachfolgende Suchanfragen erhielten somit <von|MU?> als Antwort.
|
432
|
+
Ab jetzt werden nur noch Kopien des Originals in den Cache übernommen,
|
366
433
|
so das eine versehentliche Veränderung ausgeschlossen wird.
|
367
434
|
|
368
435
|
* <b>String hat attr-Methode</b>
|
369
436
|
|
370
|
-
Die Methode _select_ der Klasse _Dictionary_ gibt die gefundenen Lexicals
|
371
|
-
zurück. Bei der Verarbeitung von Mehrwortwörterbüchern kann
|
372
|
-
als Antwort gegeben werden, was dem Multiworder
|
373
|
-
der Länge 5 gibt, die mit genau
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
437
|
+
Die Methode _select_ der Klasse _Dictionary_ gibt die gefundenen Lexicals
|
438
|
+
sortiert zurück. Bei der Verarbeitung von Mehrwortwörterbüchern kann
|
439
|
+
jedoch auch z.B. '*5' als Antwort gegeben werden, was dem Multiworder
|
440
|
+
mitteilt, dass es eine Mehrwortgruppe der Länge 5 gibt, die mit genau
|
441
|
+
den drei nachgefragten Wörtern beginnt und der Multiworder eine weitere
|
442
|
+
Abfrage machen soll. Klappt alles wunderbar, nur dass _select_ nicht in
|
443
|
+
der Lage ist ein Array aus Lexicals und Strings anhand des attr-Wertes zu
|
444
|
+
sortieren. Jetzt hat hat die Klasse String eines attr-Wert '' bekommen
|
445
|
+
und die Sortierung funktioniert wieder.
|
378
446
|
|
379
447
|
* <b>Neues Synonym-Wörterbuch</b>
|
380
448
|
|
381
|
-
Ein sehr gut gepflegtes Synonym-Wörterbuch ist als Beispiel mit
|
382
|
-
Wie beim Mehrwortwörterbuch system_mul.txt
|
383
|
-
Anfangsbuchstabe 'a' enthalten.
|
449
|
+
Ein sehr gut gepflegtes Synonym-Wörterbuch ist als Beispiel mit
|
450
|
+
aufgenommen worden. Wie beim Mehrwortwörterbuch system_mul.txt
|
451
|
+
sind jedoch nur Einträge mit dem Anfangsbuchstabe 'a' enthalten.
|
384
452
|
|
385
453
|
== 1.5.0rc2 [2005-12-06]
|
386
454
|
|
@@ -398,50 +466,55 @@
|
|
398
466
|
|
399
467
|
* <b>Kompositumerkennung redesigned</b>
|
400
468
|
|
401
|
-
Neben den Klassen für Datenzugriff auf unterster Ebene (Datasource) und
|
402
|
-
Wörterbuchzugriff (Dictionary) gibt es nun auch eine Klasse für
|
403
|
-
Spezialitäten (Grammar), welche die Kompositumerkennung
|
469
|
+
Neben den Klassen für Datenzugriff auf unterster Ebene (Datasource) und
|
470
|
+
dem Wörterbuchzugriff (Dictionary) gibt es nun auch eine Klasse für
|
471
|
+
grammatikalische Spezialitäten (Grammar), welche die Kompositumerkennung
|
472
|
+
aufgenommen hat.
|
404
473
|
|
405
474
|
* <b>Testroutinen ausgebaut</b>
|
406
475
|
|
407
|
-
Alle bisher per Mail gemeldeten Fehlersituationen sind in die Testroutinen
|
408
|
-
worden, so dass sie bei zukünftigen Versionen direkt mit getestet
|
409
|
-
weiterhin fleißig per Mail z.B. an error@lex-lingo.de melden.
|
476
|
+
Alle bisher per Mail gemeldeten Fehlersituationen sind in die Testroutinen
|
477
|
+
eingebaut worden, so dass sie bei zukünftigen Versionen direkt mit getestet
|
478
|
+
werden. Also weiterhin fleißig per Mail z.B. an error@lex-lingo.de melden.
|
410
479
|
|
411
480
|
* <b>_Stopworder_ getilgt</b>
|
412
481
|
|
413
|
-
Der _Stopworder_ hat seine Schuldigkeit getan. Sein Konzept ist von
|
414
|
-
Weil er auch durch normale Wörterbuchsuche abbildbar ist, wird
|
415
|
-
weitere Pflege verzichtet. <b>Bitte in den Konfig-Dateien
|
416
|
-
WICHTIG: Stopwörter im Wörterbuch ggf.
|
482
|
+
Der _Stopworder_ hat seine Schuldigkeit getan. Sein Konzept ist von
|
483
|
+
gestern. Weil er auch durch normale Wörterbuchsuche abbildbar ist, wird
|
484
|
+
hier auf die weitere Pflege verzichtet. <b>Bitte in den Konfig-Dateien
|
485
|
+
berücksichtigen! und WICHTIG: Stopwörter im Wörterbuch ggf.
|
486
|
+
nachpflegen!</b>
|
417
487
|
|
418
488
|
* <b>Neuer Attendee _Abbreviator_</b>
|
419
489
|
|
420
|
-
Bisher hat der Tokenizer per Konfiguration eine Liste von Abkürzungen
|
421
|
-
bekommen, die er in einer Textzeile als Token erkennen und
|
422
|
-
einfliessen lassen sollte. Die Pflege dieser
|
423
|
-
aus dem sonst stringenten
|
424
|
-
|
490
|
+
Bisher hat der Tokenizer per Konfiguration eine Liste von Abkürzungen
|
491
|
+
mitgeteilt bekommen, die er in einer Textzeile als Token erkennen und
|
492
|
+
in den Datenstrom einfliessen lassen sollte. Die Pflege dieser
|
493
|
+
Konfigurationsdaten fiel vollends aus dem sonst stringenten
|
494
|
+
Wörterbuchkonzept heraus. Daher wurde dies Funktion in den Abbreviator
|
495
|
+
ausgelagert, der sich die bekannten Abkürzungen aus einem eigenen
|
425
496
|
Wörterbuch holt. <b>Bitte in den Konfig-Dateien berücksichtigen!</b>
|
426
497
|
|
427
498
|
* <b>Datenformate in <tt>de.lang</tt> vereinfacht</b>
|
428
499
|
|
429
500
|
Die Datenformate für den _Tokenizer_ und die _Suffix_e haben sich in der
|
430
|
-
Sprachkonfigurationsdatei de.lang geändert. Sofern eine alte de.lang-Datei
|
431
|
-
Version zusammen laufen soll, <b>bitte in den Konfig-Dateien
|
501
|
+
Sprachkonfigurationsdatei de.lang geändert. Sofern eine alte de.lang-Datei
|
502
|
+
mit dieser Version zusammen laufen soll, <b>bitte in den Konfig-Dateien
|
503
|
+
berücksichtigen!</b>
|
432
504
|
|
433
505
|
* <b>Attendees überarbeitet</b>
|
434
506
|
|
435
|
-
Das Verhalten der Attendees wurde homogenisiert. Als zusätzliche Klasse
|
436
|
-
der BufferedAttendee eingeführt, der den Eingabe-Strom zwischen
|
437
|
-
und den angestauten Buffer mit einem mal verarbeiten kann.
|
438
|
-
förderlich für die Attendees Multiworder und
|
439
|
-
untersuchen müssen.
|
507
|
+
Das Verhalten der Attendees wurde homogenisiert. Als zusätzliche Klasse
|
508
|
+
wurde der BufferedAttendee eingeführt, der den Eingabe-Strom zwischen
|
509
|
+
speichern kann und den angestauten Buffer mit einem mal verarbeiten kann.
|
510
|
+
Dies ist insbesondere förderlich für die Attendees Multiworder und
|
511
|
+
Sequencer, die eine Kette von Objekten untersuchen müssen.
|
440
512
|
|
441
513
|
* <b>Dokumentation erstellt</b>
|
442
514
|
|
443
|
-
Für alle Attendees gibt es jetzt reichlich Dokumentation, die mit
|
444
|
-
aufgerufen werden kann. Weitere Dokumentation muss
|
515
|
+
Für alle Attendees gibt es jetzt reichlich Dokumentation, die mit
|
516
|
+
doc/index.html aufgerufen werden kann. Weitere Dokumentation muss
|
517
|
+
noch folgen...
|
445
518
|
|
446
519
|
== 1.4.2 [2005-10-11]
|
447
520
|
|
@@ -454,16 +527,17 @@
|
|
454
527
|
|
455
528
|
* <b>_Synonymer_ verarbeitet jetzt WIRKLICH mehrere Wörterbücher</b>
|
456
529
|
|
457
|
-
Aus einem mir bislang unbekannten Grund sind die in der letzten Version
|
458
|
-
Änderungen nicht übernommen worden. Ist bereinigt.
|
530
|
+
Aus einem mir bislang unbekannten Grund sind die in der letzten Version
|
531
|
+
gemachten Änderungen nicht übernommen worden. Ist bereinigt.
|
459
532
|
|
460
533
|
* <b><i>Vector_filter</i> mit geändertem +sort+-Parameter</b>
|
461
534
|
|
462
|
-
Der +sort+-Parameter konnte vormals die Werte +normal+, +count+ und +term+
|
463
|
-
Die Werte +count+ und +term+ wurden durch die Bezeichnungen
|
464
|
-
ersetzt. Zusätzlich hinzugekommen sind die Werte
|
465
|
-
den o.g. korrespondieren, der Zahlenwert
|
466
|
-
Wort stehen. Dies ist notwendig
|
535
|
+
Der +sort+-Parameter konnte vormals die Werte +normal+, +count+ und +term+
|
536
|
+
annehmen. Die Werte +count+ und +term+ wurden durch die Bezeichnungen
|
537
|
+
+term_abs+ und +term_rel+ ersetzt. Zusätzlich hinzugekommen sind die Werte
|
538
|
+
+sto_abs+ und +sto_rel+, welche mit den o.g. korrespondieren, der Zahlenwert
|
539
|
+
jedoch in geschweiften Klammern hinter dem Wort stehen. Dies ist notwendig
|
540
|
+
für das _LIR_-Format.
|
467
541
|
|
468
542
|
* <b>Für zukünftige Meldungen!</b>
|
469
543
|
|
@@ -474,13 +548,15 @@
|
|
474
548
|
|
475
549
|
* <b>Neuer Attendee _Sequencer_</b>
|
476
550
|
|
477
|
-
Der _Sequencer_ erkennt Mehrwortgruppen, die nicht über ein Wörterbuch
|
478
|
-
werden müssen, sondern über ihre Wortklassen erkannt werden.
|
479
|
-
<tt>de.lang:language/attendees/sequencer/sequences:
|
480
|
-
so werden Wortfolgen der Art
|
481
|
-
und in der in
|
482
|
-
|
483
|
-
|
551
|
+
Der _Sequencer_ erkennt Mehrwortgruppen, die nicht über ein Wörterbuch
|
552
|
+
vorgegeben werden müssen, sondern über ihre Wortklassen erkannt werden.
|
553
|
+
Steht z.B. in <tt>de.lang:language/attendees/sequencer/sequences:
|
554
|
+
[ [AS, "2, 1"], [AK, "2, 1"] ]</tt> so werden Wortfolgen der Art
|
555
|
+
Adjektiv-Subjektiv und Adjektiv-Kompositum erkannt und in der in
|
556
|
+
Gänsefüsschen angegebenen Form als Indexeintrag bereitgestellt. So wird
|
557
|
+
'geniale Indexierung' als 'indexierung, genial' in Form eines zusätzlichen
|
558
|
+
Wortes in den Ausgabestrom eingefügt mit Attribut +SEQ+ und der Wortklasse
|
559
|
+
+q+.
|
484
560
|
|
485
561
|
* <b>Bugfixing Kompositum-Caching</b>
|
486
562
|
|
@@ -490,41 +566,42 @@
|
|
490
566
|
|
491
567
|
* <b>_Synonymer_ verarbeitet mehrere Wörterbücher</b>
|
492
568
|
|
493
|
-
Mit Angabe des Parameters <tt>mode=all</tt> kann der _Synonymer_ jetzt
|
494
|
-
Wörterbücher verarbeiten.
|
569
|
+
Mit Angabe des Parameters <tt>mode=all</tt> kann der _Synonymer_ jetzt
|
570
|
+
auch mehrere Wörterbücher verarbeiten.
|
495
571
|
|
496
572
|
== 1.3.1 [2005-08-18]
|
497
573
|
|
498
574
|
* <b>Neuer Attendee _Objectfilter_</b>
|
499
575
|
|
500
576
|
Als Basis für eine eher allgemeinere und flexiblere Filter-Möglichkeit im
|
501
|
-
Vergleich zum <i>Noneword_filter</i> kann der _Objectfilter_ alle Arten von
|
502
|
-
vornehmen. Das Attribut +objects+ ist eine Ruby-Bedingung, die,
|
503
|
-
+false+ ausgewertet wird, dass aktuelle Objekt filtert.
|
577
|
+
Vergleich zum <i>Noneword_filter</i> kann der _Objectfilter_ alle Arten von
|
578
|
+
Selektion vornehmen. Das Attribut +objects+ ist eine Ruby-Bedingung, die,
|
579
|
+
wenn sie als +false+ ausgewertet wird, dass aktuelle Objekt filtert.
|
504
580
|
|
505
581
|
== 1.3.0 [2005-08-03]
|
506
582
|
|
507
583
|
* <b>Neuer Attendee _Compositizer_</b>
|
508
584
|
|
509
|
-
Die Kompositumzerlegung war bisher im Attendee _Wordsearcher_ enthalten.
|
510
|
-
wurden für die Zerlegung immer die gleichen Wörterbücher benutzt,
|
511
|
-
die Wortsuche verwendet wurden. Durch die Trennung ist eine
|
512
|
-
von Wörterbüchern möglich.
|
585
|
+
Die Kompositumzerlegung war bisher im Attendee _Wordsearcher_ enthalten.
|
586
|
+
Dadurch wurden für die Zerlegung immer die gleichen Wörterbücher benutzt,
|
587
|
+
die auf für die Wortsuche verwendet wurden. Durch die Trennung ist eine
|
588
|
+
separate Angabe von Wörterbüchern möglich.
|
513
589
|
|
514
590
|
* <b>Testing</b>
|
515
591
|
|
516
592
|
Ausführliche Testroutinen sind erstellt worden, welche die Folge-Releases
|
517
593
|
deutlich stabiler machen werden. Innerhalb einer Sekunde sind sämtlich
|
518
|
-
Attendees durchgetestet. Die durchgeführten Tests basieren auf
|
519
|
-
und Anregungen aus vergangenen E-Mails. Sie können
|
520
|
-
In diesem Zusammenhand ist auf die Basisklasse
|
521
|
-
neu erstellt worden. In Verbindung mit der
|
522
|
-
Konfigurationssprache wurden diese automatischen
|
594
|
+
Attendees durchgetestet. Die durchgeführten Tests basieren auf
|
595
|
+
Fehlermeldungen und Anregungen aus vergangenen E-Mails. Sie können
|
596
|
+
jederzeit erweitert werden. In diesem Zusammenhand ist auf die Basisklasse
|
597
|
+
aller Attendees (vorher Lingo) neu erstellt worden. In Verbindung mit der
|
598
|
+
Einführung von YAML als Konfigurationssprache wurden diese automatischen
|
599
|
+
Tests erst möglich.
|
523
600
|
|
524
601
|
* <b>YAML</b>
|
525
602
|
|
526
|
-
Bei YAML unbedingt darauf achten, dass keine TABs verwendet werden. YAML
|
527
|
-
da sehr empfindlich.
|
603
|
+
Bei YAML unbedingt darauf achten, dass keine TABs verwendet werden. YAML
|
604
|
+
ist da sehr empfindlich.
|
528
605
|
|
529
606
|
== 1.2.1 [2005-07-03]
|
530
607
|
|
@@ -538,35 +615,36 @@
|
|
538
615
|
|
539
616
|
* <b><i>Vector_Filter</i> mit Term-Frequenz</b>
|
540
617
|
|
541
|
-
Wird beim Attendee <i>Vector_filter</i> das Attribut <tt>sort='term'</tt>
|
542
|
-
wird statt der absoluten Zahl (wie bei <tt>sort='count'</tt>)
|
543
|
-
eines Wortes ermittelt. Die Term-Frequenz bezieht sich
|
544
|
-
Datei. Diese wiederum können über das Attribut
|
545
|
-
Das Attribut entscheidet darüber,
|
546
|
-
|
547
|
-
<tt>no-count='PUNCT,OTH_C'</tt>.
|
618
|
+
Wird beim Attendee <i>Vector_filter</i> das Attribut <tt>sort='term'</tt>
|
619
|
+
angegeben, wird statt der absoluten Zahl (wie bei <tt>sort='count'</tt>)
|
620
|
+
die Term-Frequenz eines Wortes ermittelt. Die Term-Frequenz bezieht sich
|
621
|
+
auf die Anzahl Worte in der Datei. Diese wiederum können über das Attribut
|
622
|
+
<tt>no-count</tt> gesteuert werden. Das Attribut entscheidet darüber,
|
623
|
+
welche Wort-Typen nicht in die Gesamtwortanzahl der Worte in der Datei
|
624
|
+
berücksichtigt werden. Default hierfür ist <tt>no-count='PUNCT,OTH_C'</tt>.
|
548
625
|
|
549
626
|
* <b>Kompositum-Zerlegung mit weiterer Einschränkung</b>
|
550
627
|
|
551
628
|
Ein weiterer Parameter ist für die Kompositumzerlegung hinzugekommen. Als
|
552
|
-
Attribute des Tags <tt>XML:dictionary/compound</tt> können jetzt angegeben
|
629
|
+
Attribute des Tags <tt>XML:dictionary/compound</tt> können jetzt angegeben
|
630
|
+
werden:
|
553
631
|
|
554
|
-
Attribut
|
555
|
-
|
556
|
-
min-word-size
|
632
|
+
Attribut Default Funktion
|
633
|
+
========================================================================
|
634
|
+
min-word-size 8 Prüft nur Wörter ab dieser Größe auf Kompositum
|
557
635
|
|
558
636
|
Die folgenden Attribute werden auf gefundene Komposita angewendet. Das
|
559
637
|
Kompositum muss diese Prüfung bestehen, um gewertet zu werden.
|
560
638
|
|
561
|
-
min-avg-part-size
|
562
|
-
|
563
|
-
min-part-size
|
564
|
-
max-parts
|
639
|
+
min-avg-part-size 4 Die durchschnittliche Größe aller Wortteile muss
|
640
|
+
mindestens diesen Wert haben
|
641
|
+
min-part-size 1 Jeder Wortteil muss mindestens so groß sein
|
642
|
+
max-parts 4 Es darf höchstens so viele Wortteile geben.
|
565
643
|
|
566
644
|
* <b>Install-Routine um Linux-Kommandos erweitert</b>
|
567
645
|
|
568
|
-
Die Install-Routine sollte jetzt alle Aufgaben sowohl auf Windows wie auch
|
569
|
-
komplett abschließen können.
|
646
|
+
Die Install-Routine sollte jetzt alle Aufgaben sowohl auf Windows wie auch
|
647
|
+
Linux komplett abschließen können.
|
570
648
|
|
571
649
|
* <b>Zu lange Datensätze</b>
|
572
650
|
|
@@ -579,42 +657,42 @@
|
|
579
657
|
|
580
658
|
* <b>Test-Routinen erweitert</b>
|
581
659
|
|
582
|
-
Insbesondere die Sortierung von Lexicals wurde noch einmal intensiv unter
|
583
|
-
Lupe genommen. Dabei sind ein paar kleine Dinge noch begradigt worden.
|
660
|
+
Insbesondere die Sortierung von Lexicals wurde noch einmal intensiv unter
|
661
|
+
die Lupe genommen. Dabei sind ein paar kleine Dinge noch begradigt worden.
|
584
662
|
|
585
663
|
* <b>Install-Routine bereinigt</b>
|
586
664
|
|
587
|
-
Install.rb soll in Richtung Plattformunabhängigkeit weiterentwickelt
|
588
|
-
dass auch Linux nicht zu kurz kommt. Da fehlen noch ein paar
|
589
|
-
die Routine wird euch zu gegebener Zeit fragen :o)
|
665
|
+
Install.rb soll in Richtung Plattformunabhängigkeit weiterentwickelt
|
666
|
+
werden, so dass auch Linux nicht zu kurz kommt. Da fehlen noch ein paar
|
667
|
+
Kommandos, aber die Routine wird euch zu gegebener Zeit fragen :o)
|
590
668
|
!!Einzelne Datenbanken können jetzt angesprochen werden!!
|
591
669
|
Mit 'install -data -r rdk' werden z.B. alle Datenbanken, die rdk im Namen
|
592
|
-
enthalten, gelöscht und mit 'install -data rdk' auch wieder hergestellt.
|
593
|
-
die Pflege der Datenbanken deutlich erleichtern.
|
670
|
+
enthalten, gelöscht und mit 'install -data rdk' auch wieder hergestellt.
|
671
|
+
Das sollte die Pflege der Datenbanken deutlich erleichtern.
|
594
672
|
|
595
673
|
* <b>VORSICHT: KNOWN ERROR</b>
|
596
674
|
|
597
|
-
Die Datenbanken werden im Verzeichnis de/store gespeichert. Unter Linux
|
598
|
-
das Erstellen des Verzeichnisses noch nicht die richtigen Rechte
|
599
|
-
Teste ich noch unter Linux, bis dahin bitte das Unterverzeichnis
|
600
|
-
von Install von Hand anlegen!
|
675
|
+
Die Datenbanken werden im Verzeichnis de/store gespeichert. Unter Linux
|
676
|
+
scheint das Erstellen des Verzeichnisses noch nicht die richtigen Rechte
|
677
|
+
mitzugeben. Teste ich noch unter Linux, bis dahin bitte das Unterverzeichnis
|
678
|
+
vor dem Aufruf von Install von Hand anlegen!
|
601
679
|
|
602
680
|
== 1.1.0 [2005-06-18]
|
603
681
|
|
604
682
|
* <b>Umstellung der Versionsnummernsystematik</b>
|
605
683
|
|
606
684
|
Damit auch Patches und Bugfixes nicht als herrenloses Archiv ausgetauscht
|
607
|
-
werden müssen und jeden besser in Erinnerung verbleibt, wann welche
|
608
|
-
|
609
|
-
folgende Regeln:
|
685
|
+
werden müssen und jeden besser in Erinnerung verbleibt, wann welche
|
686
|
+
Funktionserweiterung dazu kam, gelten für die Veränderungen in den
|
687
|
+
Versionsnummern folgende Regeln:
|
610
688
|
X.0.0 Die erste Stelle kennzeichnet einen grundlegenden architektonischen
|
611
|
-
Umbau von Lingo, wie z.B. den Wechsel von Rubyling auf Lingo. Im
|
612
|
-
zählt hierzu auch eine zehnmalige Funktionserweiterung :o)
|
613
|
-
0.X.0 Die zweite Stelle kennzeichnet eine Funktionserweiterung, wie z.B.
|
614
|
-
Verarbeitung von Mehrwortgruppen.
|
689
|
+
Umbau von Lingo, wie z.B. den Wechsel von Rubyling auf Lingo. Im
|
690
|
+
Zweifel zählt hierzu auch eine zehnmalige Funktionserweiterung :o)
|
691
|
+
0.X.0 Die zweite Stelle kennzeichnet eine Funktionserweiterung, wie z.B.
|
692
|
+
die Verarbeitung von Mehrwortgruppen.
|
615
693
|
0.0.X Die letzte Stelle ist für Bugfixes vorbehalten.
|
616
|
-
Gegebenenfalls kann der Versionsnummer noch ein kleiner Buchstabe folgen,
|
617
|
-
anzeigt, dass sich lediglich an der Dokumentation etwas geändert hat.
|
694
|
+
Gegebenenfalls kann der Versionsnummer noch ein kleiner Buchstabe folgen,
|
695
|
+
der anzeigt, dass sich lediglich an der Dokumentation etwas geändert hat.
|
618
696
|
Gestartet wird mit der 1.1.0 (Erweiterung um Mehrworterkennung), die im
|
619
697
|
wesentlichen der Vorversion (alte Systematik) entspricht.
|
620
698
|
|
@@ -622,46 +700,47 @@
|
|
622
700
|
|
623
701
|
* <b>Datenbankformat und -zugriff vereinheitlicht</b>
|
624
702
|
|
625
|
-
Bisher gab es drei verschiedene Datenformate für Wörterbücher, Synonyme
|
626
|
-
Mehrwortgruppen. Alle drei Typen finden sich nun in einem universellen
|
627
|
-
wieder.
|
628
|
-
Ebenso wurde der Zugriff auf die Daten modifiziert. Wurden vorher je nach
|
629
|
-
einmal eine Liste der erkannten Grundformen (Lexical) als Ergebnis
|
630
|
-
anderes mal nur eine Zeichenkette zurück gegeben, werden
|
631
|
-
die Daten als Lexical-Liste generiert. Dies hatte
|
632
|
-
Synonymerkennung, da bisher die die Wortklasse 'y'
|
633
|
-
aus den Datendateien kam.
|
703
|
+
Bisher gab es drei verschiedene Datenformate für Wörterbücher, Synonyme
|
704
|
+
und Mehrwortgruppen. Alle drei Typen finden sich nun in einem universellen
|
705
|
+
Format wieder.
|
706
|
+
Ebenso wurde der Zugriff auf die Daten modifiziert. Wurden vorher je nach
|
707
|
+
Typ einmal eine Liste der erkannten Grundformen (Lexical) als Ergebnis
|
708
|
+
erzeugt und ein anderes mal nur eine Zeichenkette zurück gegeben, werden
|
709
|
+
jetzt alle Zugriffe auf die Daten als Lexical-Liste generiert. Dies hatte
|
710
|
+
Auswirkungen auf die Synonymerkennung, da bisher die die Wortklasse 'y'
|
711
|
+
aus dem Programm und nicht aus den Datendateien kam.
|
634
712
|
|
635
713
|
* <b>Multiworder verarbeitet mehrere Datenbanken</b>
|
636
714
|
|
637
|
-
Die Verarbeitung von mehreren Datenbanken für einen Zugriff wird
|
638
|
-
in der Klasse Dictionary erledigt. Da der Multiworder
|
639
|
-
Dictionary-Klasse nicht benötigt, greift er
|
640
|
-
welche diese Funktion nicht besitzt.
|
641
|
-
Datendateien im Multiworder selbst
|
715
|
+
Die Verarbeitung von mehreren Datenbanken für einen Zugriff wird
|
716
|
+
normalerweise in der Klasse Dictionary erledigt. Da der Multiworder
|
717
|
+
jedoch die Funktionen der Dictionary-Klasse nicht benötigt, greift er
|
718
|
+
direkt auf die Klasse DataSource zu, welche diese Funktion nicht besitzt.
|
719
|
+
Daher musste die Verarbeitung mehrerer Datendateien im Multiworder selbst
|
720
|
+
erfolgen.
|
642
721
|
|
643
722
|
== 1.0.3 [2005-05-21]
|
644
723
|
|
645
724
|
* <b>Multiworder fertig!</b>
|
646
725
|
|
647
|
-
Mit dem neuen Attendee Multiworder werden Mehrwortgruppen locker und
|
648
|
-
erkannt. Erkannte Gruppen werden als als zusätzliches (Dummy-)Wort
|
649
|
-
Datenstrom eingespeist. Die Geschwindigkeit wird dadurch
|
650
|
-
Mehrwortgruppen in Ihren jeweiligen Grundformen
|
651
|
-
genau dass, was der Multiworder frei Haus
|
652
|
-
wunderbar, wenn für den Multiworder-Lauf
|
653
|
-
Mehrwörterbuches die gleichen Wörterbücher
|
654
|
-
Soll heißen, wenn zu einem späteren Zeitpunkt
|
655
|
-
gezogen werden, kann eine erneute
|
656
|
-
machen, um die Erkennungsquote zu
|
657
|
-
Diese Version arbeitet mit einem abgespeckten Mehrwörterbuch.
|
726
|
+
Mit dem neuen Attendee Multiworder werden Mehrwortgruppen locker und
|
727
|
+
schnell erkannt. Erkannte Gruppen werden als als zusätzliches (Dummy-)Wort
|
728
|
+
mit in den Datenstrom eingespeist. Die Geschwindigkeit wird dadurch
|
729
|
+
erreicht, dass die Mehrwortgruppen in Ihren jeweiligen Grundformen
|
730
|
+
gespeichert werden. Das ist genau dass, was der Multiworder frei Haus
|
731
|
+
geliefert bekommt. Das klappt wunderbar, wenn für den Multiworder-Lauf
|
732
|
+
und die Ersterstellung des Mehrwörterbuches die gleichen Wörterbücher
|
733
|
+
verwendet werden. Soll heißen, wenn zu einem späteren Zeitpunkt
|
734
|
+
zusätzliche Wörterbücher hinzu gezogen werden, kann eine erneute
|
735
|
+
Erstellung der Mehrwörterbuches Sinn machen, um die Erkennungsquote zu
|
736
|
+
verbessern. Diese Version arbeitet mit einem abgespeckten Mehrwörterbuch.
|
658
737
|
|
659
738
|
* <b>Install.rb weiter ausgebaut</b>
|
660
739
|
|
661
|
-
Die einzelnen Installationsphasen können jetzt auch einzeln aufgerufen
|
662
|
-
Mit den Optionen -data, -test und -docu können die jeweiligen
|
663
|
-
werden. Mit der zusätzlichen Option -r kann auch alles
|
664
|
-
werden.
|
740
|
+
Die einzelnen Installationsphasen können jetzt auch einzeln aufgerufen
|
741
|
+
werden. Mit den Optionen -data, -test und -docu können die jeweiligen
|
742
|
+
Phasen wiederholt werden. Mit der zusätzlichen Option -r kann auch alles
|
743
|
+
wieder rückgängig gemacht werden.
|
665
744
|
|
666
745
|
== 1.0.2 [2005-04-30]
|
667
746
|
|
@@ -674,9 +753,10 @@
|
|
674
753
|
* <b>Forget MySQL</b>
|
675
754
|
|
676
755
|
Als erstes filebasiertes Datenzugriffssystem wurde SDBM integriert. Darüber
|
677
|
-
wird MySQL überflüssig. Alle relevanten Daten liegen im Unterverzeichnis
|
678
|
-
Siehe auch de.xml:<datasource>. Vor der ersten Nutzung sollten die
|
679
|
-
Dateien mit ruby dbm.rb erzeugt werden. (wird durch install.rb
|
756
|
+
wird MySQL überflüssig. Alle relevanten Daten liegen im Unterverzeichnis
|
757
|
+
/de. Siehe auch de.xml:<datasource>. Vor der ersten Nutzung sollten die
|
758
|
+
SDBM-Dateien mit ruby dbm.rb erzeugt werden. (wird durch install.rb
|
759
|
+
erledigt)
|
680
760
|
|
681
761
|
* <b>Sortierung im Vector_filter verbessert</b>
|
682
762
|
|
@@ -697,40 +777,43 @@
|
|
697
777
|
|
698
778
|
* <b>Kompositumverarbeitung im Vector_filter</b>
|
699
779
|
|
700
|
-
Neben der Kompositum-Grundform werden jetzt auch die Grundformen der
|
701
|
-
Teile mit eingesackt.
|
780
|
+
Neben der Kompositum-Grundform werden jetzt auch die Grundformen der
|
781
|
+
Wort-Teile mit eingesackt.
|
702
782
|
|
703
783
|
== 1.0.0 [2005-04-26]
|
704
784
|
|
705
785
|
* <b>Dokumentation erstellt</b>
|
706
786
|
|
707
|
-
Sie ist zwar noch teilweise verteilt, aber sie ist da, z.B. in
|
708
|
-
in Config.doc. Einigermaßen fertig (war ich nach
|
709
|
-
Feedback was besser geht und was fehlt.
|
787
|
+
Sie ist zwar noch teilweise verteilt, aber sie ist da, z.B. in
|
788
|
+
doc/index.html oder in Config.doc. Einigermaßen fertig (war ich nach
|
789
|
+
der Erstellung). Bitte um Feedback was besser geht und was fehlt.
|
710
790
|
|
711
791
|
* <b>Attendees überarbeitet</b>
|
712
792
|
|
713
793
|
Sehen jetzt noch einfacher aus. Brauchen nur noch die Methoden
|
714
|
-
init - Zur Bereitstellung von Parametern und Konfiguration für die
|
794
|
+
init - Zur Bereitstellung von Parametern und Konfiguration für die
|
795
|
+
anderen Meth.
|
715
796
|
control - Zur Verarbeitung von Kommandos
|
716
797
|
process - Zur Ver- und Bearbeitung von zugestellten Objekten
|
717
798
|
|
718
799
|
* <b>Dictionary aufgesplittet</b>
|
719
800
|
|
720
|
-
Da es mittlerweile drei Attendees gibt, die Datenbankzugriff brauchen, ist
|
721
|
-
Dictionary eine Hauptklasse geworden. Dazu gibt es eine rudimentärere
|
722
|
-
auf die das Dictionary sich für den Datenzugriff stützt: Datasource.
|
723
|
-
Diese Klasse nutzt die vollen Möglichkeiten eines eigenen Datencaches,
|
724
|
-
die Performance noch einmal deutlich verbessert hat.
|
801
|
+
Da es mittlerweile drei Attendees gibt, die Datenbankzugriff brauchen, ist
|
802
|
+
das Dictionary eine Hauptklasse geworden. Dazu gibt es eine rudimentärere
|
803
|
+
Klasse, auf die das Dictionary sich für den Datenzugriff stützt: Datasource.
|
804
|
+
Diese Klasse nutzt die vollen Möglichkeiten eines eigenen Datencaches,
|
805
|
+
welches die Performance noch einmal deutlich verbessert hat.
|
725
806
|
|
726
807
|
* <b>Konfiguration aufgesplittet</b>
|
727
808
|
|
728
|
-
Ja ja, mein Lieblingsthema, aber ohne eine saubere Konfigurationsmöglichkeit
|
729
|
-
Lingo leider nix Wert. Gibt jetzt
|
730
|
-
lingo.xml
|
731
|
-
de.xml
|
732
|
-
<ablauf>.xml - Enthält die Lingo-Konfiguration, z.B. rubyling.xml oder
|
733
|
-
|
809
|
+
Ja ja, mein Lieblingsthema, aber ohne eine saubere Konfigurationsmöglichkeit
|
810
|
+
ist Lingo leider nix Wert. Gibt jetzt
|
811
|
+
lingo.xml - Zur Konfiguration der Kommandozeilenoptionen
|
812
|
+
de.xml - Enthält die sprachrelevante Konfiguration
|
813
|
+
<ablauf>.xml - Enthält die Lingo-Konfiguration, z.B. rubyling.xml oder
|
814
|
+
ocr.xml
|
815
|
+
Mit ruby lingo.rb -c <ablauf> kann jeweils eine andere Konfig. gezogen
|
816
|
+
werden.
|
734
817
|
|
735
818
|
== 0.9.8 [2005-04-16]
|
736
819
|
|
@@ -755,11 +838,12 @@
|
|
755
838
|
|
756
839
|
* <b>Konfiguration mit Lingo.xml</b>
|
757
840
|
|
758
|
-
Konfiguration vollständig überarbeitet. Lingo.cfg heißt jetzt lingo.xml.
|
759
|
-
Endung ist sie leichter mit SciTe editierbar. Die Klasse
|
760
|
-
generische XML-Syntax verarbeiten. Die Werte
|
761
|
-
im Code bereitgestellt. Hinzu kommt, dass
|
762
|
-
diesen Weg zur Verfügung stehen.
|
841
|
+
Konfiguration vollständig überarbeitet. Lingo.cfg heißt jetzt lingo.xml.
|
842
|
+
Mit dieser Endung ist sie leichter mit SciTe editierbar. Die Klasse
|
843
|
+
LingoConfig kann jetzt (fast) generische XML-Syntax verarbeiten. Die Werte
|
844
|
+
werden auf sehr einfache Weise im Code bereitgestellt. Hinzu kommt, dass
|
845
|
+
die Aufruf-Parameter ebenfalls über diesen Weg zur Verfügung stehen.
|
846
|
+
Dokumentation muss folgen :o)
|
763
847
|
|
764
848
|
== 1.4.1 [2005-03-18] (Rubyling)
|
765
849
|
|
@@ -767,32 +851,34 @@
|
|
767
851
|
|
768
852
|
Programm zeigte keine Reaktion mehr auf Laptop nach Standby. Daher stoppen
|
769
853
|
und starten des MySQL-Dienstes eingebaut. Load_wbs.rb von Archiv rubyling_de
|
770
|
-
nach rubyling verschoben (Version aus rubyling_de im nächsten Release
|
854
|
+
nach rubyling verschoben (Version aus rubyling_de im nächsten Release
|
855
|
+
entfernen!)
|
771
856
|
|
772
857
|
* <b>Rubyling Parameter korrigiert</b>
|
773
858
|
|
774
|
-
Für Programmtests waren Parameter im Programm verdrahtet. Kommandozeile
|
775
|
-
ignoriert.
|
859
|
+
Für Programmtests waren Parameter im Programm verdrahtet. Kommandozeile
|
860
|
+
wurde ignoriert.
|
776
861
|
|
777
862
|
== 1.4.0 [2005-03-18] (Rubyling)
|
778
863
|
|
779
864
|
* <b>Interne Klassenhierarchie umgebaut</b>
|
780
865
|
|
781
|
-
In der Datei word.rb sind nun die Klassen unterschieden nach Token, Lexical
|
782
|
-
Word inkl. weiterer Hilfsklassen.
|
866
|
+
In der Datei word.rb sind nun die Klassen unterschieden nach Token, Lexical
|
867
|
+
und Word inkl. weiterer Hilfsklassen.
|
783
868
|
|
784
869
|
* <b>Synonymverarbeitung eingebaut</b>
|
785
870
|
|
786
|
-
Erkannte Worte werden zusätzlich auf Synonyme hin geprüft. Die Liste der
|
787
|
-
des Wortes wird dann um die gefundenen Synonyme erweitert. Die
|
788
|
-
sind wie gewohnt in ruby.cfg unter database/synonym
|
789
|
-
openthesaurus als einziges Wörterbuch benutzt.
|
790
|
-
das Archiv rubyling_de(v1.0) wärmstens
|
871
|
+
Erkannte Worte werden zusätzlich auf Synonyme hin geprüft. Die Liste der
|
872
|
+
Grundformen des Wortes wird dann um die gefundenen Synonyme erweitert. Die
|
873
|
+
Synonym-Wörterbücher sind wie gewohnt in ruby.cfg unter database/synonym
|
874
|
+
konfigurierbar. Derzeit wird openthesaurus als einziges Wörterbuch benutzt.
|
875
|
+
Um openthesaurus zu nutzen, sei das Archiv rubyling_de (v1.0) wärmstens
|
876
|
+
empfohlen.
|
791
877
|
|
792
878
|
* <b>Nicht erkannte Wörter</b>
|
793
879
|
|
794
|
-
Als zusätzliche Datei wird jetzt auch noch eine Endung .non erzeugt, die
|
795
|
-
nicht erkannten Wörter beinhaltet
|
880
|
+
Als zusätzliche Datei wird jetzt auch noch eine Endung .non erzeugt, die
|
881
|
+
alle nicht erkannten Wörter beinhaltet
|
796
882
|
|
797
883
|
* <b>Schnelle Installation</b>
|
798
884
|
|
@@ -801,40 +887,42 @@
|
|
801
887
|
dokumentieren. Alle Archive sind so aufgebaut, dass sie im Verzeichnis
|
802
888
|
rubyling entpackt werden können.
|
803
889
|
|
804
|
-
Archiv
|
805
|
-
|
806
|
-
rubyling(v1.4)
|
807
|
-
rubyling_de(v1.0)
|
808
|
-
rubyling_txt(v1.0)
|
890
|
+
Archiv Ziel Inhalt
|
891
|
+
--------------------------------------------------------------------------
|
892
|
+
rubyling(v1.4) /rubyling Programm, Konfiguration und Dokumentation
|
893
|
+
rubyling_de(v1.0) /rubyling/de Wörterbücher und Programm zum DB-Aufbau
|
894
|
+
rubyling_txt(v1.0) /rubyling/txt Texte zum testen
|
809
895
|
|
810
896
|
== 1.3.0 [2005-02] (Rubyling)
|
811
897
|
|
812
898
|
* <b>Inline-Dokumentation erstellt</b>
|
813
899
|
|
814
|
-
Mit Prozedur make_doc.cmd HTML-Seiten erstellen, dann doc\index.html
|
900
|
+
Mit Prozedur make_doc.cmd HTML-Seiten erstellen, dann doc\index.html
|
901
|
+
aufrufen
|
815
902
|
|
816
903
|
* <b>Konfiguration komplett überarbeitet</b>
|
817
904
|
|
818
|
-
Eine zentrale Konfigurationsdatei ruby.cfg enthält im XML-Style alle
|
819
|
-
z.B. "<parm1 value='15'/>" in Ruby durch $CFG['parm1']
|
820
|
-
und ruby-suffix.txt sind nicht mewhr notwendig.
|
905
|
+
Eine zentrale Konfigurationsdatei ruby.cfg enthält im XML-Style alle
|
906
|
+
Parameter, z.B. "<parm1 value='15'/>" in Ruby durch $CFG['parm1']
|
907
|
+
abfragbar. ruby-token.txt und ruby-suffix.txt sind nicht mewhr notwendig.
|
821
908
|
|
822
909
|
* <b>Reduzierung der linguistisch relevanten Klassen auf zwei Klassen</b>
|
823
910
|
|
824
|
-
TextFile erweitert die Klasse File und ermöglicht die Datei-Verarbeitung
|
825
|
-
Tokenbasis.
|
826
|
-
Dictionary enthält mit der Methode search() die zentrale Schnittstelle
|
827
|
-
Wörterbuch-Recherche (inkl. Stopwörtern, Suffixbehandlung und
|
911
|
+
TextFile erweitert die Klasse File und ermöglicht die Datei-Verarbeitung
|
912
|
+
auf Tokenbasis.
|
913
|
+
Dictionary enthält mit der Methode search() die zentrale Schnittstelle
|
914
|
+
für die Wörterbuch-Recherche (inkl. Stopwörtern, Suffixbehandlung und
|
915
|
+
Kompositumzerlegung).
|
828
916
|
|
829
|
-
* Rubyling erkennt bei Aufruf automatisch (jetzt richtig) das Dateiobjekt
|
830
|
-
unterscheidet Textdatei, Verzeichnis und DB-Datei (z.B. lir.txt). In
|
831
|
-
beiden Fällen werden je Textdatei drei Ausgabedateien erstellt,
|
832
|
-
Verbesserung der Verarbeitung ermöglichen:
|
917
|
+
* Rubyling erkennt bei Aufruf automatisch (jetzt richtig) das Dateiobjekt
|
918
|
+
und unterscheidet Textdatei, Verzeichnis und DB-Datei (z.B. lir.txt). In
|
919
|
+
den ersten beiden Fällen werden je Textdatei drei Ausgabedateien erstellt,
|
920
|
+
die eine weitere Verbesserung der Verarbeitung ermöglichen:
|
833
921
|
.tok = Textfile in Token je Zeile zerlegt;
|
834
922
|
.dic = Token mit Auflösung nach Wörterbuchzugriff;
|
835
923
|
.vec = Inhaltsvektor der Datei.
|
836
924
|
|
837
925
|
== Rubyling x.x vor dem 01.02.2005
|
838
926
|
|
839
|
-
* Diverse Versionen, von denen Klaus meint, sie hätten noch keine eins vor
|
840
|
-
verdient :o(
|
927
|
+
* Diverse Versionen, von denen Klaus meint, sie hätten noch keine eins vor
|
928
|
+
dem Punkt verdient :o(
|