Japanese Typing Library for Elm.
newData : String -> Rules -> Data
タイピングすべき文字列とRulesからDataを生成します。
typeTo : String -> Data -> Data
Dataに入力をします。
getState : Data -> State
Dataの状態を返します。
getFixed : Data -> String
入力し終わって確定した文字列を返します。
getRest : Data -> String
入力されていない文字列を返します。
getHistory : Data -> String
入力したキーを返します。
makeRomaji : Data -> Maybe String
入力すべきローマ字を返します。
romanTable : Rules
ローマ字入力のテーブルです。
defaultPriorities : Rules -> Rules
デフォルトの優先度をルールに適用します。
defaultPriorities romanTable
setPriorities : List PrintRule -> Rules -> Rules
優先度をRulesにセットします。
setEfficiency : Rules -> List PrintRule
コスパによる優先度を設定します。
"xtu" "っ" => 1/3=0.33 "xtsu" "っ" => 1/4=0.25
setFavoriteKeys : List String -> Rules -> List PrintRule
たぶんs/c, j/z, k/c, f/h, t/cと、sy,shのy/hで使います。
setFavoriteStart : List String -> Rules -> List PrintRule
たぶんx,lから始まるltu,xtuなどの設定に使います。
insertLowPriorities : List PrintRule -> Rules -> Rules
Rulesに設定されている優先度より低く、新たに優先度を設定します。
getSamePriority : Rules -> Rules
優先度の頭がないかチェックするために使う(手動で目視)。
タイピングに利用されるデータです。
List Rule
変換テーブルです。
{ input : String
, output : String
, priority : Basics.Int
}
表示するローマ字を設定するのに使います。
Typing.romanTable
|> Typing.setPriorities
[ Typing.PrintRule "n" "ん" 3
, Typing.PrintRule "xn" "ん" 2
, Typing.PrintRule "nn" "ん" 1
]
Dataの状態です。
getState data