我发现在urxvt中有一些转义代码可用于更改字体。我想使用它们来动态更改我的字体大小。我看到了一些插件可以实现这个功能,但它们对此有很强的看法,并且通常依赖于一个硬编码的字体列表来切换。我更喜欢查询当前字体,更改大小并打印相应的转义代码。这是否可能?
我发现在urxvt中有一些转义代码可用于更改字体。我想使用它们来动态更改我的字体大小。我看到了一些插件可以实现这个功能,但它们对此有很强的看法,并且通常依赖于一个硬编码的字体列表来切换。我更喜欢查询当前字体,更改大小并打印相应的转义代码。这是否可能?
按住Control-Shift并点击一个字符。
会出现一个小窗口告诉您所点击的字符的字体。
appres
查询字体。如果你不确定你所使用的Linux系统,但碰巧是Arch Linux,可以使用以下命令进行安装:sudo pacman -S xorg-appres
。% appres urxvt |grep '\*font:' |awk '{print $2}'
-misc-orp-medium-r-*-*-12-*-75-75-*-60-iso10646-*
% origsize=$(appres urxvt |grep '\*font:' |awk -F- '{print $8}') # 12
printf
在一个名为 my-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
(大部分内容未经测试,但你可以将它们组合起来.)
~/.Xresources
中定义的字体。如果您打开终端,更改字体,然后执行xrdb ~/.Xresources
,再执行建议的命令,您将得到在~/.Xresources
中定义的字体,而不是当前终端正在使用的字体。 - Andrii Tykhonov