Te form
This commit is contained in:
parent
25f2d260c7
commit
8552a95bb7
87
src/verb.rb
87
src/verb.rb
@ -1,5 +1,13 @@
|
|||||||
GUYS = {
|
U_VOWEL_CHANGES = {
|
||||||
|
"る" => { "a" => "ら", "i" => "り", "u" => "る", "e" => "れ", "o" => "ろ" },
|
||||||
|
"う" => { "a" => "あ", "i" => "い", "u" => "う", "e" => "え", "o" => "お" },
|
||||||
|
"つ" => { "a" => "た", "i" => "ち", "u" => "つ", "e" => "て", "o" => "と" },
|
||||||
|
"す" => { "a" => "さ", "i" => "し", "u" => "す", "e" => "せ", "o" => "そ" },
|
||||||
|
"く" => { "a" => "か", "i" => "き", "u" => "く", "e" => "け", "o" => "こ" },
|
||||||
|
"ぐ" => { "a" => "が", "i" => "ぎ", "u" => "ぐ", "e" => "げ", "o" => "ご" },
|
||||||
|
"ぶ" => { "a" => "ば", "i" => "び", "u" => "ぶ", "e" => "べ", "o" => "ぼ" },
|
||||||
"む" => { "a" => "ま", "i" => "み", "u" => "む", "e" => "め", "o" => "も" },
|
"む" => { "a" => "ま", "i" => "み", "u" => "む", "e" => "め", "o" => "も" },
|
||||||
|
"ぬ" => { "a" => "な", "i" => "に", "u" => "ぬ", "e" => "ね", "o" => "の" },
|
||||||
}
|
}
|
||||||
|
|
||||||
class KanaKanji
|
class KanaKanji
|
||||||
@ -17,8 +25,9 @@ class KanaKanji
|
|||||||
self.class.new kana + other, kanji + other
|
self.class.new kana + other, kanji + other
|
||||||
end
|
end
|
||||||
|
|
||||||
def last_character
|
def last_character(new_form=nil)
|
||||||
GUYS[kana[-1]]
|
return kana[-1] unless new_form
|
||||||
|
U_VOWEL_CHANGES[kana[-1]][new_form]
|
||||||
end
|
end
|
||||||
|
|
||||||
def all_but_last_character
|
def all_but_last_character
|
||||||
@ -36,8 +45,8 @@ class Verb
|
|||||||
@definition_english = definition_english
|
@definition_english = definition_english
|
||||||
end
|
end
|
||||||
|
|
||||||
def last_character
|
def last_character(new_form=nil)
|
||||||
dict.last_character
|
dict.last_character(new_form)
|
||||||
end
|
end
|
||||||
|
|
||||||
def all_but_last_character
|
def all_but_last_character
|
||||||
@ -57,40 +66,66 @@ class IchidanVerb < Verb
|
|||||||
def long_form_present_positive
|
def long_form_present_positive
|
||||||
all_but_last_character + "ます"
|
all_but_last_character + "ます"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def te
|
||||||
|
all_but_last_character + "て"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class GodanVerb < Verb
|
class GodanVerb < Verb
|
||||||
def long_form_present_positive
|
def long_form_present_positive
|
||||||
all_but_last_character + last_character["i"] + "ます"
|
all_but_last_character + last_character("i") + "ます"
|
||||||
|
end
|
||||||
|
|
||||||
|
def te
|
||||||
|
p last_character
|
||||||
|
case last_character
|
||||||
|
when "う"
|
||||||
|
all_but_last_character + "って"
|
||||||
|
when "る"
|
||||||
|
all_but_last_character + "って"
|
||||||
|
when "つ"
|
||||||
|
all_but_last_character + "って"
|
||||||
|
when "す"
|
||||||
|
all_but_last_character + "して"
|
||||||
|
when "く"
|
||||||
|
all_but_last_character + "いて"
|
||||||
|
when "ぐ"
|
||||||
|
all_but_last_character + "いで"
|
||||||
|
when "ぶ"
|
||||||
|
all_but_last_character + "んで"
|
||||||
|
when "む"
|
||||||
|
all_but_last_character + "んで"
|
||||||
|
when "ぬ"
|
||||||
|
all_but_last_character + "んで"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class SuruVerb < Verb
|
class SuruVerb < Verb
|
||||||
|
def prefix
|
||||||
|
dict[..-3]
|
||||||
|
end
|
||||||
|
|
||||||
def long_form_present_positive
|
def long_form_present_positive
|
||||||
dict[..-3] + "します"
|
prefix + "します"
|
||||||
|
end
|
||||||
|
|
||||||
|
def te
|
||||||
|
prefix + "して"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
見る = IchidanVerb.new("見る", "みる", "to look")
|
見る = IchidanVerb.new("見る", "みる", "to look")
|
||||||
p 見る.dictionary.kanji
|
|
||||||
p 見る.dictionary.kana
|
|
||||||
p 見る.long_form_present_positive.kanji
|
|
||||||
p 見る.long_form_present_positive.kana
|
|
||||||
|
|
||||||
飲む = GodanVerb.new("飲む", "のむ", "to drink")
|
飲む = GodanVerb.new("飲む", "のむ", "to drink")
|
||||||
p 飲む.dictionary.kanji
|
|
||||||
p 飲む.dictionary.kana
|
|
||||||
p 飲む.long_form_present_positive.kanji
|
|
||||||
p 飲む.long_form_present_positive.kana
|
|
||||||
|
|
||||||
する = SuruVerb.new("する", "する", "to do")
|
する = SuruVerb.new("する", "する", "to do")
|
||||||
p する.dictionary.kanji
|
|
||||||
p する.dictionary.kana
|
|
||||||
p する.long_form_present_positive.kanji
|
|
||||||
p する.long_form_present_positive.kana
|
|
||||||
|
|
||||||
勉強する = SuruVerb.new("勉強する", "べんきょうする", "to study")
|
勉強する = SuruVerb.new("勉強する", "べんきょうする", "to study")
|
||||||
p 勉強する.dictionary.kanji
|
verbs = [見る,飲む,する,勉強する]
|
||||||
p 勉強する.dictionary.kana
|
verbs.each do |verb|
|
||||||
p 勉強する.long_form_present_positive.kanji
|
p verb.dictionary.kanji
|
||||||
p 勉強する.long_form_present_positive.kana
|
p verb.dictionary.kana
|
||||||
|
p verb.long_form_present_positive.kanji
|
||||||
|
p verb.long_form_present_positive.kana
|
||||||
|
p verb.te.kanji
|
||||||
|
p verb.te.kana
|
||||||
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user