[O] Typing experience
This commit is contained in:
@@ -17,7 +17,9 @@ export function processLrcLine(line: LyricSegment[]): ProcLrcLine {
|
||||
// Fuzzy matching rules
|
||||
const fuzzyMatch = [['わ', 'は'], ['を', 'お'], ['ず', 'づ'], ['が', 'は'],
|
||||
['ぁ', 'あ'], ['ぃ', 'い'], ['ぅ', 'う'], ['ぇ', 'え'], ['ぉ', 'お'],
|
||||
['ゃ', 'や'], ['ゅ', 'ゆ'], ['ょ', 'よ'], ['っ', 'つ']]
|
||||
['ゃ', 'や'], ['ゅ', 'ゆ'], ['ょ', 'よ'], ['っ', 'つ'],
|
||||
['た', 'だ'], ['て', 'で'],
|
||||
]
|
||||
export function fuzzyEquals(kana1: string, kana2: string): string {
|
||||
[kana1, kana2] = [toHiragana(kana1), toHiragana(kana2)]
|
||||
if (kana1 === kana2) return 'right'
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
let sts = allStates(l, seg)
|
||||
if (sts.every(s => s === 'right')) return 'right'
|
||||
if (sts.some(s => s === 'wrong')) return 'wrong'
|
||||
if (sts.some(s => s === 'fuzzy')) return 'fuzzy'
|
||||
return 'typing'
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user