Eu não sei se isso é possível, mas estaria interessado em uma solução também. Você pode usar o seguinte script bash
para simular um comportamento semelhante, mas ele não foi testado, ele pode ser interrompido em casos de uso simples.
#!/usr/bin/env bash
cols=$(tput cols)
colsi=$((${cols} + 1))
wrap='>>> '
$@ | while IFS='' read -r line; do
while [ ${#line} -gt ${#wrap} ]; do
echo "${line}" | cut -c-"${cols}"
line="${wrap}"$(echo "${line}" | cut -c"${colsi}"-)
done
done
O que esse script faz é passar por cima de seus argumentos ( $@
) e, em seguida, imprimir uma linha de saída e prefixar a variável $wrap
nas seguintes linhas de saída. Ele é independente de tmux
e pode ser usado dentro ou fora dele. Armazene o script com um arquivo chamado, por exemplo wrapper
e, em seguida, chamá-lo assim:
$ x='This is just a very long silly line, it should show the use case of the wrapper script, that means the only thing this silly text is supposed to do, is to be long enough to be wrapped. Since I dont know what resolution you have on your screen, you might want to extend this line yourself to make sure it is wrapped.'
$ echo "$x"
> This is just a very long silly line, it should show the use case of the wrapper script, that means the only thing this silly text is supposed to do, is to be long enough to be wrapped. Since
> I dont know what resolution you have on your screen, you might want to extend this line yourself to make sure it is wrapped.
$ wrapper echo "$x"
> This is just a very long silly line, it should show the use case of the wrapper script, that means the only thing this silly text is supposed to do, is to be long enough to be wrapped. Since
> >>> I dont know what resolution you have on your screen, you might want to extend this line yourself to make sure it is wrapped.
Observe a diferença da saída entre echo "$x"
e wrapper echo "$x"
.