¿Cuáles podrían ser las teclas no utilizadas en Emacs que generalmente se pueden usar para enlazar macros de teclado?


10

Leí que la forma habitual de vincular la clave a las macros del teclado es C-x C-k 0to 9y Ato Z.

Entonces, por ejemplo, después de definir una macro de teclado, podemos escribir C-x C-k by Emacs pedirá una clave para vincular. Y las claves reservadas para este propósito son C-x C-k 0to 9y Ato Z.

Pero esto implica bastantes pulsaciones de teclas. ¿Cuáles son las buenas claves para unir esto? Descubrí que podía vincularlo C-<return>o Option+ Enteren una Mac que ejecuta Ubuntu Virtual Machine usando la versión de la GUI de Emacs. Eso debería funcionar, pero la versión del terminal Emacs y el Emacs nativo en una Mac tratan C-<return>o Option+ Entercomo simplemente <return>, por lo que no funcionará.

¿Cuáles podrían ser las teclas no utilizadas en Emacs que generalmente se pueden usar para enlazar macros de teclado?

O tal vez, alternativamente, ¿hay alguna manera de mostrar todas las teclas simples que no están vinculadas a Ctrly Meta?


Esta pregunta es probablemente demasiado amplia y es probable que genere respuestas basadas en opiniones. Edite la pregunta para que sea menos basada en opiniones.
Dan

hecho según lo solicitado ...
no

Respuestas:


10

... ¿hay alguna manera de mostrar todas las teclas simples que no están vinculadas a CTRL y Meta?

¿Has revisado el unboundpaquete por Davis Herring? Tiene la función describe-unbound-keys, que enumera los acordes clave independientes en función de algo que él llama key complexitypuntaje. Característica bastante genial para jugar para aislar solo los acordes clave con CTRLy las METAteclas.

Para obtener el mecanismo de puntuación subyacente, observe la key-complexity-1función en unbound.el y modifique los factores de ponderación para aislar CTRLy METAclaves. Este paquete tiene un gran potencial para el descubrimiento automático de secuencias de unión de teclas útiles.


Esto es bastante interesante: el mío no tenía ninguna combinación de teclas disponible hasta la complejidad 5. Supongo que para que sea más útil, podría combinarlo con información sobre la frecuencia con la que usa diferentes funciones (u otras personas usan). Creo que Xah Lee compiló esa información ) Esta fue una de las partes más difíciles de Emacs cuando lo aprendí por primera vez: ¿qué combinaciones de teclas puedo usar sin eliminar algo que podría ser útil más adelante? ¿O cómo puedo volver a vincular las funciones más utilizadas para que no causen RSI? Ha tomado un tiempo resolver un buen conjunto de enlaces, pero probablemente podría estar parcialmente automatizado.
Brian Burns

La automatización es útil solo para el descubrimiento, no para elaborar un "buen conjunto de enlaces" porque ese conjunto depende de los usuarios, las características necesarias, la distribución del teclado, etc. Incluso para el mismo usuario, los enlaces evolucionarán con el tiempo. RSI agrega otro factor. En resumen, busque comodidad ahora, no lo que las teclas "podrían ser útiles más adelante".
Usuario de Emacs

Por lo tanto, "en parte" automatizado. Hay algunas teclas que son muy fáciles de alcanzar y están vinculadas a algo que la mayoría de la gente apenas usa. La transposición de IIRC es así, y sería un buen candidato para volver a vincular: combinar este paquete con el uso de la función de frecuencia le dirá eso. Mx es una de las teclas más utilizadas, pero es difícil de alcanzar con los teclados modernos: ErgoEmacs lo devuelve a Ma y lo he usado y me ha gustado mucho. Lleva mucho tiempo elaborar un buen conjunto de enlaces, especialmente cuando está comenzando y no sabe lo que está haciendo, por lo que algo que podría ayudar sería realmente útil.
Brian Burns

@ bburns.km, hazlo porque lo que estás describiendo es la personalización, no la automatización.
Usuario de Emacs

2

De acuerdo con la documentación , la C-cletra + y F5-F9 están reservadas para el usuario.

Otra opción es enlazar M-mcomo clave líder y M-Mal original M-men su lugar.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.