
¿Cómo puedo saber si el comando que se está escribiendo es multilínea?
$CONTEXT puede determinar cuándo en un mensaje secundario como:
$ echo 'hello
quote> world'
Pero, ¿cómo puedo determinar cuándo hay una nueva línea como:
$ echo 'hello
world'
(Se puede realizar en modo vi o con self-insert-unmeta)
Necesito esta información en un widget ZLE.
Respuesta1
El contenido completo de la línea de entrada lógica está enBUFFER
.
[[ $BUFFER == *$'\n'* ]]