segmenty.dat
9.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
[options]
aggl=permissive strict isolated
praet=split composite
[combinations]
#define wsz_interp (interp|kropka|dywiz)*
#define moze_interp(segmenty) wsz_interp segmenty wsz_interp
# Segmenty występujące samodzielnie:
#
# domyślny typ segmentu samodzielnego:
moze_interp(samodz)
# segment samotny, który nie dopuszcza nawet znaku interpunkcyjnego po
# sobie
samotny
# przeszlik pojedynczy w formie nieaglutynacyjnej, np. „gniótł”:
moze_interp(praet_sg_na)
# przeszlik pojedynczy w formie niezróżnicowanej aglutynacyjnie, np. „moze”:
moze_interp(praet_sg)
# przeszlik mnogi, np. „czytali”:
moze_interp(praet_pl)
# partykuła „by”:
moze_interp(by)
# inne segmenty, które dopuszczają po sobie aglutynant,
# np. „powininna”, „czyżby”:
moze_interp(z_aglt)
moze_interp(z_aglt_by)
# forma przymiotnikowa (dopuszcza adja):
moze_interp(adj)
# dywiz (jako samodzielny segment jest tylko błędnym użyciem w funkcji
# myślnika, ale trzeba to dopuścić):
dywiz
# pauza i półpauza w funkcji myślnika
pauza
polpauza
#ifdef isolated
adja
#endif
# Połączenia z aglutynantami:
#
#ifdef split
# Czas przeszły:
# np. „gniotł·am”
moze_interp( praet_sg_agl aglsg )
# np. „czytał·em”
moze_interp(praet_sg aglsg)
# np. „czytali·ście”
moze_interp(praet_pl aglpl)
# Tryb warunkowy:
# np. „gniótł·by”
moze_interp(praet_sg_na by)
# np. „czytało·by”
moze_interp(praet_sg by)
# np. „gnietli·by”
moze_interp(praet_pl by)
# np. „gniótł·by·ś”
moze_interp(praet_sg_na by aglsg)
# np. „czytał·by·m”
moze_interp(praet_sg by aglsg)
# np. „gnietli·by·śmy”
moze_interp(praet_pl by aglpl)
#else
# moze_interp(praetcond)
#endif
# np. „by·ś”
moze_interp(by aglsg)
# np. „by·ście”
moze_interp(by aglpl)
# np. „gdyby·m”
moze_interp(z_aglt aglsg)
moze_interp(z_aglt_by aglsg)
# np. „gdyby·ście”
moze_interp(z_aglt aglpl)
moze_interp(z_aglt_by aglpl)
# oraz wersje z by, np. chybabym
moze_interp(z_aglt by aglsg)
moze_interp(z_aglt by aglpl)
# To jest dużo za dużo, ale tytułem eksperymentu:
#ifdef permissive
moze_interp(samodz aglsg)
moze_interp(samodz aglpl)
#endif
# Złożone formy przymiotnikowe
# np. „biało·-·czerwony”
moze_interp( (adja dywiz)+ adj )
# poniższe załatwione przez + powyżej:
# # np. „niebiesko·-·biało·-·czerwona”
# adja dywiz adja dywiz adj interp?
# # itd. (zatrzymujemy się pragmatycznie na 5 członach)
# adja dywiz adja dywiz adja dywiz adj interp?
# adja dywiz adja dywiz adja dywiz adja dywiz adj interp?
# Formy zanegowane stopnia wyższego przymiotników i przysłówków (WK)
# np. „nie·grzeczniejszy”, „nie·grzeczniej”
moze_interp( adj_com )
moze_interp( nie> adj_com )
# Formy „zanegowane” gerundiów i imiesłowów:
# np. „nie·czytanie”, „nie·przeczytany”, „nie·czytający”:
moze_interp( nie> negat )
# Przyimki akceptujące krótką formę „-ń”
moze_interp(z_on_agl)
# np. „do·ń”
moze_interp(z_on_agl on_agl)
# Liczba zapisana jako ciąg cyfr:
moze_interp( dig>* dig )
# Liczba rzymska zapisana jako ciąg cyfr rzymskich:
# (kiepskie, trzeba poprawić wyrażeniem regularnym)
moze_interp( roman>* roman )
# Formacje prefiksalne
#### trzeba wydzielić odpowiednie samodze!
# rzeczownikowe
# np. „euro·sodoma”, „e-·papieros”
moze_interp(nomina)
moze_interp( prefs> nomina ) !weak
# czasownikowe np. „po·nakapywać”
moze_interp(inf_imperf|praet_imperf|imps_imperf|fin_imperf|impt_sg_imperf|impt_pl_imperf|impt_sg_perf|impt_pl_perf)
moze_interp( prefv> (inf_imperf|praet_imperf|imps_imperf|fin_imperf|impt_sg_imperf|impt_pl_imperf) ) !weak
# przymiotnikowe np. „do·żylny”, „euro·sodomski”, „bez·argumentowy”
moze_interp(ppas|adv_pos|pact)
# moze_interp(prefa> adj)
moze_interp( prefa> ( adj|adv_pos|pact|ppas ) ) !weak
moze_interp( prefppas> ppas ) !weak
# Apozycje z dywizem
# np. „kobieta-prezydent”
moze_interp( nomina (dywiz) nomina )
# Zakresy liczbowe, daty, np. 1911-1939.
moze_interp((dig>* dig) dywiz (dig>* dig))
# poniższe do sprawdzenia, najwyraźniej obecne w tekstach, skoro wprowadziliśmy:
# ?
adj dywiz adj
# ?
adj dywiz samodz
# ?
samodz dywiz adj
#### PONIŻEJ REGUŁY WK
# Stopień najwyższy:
# np. „naj·zieleńszy”, „naj·mądrzej”
moze_interp( naj> adj_sup )
# Cząstka li przy osobowych formach czasownika oddzielona dywizem: znasz-li ten kraj
moze_interp( praet_sg dywiz li)
moze_interp( praet_sg aglsg dywiz li)
moze_interp( praet_pl dywiz li)
moze_interp( praet_pl aglpl dywiz li)
moze_interp( praet_sg_na dywiz li)
moze_interp( fin_perf)
moze_interp( fin_imperf)
moze_interp( (fin_perf|fin_imperf) dywiz li)
# i bez dywizu --- czy bez dywizu jest sens łapać?
#moze_interp( praet_sg li)
#moze_interp( praet_pl li)
#moze_interp( praet_sg_na li)
#moze_interp( (fin_perf|fin_imperf) li)
# reguła z partykułą ‹+że› przy trybie rozkazującym
# zakończonym na spółgłoskę
moze_interp(impt_sg_imperf ze)
moze_interp(impt_sg_perf ze)
# dodatkowo reguła dla part+że (niemalże, omalże, nieomalże):
# moze_interp(part_z_ze ze) --- już niepotrzebne, part. wpisane do słownika
# potrzebna jeszcze reguła dla ‹onże›
# i dla ‹+ż› przy zakończonym na samogłoskę
moze_interp(impt_pl_imperf z)
moze_interp(impt_pl_perf z)
# aglutynant przy przymiotniku --- obsługiwane wyżej w wersji permissive
# moze_interp( adj aglsg )
moze_interp( adj aglpl )
# forma złoż. liczebnika + przymiotnik, np. wieloaspektowy, pięciomasztowy
# dwudziestopięcioipółletni
moze_interp( i )
moze_interp( pol_zloz > adj ) !weak
moze_interp( num_zloz>+ adj ) !weak
moze_interp( num_zloz>+ i> pol_zloz> adj ) !weak
# moze_interp(num_zloz+ (i pol_zloz)? adj)
# półdolarówka, półsiostra
moze_interp( ( pol_zloz>|num_zloz> ) nomina ) !weak
# nie analizuje: dwudziestopięcioipółlatek --- powinien?
# moze_interp( num_zloz nomina )
# czy dodać sufiksy: +latek m1, +latek m2, +latka f ? Chyba nie trzeba
# wykluczenie ze złożeń przymiotników: ten, ów, ki, si.
moze_interp(adj_anty_zloz)
# złożenia adja+adj/adv bez dywizu, np. średniopienny, sierściowłosy
moze_interp(adja>+ adj) !weak
# złożenia konkretnych przyimków z formą -ń rzeczownika on:
moze_interp(prep_n)
moze_interp(prep_n n)
# REGUŁY EKSPERYMENTALNE
# formy złoż. rzeczowników i sufiksy
moze_interp( substa> sufs ) !weak
# złożenia imiesłowów przymiotnikowych czynnych;
# z braku form złoż. korzysta się z imiesłowów przysłówkowych + o
moze_interp(pcon)
# moze_interp( (pcon> morphconj dywiz)+ pact )
# liczba arabska formą przymiotnikową, przysłówkową lub rzeczownikową: 22-letni, 20-latek,
# 1-majowy, 3-krotnie
moze_interp( dig>+ dywiz> (adj|adv_pos|nomina) )
# liczba rzymska z formą przymiotnikową: XIX-wieczny
moze_interp( roman>+ dywiz> adj )
# formy złoż. z sufiksem +latek:
moze_interp( num_zloz>+ latek ) !weak
moze_interp(num_zloz>+ i> pol_zloz> latek ) !weak
# złożenia liczbowe z sufiksem +latek, np. 20-latek:
moze_interp( dig>+ dywiz> latek )
# interpretacja znaków interpunkcyjnych
# moze_interp(samodz interp)
[generator combinations]
[segment types]
naj
nie
prefs
prefv
prefa
prefppas
ppas
pcon
morphconj
li
substa
sufs
latek
dywiz
pauza
polpauza
kropka
adj_anty_zloz
adj_com
fin_perf
fin_imperf
nomina
adv_pos
pact
inf_imperf
praet_imperf
imps_imperf
ze
z
dig
roman
adja
adj
adj_sup
negat
on_agl
z_on_agl
samotny
interp
aglsg
aglpl
z_aglt
z_aglt_by
by
praetcond
praet_sg_agl
praet_sg_na
praet_sg
praet_pl
impt_sg_perf
impt_sg_imperf
impt_pl_perf
impt_pl_imperf
pol_zloz
num_zloz
i
n
prep_n
emoticon
killfile
samodz
[tags]
naj naj
nie nie
prefs prefs
prefv prefv
prefa prefa
prefppas prefppas
dig dig
roman romandig
adja adja
substa substa
adj adj:%:pos
adj_sup adj:%:sup
adj_sup adv:sup
adj_com adj:%:com
adj_com adj:%:com
pcon pcon:imperf
negat ger:%:neg
negat pact:%:neg
negat ppas:%:neg
on_agl ppron3:sg:gen.acc:m1.m2.m3:ter:nakc:praep
z_on_agl prep:%
samotny brev:pun
samotny brev:npun
# samotny interj
samotny emoticon
interp interp
aglsg aglt:sg:%
aglpl aglt:pl:%
praet_sg_agl praet:sg:%:agl
praet_sg_na praet:sg:%:nagl
praet_sg praet:sg:%
praet_pl praet:pl:%
praet_sg winien:sg:%
praet_pl winien:pl:%
fin_perf fin:%:perf
fin_imperf fin:%:imperf
nomina subst:%
nomina ger:%
nomina depr:%
adv_pos adv:pos
ppas ppas:%
pact pact:%
praet_imperf praet:%:imperf
inf_imperf inf:imperf
imps_imperf imps:imperf
impt_sg_imperf impt:sg:%:imperf
impt_sg_perf impt:sg:%:perf
impt_pl_imperf impt:pl:%:imperf
impt_pl_perf impt:pl:%:perf
num_zloz num:comp
prep_n prep:%:wok
samodz %
[lexemes]
pol_zloz pół:num:comp
i i:conj
by by:qub
li li:qub
ze +że:qub
z +ż:qub
killfile +ć:qub
z_aglt aby:comp
z_aglt bowiem:comp
z_aglt by:comp
z_aglt cóż:subst
z_aglt czemu:adv
z_aglt_by czyżby:qub
z_aglt_by choćby:comp
z_aglt_by chociażby:comp
z_aglt dlaczego:adv
z_aglt dopóki:comp
z_aglt dopóty:conj
z_aglt_by gdyby:comp
z_aglt gdzie:qub
z_aglt gdzie:adv
z_aglt_by jakby:comp
z_aglt_by jakoby:comp
z_aglt kiedy:adv
z_aglt kiedy:comp
z_aglt tylko:qub
z_aglt żeby:comp
z_aglt to:conj
z_aglt chyba:qub
z_aglt że:qub
z_aglt czy:conj
z_aglt_by oby:qub
z_aglt_by bodajby:qub
z_aglt co:comp
dywiz -:interp
pauza —:interp
polpauza –:interp
kropka .:interp
n on:ppron3:sg:gen.acc:m1.m2.m3:ter:nakc:praep
adj_anty_zloz ten:adj:%
adj_anty_zloz tenże:adj:%
adj_anty_zloz ck:adj:%
adj_anty_zloz c.k.:adj:%
adj_anty_zloz ki:adj:%
adj_anty_zloz si:adj:%
adj_anty_zloz ow:adj:%
adj_anty_zloz ów:adj:%
adj_anty_zloz ówże:adj:%
adj_anty_zloz mój:adj:%
adj_anty_zloz a-z:adj:%
adj_anty_zloz a-ż:adj:%
adj_anty_zloz kiż:adj:%
adj_anty_zloz be:adj:%
adj_anty_zloz caca:adj:%
adj_anty_zloz czyj:adj:%
adj_anty_zloz oboj:adj:%
adj_anty_zloz on:adj:%
adj_anty_zloz tyli:adj:%
prep_n do:prep:%
prep_n dla:prep:%
prep_n koło:prep:%
prep_n na:prep:%
prep_n o:prep:%
prep_n po:prep:%
prep_n poza:prep:%
prep_n spoza:prep:%
prep_n za:prep:%
prep_n zza:prep:%
morphconj +o+:morphconj
# adj_anty_zloz pop:adj:%
sufs +znawca:subst:%
sufs +dawca:subst:%
sufs +biorca:subst:%
sufs +żerca:subst:%
sufs +maniak:subst:%
latek latek:subst:%