각 주 모드마다 다른 글꼴 사용


19

주 모드에 따라 다른 글꼴을 설정할 수 있습니까? 말 Inconsolata-12org-mode버퍼와 Symbola-12남아있는 모든 모드에서. 아니면 적어도, 할 수 있습니까

(set-frame-font "Inconsolata" t)

org-mode버퍼로 전환 한 후 ?

답변:


21

buffer-face-setbuffer-face-mode이맥스 23 이상이 정확히 위해 설계되었습니다. 로부터 이맥스 위키 :

;; Use variable width font faces in current buffer
 (defun my-buffer-face-mode-variable ()
   "Set font to a variable width (proportional) fonts in current buffer"
   (interactive)
   (setq buffer-face-mode-face '(:family "Symbola" :height 100 :width semi-condensed))
   (buffer-face-mode))

 ;; Use monospaced font faces in current buffer
 (defun my-buffer-face-mode-fixed ()
   "Sets a fixed width (monospace) font in current buffer"
   (interactive)
   (setq buffer-face-mode-face '(:family "Inconsolata" :height 100))
   (buffer-face-mode))

 ;; Set default font faces for Info and ERC modes
 (add-hook 'erc-mode-hook 'my-buffer-face-mode-variable)
 (add-hook 'Info-mode-hook 'my-buffer-face-mode-variable)

4

다음 org-mode-hook과 같이 를 사용하여 변경을 수행 할 수 있습니다

(add-hook 'org-mode-hook (lambda () (set-frame-font "Inconsolata" t)))

조직 모드로 들어갈 때마다 글꼴이 변경됩니다. 단점은 조직 모드를 떠난 후에도 글꼴이 다시 변경되지 않는다는 것입니다.

편집 : Ryan이 지적한 것처럼 이 위키 페이지 의 조언에 따라 버퍼별로 수행 할 수 있습니다. 광범위하게 테스트하지는 않았지만 작동하는 것 같습니다.

(add-hook 'org-mode-hook (lambda ()
                            (setq buffer-face-mode-face '(:family "Inconsolata"))
                            (buffer-face-mode)))

buffer-face-mode다른 버퍼에서 사용하려는 경우 문제가있을 수 있지만이 버퍼 만 사용하면 작동합니다.


4
봤어 buffer-face-set? 이 위키 페이지 는 프레임 당이 아니라 버퍼 당 동일한 작업을 수행 할 수 있음을 나타냅니다.
Ryan

1
고마워, 이것은 내가 찾던 것입니다. 이 커뮤니티는 특별합니다.
csantosb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.