¿Cómo hacer un diseño de teclado personalizado en OS X?

67

Recientemente me mudé a OS X y encuentro que el diseño del sistema "Fonético ruso" no es satisfactorio (no es el que estoy acostumbrado). ¿Cómo puedo crear un diseño personalizado?

Leí sobre Ukelele , pero el diseño que creé y copié Library/Keyboard Layoutsno aparece en las Preferencias del teclado.

Estoy usando OS X 10.9 Mavericks. Busqué soluciones en internet, pero la mayoría de ellas estaban desactualizadas.

mik01aj
fuente
¿Qué diseño usaste antes de MacOS? ¿Paul Gorodyansky's? ¿Te importaría compartir tu diseño de Ukelele?
davidair
10.9 y posteriores parecen estar usando un tipo de archivo de distribución de teclado diferente; Ukelele también me rompió con esa actualización. Perdí mi teclado OCS personalizado: OCS utiliza algunos caracteres cirílicos extraños en lugares extraños.
aramis

Respuestas:

64
  1. Abra Ukelele y elija Archivo> Nuevo desde la fuente de entrada actual. En las nuevas versiones de Ukelele, también asigna una nueva ID al diseño del teclado automáticamente.
  2. Edite la distribución del teclado.
  3. Guarde la distribución del teclado en alguna ubicación temporal como el escritorio. (Guardar directamente en /Library/Keyboard Layouts/falla en silencio.) Puede usar cualquiera de los dos formatos. Los elementos emergentes de estilo iOS que se muestran al mantener presionadas las teclas solo funcionan con el formato de paquete. Sin embargo, el formato de archivo XML único (predeterminado) es más simple. Cuando use XML, asegúrese de que el archivo se guarde con una .keylayoutextensión.
  4. Mueva la distribución del teclado a /Library/Keyboard Layouts/. Los diseños de teclado ~/Library/Keyboard Layouts/no se pueden seleccionar en los cuadros de diálogo de contraseña o en la ventana de inicio de sesión.
  5. Reinicia la computadora. Cerrar sesión y volver a iniciarla no es suficiente.
  6. Habilite la nueva distribución del teclado desde Preferencias del sistema.

Para aplicar cambios a la distribución del teclado, ejecute sudo touch /Library/Keyboard\ Layouts/y reinicie.

Consulte https://web.archive.org/web/20151030180252/http://osxnotes.net/keylayout-files-and-ukelele.html para obtener más información.


Actualización (octubre de 2015): hay una nueva versión de Ukelele (3.0.0) que incluye la opción de instalar el diseño desde la aplicación. Todavía necesitaba ir a las preferencias del sistema para activarlo, pero no necesitaba pasar por la línea de comando.

Lri
fuente
1
¡Gracias! Sin embargo, tengo una nota importante: los archivos XML guardados por Ukelele deben tener .keylayoutextensión. De esta manera funcionó :)
mik01aj
El uso del formato de paquete permite colocar un archivo de iconos .icns dentro del paquete (la misma ubicación que .keylayout) y un icono de elección puede aparecer junto a la fuente de entrada. (Ukelele puede agregar un ícono al paquete a través del menú. Necesita un .icns).
ebukva
1
También puede agregar un icono para un archivo XML keylayout guardando, por ejemplo, el archivo icns como /Library/Keyboard Layouts/My Keyboard Layout.icns.
Lri
en lugar de guardarlo en algún lugar y moverlo manualmente, puede iniciar ukelele como root para que pueda guardar directamente en / biblioteca / diseños de teclado
Rayjax
También tuve que editar el .keylayout archivo directamente para cambiar el nameatributo en la línea 5. Antes de esto, no se mostraría en Preferencias del Sistema, probablemente porque tenía el mismo nombre que un diseño existente. ¿Nadie más se encontró con esto? o_O
viernes
12

Crear el archivo de diseño del teclado

Yo también usé Ukelele para generar un diseño de teclado. Luego puede exportar el archivo .bundleo .keylayouty copiarlo /Library/Keyboard Layouts.

sudo cp KeyboardLayout.keylayout /Library/Keyboard\ Layouts/

Si desea tener el icono del teclado incluido en un archivo, Ukelele ofrece una opción de exportación a Bundle. Entonces, en este caso, copie el .bundlearchivo en su lugar. Alternativamente, puede mantener los iconos separados y copiarlos con el mismo nombre en la misma carpeta.

sudo cp KeyboardLayout.icns /Library/Keyboard\ Layouts/

Después de reiniciar, puede agregar la fuente de entrada en el menú Preferencias del sistema-> Teclado-> Fuentes de entrada. Probablemente disponible en Otros o el idioma si adjuntó un idioma al teclado en Ukelele.

Menú de fuente de entrada

Cómo crear un archivo .icns

mkdir layout.iconset

Luego agregue los siguientes PNG a la carpeta:

# All sizes necessary
icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]

No necesita todo esto, pero esta es la lista oficial. Algunos son redundantes en el recuento de píxeles, pero indican densidad.

iconutil --convert icns --output layout.icns layout.iconset/

Proyecto de ejemplo en GitHub

Mi proyecto ucraniano-ruso en GitHub es una demostración que actualmente está trabajando en Mavericks 10.9.5.

Cameron Lowell Palmer
fuente
2
+1 para el enlace del proyecto ucraniano-ruso. Compartiéndolo con algunos compañeros ahora. ¡Gracias hombre!
Costa del mar del Tíbet
¡Eres muy bienvenido!
Cameron Lowell Palmer
1
Mucho +1 para el enlace del proyecto ucraniano-ruso. ¡Te apoyamos, @CameronLowellPalmer (y otros)!
Por Lundberg
5

Ukelele podría funcionar para usted, solo tenga en cuenta que parece estar volviendo a vincular las claves a nivel de software (en lugar de a nivel de hardware), por lo que probablemente comenzará a tener problemas como algunas aplicaciones que no reconocen el modificador o los cambios de teclas especiales, no poder para usarlo en diálogos de contraseña, etc.

Si está buscando una solución más robusta, consulte Karabiner .

Sensato
fuente
Karabinier también es mejor porque no tiene que copiar el archivo de configuración, está funcionando directamente. Y puede habilitarlo al iniciar en la configuración predeterminada misc / system
bormat
-1

Utilice la versión anterior estable de Ukelele 1.8.4 ... No es necesario reiniciar

Tengo OS X 10.10.5 (Yosemite). La versión actual de Ukelele no funcionó incluso después de haber probado otras sugerencias. Finalmente, desinstalé la versión actual e instalé la versión estable anterior (1.8.4). Después de eso funcionó bien. No fue necesario reiniciar. Simplemente guarde el nuevo diseño en Biblioteca / Diseños de teclado. Luego abra las preferencias del teclado, las fuentes de entrada. Agregue haciendo clic en +, y debería ver el nuevo diseño en 'Otros'.

Nilotpal
fuente