-
Notifications
You must be signed in to change notification settings - Fork 1
/
rules.yaml
313 lines (289 loc) · 14.8 KB
/
rules.yaml
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
sentence:
# - Да, это я.
- pat: "- {sentence}"
# Я люблю шоколад, но ненавижу пористый.
- pat: "{compound_sentence}{sentence_ending}"
# Я пошла на кухню, чтобы сделать маме чай.
- pat: "{complex_sentence}{sentence_ending}"
sentence_ending:
- pat: "."
- pat: "?"
- pat: "!"
- pat: "..."
compound_sentence:
# сегодня я поеду к бабушке
- pat: "{simple_sentence}"
# воздух дышит весенним ароматом, вся природа оживляется
- pat: "{simple_sentence}, {compound_sentence}"
# душный жар внезапно сменился влажным холодом; тени быстро густели
- pat: "{simple_sentence}; {compound_sentence}"
complex_sentence:
# мы не сомневаемся, что эта тема ждёт своих исследователей
- pat: "{compound_sentence}, {pos=conj} {compound_sentence}"
# когда человек не сомневается, он не сможет стать журналистом
- pat: "{pos=conj} {compound_sentence}, {compound_sentence}"
# если ты дурак, то ты прыгнешь
- pat: "{pos=conj} {compound_sentence}, {pos=conj} {compound_sentence}"
simple_sentence:
# и мы встретились
- pat: "и {compound_sentence}"
# а мама в это время была на работе
- pat: "а {compound_sentence}"
# толстый мальчик посмотрел на меня
- pat: "{subject_groups number=@1 gender=@2 person=@3} {predicate_groups number=@1 gender=@2 person=@3}"
# в любом случае срединное земное измерение вытесняется
- pat: "{adverbial_modifiers} {subject_groups number=@1 gender=@2 person=@3} {predicate_groups number=@1 gender=@2 person=@3}"
# эта девушка очень хороша собой
- pat: "{subject_groups number=@1 gender=@2} {attribute_groups number=@1 gender=@2}"
# по субботам она очень отзывчива
- pat: "{adverbial_modifiers} {subject_groups number=@1 gender=@2} {attribute_groups number=@1 gender=@2}"
# в огороде лежит большой камень
- pat: "{predicate_groups number=@1 gender=@2 person=@3} {subject_groups number=@1 gender=@2 person=@3}"
# инициировано административное расследование
- pat: "{pos=prts number=@1 gender=@2} {subject_groups number=@1 gender=@2}"
# у них развито сильное территориальное поведение
- pat: "{adverbial_modifiers} {pos=prts number=@1 gender=@2} {subject_groups number=@1 gender=@2}"
# феминизм - не его компетенция
- pat: "{subject_groups} - {subject_groups}"
# это важная и востребованная функциональность
- pat: "это {subject_groups}"
# верно, сказал я
- pat: "{parenthetic_word}, {simple_sentence}"
# этот вид бизнеса, похоже, неплохо развивается
- pat: "{subject_groups number=@1 gender=@2 person=@3}, {parenthetic_word}, {predicate_groups number=@1 gender=@2 person=@3}"
# положение, конечно, удручающее
- pat: "{subject_groups number=@1 gender=@2}, {parenthetic_word}, {attribute_groups number=@1 gender=@2}"
predicate_groups:
# весело прыгает по волнам
- pat: "{predicate_group !number !gender !person}"
# в огне не горит, в воде не тонет
- pat: "{predicate_group !number=@1 !gender=@2 !person=@3}, {predicate_groups number=@1 gender=@2 person=@3}"
# шагает по траве и поёт
- pat: "{predicate_group !number=@1 !gender=@2 !person=@3} и {predicate_groups number=@1 gender=@2 person=@3}"
predicate_group:
# танцует до утра
- pat: "{predicate_group_base !number !gender !person}"
# радуясь за него поздравляет всех с праздником
- pat: "{dangling_participle} {predicate_group_base !number !gender !person}"
# поздравляет всех с праздником, радуясь за него,
- pat: "{predicate_group_base !number !gender !person}, {dangling_participle},"
# красит забор, мягко водя кисточкой
- pat: "{predicate_group_base !number !gender !person}, {dangling_participle}"
predicate_group_base:
# прыгает
- pat: "{predicate !number !gender !person}"
# тяжело дышит
- pat: "{adverbial_modifiers} {predicate !number !gender !person}"
# стучит кувалдой
- pat: "{predicate !number !gender !person} {object_groups case=ablt}"
# быстро прикрылся щитом
- pat: "{adverbial_modifiers} {predicate !number !gender !person} {object_groups case=ablt}"
# выставляются в основном
- pat: "{predicate !number !gender !person} {adverbial_modifiers}"
# не поддавалось пониманию
- pat: "{predicate !number !gender !person} {object_groups case=datv}"
# в точности соответствует филогенетическому дереву
- pat: "{adverbial_modifiers} {predicate !number !gender !person} {object_groups case=datv}"
# нашли себе удобную тусовку
- pat: "{predicate !number !gender !person} {object_groups case=datv} {object_groups case=accs}"
# бросил жену
- pat: "{predicate !number !gender !person} {object_groups case=accs}"
adverbial_modifiers:
# модно, стильно, молодёжно
- pat: "{adverbials}"
# в пятницу
- pat: "{adverbial_modifier}"
# в пятицу, во дворе дома
- pat: "{adverbial_modifier}, {adverbial_modifiers}"
# по субботам и по воскресеньям
- pat: "{adverbial_modifier} и {adverbial_modifiers}"
# в зависимости от выбранной системы штрафов
- pat: "{adverbial_modifier} {adverbial_modifiers}"
adverbial_modifier:
# в большом тереме
- pat: "в {object_groups case=loct}"
# на крыше дома
- pat: "на {object_groups case=loct}"
# под столом
- pat: "под {object_groups case=ablt}"
# над головой
- pat: "над {object_groups case=ablt}"
# через реку
- pat: "через {object_groups case=accs}"
# у озера
- pat: "у {object_groups case=gent}"
# с повидлом
- pat: "с {object_groups case=ablt}"
# от руки
- pat: "от {object_groups case=gent}"
# из ведра
- pat: "из {object_groups case=gent}"
# о любви
- pat: "о {object_groups case=loct}"
- pat: "о {object_groups case=loc1}"
- pat: "об {object_groups case=loct}"
- pat: "об {object_groups case=loc1}"
- pat: "обо {object_groups case=loct}"
- pat: "обо {object_groups case=loc1}"
# (ударился) о скамейку
- pat: "о {object_groups case=accs}"
- pat: "об {object_groups case=accs}"
- pat: "обо {object_groups case=accs}"
# к тебе
- pat: "к {object_groups case=datv}"
# для тебя
- pat: "для {object_groups case=gent}"
# перед домом
- pat: "перед {object_groups case=ablt}"
- pat: "передо {object_groups case=ablt}"
predicate:
# не поёт
- pat: "не {predicate !number !gender !person}"
# висит
- pat: "{pos=verb !number !gender !person}"
# люблю спать
- pat: "{pos=verb !number !gender !person} {pos=infn}"
# привык не ужинать
- pat: "{pos=verb !number !gender !person} не {pos=infn}"
attribute_groups:
# сделан вчера
- pat: "{attribute_group !number !gender}"
# стильно, модно, молодёжно
- pat: "{attribute_group !number=@1 !gender=@2}, {attribute_groups number=@1 gender=@2}"
# брошены и сожжены
- pat: "{attribute_group !number=@1 !gender=@2} и {attribute_groups number=@1 gender=@2}"
attribute_group:
# не ясно
- pat: "не {attribute_group !number !gender}"
# завершено
- pat: "{pos=prts !number !gender}"
# плотно закрыта
- pat: "{adverbial_modifiers} {pos=prts !number case=nomn !gender}"
# завершено в четверг
- pat: "{pos=prts !number case=nomn !gender} {adverbial_modifiers}"
# полностью открыто с прошлой недели
- pat: "{adverbial_modifiers} {pos=prts !number case=nomn !gender} {adverbial_modifiers}"
# ржавая
- pat: "{attribute !number case=nomn}"
# ярко красная
- pat: "{adverbial_modifiers} {attribute !number case=nomn}"
# добрая после обеда
- pat: "{attribute !number case=nomn} {adverbial_modifiers}"
# очень злая перед сном
- pat: "{adverbial_modifiers} {attribute !number case=nomn} {adverbial_modifiers}"
# выложен плиткой
- pat: "{pos=prts !number case=nomn !gender} {object_groups case=ablt}"
# аккуратно обмотана лентой
- pat: "{adverbial_modifiers} {pos=prts !number case=nomn !gender} {object_groups case=ablt}"
# богата полезными ископаемыми
- pat: "{pos=adjs !number case=nomn !gender} {object_groups case=ablt}"
# слишком чревато задержками и осложнениями
- pat: "{adverbial_modifiers} {pos=adjs !number case=nomn !gender} {object_groups case=ablt}"
adverbials:
# грязно
- pat: "{adverbial}"
# тихо, приглушённо
- pat: "{adverbial}, {adverbials}"
# ярко и звонко
- pat: "{adverbial} и {adverbials}"
adverbial:
# не громко
- pat: "не {adverbial}"
# наполовину
- pat: "{pos=advb}"
subject_groups:
# слон и Моська
- pat: "{object_groups !number case=nomn !gender !person}"
object_groups:
# больничном дворе
- pat: "{object_group !number !case !gender !person}"
# репейника, крапивы и дикой конопли
- pat: "@{number=plur}{object_group !case=@1 !person=@2}, {object_groups case=@1 person=@2}"
# маленьким ребёнком и седым стариком
- pat: "@{number=plur}{object_group !case=@1 !person=@2} и {object_groups case=@1 person=@2}"
# одна дырка, а не вынос большей части стены
- pat: "@{number=plur}не {object_group !case=@1 !person=@2}, а {object_groups case=@1 person=@2}"
object_group:
# и крупный издательский бизнес
- pat: "и {object_group !number !case !gender !person}"
# «новой журналистики»
- pat: "«{object_group !number !case !gender !person}»"
# не музыкальных канареек
- pat: "не {object_group !number !case !gender !person}"
# весёлые песни
- pat: "{object_group_base !number !case !gender !person}"
# размер пенсии, положенной Рахимову,
- pat: "{object_group_base !number=@1 !case=@2 !gender=@3 !person}, {participial_phrase number=@1 case=@2},"
# соответствующего гормона, обладающего успокаивающим эффектом
- pat: "{object_group_base !number=@1 !case=@2 !gender=@3 !person}, {participial_phrase number=@1 case=@2}"
object_group_base:
# самолёта
- pat: "{object !number !case !gender !person}"
# красивых и уютных палатах
- pat: "{attributes number=@1 case=@2 gender=@3} {object !number=@1 !case=@2 !gender=@3 !person}"
# стакан воды
- pat: "{object !number !case !gender !person} {object_groups case=gent}"
# эмпирический результат исследования
- pat: "{attributes number=@1 case=@2 gender=@3} {object !number=@1 !case=@2 !gender=@3 !person} {object_groups case=gent}"
object:
# банки
- pat: "@{person=3per}{pos=noun !number !case !gender}"
# она
- pat: "{pos=npro !number !case !gender !person}"
# семеро
- pat: "@{number=plur}{pos=numr !number !case !gender}"
attributes:
# красивой
- pat: "{attribute !number !case !gender}"
# тёплая шерстяная
- pat: "{attribute !number=@1 !case=@2 !gender=@3} {attributes number=@1 case=@2 gender=@3}"
# красивых и умных
- pat: "{attribute !number=@1 !case=@2 !gender=@3} и {attributes number=@1 case=@2 gender=@3}"
attribute:
# милую
- pat: "{pos=adjf !number !case !gender}"
# развитый
- pat: "{pos=prtf !number !case !gender}"
# очень красивая
- pat: "{adverbials} {pos=adjf !number !case !gender}"
# невероятно подвижный
- pat: "{adverbials} {pos=prtf !number !case !gender}"
# случившаяся в четверг
- pat: "{participial_phrase !number !case}"
participial_phrase:
# сделанный вчера
- pat: "{pos=prtf !number !case !gender} {adverbial_modifiers}"
# подаренная мужем
- pat: "{pos=prtf !number !case !gender} {object_groups case=ablt}"
# данная богу
- pat: "{pos=prtf !number !case !gender} {object_groups case=datv}"
# бросившая мужа
- pat: "{pos=prtf !number !case !gender} {object_groups case=accs}"
dangling_participle:
# не играя в эту игру
- pat: "не {dangling_participle}"
# желая
- pat: "{pos=grnd}"
# очень боясь
- pat: "{adverbials} {pos=grnd}"
# убирая в своей комнате
- pat: "{pos=grnd} {adverbial_modifiers}"
# сильно страдая в этой семье
- pat: "{adverbials} {pos=grnd} {adverbial_modifiers}"
# стуча кувалдой
- pat: "{pos=grnd} {object_groups case=ablt}"
# быстро накрываясь одеялом
- pat: "{adverbial_modifiers} {pos=grnd} {object_groups case=ablt}"
# не поддаваясь пониманию
- pat: "{pos=grnd} {object_groups case=datv}"
# в точности соответствуя филогенетическому дереву
- pat: "{adverbial_modifiers} {pos=grnd} {object_groups case=datv}"
# найдя себе удобную тусовку
- pat: "{pos=grnd} {object_groups case=datv} {object_groups case=accs}"
# бросая жену
- pat: "{pos=grnd} {object_groups case=accs}"
parenthetic_word:
# естественно
- pat: "{pos=conj}"
# в целом
- pat: "{adverbial_modifiers}"