如何确定正在运行的urxvt使用的字体?

时间:2015-04-06 17:28:15

标签: fonts resize rxvt

我找到了一些用于更改urxvt中字体的转义码。我想用它们来动态改变我的字体大小。我已经看过一些插件可以做到这一点,但他们对此非常不满意,并且通常依赖于硬编码的字体列表来切换。我更喜欢查询当前字体,更改大小,并打印转义码。这可能吗?

2 个答案:

答案 0 :(得分:1)

  

按Control-Shift并单击一个字符。

将出现一个小窗口,告诉您单击字符的字体是什么。

答案 1 :(得分:0)

您可以使用appres查询字体。不确定您使用的是Linux,但如果它恰好是Arch,请安装:sudo pacman -S xorg-appres

我系统上的示例查询:

% appres urxvt |grep '\*font:' |awk '{print $2}'
-misc-orp-medium-r-*-*-12-*-75-75-*-60-iso10646-*

您可以从中解析出尺寸信息(12)以决定是否增加或其他:

% origsize=$(appres urxvt |grep '\*font:' |awk -F- '{print $8}')  # 12

您可以使用printfmy-font-changer脚本中增加该尺寸,例如:

printf "\033]710;-misc-orp-medium-r-*-*-$newsize-*-*-*-*-*-iso8859-*\007"
printf "\033]711;-misc-orp-bold-*-*-*-$newsize-*-*-*-*-*-iso8859-*\007"
printf "\033]712;-misc-orp-*-i-*-*-$newsize-*-*-*-*-*-iso8859-1\007"
printf "\033]713;-misc-orp-*-i-*-*-$newsize-*-*-*-*-*-iso8859-1\007"

然后您可以在~/.Xdefaults中分配一个热键:

URxvt.keysym.M-C-1: command: my-font-changer

(大部分内容未经测试,但您可以将其拼凑在一起。)