带有 dmenu 的自定义字体

Saa*_*ooq 8 fonts

我在运行 dmenu 的各个地方找到了参考资料,如下所示:

dmenu_run -b -fn 'Inconsolata 12'
Run Code Online (Sandbox Code Playgroud)

但是,无论我尝试使用哪种字体名称,我总是得到 dmenu: warning: cannot load font <font name>

fc-list | grep cons 给我:

/usr/share/fonts/truetype/inconsolata/Inconsolata.otf: Inconsolata:style=Medium
Run Code Online (Sandbox Code Playgroud)

它没有显示,xlsfonts并且所有与 xlsfonts 一起显示的字体都可以正常工作。

从命令行引用这些字体的正确方法是什么?

另外,这是引用字体的标准方法还是在使用诸如pango?

Isa*_*iah 8

dmenu 的标准版本不包括对 xft 字体的支持。要使用像 Inconsolata 这样的字体,您需要构建 dmenu 的修补版本。

  1. 下载源代码补丁
  2. 打开终端,cd进入包含源代码和补丁的目录。
  3. 运行以下命令以应用补丁:

    tar zxvf dmenu-4.5.tar.gz
    cd dmenu-4.5
    mv ../dmenu-4.5-xft.diff .
    patch -p1 < dmenu-4.5-xft.diff
    
    Run Code Online (Sandbox Code Playgroud)
  4. 要构建 dmenu 的修改版本,您需要安装以下软件包: libxft-dev libxft2 libxinerama-dev

  5. 更新 UBUNTU 14.04 构建失败

    致命错误:ft2build.h:没有那个文件或目录

    要解决此问题,请编辑 config.mk 文件并更改

    XFTINC = -I/usr/local/include/freetype2

    XFTINC = -I/usr/include/freetype2

  6. 运行以下命令来构建和安装 dmenu 的修改版本:

    make
    sudo make install
    
    Run Code Online (Sandbox Code Playgroud)