A linha superior de menos saída rola na parte superior porque você imprime uma linha na parte inferior, causando uma linha de rolagem. Esse é o \n
no seu prompt.
Como evitar isso e ainda ter duas linhas?
Você pode escrever parte do prompt acima da linha de comando mormal, em vez de usar um prompt de duas linhas. Em certo sentido, seria uma linha normal e uma impressa acima - fora da área de prompt normal (exigiria as seqüências de escape do terminal para o controle do cursor).
Isso cobriria o caso less
escrevendo na última linha de saída, como você sugeriu.
Mas também escreveria sobre a saída de outros comandos - muitos dos quais não têm mais saída que apenas essa linha.
Portanto, é necessário que haja um tratamento explícito dos dois casos, como a impressão de uma nova linha extra nos casos não- less
.
É possível, com certeza, mas precisaria de muitos ajustes manuais para trabalhar com suavidade suficiente para o uso diário ...
Existem outras abordagens possíveis, como alterar a área de rolagem do terminal por menos mas isso fica ainda mais confuso.