답변:
해상도에 따라 크기를 변경하려면 다음과 같이 할 수 있습니다 (특정 요구 사항에 따라 선호하는 너비 및 해상도 조정).
(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)
윈도우 시스템은 최신 버전의 emacs에서 더 이상 사용되지 않습니다. 적절한 대체품은 (display-graphic-p)
. emacs가 터미널 모드에 있음을 감지하는 방법 질문에 대한 답변 을 참조하십시오 . 조금 더 배경을 위해.
내 다음이 있습니다 .emacs
.
(if (window-system)
(set-frame-height (selected-frame) 60))
또한 기능에 보일 수 있습니다 set-frame-size
, set-frame-position
하고 set-frame-width
. C-h f
(일명 M-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 x 48 프레임 을 제공하는 것을 제외하고 는 저 에게 효과적입니다 . 나는 4K hidpi 화면을 사용하고 있지만 이것이 캐릭터 수에 영향을 미칠 것이라고 기대하지 않습니다.
출처 : http://www.gnu.org/software/emacs/windows/old/faq4.html
(setq default-frame-alist
'((top . 200) (left . 400)
(width . 80) (height . 40)
(cursor-color . "white")
(cursor-type . box)
(foreground-color . "yellow")
(background-color . "black")
(font . "-*-Courier-normal-r-*-*-13-*-*-*-c-*-iso8859-1")))
(setq initial-frame-alist '((top . 10) (left . 30)))
첫 번째 설정은 시작할 때 팝업되는 첫 번째 프레임을 포함하여 모든 emacs 프레임에 적용됩니다. 두 번째 설정은 첫 번째 프레임에 추가 속성을 추가합니다. 이것은 emacs를 시작하는 원래 프레임을 아는 것이 때때로 좋기 때문입니다.
(width . 80) (height . 40)
) 를 설정하는 데 오랫동안이 방법을 사용 했지만 어떤 이유로 Xubuntu 버전을 12.04에서 13.10으로 업그레이드 한 후 작동이 중지되었습니다. 시작시 프레임 크기가 기본값이었습니다. 그런 다음 Chris Conway의 답변을 사용하여 전환했습니다.
내가 찾은 가장 쉬운 방법은 X-Window 환경에서 X 리소스를 사용하는 것 입니다. 내 .Xdefaults의 관련 부분은 다음과 같습니다.
Emacs.geometry: 80x70
+ 0 + 0 위치 좌표를 접미사로 붙여서 디스플레이의 왼쪽 상단 모서리로 강제 할 수 있어야합니다. (내가하지 않는 이유는 가끔 새 프레임을 생성하고 이전 프레임과 똑같은 위치에 나타나면 혼란스러워지기 때문입니다)
매뉴얼에 따르면 이 기술은 MS Windows에서도 작동 하며 리소스를 레지스트리에 키 / 값 쌍으로 저장합니다. 나는 그것을 테스트하지 않았습니다. 단순히 파일을 편집하는 것보다 훨씬 더 불편할 수도 있습니다.
emacs를 실행할 때 -geometry 매개 변수를 사용할 수도 emacs -geometry 80x60+20+30
있습니다. 창은 너비가 80 자, 높이가 60 행이고, 왼쪽 상단 모서리가 오른쪽으로 20 픽셀, 배경의 왼쪽 상단 모서리에서 30 픽셀 아래로 내려갑니다.
(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)
나는 Bryan Oakley의 설정을 선호합니다. 그러나 '높이가 GNU Emacs 24.1.1에서 제대로 작동하지 않습니다.