%20.keylayout%20%D0%B1%D0%B5%D0%B7%20%D0%BF%D0%BE%D0%B2%D1%82%D0%BE%D1%80%D0%BD%D0%BE%D0%B3%D0%BE%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D0%B2%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83%20%D0%BD%D0%B0%20OS%20X.png)
Разработчик Ukelele (Джон Брауни) на сайте:
Во-вторых, если у вас активна раскладка клавиатуры, измените ее (в Ukelele или любым другим способом), сохраните, затем выйдите из системы и войдите снова, система не загрузит новую версию. Вам нужно изменить папку, содержащую раскладку клавиатуры, чтобы система распознала изменение. Самый простой способ — перетащить файл раскладки клавиатуры на рабочий стол, а затем обратно в папку Keyboard Layouts, затем выйдите из системы и войдите снова. Перезапуск всегда будет загружать последнюю версию раскладки клавиатуры.
Есть ли более разумный метод?
Так что, похоже, скорее всего, нет. Вот способ частично автоматизировать это с помощью Applescript:
do shell script "touch '/Library/Keyboard Layouts/'"
tell application "System Events"
try
tell process "Ukelele"
click menu bar 1's menu bar item "File"'s menu 1's menu item "Save"
end tell
end try
log out
end tell
решение1
Извините, но лучше некуда. Раскладки клавиатуры сканируются только при входе в систему, и если вы не перезагрузитесь, то система оптимизирует процесс, сканируя только папки, которые были изменены с момента последнего входа в систему, проверяя дату изменения папки.
Единственный другой способ, который я могу придумать для автоматизации этого, — это скрипт, который изменяет дату модификации соответствующей папки — скрипт оболочки, вызывающий 'touch', подойдет (см. ниже). Тогда у вас может быть более простой способ внесения изменений (вместо перетаскивания файлов из системы и обратно), но вам все равно придется выходить из системы и входить в нее. Я не знаю сочетания клавиш для выхода из системы, кроме нажатия option-shift-command-Q. Я не видел способа написать для этого скрипт.
Скрипт для изменения даты модификации папки «Раскладки клавиатуры» в папке «Библиотека»:
#!/bin/sh
touch /Library/Keyboard\ Layouts