Есть ли способ перерисовать текст в окне терминала после изменения его размера?

Просто вопрос юзабилити на самом деле. Вы знаете, когда работаете в окне терминала, и вы решаете сделать какой-то запрос, который возвращает текстовую стену, и вы думаете про себя... "это было бы проще для глаз, если бы я сделал это окно терминала немного шире" * приступает к изменению размера *.

Что мне интересно, есть ли способ заставить терминал повторно передавать текст без повторения запросов, которые вы выполняли раньше? (Note: I'm using lxterminal.)

2 ответа

Решение

Терминал не может этого сделать. он не знает, как правильно расположить страницу. Что, если это было какое-то приложение NCurses, например Midnight Commander ? Вы не можете просто переформатировать страницу, вам нужно знать, что там.

Для этого есть механизм. Терминал или оболочка может отправлять сообщения в приложение, а также запрашивать текущий размер и вносить соответствующие изменения. Если вы используете Bash, проверьте shopt -s checkwinsize , Но приложение должно знать, чтобы запросить и перерисовать экран. Как только терминал отправляет сообщение "У меня новый размер", на самом деле он мало что может сделать.

Если вы имеете в виду команды, которые просто выводят кучу данных, но не управляют макетом всего экрана (скажем, make, gcc, grep и т. д., в отличие от, например, текстового редактора), а затем новейшие версии gnome-terminal повторяйте эти строки для вас.

Другие вопросы по тегам