解決したこと
MacOSのアプリケーションを起動する際に、日本語入力モードに変更するという問題でした。
例)
現在は「英語」入力モードで、アプリケーションを起動すると、自動的に「日本語」入力モードに変わります。
入力ソース変更コード
# include <Carbon/Carbon.h> //忘れずに
TISInputSourceRef source = TISCopyCurrentKeyboardInputSource();
NSString *temp= [NSString stringWithFormat:@"%@",TISGetInputSourceProperty(source,kTISPropertyInputSourceLanguages)];
//NSLog(@"%@", temp);
NSRange range= [temp rangeOfString:temp];//現在"ja"であるかどうか
if(range.location != NSNotFound && range.length != 0) {
source = TISCopyInputSourceForLanguage ((CFStringRef)@"ja");
if (source != NULL){
TISSelectInputSource(source);
}
}
最後に
仕事中にこのような要求がありましたので、調べるのは結構時間がかかりました。コードは英語ページから引っ張ってきましたが、どのファイルをインポートするのかと書いてなくて、大変でした。似たような問題にあった方に(笑)