Se você quiser alterar o tamanho de acordo com a resolução, você pode fazer algo assim (ajustando a largura e as resoluções preferidas de acordo com suas necessidades específicas):
(defun set-frame-size-according-to-resolution ()
(interactive)
(if window-system
(progn
;; use 120 char wide window for largeish displays
;; and smaller 80 column windows for smaller displays
;; pick whatever numbers make sense for you
(if (> (x-display-pixel-width) 1280)
(add-to-list 'default-frame-alist (cons 'width 120))
(add-to-list 'default-frame-alist (cons 'width 80)))
;; for the height, subtract a couple hundred pixels
;; from the screen height (for panels, menubars and
;; whatnot), then divide by the height of a char to
;; get the height we want
(add-to-list 'default-frame-alist
(cons 'height (/ (- (x-display-pixel-height) 200)
(frame-char-height)))))))
(set-frame-size-according-to-resolution)
Observe que o sistema de janelas está obsoleto nas versões mais recentes do emacs. Um substituto adequado é (display-graphic-p)
. Veja esta resposta para a pergunta Como detectar se o emacs está no modo terminal? para um pouco mais de fundo.