Tengo un archivo extenso de DefaultKeyBinding.Dict
que funciona muy bien para mí. Uso Karabiner Elements para cambiar el comportamiento de la tecla "right-alt" para que envíe §
, que señala el comienzo de una secuencia de composición, y luego la tabla de asignación de teclas toma el control. Mi DefaultKeyBinding.Dict
empieza así:
{"§" = {
"g" = {
"h" = ("insertText:", "");
"," = ("insertText:", "");
"." = ("insertText:", "");
"(" = ("insertText:", "");
"U" = ("insertText:", "");
…
Estas asignaciones funcionan como se espera. Por ejemplo, right-alt g
h
produce y right-alt g
.
produce .
Pero ninguna de mis secuencias que involucra ^
o ~
está funcionando. Sé que estos símbolos tienen un significado especial en la sintaxis de DefaultKeyBinding.Dict
, pero tampoco funcionan ninguna de las secuencias de escape para ellos. Por ejemplo, se supone que puedo usar \136
(octal) o \U005E
para representar el acento circunflejo ^
, pero las asignaciones de teclas que involucran este carácter nunca funcionan. He intentado insertar cada uno de los siguientes en el mismo bloque que las asignaciones anteriores, luego escribiendo right-alt g
^
:
"\U005e" = ("insertText:", "yobgorgle"); // ^
"\U005E" = ("insertText:", "yobgorgle"); // ^
"\^" = ("insertText:", "yobgorgle"); // ^
"\136" = ("insertText:", "yobgorgle"); // ^
// Estos no se supone que funcionen pero los probé de todas formas
"\x5e" = ("insertText:", "yobgorgle"); // §g^
"\0136" = ("insertText:", "yobgorgle"); // §g^
// Estrategia diferente
"$6" = ("insertText:", "yobgorgle"); // §g^
Ninguno de estos ha producido yobgorgle
; toda la sintaxis anunciada ha producido un símbolo de ^
simple. Si fueran completamente ignorados, producirían §g^
como los últimos tres, así que algo está sucediendo, pero no entiendo qué es.
No entiendo por qué "$6"
tampoco funcionó, se supone que debería significar shift-6, donde se encuentra mi símbolo de caret.
La secuencia \033
para la tecla "esc" sí funciona como se anuncia.
Estoy usando iTerm2
para probar los cambios en la asignación de teclas. No he olvidado que necesito cerrar y volver a abrir la aplicación para que note las nuevas asignaciones de teclas.
¿Qué podría estar faltando?