Con frecuencia, busqué a propósito y documentos buscando algo como lo siguiente solo para renunciar a volver a la tarea en cuestión:
(repetir-último-comando)
haz el último comando C o M que acabo de ejecutar (para que se recupere a una tecla fn)
o a veces lo relacionado:
(describe-última-función)
qué pulsación de tecla acabo de emitir por error, cuyo efecto me gustaría agregar a mi bolsa de trucos. describe-key está cerca, pero requiere saber lo que escribí.
¿Simplemente estoy pidiendo demasiado a mi fiel compañero?
(repeat)
y Cx Mz(repeat-complex-command)
. Ver también(repeat-matching-complex-command)
.Respuestas:
con respecto a ' describe-last-function ':
Hay una variable
last-command
que se establece en un símbolo representativo de lo último que hizo. Así que este fragmento de elisp(describe-function last-command)
- debería mostrar la documentación de lo que sucedió de inmediato.Entonces podrías hacer un trivial trabajando
describe-last-function
asíPon ese elisp
.emacs
o equivalente, y tendrás una función Mx describe-last-last .Si ha golpeado algunas teclas o ha hecho algo que modificó el último comando desde lo que le interesa, la
command-history
función podría ser de interés. Puede obtenerlo mediante el historial de comandos de Mxfuente
La funcionalidad de repetición es proporcionada por el
repeat.el
paquete Emacs Lisp, que se incluye con las distribuciones estándar de Emacs. Derepeat.el
la documentación de:Para ver información adicional sobre el comando de repetición, escriba C-h F repeat RETdesde Emacs.
fuente
Repite el último comando
C-xz
Una vez que lo presionó, solo presione z después de eso y se repetirá (sin tener que presionar C-xnuevamente).
fuente
Sí, hay un comando de repetición . Se llama
repeat
:Un poco impactante que nadie mencionó
repeat-complex-command
, disponible en la encuadernación de teclas C-x ESC ESC.fuente
C-x M-:
(mnemotécnico: comoM-:
pero con la expresión elisp ya rellenada para usted).repeat.el
(que subsumeC-x z z z...
) son las segundas más cercanas. Cuando se hizo la segunda pregunta, sobre qué pulsaciones de teclas fueron las últimas, la mejor respuesta esC-h l
(view-lossage
). Hay poco uso, en mi humilde opinión, para undescribe-last-command
comando.C-x M-:
como parte de una macro de teclado, que puede ser útil. Losrepeat-complex-command
enlaces predeterminados son un poco engorrosos para escribir una y otra vez.Además, le
M-x view-lossage
muestra las últimas cien (?) Pulsaciones de teclas que ingresó. Entonces, podrás ver dónde está el comando. Es lo que usé hasta que en este momento descubríM-x command-history
cuál creo que usaréC-h w
ahora.fuente
No estoy realmente seguro, pero ¿tal vez estás buscando este?
Manual de Emacs, 8.11 Repetir un comando
fuente
z
por sí solas continuarán la repetición.Puede ser que esto también ayude ... De la ayuda de emacs textualmente:
fuente
Personalmente encontré útil la idea de Sebastian. Aquí hay una versión funcional
fuente
isearch
yisearch-backward
son comandos de navegación importantes, y que este último está vinculado a <kbd> Cr </kbd> de forma predeterminada, uno podría encontrar un mejor enlace para el comando de repetición. En una Mac, sugeriría Command (super) -Y, ya que algunas aplicaciones ya tienen una convención de usar eso como lo opuesto a 'deshacer'.Esto es antiguo, pero Google pops publica esto primero cuando estaba buscando recuperar el último comando que escribí en el indicador de Emacs. Ninguna de estas respuestas funcionó para mí, así que decidí poner mis dos centavos para aquellos que podrían tropezar con esto más adelante como lo hice. Estoy usando Portacle, pero encontré lo que estaba buscando aquí, así que espero que sea lo suficientemente genérico como para trabajar con diferentes configuraciones. De todos modos, lo que funcionó para mí es usar C-↑y C-↓recorrer la historia. Usando M-py M-nfuncionó también, pero prefiero usar las flechas ya que uso Bash bastante.
fuente