在组织模式下强制使用固定宽度字体


10

强制Emacs组织模式在所有地方都使用相同的固定宽度字体系列和高度(但保持其他属性(例如前景)不同)的最简单方法是什么?

例如,我可以使所有org-level-n面孔都继承自fixed-pitch,或者variable-pitch实际上引用一个固定宽度的字体,但这会很麻烦。

提前致谢。


1
你好。您使用的是自定义主题还是Emacs的默认主题?有些主题会更改某些面孔,例如组织标题。另外,您是否更改了默认的Emacs字体或调整了一些面孔?默认情况下,Emacs设置固定宽度/等宽字体。
撤销2014年

嘿@undostres,我正在使用Bozhidar Batsov的Solarized for Emacs
rsenna 2014年

3
嗯,就像我想的那样。该主题比其他主题引入了更多的“侵入性”更改。存储库中的README文件显示了一些可以更改的变量,以避免某些修改,但是如果我没记错的话,可变宽度字体不能更改。解决方法:使用另一个Solarized实现,例如thisthis。但是,如果您不想切换主题,则需要在Batsov主题上方应用一些面部更改。
撤销2014年

1
当然!NP。我是Org的重度用户,并且对该主题有相同的问题。最终决定对其进行更改,而不是尝试进行一些修改(不过可以做到)。
撤销2014年

1
主题特定设置中设置一些设置以禁用字体大小更改。
伊万·斯维亚滕科

Answers:


8

有些主题没有充分理由就改变了面孔。

例如,如果您正在使用Solarized主题,请在加载前在下面添加代码。

(setq solarized-use-variable-pitch nil
      solarized-scale-org-headlines nil)

3

我会用face-remap-add-relative; 请参阅Emacs Lisp手册的“ 面部重映射”部分。

这是一个挂钩,可将defaultOrg模式缓冲区中人脸的“家庭”属性设置为“ Monospace”,从而有效地default变为fixed-pitch

(add-hook 'org-mode-hook
          (lambda () (face-remap-add-relative 'default :family "Monospace")))

滑稽。对我来说,结果相反:所有组织字体现在都是成比例的(标题和列表项)。在此之前,至少列表项以等宽字体显示。
rsenna 2014年

我也使用face-remap-add-relative它,并且它对我有用(我没有“ Monospace”,而是使用“ Input Sans Mono”)。您可能还需要弄乱其他几张面孔,这些面孔都被命名为org- something
amitp
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.