¿Cómo agregar caracteres al selector de caracteres de presionar y mantener presionado en OS X Lion?

En OS X Lion, hay una función muy útil para personas como yo que necesitan escribir en varios idiomas, que muestra un pequeño menú de caracteres adicionales cuando mantienes presionada una letra.

Por ejemplo, cuando mantengo presionada la letra E, obtengo:

mi

Esto es genial cuando escribo en francés, por ejemplo. Sin embargo ahora mismo necesito escribir algo en checo; sin embargo, la letra checa ě(parece la tercera letra en la ventana emergente con el acento invertido) no aparece en la ventana emergente.

¿Hay alguna manera de decirle a OS X que incluya checo u otros caracteres adicionales en esas ventanas emergentes?

Nota: no quiero usar el diseño de teclado checo; Descubrí que cambiar los diseños para cada idioma es algo poco práctico.

Respuestas (6)

Los caracteres incluidos en los popovers se definen en listas de propiedades dentro del /System/Library/Input\ Methods/PressAndHold.app/paquete.

Pude cambiar à a y editando /System/Library/Input\ Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plisty cerrando sesión y volviendo a iniciarla.

(tenga en cuenta el escape en "Método de entrada" si está copiando y pegando)

<key>Roman-Accent-a</key>
<dict>
    <key>Direction</key>
    <string>right</string>
    <key>Keycaps</key>
    <string>a y á â ä æ ã å ā</string>
    <key>Strings</key>
    <string>a y á â ä æ ã å ā</string>
</dict>

¿Cómo sigues encontrando estas gemas ocultas? ¿Eres ingeniero de OS X? ;)
Wow, muchas personas han estado tratando de resolver esto desde al menos julio pasado. ¡Gracias!
'Métodos de entrada', 'PressAndHold.app'...? No podría haber sido más obvio.
Wow, me perdí esta pregunta hasta ahora. Estaré jugando para ver si puedo convertir algo como ~ en una lista de mis emoji favoritos o caracteres especiales del teclado :)
@stuffe Háganos saber cómo va. Creo que las posibilidades son enormes, por ejemplo, m10lmac.blogspot.com/2012/04/…
Y va un poco como esto.... i.stack.imgur.com/Kyx2v.png :)
Esta respuesta no puede ser votada suficientes veces.
Intenté usar esto para agregar caracteres cuadrados y cúbicos para presionar y mantener presionados en 2 y 3, pero no conozco los nombres clave del diccionario para el plist. He intentado <key>2</key>, <key>Number-2</key>y <key>Roman-Accent-2</key>pero ninguno de estos funcionó. ¿Hay una lista de posibles nombres clave en alguna parte?
@jhabbott Quería hacer lo mismo y simplemente lo agregué debajo de la "s" minúscula para "cuadrado". además, no es necesario cerrar / cerrar sesión (al menos en Mavericks). esta solución es simplemente increíble: tratar de pensar en otras cosas para usarla.
Parece que este archivo ya no es editable en El Capitan...
@MichieldeMare Eso se debe a System Integrity Protection , una nueva función en OS X v10.11 El Capitan que hace que sea imposible incluso rootescribir en las carpetas del sistema. Sin embargo, como se indica en el artículo de Wikipedia, se puede deshabilitar .
He documentado el proceso completo aquí , incluida la desactivación temporal de la Protección de integridad del sistema.
@masukomi, Catalina interrumpe su proceso al tener archivos de solo lectura y archivos de escritura en directorios separados, y luego usar "firmlinks" para que parezca que están en el mismo lugar. Si su "Keyboard-en.plist" está en el área de escritura, puede editarlo sin deshabilitar SIP. Desafortunadamente, hay un archivo con ese nombre en ambas áreas y la versión de solo lectura anula la versión de escritura. De hecho, si ELIMINO la versión de solo lectura, ¡las ventanas emergentes no existen! Solución: csrutil enable --without fsy luego de reiniciar, sudo mount -uw /continúa...
… (continuación) puede editar la versión de solo lectura y volver a habilitar SIP.
en MacOS 10.14.2 (Mojave) el archivo es /System/Library/Input Methods/PressAndHold.app/Contents/PlugIns/PAH_Extension.appex/Contents/Resources/Keyboard-en.plist. Recuerde que debe deshabilitar la Protección de integridad del sistema para que esto funcione.
@アリスター AKA no es una función. Ocultar este tipo de cosas detrás de SIP es más que estúpido. ¿Cómo diablos afecta esto a la seguridad del dispositivo de alguien? Se trata menos de la integridad por el bien del usuario que de hacerle la vida más fácil a Apple. Maldita sea, odio en lo que se ha convertido esa empresa. Presionar y mantener es una característica increíble, y rompen la capacidad de extenderlo todo en lugar de implementar la solución adecuada de agregar una interfaz segura basada en GUI para extenderlo. Para una empresa tan extremadamente rentable es realmente repugnante.

Sé que esto es un poco tarde, pero siento que es una contribución importante: no solo puede mantener presionadas las teclas para ingresar caracteres especiales; también puede introducir cadenas de texto . Por ejemplo, configuré mi archivo Keyboard-en.plist para que, cuando presiono la tecla "p", pueda elegir entre mi nombre (que es bastante largo), apellido y dirección de correo electrónico (que también es larga). Siento que esto podría ser útil para algunas personas, así que esto es lo que parece:

<key>Roman-Accent-p</key>
<dict>
    <key>Direction</key>
    <string>right</string>
    <key>Keycaps</key>
    <string>p firstname lastname email</string>
    <key>Strings</key>
    <string>p firstname lastname email</string>
</dict>
¡Frio! Por curiosidad, ¿cuál es tu nombre si no te importa compartirlo? Dado el tiempo de espera, me imagino que esto me daría un beneficio de más de 10 a 15 caracteres... Mis nombres son bastante cortos, pero podría ser útil para el correo electrónico.
@houbysoft - Tienes razón. Supongo que no es tan útil para mi nombre, ya que el mío tiene solo 8 letras, pero para mis correos electrónicos, que tienen más de 25 letras cada uno, es muy útil.
Por cierto, me acabo de dar cuenta, ¿sabes si algo así es posible en iOS? Dados los pequeños teclados de los iPhone, por ejemplo, esto podría ser muy útil para esos dispositivos.
@houbysoft: bueno, es posible que haya oído hablar de los expansores de texto, que puede configurar, por ejemplo, cuando escribo "addr", completará automáticamente mi dirección completa. Acabo de hacer una búsqueda rápida en Google y parece que hay una aplicación de expansión de texto para iOS. Puede encontrarlo aquí: < itunes.apple.com/us/app/textexpander/id326180690?mt=8 >
Eso puede ser simple, pero estoy tratando de editar el .plist pero dice que no soy el propietario del archivo, así que no puedo editarlo... ¿Cómo haría para editar el archivo?
@OghmaOsiris - ¿Podría publicar el error específico?
@OghmaOsiris: duplíquelo, guárdelo en su escritorio, realice las ediciones deseadas, luego cambie el nombre al original (por ejemplo, "Keyboard-en-duplicate.plist" -> "Keyboard-en.plist") y elimine el original expediente. Luego coloque el duplicado renombrado en el directorio original.

Si está utilizando macOS Sierra , debe buscar en otra parte para cambiarlo. Aquí están mis instrucciones, inspiradas en Personajes personalizados en OS X Accent Popup - George Garside :

  1. Deshabilite System Integrity Protection como se detalla en Cómo desactivar rootless en Mac OS X El Capitan-MacWorld .

  2. Navega hasta /System/Library/Input Methods/PressAndHold.app/Contents/PlugIns/PAH_Extension.appex/Contents/Resources/en el Finder. Para acceder rápidamente, presione ⇧⌘G y pegue la cadena.

  3. Encuentra el archivo plist de tu teclado. Si está utilizando el diseño en inglés, estaría mirando Keyboard-en.plisty si está utilizando el diseño en alemán, sería Keyboard-de.plist. También podría tener otros nombres, dependiendo del idioma de su teclado.

  4. Realice una copia de seguridad de este archivo presionando ⌘D . Cambie el nombre de la copia que hizo a algo con "copia de seguridad" en su nombre.

  5. Abra el archivo original (sin copia de seguridad en su nombre) y edite los caracteres que desee. Después de eso, guárdelo.

  6. Habilite la Protección de integridad del sistema como se detalla en la misma página que el paso 1.

Usando la información en este hilo, respondí la misma pregunta en MacRumors.

Hice un archivo .plist personalizado específicamente para la entrada de pinyin chino. Así que quería enlazar a un plist creado para la fonética china. Puedes descargarlo aquí .

Mi solución (para checo):

  1. /System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plistarchivo de copia de seguridad
  2. Cópielo /System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-cs.plisty cámbiele el nombre a/System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist
  3. Eliminar caracteres inútiles de nuevos/System/Library/Input Methods/PressAndHold.app/Contents/Resources/Keyboard-en.plist
buena idea, solo cambio entre otro cajero automático con teclado internacional, ¡esto lo hará casi innecesario! (sin mencionar que el diseño me hace escribir con números todo el tiempo...)

¡Conseguí que funcionara en OS X 10.11!

Parece que cambiaron la ubicación a: /System/Library/Input Methods/PressAndHold.app

-> Clic derecho + Mostrar contenido del paquete

/Contenido/Complementos/PAH_Extension.appex

-> Clic derecho + Mostrar contenido del paquete

/Contents/Resources/Keyboard-en.plist (o cualquier teclado que use).

Allí puede hacer clic en las flechas desplegables, luego hacer doble clic junto a "Keycaps" y cambiar las teclas a las teclas deseadas.ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

¡Mira, funciona!

¿Estás seguro de que estás hablando de 10.11 El Capitán? En el mío, la ubicación de los archivos .plist no es lo que dices, sino el de la respuesta original. Si realmente está hablando de 10.12 Sierra, debe eliminar esto, porque Skeleton Bow ya lo respondió por completo hace meses.