Repo // Remove nerfed phrases from UOM database.
This commit is contained in:
parent
10b5a6dabd
commit
d872a6b443
|
@ -151,9 +151,19 @@ extension vChewingLM.LMUserOverride {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// MARK: - Hash and Dehash the entire UOM data
|
// MARK: - Hash and Dehash the entire UOM data, etc.
|
||||||
|
|
||||||
extension vChewingLM.LMUserOverride {
|
extension vChewingLM.LMUserOverride {
|
||||||
|
public func bleachSpecifiedSuggestions(target: String, saveCallback: @escaping () -> Void) {
|
||||||
|
for neta in mutLRUMap {
|
||||||
|
if neta.value.observation.overrides.keys.contains(target) {
|
||||||
|
mutLRUMap.removeValue(forKey: neta.key)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
resetMRUList()
|
||||||
|
saveCallback()
|
||||||
|
}
|
||||||
|
|
||||||
/// 自 LRU 辭典內移除所有的單元圖。
|
/// 自 LRU 辭典內移除所有的單元圖。
|
||||||
public func bleachUnigrams(saveCallback: @escaping () -> Void) {
|
public func bleachUnigrams(saveCallback: @escaping () -> Void) {
|
||||||
for key in mutLRUMap.keys {
|
for key in mutLRUMap.keys {
|
||||||
|
|
|
@ -610,6 +610,17 @@ public enum LMMgr {
|
||||||
group.notify(queue: DispatchQueue.main) {}
|
group.notify(queue: DispatchQueue.main) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static func bleachSpecifiedSuggestions(target: String, mode: Shared.InputMode) {
|
||||||
|
switch mode {
|
||||||
|
case .imeModeCHS:
|
||||||
|
Self.uomCHT.bleachSpecifiedSuggestions(target: target, saveCallback: { Self.uomCHT.saveData() })
|
||||||
|
case .imeModeCHT:
|
||||||
|
Self.uomCHS.bleachSpecifiedSuggestions(target: target, saveCallback: { Self.uomCHS.saveData() })
|
||||||
|
case .imeModeNULL:
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static func removeUnigramsFromUserOverrideModel(_ mode: Shared.InputMode) {
|
public static func removeUnigramsFromUserOverrideModel(_ mode: Shared.InputMode) {
|
||||||
switch mode {
|
switch mode {
|
||||||
case .imeModeCHS:
|
case .imeModeCHS:
|
||||||
|
|
|
@ -39,6 +39,13 @@ extension SessionCtl: KeyHandlerDelegate {
|
||||||
{
|
{
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
// 開始針對使用者半衰模組的清詞處理
|
||||||
|
let rawPair = state.data.userPhraseKVPair
|
||||||
|
let valueCurrent = rawPair.1
|
||||||
|
let valueReversed = ChineseConverter.crossConvert(rawPair.1)
|
||||||
|
LMMgr.bleachSpecifiedSuggestions(target: valueCurrent, mode: IMEApp.currentInputMode)
|
||||||
|
LMMgr.bleachSpecifiedSuggestions(target: valueReversed, mode: IMEApp.currentInputMode.reversed)
|
||||||
|
// 清詞完畢
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue