2015-04-22 68 views
1

在Xterm周围发生大量的垃圾操作之后,通过大量的网页浏览了我的内容,并意识到这并非我自己的想法。无法在XTerm中配置字体

的TrueType VS位图

  1. 用于指定唯一位图字体选项xterm*font,并且只TrueType字体使用*faceName

  2. 我使用命令xlsfontsfc-list找出已安装的Bitmap和TrueType字体。它是否正确?

  3. 我想将XTerm字体设置为Ubuntu Mono。这是fc-list | grep -i ubuntu

    Ubuntu Mono for Powerline:style=RegularForPowerline 
    Ubuntu Mono for Powerline:style=Bold Italic 
    Ubuntu Mono for Powerline:style=BoldForPowerline 
    Ubuntu Mono for Powerline:style=ItalicForPowerline 
    

输出和我说XTerm*faceName: Ubuntu Mono for Powerline:style=RegularForPowerline ~/.Xresources就跑xrdb -merge ~/.Xresources

xrdb -query all显示*faceName设置为Ubuntu Mono for Powerline:style=RegularForPowerline

但是,这是行不通的。我在想什么/搞砸了吗?

编辑:我终于在通过多个来源进行搜索之后发现了几天前发生了什么问题。结合每个人的回答:

Ubuntu Mono是一种TrueType字体,TrueType字体需要使用FreeType库支持编译xterm。要检查xterm是否具有此功能,请使用ldd /path/to/xterm/binary命令并查看它是否在此处显示freetype。另一种方法是查看xterm是否有-fa选项。

如果你的xterm有FreeType的LIB的支持,选择

  1. 点阵字体,通过运行xfontsel -p,并用它打印在退出时的相同字符串。

  2. TrueType字体,使用fc-list :scalable=true:spacing=mono: family并使用它输出的确切字符串。

一旦你使用上面的步骤之一,通过XTerm*faceName: <name of the font>

设置如果安装新字体的字体名称,它不显示当你运行上面的命令之一,请使用fc-cache -frv重建字体缓存并重试。

希望这有助于;请让我知道万一我错过了任何东西。

P.S.我使用Ubuntu的单补丁的字体我使用XTerm*faceName: "Ubuntu Mono derivative Powerline"

回答

2

逐点从here下载:

  1. 是的,font资源是一个标准的资源设置为X工具包,它只能与XLFD(位图优惠),而在之后,在诸如xterm之类的应用程序中增加了很长时间,以提供一种指定TrueType字体的方法(实际上任何fontconfig支持的字体,可以包括位图字体)。
  2. xlsfonts和​​3210程序分别用于两个(XLFD和fontconfig)。
  3. 风格看起来很奇怪。我将.ttf文件从github加到我的~/.fonts目录(zip-file link是最简单的下载方式)。
  4. 我解压缩下载后解压缩我的~/.fonts目录,而不是将.ttf文件复制到顶层目录。 fontconfig可以处理子目录;它可能对实际的文件名很敏感。例如,如果我已将文件复制到顶级目录~/.fonts,则fc-list将显示字体文件的完整路径名(可能不正确)。
  5. fc-list显示我Regular你在哪里有​​。

这里是fc-list输出,寻找“动力”:

Ubuntu Mono for VimPowerline:style=Bold 
Ubuntu Mono for VimPowerline:style=Bold Italic 
Ubuntu Mono for Powerline:style=Bold Italic 
Ubuntu Mono for Powerline:style=Regular 
Ubuntu Mono for VimPowerline:style=Italic 
Ubuntu Mono for Powerline:style=Bold 
Ubuntu Mono for VimPowerline:style=Regular 
Ubuntu Mono for Powerline:style=Italic 

顺便说一句,你可以测试的字体直接使用命令行-fa选项(报价脸名,当然)。我这样做了,结果看起来似乎合理(比较普通和粗体)。

+0

我删除了旧的字体和下载[这些](https://github.com/powerline/fonts/tree/master/UbuntuMono),因为它们是从电力线回购联系。但是,现在当我运行'fc-list'时,我没有在那里看到Ubuntu Mono。我尝试通过'fc-cache -fv'刷新字体缓存;但它说_error scanning_ – kshenoy

+0

谢谢,我看不到'-fa'选项,那是因为我的XTerm没有FreeType库支持。使用它编译XTerm允许我现在使用TrueType字体。 – kshenoy