Это выглядит как странное взаимодействие между Emacs и вашим оконным менеджером. Как будто Emacs конфигурирует себя так, чтобы в своем активном окне было определенное количество строк и столбцов, но фрейм, выделенный оконным менеджером, больше.
Можете ли вы попробовать запустить X без Xmonad (т.е. просто запустить startX), а затем запустить Emacs? Вы не получите рамочные декорации, но вы все равно можете использовать xterm, чтобы запустить его и посмотреть, какой «естественный» размер он выделяет. С той же конфигурацией Emacs это сузило бы ее до некоторой проблемы с Xmonad.
Это не очевидно из скриншотов, так как один определенно находится в режиме графического интерфейса, но другой (зеленый на черном) выглядит так же, как в текстовом режиме. Если вы заставляете его работать в текстовом режиме (emacs -nw
), он занимает тот же размер? Внутри оболочки обычные команды занимают весь размер выделенного окна?
Правильно ли установлены переменные оболочки COLUMNS
или LINES
? Они соответствуют размерам окна? Если вы используете bash
, включен ли shopt checkwinsize
? Есть ли обычные команды, такие как ls
, для переноса на ожидаемые поля и прокрутки для использования всего окна?
Стоит убедиться, что текстовый режим настроен правильно, прежде чем заставить работать графический интерфейс. У меня есть предчувствие, что Xmonad управляет размером окна может быть виновником, если он «заставляет» окна мозаичным способом при определенных условиях, и правильные подсказки X не отправляются. Но пока это только предположение ...