Htop в ANSI-члене Emacs не изменяет размер

Я пытаюсь запустить htop в ansi-term в графическом (X сеанс) emacs, и htop не изменит размер. Каким бы ни был размер окна / фрейма, когда я запускаю htop, это размер, который он продолжает пытаться рендерить вечно.

Вещи, которые я пробовал:

  1. Запуск ani-term на htop напрямую и внутри ans-term, выполняющего zsh.
  2. Отправка SIGWINCH вручную kill -28 $pid к процессу htop. Также к родительскому процессу zsh, когда он был.
  3. Указание emacs отправить сигнал с emacsclient eval'ing (signal-process nil 28) и с (signal-process (get-buffer-process (get-buffer "mybuffername")) 28), Я знаю, что сигнал проходит, потому что посылка сигнала 29 убивает процесс.

Интересно, что обычный ol 'top изменяет размер, но только тогда, когда кадр, содержащий его буфер, имеет фокус ввода X. Htop по-прежнему не меняет размер независимо от фокуса. Также интересно, что сам emacs, работающий в режиме консоли в ANSI-term , изменяет размер, но только при заданном вводе. Таким образом, вы должны нажать вверх или вниз или написать символ первым или что-то.

В идеале, все 3 всегда изменяют размер сразу, когда окно делает. У Emacs есть ловушка для обнаружения этого, мне просто нужно знать, что сказать крючку, чтобы сделать.

Есть идеи?

0 ответов

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