comportamiento de ctrl-o en Terminal.app

A menudo uso el atajo + en bash (de "Learning the bash Shell" ):O

[V]uelva a [un comando en el historial] y presione + Oen lugar de . Esto ejecutará el comando y mostrará el siguiente comando en el archivo de historial. Presione + Onuevamente para ingresar este comando y mostrar el siguiente.

Parece que este atajo no está disponible en OS X; + Osimplemente no hace nada. Una búsqueda en la web muestra la sugerencia de usar el !bash incorporado , pero no veo cómo puedo lograr lo mismo que + Ocon él.

¿Es posible obtener de alguna manera un comportamiento + Oen Terminal.app en OS X?

Respuestas (2)

+ Oestá, por algún motivo (probablemente relacionado con su uso para el control de flujo en algunos tipos de conexiones en serie) configurado para ser descartado por el controlador de terminal (es decir, no Terminal.app, sino la parte del sistema operativo entre este y el caparazón). Puedes deshacerte de esto con el comando stty discard undef. Para que este cambio sea permanente, agregue este comando a sus archivos .bash_profile y .bashrc .

Si Ctrl+O o ^O no funcionan para abrir un buzón en la barra lateral de tu mutt, esta puede ser la solución.

man bashpodría ayudar. "READLINE" y "Readline Key Bindings" hablan sobre vincular las pulsaciones de teclas disponibles y cómo configurar los valores predeterminados de readline.

También Bash Emacs Editing Mode Cheat Sheet y Working Productively in Bash's Vi Command Line Editing Mode (con Cheat Sheet) son buenos para descubrir qué pulsación de tecla hace qué si está usando el modo vi en lugar del emacs predeterminado. En cualquiera de los dos casos bind -P | grep foundte mostrará qué combinaciones de teclas están configuradas en modo vi y bind -Pte mostrará todo lo disponible.

¡Vaya, no tenía idea de que vi-mode estuviera disponible en bash! Esto es más que dulce. ¡Gracias!
Me sentí de la misma manera cuando descubrí que estaba disponible.
Yo también, yo también :)