Відповіді:
Я припускаю, що ви хочете показати екранну клавіатуру при зміні розкладки клавіатури. Одним із очевидних підходів є використання AppleScript, і саме це я тут зробив. Я думаю, що такий підхід не схильний до помилок, але він працює.
Спочатку в системних налаштуваннях виберіть потрібні клавіатури та переконайтесь, що ви поставили галочку "Показати введення в панелі меню"
Потім перевірте, чи доступні ваші мови в меню "Введення" у верхньому правому куті панелі меню.
Отже, зараз клавіатури доступні у меню. Ми можемо використовувати яблучний скрипт для виклику з меню та запуску екранної клавіатури.
(* A function to change the language and activate the keyboard app *)
on changeKeyboardLayout(layoutName)
(* Close the current language keyboard app *)
tell application "KeyboardViewer"
quit
end tell
(* Change the keyboard layout *)
tell application "System Events" to tell process "SystemUIServer"
tell (menu bar item 1 of menu bar 1 where description is "text input")
click
click menu item layoutName of menu 1
end tell
end tell
(* Open the new language keyboard app *)
tell application "KeyboardViewer"
activate
end tell
end changeKeyboardLayout
(* Call the function with the keyboard name as variable *)
changeKeyboardLayout("U.S. Extended")
(* changeKeyboardLayout("Canadian English") *)
(* changeKeyboardLayout("U.S.") *)
Ви можете використовувати Automator для створення програми або служби цього AppleScript і навіть приєднати до нього натискання клавіш.