Я нашел коды для смены шрифтов в urxvt. Я хотел бы использовать их для динамического изменения размера шрифта. Я видел несколько плагинов, которые это делают, но они довольно упрямны и обычно полагаются на жесткий список шрифтов для переключения. Я бы предпочел запросить текущий шрифт, изменить размер и напечатать коды эвакуации для этого. Это возможно?Как определить, какой шрифт работает в urxvt?
ответ
Вы можете использовать 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
Вы можете использовать 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"
T курица вы можете назначить горячую клавишу в ~/.Xdefaults
:
URxvt.keysym.M-C-1: command: my-font-changer
(. Большая часть этого не тестировался, но вы можете собрать его вместе)
@valadil: Вы могли заставить это работать? Обновите, если у вас возникли проблемы, или согласитесь, чтобы другие увидели это в качестве полезного подхода. –
Нажмите Control-Shift и нажмите на символ.
Появится небольшое окно, сообщающее вам, какой шрифт предназначен для персонажа, которого вы нажали.
Взгляните на это [https://bbs.archlinux.org/viewtopic.php?id=44121](https://bbs.archlinux.org/viewtopic.php?id=44121) – FalconUA
@FalconUA Почти что я хочу. Я хотел бы увеличить или уменьшить, основываясь на текущем шрифте, а не на фиксированном размере. Но если это невозможно, это, безусловно, хороший компромисс. – valadil