Если вы поэкспериментируете с чтением/настройкой языка ввода OSX через мост ObjC, напишите такие фрагменты, как:
(function () {
'use strict';
ObjC.import('Carbon');
ObjC.import('stdio');
var sourceList = $.TISCreateInputSourceList(null, false);
var current_source = $.TISCopyCurrentKeyboardInputSource();
var cfs = $.TISGetInputSourceProperty(current_source, $.kTISPropertyInputSourceID);
var cfn = $.TISGetInputSourceProperty(current_source, $.kTISPropertyLocalizedName)
var sourceCount = $.CFArrayGetCount(sourceList)
return $.CFArrayGetValueAtIndex(sourceList, 0)
})();
вскоре мы получим возвращаемые значения ссылок obj типов CF. В самом ObjC они могут быть приведены к значениям NS. Есть ли смысл в том, как этого можно достичь в JavaScript для приложений?
(Я получаю возвращаемые значения ссылки на объект CF, из которых мне не удалось извлечь строку или другие примитивные значения)