如何将Org模式的默认字体更改为与Emac默认字体不同的字体?

问题描述 投票:0回答:1

就像标题一样,普通文本部分的字体是默认的,如何更改该字体的字体但只适用于Org-mode。

我还找到了一个面孔名称:org-default,但是当我尝试使用以下方法更改该面孔的字体时:

(set-face-attribute 'org-default nil :font "Fira Mono" :height 130)

Emac 输出错误说face 无效。

我尝试使用来自 emac sub 的另一个问题的代码:

(defun my/org-mode-font-configuartion ()
  (face-remap-add-relative 'default :font "Fira Mono" :height 130))

(add-hook 'org-mode-hook 'my/org-mode-font-configuartion)

但是当我使用 M-xdescribe-face 时,文本部分仍然没有改变。任何帮助将不胜感激。

我期望 Org 模式中的默认字体与 Emac 中的默认字体具有不同的字体。

emacs org-mode
1个回答
0
投票

感谢 Protesilaos Stavrou,我能够解决我的问题,您可以在这里找到更多信息。

;Function only run in Org mode, to separate it with emac.
(defface your-new-face-remap
    '((t (:font "Fira Mono" :height 130)))
    "My custom font for org mode default.")

(define-minor-mode your-new-face-mode
    "Remap the face of org mode default."
    :local t
    :init-value nil
    (if your-new-face-mode
        ;if true do
        (setq your-new-face-remap-cookie
            (face-remap-add-relative 'default 'your-new-face-remap-style))
        ;if false do
        (face-remap-remove-relative my-comment-remap-cookie)))

(add-hook 'org-mode-hook #'your-new-face-mode)

这个缺陷真的很挑剔,你必须有“((”才能工作。

© www.soinside.com 2019 - 2024. All rights reserved.