From 1cbf4efdd09cb7c6150ee098cd63167612b10537 Mon Sep 17 00:00:00 2001 From: Noah Tilton Date: Thu, 6 Dec 2012 15:10:11 -0600 Subject: [PATCH] adding urxvt font classes --- font | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/font b/font index 3b781eb..210371a 100755 --- a/font +++ b/font @@ -105,16 +105,22 @@ sub change_size my ($self, $delta) = @_; # Get xft strings with font size {+/-}1 - my ($font_resized) = $self->_resize_xft_string( "font", $delta); - my ($font_resized_bold) = $self->_resize_xft_string( "boldFont", $delta); + my ($font_resized) = $self->_resize_xft_string( "font", $delta); + my ($font_resized_im) = $self->_resize_xft_string( "imFont", $delta); + my ($font_resized_bold) = $self->_resize_xft_string( "boldFont", $delta); + my ($font_resized_italic) = $self->_resize_xft_string( "italicFont", $delta); + my ($font_resized_bold_italic) = $self->_resize_xft_string( "boldItalicFont", $delta); # Update internal urxvt resource hash # This is necessary or else the next resize won't have an updated # value. "font" key is updated by urxvt when cmd_parse is called, # but boldFont is *not*, at least with the escape sequences I'm # emitting. - $self->{term}->resource("font", $font_resized); - $self->{term}->resource("boldFont", $font_resized_bold); + $self->{term}->resource( "font", $font_resized); + $self->{term}->resource( "imFont", $font_resized_im); + $self->{term}->resource( "boldFont", $font_resized_bold); + $self->{term}->resource( "italicFont", $font_resized_italic); + $self->{term}->resource( "boldItalicFont", $font_resized_bold_italic); # Emit escape sequence to change fonts in rxvt runtime $self->{term}->cmd_parse("\e]710;" . $font_resized . "\007"); @@ -123,8 +129,11 @@ sub change_size system("xrdb -load " . X_RESOURCES); open(XRDB_MERGE, "| xrdb -merge") || die "can't fork: $!"; local $SIG{PIPE} = sub { die "xrdb pipe broke" }; - print XRDB_MERGE "urxvt\*font: $font_resized\n" - . "urxvt\*boldFont: $font_resized_bold\n"; + print XRDB_MERGE "urxvt\*font: $font_resized\n" + . "urxvt\*imFont: $font_resized_im\n" + . "urxvt\*boldFont: $font_resized_bold\n" + . "urxvt\*italicFont: $font_resized_italic\n" + . "urxvt\*boldItalicFont: $font_resized_bold_italic\n"; close XRDB_MERGE || die "bad xrdb: $! $?"; system("xrdb -edit " . X_RESOURCES); }