Lazy loads language models.
This commit is contained in:
parent
c3d953c618
commit
2c0a12f43f
|
@ -153,7 +153,6 @@ class AppDelegate: NSObject, NSApplicationDelegate, NonModalAlertWindowControlle
|
|||
|
||||
func applicationDidFinishLaunching(_ notification: Notification) {
|
||||
LanguageModelManager.setupDataModelValueConverter()
|
||||
LanguageModelManager.loadDataModels()
|
||||
LanguageModelManager.loadUserPhrases()
|
||||
LanguageModelManager.loadUserPhraseReplacement()
|
||||
|
||||
|
|
|
@ -127,6 +127,7 @@ class McBopomofoInputMethodController: IMKInputController {
|
|||
|
||||
override func setValue(_ value: Any!, forTag tag: Int, client: Any!) {
|
||||
let newInputMode = InputMode(rawValue: value as? String ?? InputMode.bopomofo.rawValue)
|
||||
LanguageModelManager.loadDataModel(newInputMode)
|
||||
if keyHandler.inputMode != newInputMode {
|
||||
UserDefaults.standard.synchronize()
|
||||
// Remember to override the keyboard layout again -- treat this as an activate event.
|
||||
|
|
|
@ -22,12 +22,14 @@
|
|||
// OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "KeyHandler.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface LanguageModelManager : NSObject
|
||||
|
||||
+ (void)loadDataModels;
|
||||
+ (void)loadDataModel:(InputMode)mode;
|
||||
+ (void)loadUserPhrases;
|
||||
+ (void)loadUserPhraseReplacement;
|
||||
+ (void)setupDataModelValueConverter;
|
||||
|
|
|
@ -60,6 +60,16 @@ static void LTLoadLanguageModelFile(NSString *filenameWithoutExtension, McBopomo
|
|||
LTLoadLanguageModelFile(@"data-plain-bpmf", gLanguageModelPlainBopomofo);
|
||||
}
|
||||
|
||||
+ (void)loadDataModel:(InputMode)mode
|
||||
{
|
||||
if ([mode isEqualToString:InputModeBopomofo]) {
|
||||
LTLoadLanguageModelFile(@"data", gLanguageModelMcBopomofo);
|
||||
}
|
||||
if ([mode isEqualToString:InputModePlainBopomofo]) {
|
||||
LTLoadLanguageModelFile(@"data-plain-bpmf", gLanguageModelPlainBopomofo);
|
||||
}
|
||||
}
|
||||
|
||||
+ (void)loadUserPhrases
|
||||
{
|
||||
gLanguageModelMcBopomofo.loadUserPhrases([[self userPhrasesDataPathMcBopomofo] UTF8String], [[self excludedPhrasesDataPathMcBopomofo] UTF8String]);
|
||||
|
|
Loading…
Reference in New Issue