我在urxvt中发现了一些用于更改字体的转义码。我想使用这些来动态更改我的字体大小。我见过一些这样做的插件,但他们对此相当固执己见,通常依靠硬编码的字体列表来切换。我更愿意查询当前的字体,更改大小,并打印其转义码。这可能吗?
按Control Shift键,然后单击一个字符。
将出现一个小窗口,告诉您单击的字符的字体是什么。
您可以使用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
您可以在my-font-changer
脚本中使用printf
来增加该大小,例如:
printf " 33]710;-misc-orp-medium-r-*-*-$newsize-*-*-*-*-*-iso8859-* 07"
printf " 33]711;-misc-orp-bold-*-*-*-$newsize-*-*-*-*-*-iso8859-* 07"
printf " 33]712;-misc-orp-*-i-*-*-$newsize-*-*-*-*-*-iso8859-1 07"
printf " 33]713;-misc-orp-*-i-*-*-$newsize-*-*-*-*-*-iso8859-1 07"
然后您可以在~/.Xdefaults
:中指定热键
URxvt.keysym.M-C-1: command: my-font-changer
(其中大部分未经测试,但您可以将其拼凑在一起。)