lingo 1.8.4.2 → 1.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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(
|