Переключите жирный шрифт в Urxvt во время выполнения

Как видно из справочной страницы, можно переключить шрифт в Urxvt, используя:

printf '\33]50;%s\007' "xft:Terminus:pixelsize=20"

Тем не менее, имея следующую строку в ~/.Xdefaults приведет к тому, что жирные шрифты не изменятся:

urxvt*boldFont: xft:terminus:pixelsize=13

Как декодировать \33]50;%s\007 и какой код использовать, чтобы жирные шрифты менялись?

1 ответ

Решение

Команда для изменения жирных шрифтов:

printf '\33]711;%s\007' "xft:Terminus:pixelsize=20"

\33]50;%s\007 это близко, но не в нужном месте, чтобы посмотреть. По какой-то причине ссылка, на которую вы ссылаетесь, указывает на неполную страницу. Эта копия urxvt(7) перечисляет код 711 который вы использовали бы, чтобы указать, что жирный шрифт должен быть изменен, например, используя

\033]711;%s\007

Страница руководства содержит коды 50 и 711 соответственно как

Ps = 50
Установите для fontset значение Pt со следующими специальными значениями Pt (rxvt) #+ n изменить n #- n изменить вниз n, если n отсутствует в 0, используется значение 1 пусто изменить на font0 n изменить на шрифт n

а также

Ps = 711
Установите жирный шрифт Pt. Похож на Ps = 50 (Компилировать стили).

Кстати, данная спецификация шрифта

"xft:Terminus:pixelsize=20"

выглядит странно: можно ожидать что-то вроде этого, потому что вы запрашиваете жирный шрифт:

"xft:Terminus:pixelsize=20:style=bold"
Другие вопросы по тегам