¿Alguien sabe cómo deshabilitar la entrada de texto Unicode en los campos de texto?

2

Me encanta el motor de texto Cocoa. Algunas modificaciones en un pequeño archivo xml - ~/Library/DefaultKeyBinding.dict - y puede obtener casi cualquier secuencia de teclas para trabajar en cualquier campo de texto estándar de Cocoa en cualquier aplicación.

Por ejemplo, he agregado un montón de enlaces de teclas de emacs como Ctrl A para ir al principio de una línea, F para avanzar una palabra, B para retroceder una palabra, etc.

De todos modos, me he dado cuenta de que algunas aplicaciones, aunque parecen usar el motor de texto Cocoa y los widgets de campo de texto estándar de Cocoa, tienen esta forma molesta de subvertir los enlaces de teclas de Emacs. En algunos campos de texto, la tecla Opción se usa para escribir caracteres internacionales Unicode.

¿Hay alguna forma de deshabilitar esto globalmente? Nunca quiero que la tecla Opción haga esto: si quiero escribir un carácter Unicode, usaré el visor de caracteres.

¿Alguna idea?

    
pregunta Ted Middleton 17.03.2013 - 07:14

2 respuestas

1

Algunas aplicaciones y vistas de texto simplemente no son compatibles con DefaultKeyBinding.dict.

Si crea una nueva clave de salida con Ukelele , puede, por ejemplo, hacer que ⌥A no inserte nada en lugar de å. O puede reasignar combinaciones de teclas que ingresan a estados de teclas muertas (como ⌥U en el diseño de los EE. UU.) Para que puedan usarse en DefaultKeyBinding.dict.

  • Los diseños de teclado en ~/Library/Keyboard Layouts/ no se pueden seleccionar en los cuadros de diálogo de contraseña o en la pantalla de inicio de sesión, pero sí en los que están en /Library/Keyboard Layouts/ .
  • Los archivos XML keylayout no funcionan con las ventanas emergentes que se muestran al mantener las teclas, pero los paquetes de keylayout sí lo hacen.
  • Para aplicar los cambios a una presentación clave, actualmente debe, por ejemplo, ejecutar sudo touch /Library/Keyboard\ Layouts/ y cerrar sesión y volver a iniciarla.
  • Las fuentes de entrada predeterminadas se pueden eliminar mediante edición ~ / Library / Preferences / ByHost / com.apple.HIToolbox. *. Plist .

KeyRemap4MacBook puede, por ejemplo, cambiar ⌥B a ⌥ ← en todas las aplicaciones, excepto iTerm y Emacs. Consulte esta pregunta .

    
respondido por el user495470 18.03.2013 - 07:34
0

Puede haber formas más simples que la que menciono a continuación.

Lo que estás describiendo en esencia se reduce a: lo que tiene prioridad sobre el otro, la distribución del teclado o el DefautlKeyBinding.dict . Esta parte no puedo responder. Sin embargo, sé cómo evitar la producción de caracteres Unicode cuando utilizo una o ambas opciones y control .

Usé Ukelele para Hacer un diseño de teclado personalizado para otro idioma. Para su situación, haría un nuevo diseño de teclado basado en mi diseño de teclado actual, y luego eliminaría todos los caracteres producidos mientras mantenía cualquiera de las dos opciones y control .

Lo he usado personalmente para producir mi propio diseño de teclado para el árabe y hace lo que estaba destinado a hacer.

Después de personalizar la distribución del teclado, todo lo que tiene que hacer es colocarlo dentro de la carpeta Library/Keyboard Layouts/ de su carpeta de inicio. Por supuesto, debe crearlo si aún no está presente.

Tenga en cuenta que algunas aplicaciones tienen sus propias combinaciones de teclas codificadas, especialmente las aplicaciones de edición de texto. Por lo tanto, esto responde solo a la parte con respecto a la desactivación de la producción de caracteres Unicode con las teclas opción y control .

    
respondido por el ismail 18.03.2013 - 04:05

Lea otras preguntas en las etiquetas