Emacs에서 글꼴 크기를 설정하는 방법은 무엇입니까?


답변:


403
(set-face-attribute 'default nil :height 100)

값은 1 / 10pt이므로 100은 10pt 등을 제공합니다.


2
이 작업을 시도하고 있지만 Emacs 23.1.1에서는 자동 완성에 옵션 만 표시됩니다 set-face-background set-face-font set-face-inverse-video-p set-face-underline set-face-background-pixmap set-face-foreground set-face-stipple set-face-underline-p.
톰 브리토

8
@TomBrito 어떤 자동 완성? 내 이맥스에서 set-face-attribute실제로 M-x( execute-extended-command) 에서 누락 되었지만 M-:( eval-expression) 및 C-h f( describe-function)에 있습니다. 파일 M-:에 넣고 싶지 않다면 아마도 원하는 것입니다 .emacs.
Rory O'Kane

1
@ RoryO'Kane 왜 일부 명령을 통해 사용할 수 M-x없습니까? 멍청한 질문이지만, 확실하지만, emacs가 저수준에서 어떻게 작동하는지 잘
모르겠습니다

6
@DavidS 좋은 질문입니다. “ 왜 일부 Emacs 기능을 통해 사용할 수 M-x없습니까? ”. 답을 연구하는 것은 교육적인 것으로 판명되었습니다.
Rory O'Kane

예를 들어 독특한 글꼴, 기울어 짐 등을 위해 일부 얼굴을 사용자 정의한 경우이 솔루션은 작동하지 않습니다. 이전 크기로 남겨두고 개별적으로 설정해야합니다.
Hi-Angel

371

에서 Emacswiki , GNU 이맥스 (23)가 내장 된 키 조합 :

C-xC-+C-xC--증가 또는 버퍼 텍스트 크기를 감소시키기


29
또는`Cx C- = '및'Cx C-- '
HongboZhu

59
이것은 특정 버퍼에 국한됩니다. 따라서 편집중인 다른 파일로 전환하면이 변경의 영향을받지 않습니다. 또한 버퍼를 닫았다가 다시 열거 나 Emacs를 다시 시작하면 이전 기본 크기가됩니다. 이것은 당신이 원하는 것일 수 있습니다. 나는 단지 완전성을 위해 이것을 진술하고 있습니다.
ShreevatsaR

9
OP는 .emacs에 구성을 저장하려고하지만 그렇지 않습니다.
xwl

(맥 OS에서) UI spacemacs 작동에 init.el 설정 - stackoverflow.com/a/296316/432903
prayagupd

80

Shift와 첫 번째 마우스 버튼을 누릅니다. 다음과 같은 방법으로 글꼴 크기를 변경할 수 있습니다. 이 웹 사이트 에 자세한 내용이 있습니다.


1
@AndrewLarned 변경 사항을 영구적으로 유지하려면 .emacs 파일을 변경하십시오. (그의 .emacs 파일에있는 예는 Chris Conway의 답변을 참조하십시오.)
Ram Narasimhan

이 작업을 수행 할 때 글꼴의 양을 늘리거나 줄일 수있는 방법이 있습니까?
Mauricio A. Cinelli

42

M-x customize-face RET defaultdefault다른 모든면의 기준이되는 면을 설정할 수 있습니다 . 글꼴 크기를 설정할 수 있습니다.

여기 내 .emacs에있는 것이 있습니다. 실제로 색상 테마가 기본 사항을 설정하면 사용자 정의 얼굴 설정이 일부 항목을 무시합니다. 사용자 정의 얼굴은 emacs의 사용자 정의 얼굴 메커니즘에 의해 작성됩니다.

;; my colour theme is whateveryouwant :)
(require 'color-theme)
(color-theme-initialize)
(color-theme-whateveryouwant)

(custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(default ((t (:stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 98 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
 '(font-lock-comment-face ((t (:foreground "darkorange4"))))
 '(font-lock-function-name-face ((t (:foreground "navy"))))
 '(font-lock-keyword-face ((t (:foreground "red4"))))
 '(font-lock-type-face ((t (:foreground "black"))))
 '(linum ((t (:inherit shadow :background "gray95"))))
 '(mode-line ((t (nil nil nil nil :background "grey90" (:line-width -1 :color nil :style released-button) "black" :box nil :width condensed :foundry "unknown" :family "DejaVu Sans Mono")))))

2
많은 고급 이맥스 사용자는 오류가 발생하기 쉽고 모든 사용자 정의를 혼합하기 때문에 사용자 정의 시스템을 사용하지 않는 것을 선호합니다. 사용자 정의를 개별 .el 파일로 분리하여 init.el에서로드하고 각 사용자 정의 모드를 elisp 코드로 추가하는 것이 좋습니다. elisp를 통해 글꼴을 설정하는 방법은 위의 huaiyuan의 답변을 참조하십시오.
EdwardGarson 2018 년

3
FWIW, emacs 관리자 (아마도 "고급"emacs 사용자)는 다음과 같이 사용자 정의 시스템을 사용합니다 : github.com/jwiegley/dot-emacs/blob/…
Ben

38

이것은 또 다른 간단한 해결책입니다. 24시에도 작동

(set-default-font "Monaco 14")

지름길 :

`C-+` increases font size
`C--` Decreases font size

15

내 안에 다음이 있습니다 .emacs.

(defun fontify-frame (frame)
  (set-frame-parameter frame 'font "Monospace-11"))

;; Fontify current frame
(fontify-frame nil)
;; Fontify any future frames
(push 'fontify-frame after-make-frame-functions) 

선택한 글꼴을 대체 할 수 있습니다 "Monospace-11". 사용 가능한 옵션 세트는 시스템에 따라 크게 다릅니다. M-x set-default-font탭 완성을 사용 하고 살펴보면 몇 가지 아이디어를 얻을 수 있습니다. 이맥스 (23) 및 활성화 안티 앨리어싱 내 시스템에, 이름, 예를 들어,에 의해 시스템 글꼴을 선택할 수 있습니다 Monospace, Sans Serif


10

X11에서 emacs를 열고 메뉴 옵션으로 이동하여 "기본 글꼴 설정 ..."을 선택하고 글꼴 크기를 변경하십시오. 동일한 메뉴에서 "저장 옵션"을 선택하십시오. 끝난.


emacs를 다시 시작하면 변경 사항이 지속되지 않습니다.

9

zoom.cfgglobal-zoom.cfg 는 글꼴 크기 변경 바인딩을 제공합니다 (EmacsWiki에서)

  • C-- 또는 C- 마우스 휠업 : 글꼴 크기를 증가시킵니다.
  • C- + 또는 C- 마우스 휠 다운 : 글꼴 크기를 줄입니다.
  • C-0은 글꼴 크기를 기본값으로 되돌립니다.

8

다음은 한 번에 한 지점 씩 글꼴 높이를 대화식으로 크기 조정하는 옵션입니다.

;; font sizes
(global-set-key (kbd "s-=")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (+ old-face-attribute 10)))))

(global-set-key (kbd "s--")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (- old-face-attribute 10)))))

모든 버퍼 에서 텍스트 크기를 조정하려는 경우에 좋습니다 . 내가 사용하는 솔루션을 좋아하지 않아 text-scale-increasetext-scale-decrease시궁창에서 행 번호가 이후에 차단받을 수있다.


이것은 완벽 해요! 정말 고맙습니다.
Fomentia

7

Firefox 및 기타 프로그램을 사용하면 C- + 및 C--를 사용하여 글꼴 크기를 늘리거나 줄일 수 있습니다. 다음 코드 줄을 추가하여 동일한 기능을 갖도록 내 .emacs를 설정했습니다.

(global-set-key [C-kp-add] 'text-scale-increase)

(global-set-key [C-kp-subtract] 'text-scale-decrease)

5

아쿠아 맥 :

(set-face-attribute 'default nil :font "Monaco-16" )

Emacs Wiki 에서 기본 글꼴을 전체적으로 변경하면 다음 중 하나를 사용할 수 있습니다.

(set-face-attribute 'default nil :font FONT )

(set-frame-font FONT nil t)

어디 FONT같은 것입니다 "Monaco-16"예를 들면 :

(set-face-attribute 'default nil :font "Monaco-16" )

위키에 대한 첫 번째 제안에서 추가 닫는 괄호가있어 시작시 오류가 발생했습니다. 마지막으로 추가 괄호를 발견 한 후 위키의 제안을 수정했습니다. 그런 다음 두 제안 모두 나를 위해 일했습니다.


3

글꼴 크기를 변경하여 의미하는 바에 따라 다릅니다. 이 EmacsWiki 섹션은 가장 완벽한 정보를 제공합니다. 텍스트 크기 조정, 프레임 글꼴, 버퍼 / 프레임 등 다양한 경우를 구분합니다 . 글꼴 크기 변경 .


1

NTEmacs 23.1에서 옵션 메뉴에는 "기본 글꼴 설정 ..."옵션이 있습니다.


1

콘솔 emacs (emacs -nw)에 만족합니다. 그놈 터미널과 같은 최신 vterm 구현은 더 나은 글꼴 지원을하는 경향이 있습니다. 또한 그것에 익숙해지면 tmux를 사용할 수 있으므로 X가 없어도 원격 서버에서 전체 환경 작업이 가능합니다.


1

AquaMacs에서 CMD +CMD -현재의 버퍼의 폰트 사이즈를 조정한다.


1

내가 사용하는 히드라 눌러 연속 감소 / 제어 글꼴 증가로 패키지를 f2 + + + +/ f2 - - - -을 눌러 것을하는 수단 f2번 한 다음 사용 +/ -전용 제어에 의해 기본 글꼴 크기를 복원합니다 f2 0. 키패드가 있으므로 글꼴 설정에 키패드도 바인딩합니다.

(defhydra hydra-zoom (global-map "<f2>")
  "zoom"
  ("<kp-add>" text-scale-increase "in")
  ("+" text-scale-increase "in")
  ("-" text-scale-decrease "out")
  ("<kp-subtract>" text-scale-decrease "out")
  ("0" (text-scale-set 0) "reset")
  ("<kp-0>" (text-scale-set 0) "reset"))

그리고 아래의 키 바인딩으로 지원되는 최신 편집기 마우스 제어 기능, 제어 + 마우스 휠을 눌러 글꼴을 늘리거나 줄입니다.

(global-set-key (kbd "<C-wheel-up>") 'text-scale-increase)
(global-set-key (kbd "<C-wheel-down>") 'text-scale-decrease)

마우스 휠의 키 바인딩이 작동하지 않습니다. 버전이 있습니다GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)
Zelphir Kaltstahl

1
그것들은 (global-set-key (kbd "<C-mouse-4>") 'text-scale-increase) (global-set-key (kbd "<C-mouse-5>") 'text-scale-decrease) 내 버전의 이맥스에 있을 것입니다 (25)
stefano

1

다음은 대화식 기능을 사용하여 전체 글꼴 크기를 직접 지정할 수있는 스 니펫입니다.

(defun set-font-size ()
    "Set the font size."
  (interactive)
  (set-face-attribute
   'default nil :height
   (string-to-number
    (read-string "Font size: " (number-to-string (face-attribute 'default :height nil))))))
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.