![如何找到 XTerm 使用的默认(字体)资源?](https://linux22.com/image/3025/%E5%A6%82%E4%BD%95%E6%89%BE%E5%88%B0%20XTerm%20%E4%BD%BF%E7%94%A8%E7%9A%84%E9%BB%98%E8%AE%A4%EF%BC%88%E5%AD%97%E4%BD%93%EF%BC%89%E8%B5%84%E6%BA%90%EF%BC%9F.png)
如果我xterm
使用其默认位图字体启动,然后从“VT 字体”菜单中选择“大”字体(通过ctrl+right mouse
),我将获得一个非常有用的位图字体,并且具有明显良好的日语字符支持。
我想知道这个字体是什么这样我就可以在其他地方使用它。不幸的是,我没有找到有关 XTerm 使用哪些默认设置的信息(即没有明确指定时)。很多网站都展示了如何使用 X 资源来指定新设置(例如特定字体),但我见过没有一个网站说明如果我什么都不做,会使用什么默认值。
我尝试过观察字体,它看起来与 相似并且宽度相同9x15
,但它使用了更多的垂直空间。不过,它似乎没有9x15
不同的行间距,因为直接指定此字体无法显示“大”可以很好处理的一些日语字符。
虽然我很高兴知道这个特定字体是什么,但我真的想知道在哪里可以找到XTerm 默认使用什么资源更普遍。如果有什么区别的话,我正在运行 Ubuntu 12.04 LTS,64 位。
[我见过这个问题已经关于这个主题了,这就是为什么我特别询问默认值而不是尝试从正在运行的 XTerm 获取实时值。]
答案1
这appres
实用程序列出了应用程序使用的资源,包括用户资源和默认资源。
appres XTerm xterm
第一个参数是类名 ( xterm -class Xxx
)。第二个参数是可选的,是实例名称 ( xterm -name xxx
)。
“大”字体是.VT100.font5
或.VT100.utf8Fonts.font5
。是否使用请看说明书.utf8Fonts
,有点复杂。如果*.VT100.font5
和?.VT100.font5
以及 和XTerm.VT100.font5
中有多个xterm.VT100.font5
,则适用此列表中的最后一个;看到X 文档了解资源名称优先级的详细信息。
appres XTerm | grep font5
答案2
您可以使用lsof
给定进程 ID 列出所有文件,并使用 grep 查找字体。
lsof -p <process_id_of_xterm> | grep fonts
例如,
lsof -p `ps -a | grep xterm | cut -d' ' -f1` | grep fonts
示例输出:
$ lsof -p `ps -a | grep xterm | cut -d' ' -f1` | grep fonts
xterm 17560 testuser mem REG 253,1 137272 9154732 /usr/share/fonts/liberation/LiberationSans-Bold.ttf
xterm 17560 testuser mem REG 253,1 139628 9154735 /usr/share/fonts/liberation/LiberationSans-Regular.ttf
答案3
- 对于字体:
xterm -report-fonts
. - 对于颜色:
xterm -report-colors
.
答案4
您可以通过运行找到默认字体
$ fc-match mono
这是解释(来自Arch-Wiki)
xterm
的默认字体是由 X 逻辑字体描述别名固定命名的位图字体,通常解析为-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-?
这种字体也别名为 6x13,对 unicode 字形的覆盖范围非常广。默认的“TrueType”字体是与名称 mono 匹配的 14 点字体。可以使用以下命令找到将使用的 FreeType 字体:
$ fc-match mono