¿Cómo ejecutar un comando único anterior en un shell de Emacs (sin repeticiones)?


9

En el shell de Emacs, ¿hay un comando similar M-ppero que omitiría los comandos repetidos? Es decir, iría al siguiente comando diferente . Similar a la terminal regular de Linux.

Entonces, si tuviera que correr:

ls
./script
./script
./script
make

y presione M-ptres veces, quiero que vaya al comando ls.

O, alternativamente, ¿cómo puedo definir un comando como este?

Respuestas:


7

La cáscara se obtiene a partir de M-x shellse basa en comint, lo que puede establecer comint-input-ignoredupsa tfin de obtener el comportamiento que desea. La ayuda incluso menciona bash:

comint-input-ignoredups es una variable definida en `comint.el '.

Documentación:

Si no es nulo, no agregue una entrada que coincida con la última en el anillo de entrada.

Esto refleja el comportamiento opcional de bash.

Esta variable es buffer-local.

Puedes personalizar esta variable.


increíble, exactamente lo que estaba buscando, ¡gracias!
Anton

1

También puede usar M-x comint-dynamic-list-input-ringe invocado por C-c C-l. También puede configurar C-h v comint-input-ignoredupspara tver comandos únicos solo en la lista anterior.

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.