katsuyou 1.0.0
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 +7 -0
- data/.gitignore +8 -0
- data/.travis.yml +6 -0
- data/Gemfile +11 -0
- data/Gemfile.lock +53 -0
- data/LICENSE.txt +674 -0
- data/README.md +175 -0
- data/Rakefile +12 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/katsuyou.gemspec +22 -0
- data/lib/katsuyou.rb +17 -0
- data/lib/katsuyou/checks_conjugability.rb +65 -0
- data/lib/katsuyou/conjugates_verb.rb +35 -0
- data/lib/katsuyou/conjugation_type.rb +12 -0
- data/lib/katsuyou/determines_type.rb +96 -0
- data/lib/katsuyou/godan_verb_ending.rb +295 -0
- data/lib/katsuyou/ichidan_verb_ending.rb +137 -0
- data/lib/katsuyou/kuru_verb_ending.rb +9 -0
- data/lib/katsuyou/suru_verb_ending.rb +69 -0
- data/lib/katsuyou/verb_conjugation.rb +51 -0
- data/lib/katsuyou/verb_ending.rb +26 -0
- data/lib/katsuyou/verb_stem.rb +215 -0
- data/lib/katsuyou/version.rb +3 -0
- data/lib/katsuyou/zips_endings.rb +59 -0
- metadata +68 -0
@@ -0,0 +1,295 @@
|
|
1
|
+
require_relative "verb_ending"
|
2
|
+
|
3
|
+
module Katsuyou
|
4
|
+
class GodanVerbEnding < VerbEnding
|
5
|
+
def present_polite
|
6
|
+
"#{to_い}ます"
|
7
|
+
end
|
8
|
+
|
9
|
+
def present_negative
|
10
|
+
if code == "v5r-i"
|
11
|
+
"ない"
|
12
|
+
else
|
13
|
+
"#{to_あ}ない"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def present_negative_polite
|
18
|
+
"#{to_い}ません"
|
19
|
+
end
|
20
|
+
|
21
|
+
def past
|
22
|
+
TAIL_FORMS[code][:connector] + TAIL_FORMS[code][:た]
|
23
|
+
end
|
24
|
+
|
25
|
+
def past_polite
|
26
|
+
"#{to_い}ました"
|
27
|
+
end
|
28
|
+
|
29
|
+
def past_negative
|
30
|
+
if code == "v5r-i"
|
31
|
+
"なかった"
|
32
|
+
else
|
33
|
+
"#{to_あ}なかった"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def past_negative_polite
|
38
|
+
"#{to_い}ませんでした"
|
39
|
+
end
|
40
|
+
|
41
|
+
def conjunctive
|
42
|
+
TAIL_FORMS[code][:connector] + TAIL_FORMS[code][:て]
|
43
|
+
end
|
44
|
+
|
45
|
+
def conjunctive_polite
|
46
|
+
"#{to_い}まして"
|
47
|
+
end
|
48
|
+
|
49
|
+
def conjunctive_negative
|
50
|
+
if code == "v5r-i"
|
51
|
+
"なくて"
|
52
|
+
else
|
53
|
+
"#{to_あ}なくて"
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def conjunctive_negative_polite
|
58
|
+
"#{to_い}ませんで"
|
59
|
+
end
|
60
|
+
|
61
|
+
def provisional
|
62
|
+
"#{to_え}ば"
|
63
|
+
end
|
64
|
+
|
65
|
+
def provisional_negative
|
66
|
+
if code == "v5r-i"
|
67
|
+
"なければ"
|
68
|
+
else
|
69
|
+
"#{to_あ}なければ"
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def volitional
|
74
|
+
"#{to_お}う"
|
75
|
+
end
|
76
|
+
|
77
|
+
def volitional_polite
|
78
|
+
"#{to_い}ましょう"
|
79
|
+
end
|
80
|
+
|
81
|
+
def imperative
|
82
|
+
if @type.code == "v5aru"
|
83
|
+
to_い
|
84
|
+
else
|
85
|
+
to_え
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
def potential
|
90
|
+
"#{to_え}る"
|
91
|
+
end
|
92
|
+
|
93
|
+
def potential_polite
|
94
|
+
"#{to_え}ます"
|
95
|
+
end
|
96
|
+
|
97
|
+
def potential_negative
|
98
|
+
"#{to_え}ない"
|
99
|
+
end
|
100
|
+
|
101
|
+
def potential_negative_polite
|
102
|
+
"#{to_え}ません"
|
103
|
+
end
|
104
|
+
|
105
|
+
def passive
|
106
|
+
"#{to_あ}れる"
|
107
|
+
end
|
108
|
+
|
109
|
+
def passive_polite
|
110
|
+
"#{to_あ}れます"
|
111
|
+
end
|
112
|
+
|
113
|
+
def passive_negative
|
114
|
+
"#{to_あ}れない"
|
115
|
+
end
|
116
|
+
|
117
|
+
def passive_negative_polite
|
118
|
+
"#{to_あ}れません"
|
119
|
+
end
|
120
|
+
|
121
|
+
def causative
|
122
|
+
"#{to_あ}せる"
|
123
|
+
end
|
124
|
+
|
125
|
+
def causative_polite
|
126
|
+
"#{to_あ}せます"
|
127
|
+
end
|
128
|
+
|
129
|
+
def causative_negative
|
130
|
+
"#{to_あ}せない"
|
131
|
+
end
|
132
|
+
|
133
|
+
def causative_negative_polite
|
134
|
+
"#{to_あ}せません"
|
135
|
+
end
|
136
|
+
|
137
|
+
def causative_passive
|
138
|
+
"#{to_あ}せられる"
|
139
|
+
end
|
140
|
+
|
141
|
+
def causative_passive_polite
|
142
|
+
"#{to_あ}せられます"
|
143
|
+
end
|
144
|
+
|
145
|
+
def causative_passive_negative
|
146
|
+
"#{to_あ}せられない"
|
147
|
+
end
|
148
|
+
|
149
|
+
def causative_passive_negative_polite
|
150
|
+
"#{to_あ}せられません"
|
151
|
+
end
|
152
|
+
|
153
|
+
private
|
154
|
+
|
155
|
+
def code
|
156
|
+
@type.code
|
157
|
+
end
|
158
|
+
|
159
|
+
def to_い
|
160
|
+
TAIL_FORMS[code][:い]
|
161
|
+
end
|
162
|
+
|
163
|
+
def to_あ
|
164
|
+
TAIL_FORMS[code][:あ]
|
165
|
+
end
|
166
|
+
|
167
|
+
def to_え
|
168
|
+
TAIL_FORMS[code][:え]
|
169
|
+
end
|
170
|
+
|
171
|
+
def to_お
|
172
|
+
TAIL_FORMS[code][:お]
|
173
|
+
end
|
174
|
+
|
175
|
+
TAIL_FORMS = {
|
176
|
+
"v5aru" => {
|
177
|
+
い: "い",
|
178
|
+
あ: "ら",
|
179
|
+
え: "れ",
|
180
|
+
お: "ろ",
|
181
|
+
connector: "っ",
|
182
|
+
た: "た",
|
183
|
+
て: "て"
|
184
|
+
},
|
185
|
+
"v5b" => {
|
186
|
+
い: "び",
|
187
|
+
あ: "ば",
|
188
|
+
え: "べ",
|
189
|
+
お: "ぼ",
|
190
|
+
connector: "ん",
|
191
|
+
た: "だ",
|
192
|
+
て: "で"
|
193
|
+
},
|
194
|
+
"v5g" => {
|
195
|
+
い: "ぎ",
|
196
|
+
あ: "が",
|
197
|
+
え: "げ",
|
198
|
+
お: "ご",
|
199
|
+
connector: "い",
|
200
|
+
た: "だ",
|
201
|
+
て: "で"
|
202
|
+
},
|
203
|
+
"v5k" => {
|
204
|
+
い: "き",
|
205
|
+
あ: "か",
|
206
|
+
え: "け",
|
207
|
+
お: "こ",
|
208
|
+
connector: "い",
|
209
|
+
た: "た",
|
210
|
+
て: "て"
|
211
|
+
},
|
212
|
+
"v5k-s" => {
|
213
|
+
い: "き",
|
214
|
+
あ: "か",
|
215
|
+
え: "け",
|
216
|
+
お: "こ",
|
217
|
+
connector: "っ",
|
218
|
+
た: "た",
|
219
|
+
て: "て"
|
220
|
+
},
|
221
|
+
"v5m" => {
|
222
|
+
い: "み",
|
223
|
+
あ: "ま",
|
224
|
+
え: "め",
|
225
|
+
お: "も",
|
226
|
+
connector: "ん",
|
227
|
+
た: "だ",
|
228
|
+
て: "で"
|
229
|
+
},
|
230
|
+
"v5n" => {
|
231
|
+
い: "に",
|
232
|
+
あ: "な",
|
233
|
+
え: "ね",
|
234
|
+
お: "の",
|
235
|
+
connector: "ん",
|
236
|
+
た: "だ",
|
237
|
+
て: "で"
|
238
|
+
},
|
239
|
+
"v5s" => {
|
240
|
+
い: "し",
|
241
|
+
あ: "さ",
|
242
|
+
え: "せ",
|
243
|
+
お: "そ",
|
244
|
+
connector: "し",
|
245
|
+
た: "た",
|
246
|
+
て: "て"
|
247
|
+
},
|
248
|
+
"v5t" => {
|
249
|
+
い: "ち",
|
250
|
+
あ: "た",
|
251
|
+
え: "て",
|
252
|
+
お: "と",
|
253
|
+
connector: "っ",
|
254
|
+
た: "た",
|
255
|
+
て: "て"
|
256
|
+
},
|
257
|
+
"v5u" => {
|
258
|
+
い: "い",
|
259
|
+
あ: "わ",
|
260
|
+
え: "え",
|
261
|
+
お: "お",
|
262
|
+
connector: "っ",
|
263
|
+
た: "た",
|
264
|
+
て: "て"
|
265
|
+
},
|
266
|
+
"v5u-s" => {
|
267
|
+
い: "い",
|
268
|
+
あ: "わ",
|
269
|
+
え: "え",
|
270
|
+
お: "お",
|
271
|
+
connector: "う",
|
272
|
+
た: "た",
|
273
|
+
て: "て"
|
274
|
+
},
|
275
|
+
"v5r" => {
|
276
|
+
い: "り",
|
277
|
+
あ: "ら",
|
278
|
+
え: "れ",
|
279
|
+
お: "ろ",
|
280
|
+
connector: "っ",
|
281
|
+
た: "た",
|
282
|
+
て: "て"
|
283
|
+
},
|
284
|
+
"v5r-i" => {
|
285
|
+
い: "り",
|
286
|
+
あ: "ら",
|
287
|
+
え: "れ",
|
288
|
+
お: "ろ",
|
289
|
+
connector: "っ",
|
290
|
+
た: "た",
|
291
|
+
て: "て"
|
292
|
+
}
|
293
|
+
}
|
294
|
+
end
|
295
|
+
end
|
@@ -0,0 +1,137 @@
|
|
1
|
+
require_relative "verb_ending"
|
2
|
+
|
3
|
+
module Katsuyou
|
4
|
+
class IchidanVerbEnding < VerbEnding
|
5
|
+
def present_polite
|
6
|
+
"ます"
|
7
|
+
end
|
8
|
+
|
9
|
+
def present_negative
|
10
|
+
"ない"
|
11
|
+
end
|
12
|
+
|
13
|
+
def present_negative_polite
|
14
|
+
"ません"
|
15
|
+
end
|
16
|
+
|
17
|
+
def past
|
18
|
+
"た"
|
19
|
+
end
|
20
|
+
|
21
|
+
def past_polite
|
22
|
+
"ました"
|
23
|
+
end
|
24
|
+
|
25
|
+
def past_negative
|
26
|
+
"なかった"
|
27
|
+
end
|
28
|
+
|
29
|
+
def past_negative_polite
|
30
|
+
"ませんでした"
|
31
|
+
end
|
32
|
+
|
33
|
+
def conjunctive
|
34
|
+
"て"
|
35
|
+
end
|
36
|
+
|
37
|
+
def conjunctive_polite
|
38
|
+
"まして"
|
39
|
+
end
|
40
|
+
|
41
|
+
def conjunctive_negative
|
42
|
+
"なくて"
|
43
|
+
end
|
44
|
+
|
45
|
+
def conjunctive_negative_polite
|
46
|
+
"ませんで"
|
47
|
+
end
|
48
|
+
|
49
|
+
def provisional
|
50
|
+
"れば"
|
51
|
+
end
|
52
|
+
|
53
|
+
def provisional_negative
|
54
|
+
"なければ"
|
55
|
+
end
|
56
|
+
|
57
|
+
def volitional
|
58
|
+
"よう"
|
59
|
+
end
|
60
|
+
|
61
|
+
def volitional_polite
|
62
|
+
"ましょう"
|
63
|
+
end
|
64
|
+
|
65
|
+
def imperative
|
66
|
+
if @type.code == "v1-s"
|
67
|
+
""
|
68
|
+
else
|
69
|
+
"ろ"
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def potential
|
74
|
+
"られる"
|
75
|
+
end
|
76
|
+
|
77
|
+
def potential_polite
|
78
|
+
"られます"
|
79
|
+
end
|
80
|
+
|
81
|
+
def potential_negative
|
82
|
+
"られない"
|
83
|
+
end
|
84
|
+
|
85
|
+
def potential_negative_polite
|
86
|
+
"られません"
|
87
|
+
end
|
88
|
+
|
89
|
+
def passive
|
90
|
+
"られる"
|
91
|
+
end
|
92
|
+
|
93
|
+
def passive_polite
|
94
|
+
"られます"
|
95
|
+
end
|
96
|
+
|
97
|
+
def passive_negative
|
98
|
+
"られない"
|
99
|
+
end
|
100
|
+
|
101
|
+
def passive_negative_polite
|
102
|
+
"られません"
|
103
|
+
end
|
104
|
+
|
105
|
+
def causative
|
106
|
+
"させる"
|
107
|
+
end
|
108
|
+
|
109
|
+
def causative_polite
|
110
|
+
"させます"
|
111
|
+
end
|
112
|
+
|
113
|
+
def causative_negative
|
114
|
+
"させない"
|
115
|
+
end
|
116
|
+
|
117
|
+
def causative_negative_polite
|
118
|
+
"させません"
|
119
|
+
end
|
120
|
+
|
121
|
+
def causative_passive
|
122
|
+
"させられる"
|
123
|
+
end
|
124
|
+
|
125
|
+
def causative_passive_polite
|
126
|
+
"させられます"
|
127
|
+
end
|
128
|
+
|
129
|
+
def causative_passive_negative
|
130
|
+
"させられない"
|
131
|
+
end
|
132
|
+
|
133
|
+
def causative_passive_negative_polite
|
134
|
+
"させられません"
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
require_relative "ichidan_verb_ending"
|
2
|
+
|
3
|
+
module Katsuyou
|
4
|
+
class SuruVerbEnding < IchidanVerbEnding
|
5
|
+
def potential
|
6
|
+
"る"
|
7
|
+
end
|
8
|
+
|
9
|
+
def potential_polite
|
10
|
+
"ます"
|
11
|
+
end
|
12
|
+
|
13
|
+
def potential_negative
|
14
|
+
"ない"
|
15
|
+
end
|
16
|
+
|
17
|
+
def potential_negative_polite
|
18
|
+
"ません"
|
19
|
+
end
|
20
|
+
|
21
|
+
def passive
|
22
|
+
"れる"
|
23
|
+
end
|
24
|
+
|
25
|
+
def passive_polite
|
26
|
+
"れます"
|
27
|
+
end
|
28
|
+
|
29
|
+
def passive_negative
|
30
|
+
"れない"
|
31
|
+
end
|
32
|
+
|
33
|
+
def passive_negative_polite
|
34
|
+
"れません"
|
35
|
+
end
|
36
|
+
|
37
|
+
def causative
|
38
|
+
"せる"
|
39
|
+
end
|
40
|
+
|
41
|
+
def causative_polite
|
42
|
+
"せます"
|
43
|
+
end
|
44
|
+
|
45
|
+
def causative_negative
|
46
|
+
"せない"
|
47
|
+
end
|
48
|
+
|
49
|
+
def causative_negative_polite
|
50
|
+
"せません"
|
51
|
+
end
|
52
|
+
|
53
|
+
def causative_passive
|
54
|
+
"せられる"
|
55
|
+
end
|
56
|
+
|
57
|
+
def causative_passive_polite
|
58
|
+
"せられます"
|
59
|
+
end
|
60
|
+
|
61
|
+
def causative_passive_negative
|
62
|
+
"せられない"
|
63
|
+
end
|
64
|
+
|
65
|
+
def causative_passive_negative_polite
|
66
|
+
"せられません"
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|