Я пытаюсь определить размер экрана, на котором я запускаю emacs, и соответствующим образом отрегулировать размер и положение окна, в котором он запускается (я предполагаю, что это фрейм в emacs-speak). Я пытаюсь настроить свой .emacs так, чтобы я всегда получал «достаточно большое» окно с его левым верхним углом в верхнем левом углу экрана.
Я думаю, это большая просьба для общего случая, поэтому, чтобы немного сузить круг вопросов, меня больше всего интересует GNU Emacs 22 для Windows и (Debian) Linux.
У меня в запасе следующее
.emacs
:Вы также можете посмотреть на функции
set-frame-size
,set-frame-position
иset-frame-width
. ИспользуйтеC-h f
(akaM-x describe-function
), чтобы открыть подробную документацию.Я не уверен, есть ли способ вычислить максимальную высоту / ширину фрейма в текущей оконной среде.
источник
(if (window-system) (set-frame-size (selected-frame) 124 40))
для победы - так красиво и лаконично, и дает мне размер, установленный в моем Терминале по умолчанию, что приятно и знакомо. :) (Конечно, отрегулируйте в соответствии с предпочтениями.) Спасибо!init.el
это применимо только к начальному кадру. Если после этого вы создадите новый фрейм, вышеуказанная функция не будет работать; в новом кадре будут установлены настройкиdefault-frame-alist
.(set-frame-size (selected-frame) 80 24)
дает мне кадр 161 на 48; Я использую экран с разрешением 4K hidpi, но не ожидал, что это повлияет на количество символов.Взято с: http://www.gnu.org/software/emacs/windows/old/faq4.html
Первый параметр применяется ко всем фреймам emacs, включая первый, который появляется при запуске. Второй параметр добавляет дополнительные атрибуты к первому кадру. Это потому, что иногда полезно знать исходный фрейм, в котором вы запускаете emacs.
источник
(width . 80) (height . 40)
), но по какой-то причине он перестал работать после того, как я обновил свою версию Xubuntu с 12.04 до 13.10: при запуске размер фрейма был по умолчанию. Затем я переключился на ответ Криса Конвея, который мне подходит.Самый простой способ я нашел , чтобы сделать это в среде X-Window через X ресурсов . Соответствующая часть моих .Xdefaults выглядит так:
У вас должна быть возможность добавить к нему суффикс с координатами + 0 + 0, чтобы заставить его перемещаться в верхний левый угол вашего дисплея. (причина, по которой я этого не делаю, заключается в том, что я иногда создаю новые кадры, и это сбивает с толку, если они появляются в том же месте, что и предыдущий)
Согласно руководству, этот метод работает и в MS Windows , сохраняя ресурсы в виде пар ключ / значение в реестре. Я никогда этого не проверял. Это могло бы быть здорово, могло бы быть намного больше неудобств по сравнению с простым редактированием файла.
источник
Попробуйте добавить следующий код в
.emacs
источник
Вы также можете использовать параметр -geometry при запуске emacs:
emacs -geometry 80x60+20+30
даст вам окно шириной 80 символов, высотой 60 строк, с верхним левым углом на 20 пикселей вправо и на 30 пикселей вниз от верхнего левого угла фона.источник
В Ubuntu сделайте:
источник
В Windows вы можете сделать фрейм emacs максимальным, используя эту функцию:
источник
источник
Я предпочитаю настройки Брайана Окли. Однако высота не работает должным образом в моем GNU Emacs 24.1.1.
источник