粗体属性不起作用

时间:2014-08-28 06:24:12

标签: emacs fonts elisp

我试图让Emacs中的字体变得更大胆。我使用的是Inconsolata,这是我.emacs的一个片段:

(when window-system
  (set-face-attribute 'default
                      nil
                      :font "Inconsolata"
                      :height 120
                      :weight 'bold) ; <- this line does not affect rendering
  (require 'color-theme-solarized)
  (color-theme-solarized-dark)
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                 '(2 "_NET_WM_STATE_FULLSCREEN" 0)))

我知道Inconsolata可以渲染为粗体,但由于某些原因,Emacs总是以正常的重量渲染它。也许我应该在尝试更改字体之前启用某些东西?

3 个答案:

答案 0 :(得分:3)

不幸的是,原始的Inconsolata没有粗体变体,应用程序通过增加字符宽度来模拟Inconsolata Bold。这就是为什么人们可以在其中一些中使用Inconsolata的“大胆”变体。

根据this Wikipedia article

  

当Inconsolata被添加到谷歌字体时,它被完全暗示并添加了一个大胆的变体

因此,重要的是使用哪种版本的字体。我删除了原版Inconsolata并以这种方式安装了Google字体(Arch Linux):

# yaourt -S ttf-google-fonts-git

如果遇到此类问题,请尝试为Linux发行版搜索类似的程序包。

答案 1 :(得分:1)

(when window-system
  (set-face-attribute 'default
                      nil
                      :font "Inconsolata"
                      :height 120
                      :bold t)
  (require 'color-theme-solarized)
  (color-theme-solarized-dark)
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                 '(2 "_NET_WM_STATE_FULLSCREEN" 0)))

答案 2 :(得分:0)

旧线程,但我最终还是在这里尝试查找我所更新的内容 现在正在做(尚未找到)...但是这个简单的技巧可能是 有用(2019年linux X,emacs 26.1 Gtk + 3和xft字体):

emacs -xrm Xft.embolden:true -fn Inconsolata-14

这使得所有变量(常规,斜体,粗体,粗体) (甚至)在存在此类变体的情况下更大胆。 -fn Inconsolate-15:weight=bold仅对我有影响(没有-xrm ...选项)。