Tenía exactamente el mismo problema: una distribución de teclado personalizada que había funcionado bien en macOS 10.12 Sierra se negó repentinamente a trabajar con aplicaciones predeterminadas y aplicaciones instaladas desde App Store después de actualizar a macOS 10.13 High Sierra. El sistema operativo siempre volvería al diseño de teclado predeterminado de mi región (finlandés). Esto me hizo pensar y me las arreglé para arreglar el diseño que utilizo para que ahora funcione con todas las aplicaciones, no solo con las instaladas desde Homebrew.
El truco es modificar su diseño personalizado para que se establezca en su región actual. Puede hacerlo modificando el paquete manualmente o utilizando Ukelele.
1. Editando el layout con Ukelele
Descargue e instale Ukelele desde, por ejemplo, homebrew. Cuando abra la aplicación, abra su diseño personalizado desde el archivo o si la tiene actualmente activa, puede crear un nuevo paquete basado en él seleccionando ‘Archivo’ → ‘Nuevo desde la fuente de entrada actual’. Después de abrirlo, debe configurar el idioma correcto (y posiblemente la región) desde la configuración de "Idioma ..." que se encuentra en la pestaña "Diseños del teclado". El idioma no tiene que coincidir con el idioma del sistema operativo y no sé si la región tiene algo que ver con este problema (Ukelele dice que es opcional), pero no está de más la configuración en su región.
Después de configurar el idioma desde la pestaña "Diseños del teclado", debes configurar la localización desde la pestaña "Localizaciones". Si ya hay una línea de configuración regional en la lista, puede editarla haciendo doble clic en ella y configurando el idioma (aún no tiene que coincidir con el idioma del sistema operativo), si no puede agregar una nueva con el botón con un botón '+' firmar en él. La configuración de la región también es opcional aquí, pero es mejor prevenir que lamentar. Después de esto, puede guardar el paquete y pasar a la instalación y habilitación de su diseño.
2. Editar el diseño manualmente
Los paquetes de diseño de teclado son en realidad solo directorios con cierta estructura, por lo que también puede editarlos manualmente desde la línea de comandos. Lo que debes hacer es hacer un cd en Your.bundle/Contents
y editar Info.plist
agregando KLInfo_<your-layout-name>
dict. Este es un ejemplo del Info.plist
del diseño que estoy usando:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.keyboardlayout.arkkudvorak</string>
<key>CFBundleName</key>
<string>ArkkuDvorak</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>KLInfo_ArkkuDvorak</key>
<dict>
<key>TISInputSourceID</key>
<string>com.apple.keyboardlayout.arkkudvorak.arkkudvorak</string>
<key>TISIntendedLanguage</key>
<string>fi-FI</string>
</dict>
</dict>
</plist>
Lo principal aquí es incluir las abreviaturas de su idioma y región como valor de cadena para TISIntendedLanguage
. Supongo que TISInputSourceID
puede ser cualquier cosa siempre que esté prefijado por CFBundleIdentifier
.
Después de configurar el idioma y la región, puede guardar y cerrar el archivo Info.plist
. Aún así necesitas editar un poco el directorio de directorios. cd en Your.bundle/Contents/Resources
y cambie el nombre de <something>.lproj
a <language>_<REGION>.lproj
, en mi caso fi_FI.lproj
. Una vez que hayas hecho eso, habrás terminado con los cambios.
3. Instalando y habilitando tu diseño
Después de corregir la configuración de idioma, región y localización y guardar el paquete, muévalo a /Library/Keyboard Layouts/
si no lo editó directamente desde allí. Reinicie su computadora, vuelva a agregar el diseño desde ‘Sistema‘ Preferencias ’→‘ Teclado ’→‘ Fuentes de entrada ’y ahora debería funcionar con todas las aplicaciones.
Esto lo hizo por mí, avísame si funcionó para ti.
Descargo de responsabilidad: no soy el autor del paquete ArkkuDvorak, solo lo uso.