запуск программы из vim, которая открывает другое окно, портит мой терминал - PullRequest
0 голосов
/ 26 января 2020

Я использую vim внутри gnome-Terminal для редактирования Python программы. Я также использую Tiling Window Manager, который называется awesome-wm.

Внутри моей программы Python я отображаю некоторые данные на графике matplotlib (при выполнении которого открывается другое окно). Когда я хочу протестировать свою Программу, я использую следующую команду для запуска Программы изнутри vim.

:!python3 %

enter image description here

когда программа запускается, она печатает три сообщения в оболочку и открывает окно matplotlib для отображения данных.

enter image description here

Иногда я вижу только испорченные до разрыва строки и приходится прокручивать вверх, чтобы увидеть сообщения. Мой вопрос сейчас заключается в том, почему форматирование внутри консоли испортилось, и как мне это исправить?

Я думаю, что окно терминала не замечает, что его размер изменяется, когда окно графика находится в открытом состоянии, но я не знаю, как обновить sh терминал в этом случае. использование :!clear; python3 % не помогает.

Заранее спасибо.

1 Ответ

1 голос
/ 26 января 2020

(Ну, это не прямое решение вашей проблемы, но здесь все идет.)

Большинство терминалов не обрабатывают перекомпоновку при изменении размера должным образом. Не существует правильных способов сделать это, поэтому большинство не пытаются использовать все приемы, описанные в книге, чтобы сделать это лучше. В конце концов, для менеджера classi c с плавающими окнами изменение размера не то, что вы делаете очень часто. LibVTE / Gnome-терминал не предназначен для плиточного WM и не исправлялся годами, чтобы сделать его лучше.

Urxvt, вероятно, является наиболее распространенным терминалом для AwesomeWM (по умолчанию xterm, потому что он гораздо чаще устанавливается по умолчанию). Он имеет более продвинутые функции, такие как вкладки и прозрачность, которые вы ожидаете от современных терминалов. Обратите внимание, что некоторые из них (вкладки) по умолчанию отключены.

Иногда использование программного обеспечения, такого как tmux, может использоваться для смягчения некоторых ограничений любого конкретного терминала, но оно имеет собственные ограничения.

...