Estoy creando una extensión de gnomo que me permitirá tener varios atajos de combinación de teclas. El primero que estoy tratando de abordar es HJKL para teclas de flecha como en vim. Estoy usando el siguiente código para lograr esto:
let mode = Shell.ActionMode.ALL; let flag = Meta.KeyBindingFlags.NONE; let settings = getSettings(); Main.wm.addKeybinding("left-h", settings, flag, mode, () => log('test') );aquí está el esquema de acceso directo:
<key type="as" name="left-h"> <default><![CDATA[['h']]]></default> <summary>The shortcut key</summary> <description>You can create GTK entry in pref and set it as CDATA</description> </key> Todo esto funciona como se esperaba. Mi único problema es que hay aproximadamente un segundo de latencia cuando se presiona la tecla cuando hay un registro en la salida. Lo primero que pensé fue que el registro es lento, así que lo configuré para llamar a un script de python con spawn_command_line_sync que es responsable de simular una pulsación de tecla que también tenía ~1s de latencia después de que se presionó el botón cuando se disparó el comando. (Estoy usando un script de python para esto porque no pude encontrar una manera de presionar teclas a través de GJS) ¿Es posible deshacerse de esa latencia? En este momento, las combinaciones de teclas no se pueden usar debido a eso.