Skip to content

Commit

Permalink
feat: 見出し語入力モードから辞書登録モードヘの遷移を実装
Browse files Browse the repository at this point in the history
  • Loading branch information
emanon001 committed Mar 11, 2023
1 parent 240c77c commit 2c712bc
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 2 deletions.
10 changes: 8 additions & 2 deletions src/Skk.elm
Original file line number Diff line number Diff line change
Expand Up @@ -372,8 +372,14 @@ updateMidashiInputMode { isHiragana, kakutei, conversionModeValue, context, inpu
(DictConversionMode { prevMode = prevMode, candidateList = candidateList, pos = 0, okuri = Nothing })

Nothing ->
-- TODO: 変換候補がない場合に、辞書登録モードに移行
default
-- 変換候補がない場合は辞書登録モードに遷移
buildKanaMode isHiragana
kakutei
(DictRegistrationMode
{ prevMode = PrevDictConversionMidashiInputMode conversionModeValue
, inputMode = initKanaMode isHiragana
}
)

else if isBackSpaceKey inputKey then
-- 削除
Expand Down
27 changes: 27 additions & 0 deletions tests/SkkTests.elm
Original file line number Diff line number Diff line change
Expand Up @@ -435,6 +435,33 @@ suite =
}
)
(Skk.update skk key).mode
, test "見出し語を入力している最中にSpaceキーを入力する かつ 変換候補がない場合、辞書登録モードに遷移すること" <|
\_ ->
let
conversionValue =
{ kakuteiMidashi = Just "こうほなし", mikakuteiMidashi = Nothing }

skk =
initSkk (Skk.HiraganaMode { kakutei = Just "あいう", conversionMode = Skk.MidashiInputMode conversionValue })

key =
{ key = "Space", shift = False, ctrl = False }
in
Expect.equal
(Skk.HiraganaMode
{ kakutei = Just "あいう"
, conversionMode =
Skk.DictRegistrationMode
{ prevMode = Skk.PrevDictConversionMidashiInputMode conversionValue
, inputMode =
Skk.HiraganaMode
{ kakutei = Nothing
, conversionMode = Skk.KakuteiInputMode { mikakutei = Nothing }
}
}
}
)
(Skk.update skk key).mode
]
, describe "ひらがな入力モード(変換モード: 見出し語入力モード/送り仮名)"
[ test "確定済みの送り仮名が存在する かつ 未確定の送り仮名が存在しない場合、BSキーを入力すると確定済みの送り仮名が削除されること" <|
Expand Down

0 comments on commit 2c712bc

Please sign in to comment.