… | |
… | |
4 | #:META:X_RESOURCE:%.border:boolean:respect the terminal border |
4 | #:META:X_RESOURCE:%.border:boolean:respect the terminal border |
5 | #:META:X_RESOURCE:%.interval:seconds:minimum time between updates |
5 | #:META:X_RESOURCE:%.interval:seconds:minimum time between updates |
6 | |
6 | |
7 | =head1 NAME |
7 | =head1 NAME |
8 | |
8 | |
9 | background - manage terminal background |
9 | background - manage terminal background |
10 | |
10 | |
11 | =head1 SYNOPSIS |
11 | =head1 SYNOPSIS |
12 | |
12 | |
13 | urxvt --background-expr 'background expression' |
13 | urxvt --background-expr 'background expression' |
14 | --background-border |
14 | --background-border |
… | |
… | |
308 | |
308 | |
309 | Loads the image at the given C<$path>. The image is set to plane tiling |
309 | Loads the image at the given C<$path>. The image is set to plane tiling |
310 | mode. |
310 | mode. |
311 | |
311 | |
312 | If the image is already in memory (e.g. because another terminal instance |
312 | If the image is already in memory (e.g. because another terminal instance |
313 | uses it), then the in-memory copy us returned instead. |
313 | uses it), then the in-memory copy is returned instead. |
314 | |
314 | |
315 | =item load_uc $path |
315 | =item load_uc $path |
316 | |
316 | |
317 | Load uncached - same as load, but does not cache the image, which means it |
317 | Load uncached - same as load, but does not cache the image, which means it |
318 | is I<always> loaded from the filesystem again, even if another copy of it |
318 | is I<always> loaded from the filesystem again, even if another copy of it |
… | |
… | |
535 | |
535 | |
536 | move -TX, -TY, keep { load "mybg.png" } |
536 | move -TX, -TY, keep { load "mybg.png" } |
537 | |
537 | |
538 | =item TW |
538 | =item TW |
539 | |
539 | |
|
|
540 | =item TH |
|
|
541 | |
540 | Return the width (C<TW>) and height (C<TH>) of the terminal window (the |
542 | Return the width (C<TW>) and height (C<TH>) of the terminal window (the |
541 | terminal window is the full window by default, and the character area only |
543 | terminal window is the full window by default, and the character area only |
542 | when in border-respect mode). |
544 | when in border-respect mode). |
543 | |
545 | |
544 | Using these functions make your expression sensitive to window resizes. |
546 | Using these functions make your expression sensitive to window resizes. |
… | |
… | |
611 | Clips an image to the given rectangle. If the rectangle is outside the |
613 | Clips an image to the given rectangle. If the rectangle is outside the |
612 | image area (e.g. when C<$x> or C<$y> are negative) or the rectangle is |
614 | image area (e.g. when C<$x> or C<$y> are negative) or the rectangle is |
613 | larger than the image, then the tiling mode defines how the extra pixels |
615 | larger than the image, then the tiling mode defines how the extra pixels |
614 | will be filled. |
616 | will be filled. |
615 | |
617 | |
616 | If C<$x> an C<$y> are missing, then C<0> is assumed for both. |
618 | If C<$x> and C<$y> are missing, then C<0> is assumed for both. |
617 | |
619 | |
618 | If C<$width> and C<$height> are missing, then the window size will be |
620 | If C<$width> and C<$height> are missing, then the window size will be |
619 | assumed. |
621 | assumed. |
620 | |
622 | |
621 | Example: load an image, blur it, and clip it to the window size to save |
623 | Example: load an image, blur it, and clip it to the window size to save |
… | |
… | |
639 | =item scale $width_factor, $height_factor, $img |
641 | =item scale $width_factor, $height_factor, $img |
640 | |
642 | |
641 | Scales the image by the given factors in horizontal |
643 | Scales the image by the given factors in horizontal |
642 | (C<$width>) and vertical (C<$height>) direction. |
644 | (C<$width>) and vertical (C<$height>) direction. |
643 | |
645 | |
644 | If only one factor is give, it is used for both directions. |
646 | If only one factor is given, it is used for both directions. |
645 | |
647 | |
646 | If no factors are given, scales the image to the window size without |
648 | If no factors are given, scales the image to the window size without |
647 | keeping aspect. |
649 | keeping aspect. |
648 | |
650 | |
649 | =item resize $width, $height, $img |
651 | =item resize $width, $height, $img |
… | |
… | |
774 | =item rotate $center_x, $center_y, $degrees, $img |
776 | =item rotate $center_x, $center_y, $degrees, $img |
775 | |
777 | |
776 | Rotates the image clockwise by C<$degrees> degrees, around the point at |
778 | Rotates the image clockwise by C<$degrees> degrees, around the point at |
777 | C<$center_x> and C<$center_y> (specified as factor of image width/height). |
779 | C<$center_x> and C<$center_y> (specified as factor of image width/height). |
778 | |
780 | |
779 | Example: rotate the image by 90 degrees around it's center. |
781 | Example: rotate the image by 90 degrees around its center. |
780 | |
782 | |
781 | rotate 0.5, 0.5, 90, keep { load "$HOME/mybg.png" } |
783 | rotate 0.5, 0.5, 90, keep { load "$HOME/mybg.png" } |
782 | |
784 | |
783 | =cut |
785 | =cut |
784 | |
786 | |
… | |
… | |
815 | |
817 | |
816 | sub tint($$) { |
818 | sub tint($$) { |
817 | $_[1]->tint ($_[0]) |
819 | $_[1]->tint ($_[0]) |
818 | } |
820 | } |
819 | |
821 | |
|
|
822 | =item shade $factor, $img |
|
|
823 | |
|
|
824 | Shade the image by the given factor. |
|
|
825 | |
|
|
826 | =cut |
|
|
827 | |
|
|
828 | sub shade($$) { |
|
|
829 | $_[1]->shade ($_[0]) |
|
|
830 | } |
|
|
831 | |
820 | =item contrast $factor, $img |
832 | =item contrast $factor, $img |
821 | |
833 | |
822 | =item contrast $r, $g, $b, $img |
834 | =item contrast $r, $g, $b, $img |
823 | |
835 | |
824 | =item contrast $r, $g, $b, $a, $img |
836 | =item contrast $r, $g, $b, $a, $img |
… | |
… | |
883 | $img |
895 | $img |
884 | } |
896 | } |
885 | |
897 | |
886 | =item muladd $mul, $add, $img # EXPERIMENTAL |
898 | =item muladd $mul, $add, $img # EXPERIMENTAL |
887 | |
899 | |
888 | First multipliesthe pixels by C<$mul>, then adds C<$add>. This cna be used |
900 | First multiplies the pixels by C<$mul>, then adds C<$add>. This can be used |
889 | to implement brightness and contrast at the same time, with a wider value |
901 | to implement brightness and contrast at the same time, with a wider value |
890 | range than contrast and brightness operators. |
902 | range than contrast and brightness operators. |
891 | |
903 | |
892 | Due to numerous bugs in XRender implementations, it can also introduce a |
904 | Due to numerous bugs in XRender implementations, it can also introduce a |
893 | number of visual artifacts. |
905 | number of visual artifacts. |