feat(typing): wire PersonalDictionary into Chinese Pinyin via Rime sidecar
Redeploy an osg_personal import table on dictionary add/delete/sync so Chinese, English typing, and ASR share one curated lexicon (next keyboard open).
This commit is contained in:
@@ -78,6 +78,7 @@ public final class TypingInputConfiguration: ObservableObject {
|
||||
static let rememberLastSurface = "typing.input.rememberLastSurface"
|
||||
static let lastSurface = "typing.input.lastSurface"
|
||||
static let resourceVersion = "typing.rime.resourceVersion"
|
||||
static let personalDictionaryFingerprint = "typing.rime.personalDictionaryFingerprint"
|
||||
}
|
||||
|
||||
private let defaults: UserDefaults
|
||||
@@ -187,6 +188,21 @@ public final class TypingInputConfiguration: ObservableObject {
|
||||
(defaults ?? AppGroup.defaultsIfAvailable)?.set(value, forKey: Key.resourceVersion)
|
||||
}
|
||||
|
||||
nonisolated public static func installedPersonalDictionaryFingerprint(
|
||||
defaults: UserDefaults? = nil
|
||||
) -> String? {
|
||||
(defaults ?? AppGroup.defaultsIfAvailable)?
|
||||
.string(forKey: Key.personalDictionaryFingerprint)
|
||||
}
|
||||
|
||||
nonisolated public static func setInstalledPersonalDictionaryFingerprint(
|
||||
_ value: String,
|
||||
defaults: UserDefaults? = nil
|
||||
) {
|
||||
(defaults ?? AppGroup.defaultsIfAvailable)?
|
||||
.set(value, forKey: Key.personalDictionaryFingerprint)
|
||||
}
|
||||
|
||||
private func persistIfReady() {
|
||||
guard !isHydrating else { return }
|
||||
defaults.set(schema.rawValue, forKey: Key.schema)
|
||||
|
||||
Reference in New Issue
Block a user