ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvtperl.3.man.in
(Generate patch)

Comparing rxvt-unicode/doc/rxvtperl.3.man.in (file contents):
Revision 1.46 by root, Tue Feb 21 01:00:40 2006 UTC vs.
Revision 1.47 by root, Thu Jul 6 18:56:10 2006 UTC

1.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14 1.\" Automatically generated by Pod::Man 2.09 (Pod::Simple 3.04)
2.\" 2.\"
3.\" Standard preamble: 3.\" Standard preamble:
4.\" ======================================================================== 4.\" ========================================================================
5.de Sh \" Subsection heading 5.de Sh \" Subsection heading
6.br 6.br
127.\} 127.\}
128.rm #[ #] #H #V #F C 128.rm #[ #] #H #V #F C
129.\" ======================================================================== 129.\" ========================================================================
130.\" 130.\"
131.IX Title "rxvt 3" 131.IX Title "rxvt 3"
132.TH rxvt 3 "2006-02-21" "7.6" "RXVT-UNICODE" 132.TH rxvt 3 "2006-07-06" "7.7" "RXVT-UNICODE"
133.SH "NAME" 133.SH "NAME"
134@@RXVT_NAME@@perl \- rxvt\-unicode's embedded perl interpreter 134@@RXVT_NAME@@perl \- rxvt\-unicode's embedded perl interpreter
135.SH "SYNOPSIS" 135.SH "SYNOPSIS"
136.IX Header "SYNOPSIS" 136.IX Header "SYNOPSIS"
137.Vb 1 137.Vb 1
138\& # create a file grab_test in $HOME: 138\& # create a file grab_test in $HOME:
139.Ve 139\&
140.PP
141.Vb 4
142\& sub on_sel_grab { 140\& sub on_sel_grab {
143\& warn "you selected ", $_[0]->selection; 141\& warn "you selected ", $_[0]\->selection;
144\& () 142\& ()
145\& } 143\& }
146.Ve 144\&
147.PP
148.Vb 1
149\& # start a @@RXVT_NAME@@ using it: 145\& # start a @@RXVT_NAME@@ using it:
150.Ve 146\&
151.PP
152.Vb 1
153\& @@RXVT_NAME@@ --perl-lib $HOME -pe grab_test 147\& @@RXVT_NAME@@ \-\-perl\-lib $HOME \-pe grab_test
154.Ve 148.Ve
155.SH "DESCRIPTION" 149.SH "DESCRIPTION"
156.IX Header "DESCRIPTION" 150.IX Header "DESCRIPTION"
157Everytime a terminal object gets created, extension scripts specified via 151Everytime a terminal object gets created, extension scripts specified via
158the \f(CW\*(C`perl\*(C'\fR resource are loaded and associated with it. 152the \f(CW\*(C`perl\*(C'\fR resource are loaded and associated with it.
168find them in \fI@@RXVT_LIBDIR@@/urxvt/perl/\fR. 162find them in \fI@@RXVT_LIBDIR@@/urxvt/perl/\fR.
169.PP 163.PP
170You can activate them like this: 164You can activate them like this:
171.PP 165.PP
172.Vb 1 166.Vb 1
173\& @@RXVT_NAME@@ -pe <extensionname> 167\& @@RXVT_NAME@@ \-pe <extensionname>
174.Ve 168.Ve
175.PP 169.PP
176Or by adding them to the resource for extensions loaded by default: 170Or by adding them to the resource for extensions loaded by default:
177.PP 171.PP
178.Vb 1 172.Vb 1
179\& URxvt.perl-ext-common: default,automove-background,selection-autotransform 173\& URxvt.perl\-ext\-common: default,automove\-background,selection\-autotransform
180.Ve 174.Ve
181.IP "selection (enabled by default)" 4 175.IP "selection (enabled by default)" 4
182.IX Item "selection (enabled by default)" 176.IX Item "selection (enabled by default)"
183(More) intelligent selection. This extension tries to be more intelligent 177(More) intelligent selection. This extension tries to be more intelligent
184when the user extends selections (double\-click and further clicks). Right 178when the user extends selections (double\-click and further clicks). Right
192The selection works by trying to match a number of regexes and displaying 186The selection works by trying to match a number of regexes and displaying
193them in increasing order of length. You can add your own regexes by 187them in increasing order of length. You can add your own regexes by
194specifying resources of the form: 188specifying resources of the form:
195.Sp 189.Sp
196.Vb 3 190.Vb 3
197\& URxvt.selection.pattern-0: perl-regex 191\& URxvt.selection.pattern\-0: perl\-regex
198\& URxvt.selection.pattern-1: perl-regex 192\& URxvt.selection.pattern\-1: perl\-regex
199\& ... 193\& ...
200.Ve 194.Ve
201.Sp 195.Sp
202The index number (0, 1...) must not have any holes, and each regex must 196The index number (0, 1...) must not have any holes, and each regex must
203contain at least one pair of capturing parentheses, which will be used for 197contain at least one pair of capturing parentheses, which will be used for
204the match. For example, the followign adds a regex that matches everything 198the match. For example, the followign adds a regex that matches everything
205between two vertical bars: 199between two vertical bars:
206.Sp 200.Sp
207.Vb 1 201.Vb 1
208\& URxvt.selection.pattern-0: \e\e|([^|]+)\e\e| 202\& URxvt.selection.pattern\-0: \e\e|([^|]+)\e\e|
209.Ve 203.Ve
210.Sp 204.Sp
211Another example: Programs I use often output \*(L"absolute path: \*(R" at the 205Another example: Programs I use often output \*(L"absolute path: \*(R" at the
212beginning of a line when they process multiple files. The following 206beginning of a line when they process multiple files. The following
213pattern matches the filename (note, there is a single space at the very 207pattern matches the filename (note, there is a single space at the very
214end): 208end):
215.Sp 209.Sp
216.Vb 1 210.Vb 1
217\& URxvt.selection.pattern-0: ^(/[^:]+):\e 211\& URxvt.selection.pattern\-0: ^(/[^:]+):\e
218.Ve 212.Ve
219.Sp 213.Sp
220You can look at the source of the selection extension to see more 214You can look at the source of the selection extension to see more
221interesting uses, such as parsing a line from beginning to end. 215interesting uses, such as parsing a line from beginning to end.
222.Sp 216.Sp
225.IP "rot13" 4 219.IP "rot13" 4
226.IX Item "rot13" 220.IX Item "rot13"
227Rot\-13 the selection when activated. Used via keyboard trigger: 221Rot\-13 the selection when activated. Used via keyboard trigger:
228.Sp 222.Sp
229.Vb 1 223.Vb 1
230\& URxvt.keysym.C-M-r: perl:selection:rot13 224\& URxvt.keysym.C\-M\-r: perl:selection:rot13
231.Ve 225.Ve
232.RE 226.RE
233.RS 4 227.RS 4
234.RE 228.RE
235.IP "option-popup (enabled by default)" 4 229.IP "option-popup (enabled by default)" 4
249.Sp 243.Sp
250The following will add an entry \f(CW\*(C`myoption\*(C'\fR that changes 244The following will add an entry \f(CW\*(C`myoption\*(C'\fR that changes
251\&\f(CW\*(C`$self\-\*(C'\fR{myoption}>: 245\&\f(CW\*(C`$self\-\*(C'\fR{myoption}>:
252.Sp 246.Sp
253.Vb 3 247.Vb 3
254\& push @{ $self->{term}{option_popup_hook} }, sub { 248\& push @{ $self\->{term}{option_popup_hook} }, sub {
255\& ("my option" => $myoption, sub { $self->{myoption} = $_[0] }) 249\& ("my option" => $myoption, sub { $self\->{myoption} = $_[0] })
256\& }; 250\& };
257.Ve 251.Ve
258.IP "selection-popup (enabled by default)" 4 252.IP "selection-popup (enabled by default)" 4
259.IX Item "selection-popup (enabled by default)" 253.IX Item "selection-popup (enabled by default)"
260Binds a popup menu to Ctrl\-Button3 that lets you convert the selection 254Binds a popup menu to Ctrl\-Button3 that lets you convert the selection
274The following will add an entry \f(CW\*(C`a to b\*(C'\fR that transforms all \f(CW\*(C`a\*(C'\fRs in 268The following will add an entry \f(CW\*(C`a to b\*(C'\fR that transforms all \f(CW\*(C`a\*(C'\fRs in
275the selection to \f(CW\*(C`b\*(C'\fRs, but only if the selection currently contains any 269the selection to \f(CW\*(C`b\*(C'\fRs, but only if the selection currently contains any
276\&\f(CW\*(C`a\*(C'\fRs: 270\&\f(CW\*(C`a\*(C'\fRs:
277.Sp 271.Sp
278.Vb 4 272.Vb 4
279\& push @{ $self->{term}{selection_popup_hook} }, sub { 273\& push @{ $self\->{term}{selection_popup_hook} }, sub {
280\& /a/ ? ("a to be" => sub { s/a/b/g } 274\& /a/ ? ("a to be" => sub { s/a/b/g }
281\& : () 275\& : ()
282\& }; 276\& };
283.Ve 277.Ve
284.IP "searchable\-scrollback<hotkey> (enabled by default)" 4 278.IP "searchable\-scrollback<hotkey> (enabled by default)" 4
293search upwards/downwards in the scrollback buffer, \f(CW\*(C`End\*(C'\fR jumps to the 287search upwards/downwards in the scrollback buffer, \f(CW\*(C`End\*(C'\fR jumps to the
294bottom. \f(CW\*(C`Escape\*(C'\fR leaves search mode and returns to the point where search 288bottom. \f(CW\*(C`Escape\*(C'\fR leaves search mode and returns to the point where search
295was started, while \f(CW\*(C`Enter\*(C'\fR or \f(CW\*(C`Return\*(C'\fR stay at the current position and 289was started, while \f(CW\*(C`Enter\*(C'\fR or \f(CW\*(C`Return\*(C'\fR stay at the current position and
296additionally stores the first match in the current line into the primary 290additionally stores the first match in the current line into the primary
297selection. 291selection.
292.Sp
293The regex defaults to \*(L"(?i)\*(R", resulting in a case-insensitive search. To
294get a case-sensitive search you can delete this prefix using \f(CW\*(C`BackSpace\*(C'\fR
295or simply use an uppercase character which removes the \*(L"(?i)\*(R" prefix.
296.Sp
297See perlre for more info about perl regular expression syntax.
298.IP "readline (enabled by default)" 4 298.IP "readline (enabled by default)" 4
299.IX Item "readline (enabled by default)" 299.IX Item "readline (enabled by default)"
300A support package that tries to make editing with readline easier. At 300A support package that tries to make editing with readline easier. At
301the moment, it reacts to clicking shift-left mouse button by trying to 301the moment, it reacts to clicking shift-left mouse button by trying to
302move the text cursor to this position. It does so by generating as many 302move the text cursor to this position. It does so by generating as many
328.Sp 328.Sp
329It works by specifying perl snippets (most useful is a single \f(CW\*(C`s///\*(C'\fR 329It works by specifying perl snippets (most useful is a single \f(CW\*(C`s///\*(C'\fR
330operator) that modify \f(CW$_\fR as resources: 330operator) that modify \f(CW$_\fR as resources:
331.Sp 331.Sp
332.Vb 3 332.Vb 3
333\& URxvt.selection-autotransform.0: transform 333\& URxvt.selection\-autotransform.0: transform
334\& URxvt.selection-autotransform.1: transform 334\& URxvt.selection\-autotransform.1: transform
335\& ... 335\& ...
336.Ve 336.Ve
337.Sp 337.Sp
338For example, the following will transform selections of the form 338For example, the following will transform selections of the form
339\&\f(CW\*(C`filename:number\*(C'\fR, often seen in compiler messages, into \f(CW\*(C`vi +$filename 339\&\f(CW\*(C`filename:number\*(C'\fR, often seen in compiler messages, into \f(CW\*(C`vi +$filename
340$word\*(C'\fR: 340$word\*(C'\fR:
341.Sp 341.Sp
342.Vb 1 342.Vb 1
343\& URxvt.selection-autotransform.0: s/^([^:[:space:]]+):(\e\ed+):?$/vi +$2 \e\eQ$1\e\eE\e\ex0d/ 343\& URxvt.selection\-autotransform.0: s/^([^:[:space:]]+):(\e\ed+):?$/vi +$2 \e\eQ$1\e\eE\e\ex0d/
344.Ve 344.Ve
345.Sp 345.Sp
346And this example matches the same,but replaces it with vi-commands you can 346And this example matches the same,but replaces it with vi-commands you can
347paste directly into your (vi :) editor: 347paste directly into your (vi :) editor:
348.Sp 348.Sp
349.Vb 1 349.Vb 1
350\& URxvt.selection-autotransform.0: s/^([^:[:space:]]+(\e\ed+):?$/:e \e\eQ$1\e\eE\e\ex0d:$2\e\ex0d/ 350\& URxvt.selection\-autotransform.0: s/^([^:[:space:]]+(\e\ed+):?$/:e \e\eQ$1\e\eE\e\ex0d:$2\e\ex0d/
351.Ve 351.Ve
352.Sp 352.Sp
353Of course, this can be modified to suit your needs and your editor :) 353Of course, this can be modified to suit your needs and your editor :)
354.Sp 354.Sp
355To expand the example above to typical perl error messages (\*(L"\s-1XXX\s0 at 355To expand the example above to typical perl error messages (\*(L"\s-1XXX\s0 at
356\&\s-1FILENAME\s0 line \s-1YYY\s0.\*(R"), you need a slightly more elaborate solution: 356\&\s-1FILENAME\s0 line \s-1YYY\s0.\*(R"), you need a slightly more elaborate solution:
357.Sp 357.Sp
358.Vb 2 358.Vb 2
359\& URxvt.selection.pattern-0: ( at .*? line \e\ed+[,.]) 359\& URxvt.selection.pattern\-0: ( at .*? line \e\ed+[,.])
360\& URxvt.selection-autotransform.0: s/^ at (.*?) line (\e\ed+)[,.]$/:e \e\eQ$1\eE\e\ex0d:$2\e\ex0d/ 360\& URxvt.selection\-autotransform.0: s/^ at (.*?) line (\e\ed+)[,.]$/:e \e\eQ$1\eE\e\ex0d:$2\e\ex0d/
361.Ve 361.Ve
362.Sp 362.Sp
363The first line tells the selection code to treat the unchanging part of 363The first line tells the selection code to treat the unchanging part of
364every error message as a selection pattern, and the second line transforms 364every error message as a selection pattern, and the second line transforms
365the message into vi commands to load the file. 365the message into vi commands to load the file.
377The tabbar itself can be configured similarly to a normal terminal, but 377The tabbar itself can be configured similarly to a normal terminal, but
378with a resource class of \f(CW\*(C`URxvt.tabbed\*(C'\fR. In addition, it supports the 378with a resource class of \f(CW\*(C`URxvt.tabbed\*(C'\fR. In addition, it supports the
379following four resources (shown with defaults): 379following four resources (shown with defaults):
380.Sp 380.Sp
381.Vb 4 381.Vb 4
382\& URxvt.tabbed.tabbar-fg: <colour-index, default 3> 382\& URxvt.tabbed.tabbar\-fg: <colour\-index, default 3>
383\& URxvt.tabbed.tabbar-bg: <colour-index, default 0> 383\& URxvt.tabbed.tabbar\-bg: <colour\-index, default 0>
384\& URxvt.tabbed.tab-fg: <colour-index, default 0> 384\& URxvt.tabbed.tab\-fg: <colour\-index, default 0>
385\& URxvt.tabbed.tab-bg: <colour-index, default 1> 385\& URxvt.tabbed.tab\-bg: <colour\-index, default 1>
386.Ve 386.Ve
387.Sp 387.Sp
388See \fI\s-1COLOR\s0 \s-1AND\s0 \s-1GRAPHICS\s0\fR in the @@RXVT_NAME@@(1) manpage for valid 388See \fI\s-1COLOR\s0 \s-1AND\s0 \s-1GRAPHICS\s0\fR in the @@RXVT_NAME@@(1) manpage for valid
389indices. 389indices.
390.IP "mark-urls" 4 390.IP "mark-urls" 4
402.Sp 402.Sp
403You enable it by specifying this extension and a preedit style of 403You enable it by specifying this extension and a preedit style of
404\&\f(CW\*(C`OnTheSpot\*(C'\fR, i.e.: 404\&\f(CW\*(C`OnTheSpot\*(C'\fR, i.e.:
405.Sp 405.Sp
406.Vb 1 406.Vb 1
407\& @@RXVT_NAME@@ -pt OnTheSpot -pe xim-onthespot 407\& @@RXVT_NAME@@ \-pt OnTheSpot \-pe xim\-onthespot
408.Ve 408.Ve
409.IP "automove-background" 4 409.IP "automove-background" 4
410.IX Item "automove-background" 410.IX Item "automove-background"
411This is basically a one-line extension that dynamically changes the background pixmap offset 411This is basically a very small extension that dynamically changes the
412to the window position, in effect creating the same effect as pseudo transparency with 412background pixmap offset to the window position, in effect creating the
413a custom pixmap. No scaling is supported in this mode. Exmaple: 413same effect as pseudo transparency with a custom pixmap. No scaling is
414supported in this mode. Exmaple:
414.Sp 415.Sp
415.Vb 1 416.Vb 1
416\& @@RXVT_NAME@@ -pixmap background.xpm -pe automove-background 417\& @@RXVT_NAME@@ \-pixmap background.xpm \-pe automove\-background
417.Ve 418.Ve
418.IP "block-graphics-to-ascii" 4 419.IP "block-graphics-to-ascii" 4
419.IX Item "block-graphics-to-ascii" 420.IX Item "block-graphics-to-ascii"
420A not very useful example of filtering all text output to the terminal, 421A not very useful example of filtering all text output to the terminal
421by replacing all line-drawing characters (U+2500 .. U+259F) by a 422by replacing all line-drawing characters (U+2500 .. U+259F) by a
422similar-looking ascii character. 423similar-looking ascii character.
423.IP "digital-clock" 4 424.IP "digital-clock" 4
424.IX Item "digital-clock" 425.IX Item "digital-clock"
425Displays a digital clock using the built-in overlay. 426Displays a digital clock using the built-in overlay.
439the selection data on \s-1STDOUT\s0 (also in \s-1UTF\-8\s0). 440the selection data on \s-1STDOUT\s0 (also in \s-1UTF\-8\s0).
440.Sp 441.Sp
441The defaults (which are likely useless to you) use rsh and cat: 442The defaults (which are likely useless to you) use rsh and cat:
442.Sp 443.Sp
443.Vb 2 444.Vb 2
444\& URxvt.remote-selection.store: rsh ruth 'cat >/tmp/distributed-selection' 445\& URxvt.remote\-selection.store: rsh ruth 'cat >/tmp/distributed\-selection'
445\& URxvt.remote-selection.fetch: rsh ruth 'cat /tmp/distributed-selection' 446\& URxvt.remote\-selection.fetch: rsh ruth 'cat /tmp/distributed\-selection'
446.Ve 447.Ve
447.IP "selection-pastebin" 4 448.IP "selection-pastebin" 4
448.IX Item "selection-pastebin" 449.IX Item "selection-pastebin"
449This is a little rarely useful extension that Uploads the selection as 450This is a little rarely useful extension that Uploads the selection as
450textfile to a remote site (or does other things). (The implementation is 451textfile to a remote site (or does other things). (The implementation is
453.Sp 454.Sp
454It listens to the \f(CW\*(C`selection\-pastebin:remote\-pastebin\*(C'\fR keyboard command, 455It listens to the \f(CW\*(C`selection\-pastebin:remote\-pastebin\*(C'\fR keyboard command,
455i.e. 456i.e.
456.Sp 457.Sp
457.Vb 1 458.Vb 1
458\& URxvt.keysym.C-M-e: perl:selection-pastebin:remote-pastebin 459\& URxvt.keysym.C\-M\-e: perl:selection\-pastebin:remote\-pastebin
459.Ve 460.Ve
460.Sp 461.Sp
461Pressing this combination runs a command with \f(CW\*(C`%\*(C'\fR replaced by the name of 462Pressing this combination runs a command with \f(CW\*(C`%\*(C'\fR replaced by the name of
462the textfile. This command can be set via a resource: 463the textfile. This command can be set via a resource:
463.Sp 464.Sp
464.Vb 1 465.Vb 1
465\& URxvt.selection-pastebin.cmd: rsync -apP % ruth:/var/www/www.ta-sa.org/files/txt/. 466\& URxvt.selection\-pastebin.cmd: rsync \-apP % ruth:/var/www/www.ta\-sa.org/files/txt/.
466.Ve 467.Ve
467.Sp 468.Sp
468And the default is likely not useful to anybody but the few people around 469And the default is likely not useful to anybody but the few people around
469here :) 470here :)
470.Sp 471.Sp
474After a successful upload the selection will be replaced by the text given 475After a successful upload the selection will be replaced by the text given
475in the \f(CW\*(C`selection\-pastebin\-url\*(C'\fR resource (again, the % is the placeholder 476in the \f(CW\*(C`selection\-pastebin\-url\*(C'\fR resource (again, the % is the placeholder
476for the filename): 477for the filename):
477.Sp 478.Sp
478.Vb 1 479.Vb 1
479\& URxvt.selection-pastebin.url: http://www.ta-sa.org/files/txt/% 480\& URxvt.selection\-pastebin.url: http://www.ta\-sa.org/files/txt/%
480.Ve 481.Ve
481.IP "example-refresh-hooks" 4 482.IP "example-refresh-hooks" 4
482.IX Item "example-refresh-hooks" 483.IX Item "example-refresh-hooks"
483Displays a very simple digital clock in the upper right corner of the 484Displays a very simple digital clock in the upper right corner of the
484window. Illustrates overwriting the refresh callbacks to create your own 485window. Illustrates overwriting the refresh callbacks to create your own
498the like inside the terminal object so they get destroyed as soon as the 499the like inside the terminal object so they get destroyed as soon as the
499terminal is destroyed. 500terminal is destroyed.
500.PP 501.PP
501Argument names also often indicate the type of a parameter. Here are some 502Argument names also often indicate the type of a parameter. Here are some
502hints on what they mean: 503hints on what they mean:
503.IP "$text" 4 504.ie n .IP "$text" 4
505.el .IP "\f(CW$text\fR" 4
504.IX Item "$text" 506.IX Item "$text"
505Rxvt-unicodes special way of encoding text, where one \*(L"unicode\*(R" character 507Rxvt-unicodes special way of encoding text, where one \*(L"unicode\*(R" character
506always represents one screen cell. See ROW_t for a discussion of this format. 508always represents one screen cell. See ROW_t for a discussion of this format.
507.IP "$string" 4 509.ie n .IP "$string" 4
510.el .IP "\f(CW$string\fR" 4
508.IX Item "$string" 511.IX Item "$string"
509A perl text string, with an emphasis on \fItext\fR. It can store all unicode 512A perl text string, with an emphasis on \fItext\fR. It can store all unicode
510characters and is to be distinguished with text encoded in a specific 513characters and is to be distinguished with text encoded in a specific
511encoding (often locale\-specific) and binary data. 514encoding (often locale\-specific) and binary data.
512.IP "$octets" 4 515.ie n .IP "$octets" 4
516.el .IP "\f(CW$octets\fR" 4
513.IX Item "$octets" 517.IX Item "$octets"
514Either binary data or \- more common \- a text string encoded in a 518Either binary data or \- more common \- a text string encoded in a
515locale-specific way. 519locale-specific way.
516.Sh "Extension Objects" 520.Sh "Extension Objects"
517.IX Subsection "Extension Objects" 521.IX Subsection "Extension Objects"
518Very perl extension is a perl class. A separate perl object is created 522Every perl extension is a perl class. A separate perl object is created
519for each terminal and each extension and passed as the first parameter to 523for each terminal and each extension and passed as the first parameter to
520hooks. So extensions can use their \f(CW$self\fR object without having to think 524hooks. So extensions can use their \f(CW$self\fR object without having to think
521about other extensions, with the exception of methods and members that 525about other extensions, with the exception of methods and members that
522begin with an underscore character \f(CW\*(C`_\*(C'\fR: these are reserved for internal 526begin with an underscore character \f(CW\*(C`_\*(C'\fR: these are reserved for internal
523use. 527use.
524.PP 528.PP
525Although it isn't a \f(CW\*(C`urxvt::term\*(C'\fR object, you can call all methods of the 529Although it isn't a \f(CW\*(C`urxvt::term\*(C'\fR object, you can call all methods of the
526\&\f(CW\*(C`urxvt::term\*(C'\fR class on this object. 530\&\f(CW\*(C`urxvt::term\*(C'\fR class on this object.
527.PP 531.PP
528It has the following methods and data members: 532It has the following methods and data members:
529.ie n .IP "$urxvt_term = $self\->{term}" 4 533.ie n .IP "$urxvt_term\fR = \f(CW$self\->{term}" 4
530.el .IP "$urxvt_term = \f(CW$self\fR\->{term}" 4 534.el .IP "\f(CW$urxvt_term\fR = \f(CW$self\fR\->{term}" 4
531.IX Item "$urxvt_term = $self->{term}" 535.IX Item "$urxvt_term = $self->{term}"
532Returns the \f(CW\*(C`urxvt::term\*(C'\fR object associated with this instance of the 536Returns the \f(CW\*(C`urxvt::term\*(C'\fR object associated with this instance of the
533extension. This member \fImust not\fR be changed in any way. 537extension. This member \fImust not\fR be changed in any way.
534.ie n .IP "$self\->enable ($hook_name => $cb\fR, [$hook_name => \f(CW$cb..])" 4 538.ie n .IP "$self\fR\->enable ($hook_name => \f(CW$cb\fR, [$hook_name => \f(CW$cb..])" 4
535.el .IP "$self\->enable ($hook_name => \f(CW$cb\fR, [$hook_name => \f(CW$cb\fR..])" 4 539.el .IP "\f(CW$self\fR\->enable ($hook_name => \f(CW$cb\fR, [$hook_name => \f(CW$cb\fR..])" 4
536.IX Item "$self->enable ($hook_name => $cb, [$hook_name => $cb..])" 540.IX Item "$self->enable ($hook_name => $cb, [$hook_name => $cb..])"
537Dynamically enable the given hooks (named without the \f(CW\*(C`on_\*(C'\fR prefix) for 541Dynamically enable the given hooks (named without the \f(CW\*(C`on_\*(C'\fR prefix) for
538this extension, replacing any previous hook. This is useful when you want 542this extension, replacing any previous hook. This is useful when you want
539to overwrite time-critical hooks only temporarily. 543to overwrite time-critical hooks only temporarily.
540.ie n .IP "$self\->disable ($hook_name[, $hook_name..])" 4 544.ie n .IP "$self\fR\->disable ($hook_name[, \f(CW$hook_name..])" 4
541.el .IP "$self\->disable ($hook_name[, \f(CW$hook_name\fR..])" 4 545.el .IP "\f(CW$self\fR\->disable ($hook_name[, \f(CW$hook_name\fR..])" 4
542.IX Item "$self->disable ($hook_name[, $hook_name..])" 546.IX Item "$self->disable ($hook_name[, $hook_name..])"
543Dynamically disable the given hooks. 547Dynamically disable the given hooks.
544.Sh "Hooks" 548.Sh "Hooks"
545.IX Subsection "Hooks" 549.IX Subsection "Hooks"
546The following subroutines can be declared in extension files, and will be 550The following subroutines can be declared in extension files, and will be
630than the scroll back buffer or the terminal. 634than the scroll back buffer or the terminal.
631.Sp 635.Sp
632It is called before lines are scrolled out (so rows 0 .. min ($lines \- 1, 636It is called before lines are scrolled out (so rows 0 .. min ($lines \- 1,
633\&\f(CW$nrow\fR \- 1) represent the lines to be scrolled out). \f(CW$saved\fR is the total 637\&\f(CW$nrow\fR \- 1) represent the lines to be scrolled out). \f(CW$saved\fR is the total
634number of lines that will be in the scrollback buffer. 638number of lines that will be in the scrollback buffer.
639.ie n .IP "on_osc_seq $term\fR, \f(CW$op\fR, \f(CW$args" 4
640.el .IP "on_osc_seq \f(CW$term\fR, \f(CW$op\fR, \f(CW$args\fR" 4
641.IX Item "on_osc_seq $term, $op, $args"
642Called on every \s-1OSC\s0 sequence and can be used to suppress it or modify its
643behaviour. The default should be to return an empty list. A true value
644suppresses execution of the request completely. Make sure you don't get
645confused by recursive invocations when you output an osc sequence within
646this callback.
647.Sp
648\&\f(CW\*(C`on_osc_seq_perl\*(C'\fR should be used for new behaviour.
635.ie n .IP "on_osc_seq $term\fR, \f(CW$string" 4 649.ie n .IP "on_osc_seq_perl $term\fR, \f(CW$string" 4
636.el .IP "on_osc_seq \f(CW$term\fR, \f(CW$string\fR" 4 650.el .IP "on_osc_seq_perl \f(CW$term\fR, \f(CW$string\fR" 4
637.IX Item "on_osc_seq $term, $string" 651.IX Item "on_osc_seq_perl $term, $string"
638Called whenever the \fB\s-1ESC\s0 ] 777 ; string \s-1ST\s0\fR command sequence (\s-1OSC\s0 = 652Called whenever the \fB\s-1ESC\s0 ] 777 ; string \s-1ST\s0\fR command sequence (\s-1OSC\s0 =
639operating system command) is processed. Cursor position and other state 653operating system command) is processed. Cursor position and other state
640information is up-to-date when this happens. For interoperability, the 654information is up-to-date when this happens. For interoperability, the
641string should start with the extension name and a colon, to distinguish 655string should start with the extension name and a colon, to distinguish
642it from commands for other extensions, and this might be enforced in the 656it from commands for other extensions, and this might be enforced in the
768Called when various types of ClientMessage events are received (all with 782Called when various types of ClientMessage events are received (all with
769format=32, \s-1WM_PROTOCOLS\s0 or \s-1WM_PROTOCOLS:WM_DELETE_WINDOW\s0). 783format=32, \s-1WM_PROTOCOLS\s0 or \s-1WM_PROTOCOLS:WM_DELETE_WINDOW\s0).
770.ie n .Sh "Variables in the ""urxvt"" Package" 784.ie n .Sh "Variables in the ""urxvt"" Package"
771.el .Sh "Variables in the \f(CWurxvt\fP Package" 785.el .Sh "Variables in the \f(CWurxvt\fP Package"
772.IX Subsection "Variables in the urxvt Package" 786.IX Subsection "Variables in the urxvt Package"
773.IP "$urxvt::LIBDIR" 4 787.ie n .IP "$urxvt::LIBDIR" 4
788.el .IP "\f(CW$urxvt::LIBDIR\fR" 4
774.IX Item "$urxvt::LIBDIR" 789.IX Item "$urxvt::LIBDIR"
775The rxvt-unicode library directory, where, among other things, the perl 790The rxvt-unicode library directory, where, among other things, the perl
776modules and scripts are stored. 791modules and scripts are stored.
777.ie n .IP "$urxvt::RESCLASS, $urxvt::RESCLASS" 4 792.ie n .IP "$urxvt::RESCLASS\fR, \f(CW$urxvt::RESCLASS" 4
778.el .IP "$urxvt::RESCLASS, \f(CW$urxvt::RESCLASS\fR" 4 793.el .IP "\f(CW$urxvt::RESCLASS\fR, \f(CW$urxvt::RESCLASS\fR" 4
779.IX Item "$urxvt::RESCLASS, $urxvt::RESCLASS" 794.IX Item "$urxvt::RESCLASS, $urxvt::RESCLASS"
780The resource class and name rxvt-unicode uses to look up X resources. 795The resource class and name rxvt-unicode uses to look up X resources.
781.IP "$urxvt::RXVTNAME" 4 796.ie n .IP "$urxvt::RXVTNAME" 4
797.el .IP "\f(CW$urxvt::RXVTNAME\fR" 4
782.IX Item "$urxvt::RXVTNAME" 798.IX Item "$urxvt::RXVTNAME"
783The basename of the installed binaries, usually \f(CW\*(C`urxvt\*(C'\fR. 799The basename of the installed binaries, usually \f(CW\*(C`urxvt\*(C'\fR.
784.IP "$urxvt::TERM" 4 800.ie n .IP "$urxvt::TERM" 4
801.el .IP "\f(CW$urxvt::TERM\fR" 4
785.IX Item "$urxvt::TERM" 802.IX Item "$urxvt::TERM"
786The current terminal. This variable stores the current \f(CW\*(C`urxvt::term\*(C'\fR 803The current terminal. This variable stores the current \f(CW\*(C`urxvt::term\*(C'\fR
787object, whenever a callback/hook is executing. 804object, whenever a callback/hook is executing.
788.IP "@urxvt::TERM_INIT" 4 805.ie n .IP "@urxvt::TERM_INIT" 4
806.el .IP "\f(CW@urxvt::TERM_INIT\fR" 4
789.IX Item "@urxvt::TERM_INIT" 807.IX Item "@urxvt::TERM_INIT"
790All coderefs in this array will be called as methods of the next newly 808All coderefs in this array will be called as methods of the next newly
791created \f(CW\*(C`urxvt::term\*(C'\fR object (during the \f(CW\*(C`on_init\*(C'\fR phase). The array 809created \f(CW\*(C`urxvt::term\*(C'\fR object (during the \f(CW\*(C`on_init\*(C'\fR phase). The array
792gets cleared before the codereferences that were in it are being executed, 810gets cleared before the codereferences that were in it are being executed,
793so coderefs can push themselves onto it again if they so desire. 811so coderefs can push themselves onto it again if they so desire.
794.Sp 812.Sp
795This complements to the perl-eval commandline option, but gets executed 813This complements to the perl-eval commandline option, but gets executed
796first. 814first.
797.IP "@urxvt::TERM_EXT" 4 815.ie n .IP "@urxvt::TERM_EXT" 4
816.el .IP "\f(CW@urxvt::TERM_EXT\fR" 4
798.IX Item "@urxvt::TERM_EXT" 817.IX Item "@urxvt::TERM_EXT"
799Works similar to \f(CW@TERM_INIT\fR, but contains perl package/class names, which 818Works similar to \f(CW@TERM_INIT\fR, but contains perl package/class names, which
800get registered as normal extensions after calling the hooks in \f(CW@TERM_INIT\fR 819get registered as normal extensions after calling the hooks in \f(CW@TERM_INIT\fR
801but before other extensions. Gets cleared just like \f(CW@TERM_INIT\fR. 820but before other extensions. Gets cleared just like \f(CW@TERM_INIT\fR.
802.ie n .Sh "Functions in the ""urxvt"" Package" 821.ie n .Sh "Functions in the ""urxvt"" Package"
817.Sp 836.Sp
818Using this function has the advantage that its output ends up in the 837Using this function has the advantage that its output ends up in the
819correct place, e.g. on stderr of the connecting urxvtc client. 838correct place, e.g. on stderr of the connecting urxvtc client.
820.Sp 839.Sp
821Messages have a size limit of 1023 bytes currently. 840Messages have a size limit of 1023 bytes currently.
822.IP "@terms = urxvt::termlist" 4 841.ie n .IP "@terms = urxvt::termlist" 4
842.el .IP "\f(CW@terms\fR = urxvt::termlist" 4
823.IX Item "@terms = urxvt::termlist" 843.IX Item "@terms = urxvt::termlist"
824Returns all urxvt::term objects that exist in this process, regardless of 844Returns all urxvt::term objects that exist in this process, regardless of
825wether they are started, being destroyed etc., so be careful. Only term 845wether they are started, being destroyed etc., so be careful. Only term
826objects that have perl extensions attached will be returned (because there 846objects that have perl extensions attached will be returned (because there
827is no urxvt::term objet associated with others). 847is no urxvt::term objet associated with others).
828.IP "$time = urxvt::NOW" 4 848.ie n .IP "$time = urxvt::NOW" 4
849.el .IP "\f(CW$time\fR = urxvt::NOW" 4
829.IX Item "$time = urxvt::NOW" 850.IX Item "$time = urxvt::NOW"
830Returns the \*(L"current time\*(R" (as per the event loop). 851Returns the \*(L"current time\*(R" (as per the event loop).
831.IP "urxvt::CurrentTime" 4 852.IP "urxvt::CurrentTime" 4
832.IX Item "urxvt::CurrentTime" 853.IX Item "urxvt::CurrentTime"
833.PD 0 854.PD 0
846.PP 867.PP
847The following \*(L"macros\*(R" deal with changes in rendition sets. You should 868The following \*(L"macros\*(R" deal with changes in rendition sets. You should
848never just create a bitset, you should always modify an existing one, 869never just create a bitset, you should always modify an existing one,
849as they contain important information required for correct operation of 870as they contain important information required for correct operation of
850rxvt\-unicode. 871rxvt\-unicode.
851.IP "$rend = urxvt::DEFAULT_RSTYLE" 4 872.ie n .IP "$rend = urxvt::DEFAULT_RSTYLE" 4
873.el .IP "\f(CW$rend\fR = urxvt::DEFAULT_RSTYLE" 4
852.IX Item "$rend = urxvt::DEFAULT_RSTYLE" 874.IX Item "$rend = urxvt::DEFAULT_RSTYLE"
853Returns the default rendition, as used when the terminal is starting up or 875Returns the default rendition, as used when the terminal is starting up or
854being reset. Useful as a base to start when creating renditions. 876being reset. Useful as a base to start when creating renditions.
855.IP "$rend = urxvt::OVERLAY_RSTYLE" 4 877.ie n .IP "$rend = urxvt::OVERLAY_RSTYLE" 4
878.el .IP "\f(CW$rend\fR = urxvt::OVERLAY_RSTYLE" 4
856.IX Item "$rend = urxvt::OVERLAY_RSTYLE" 879.IX Item "$rend = urxvt::OVERLAY_RSTYLE"
857Return the rendition mask used for overlays by default. 880Return the rendition mask used for overlays by default.
858.IP "$rendbit = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline" 4 881.ie n .IP "$rendbit = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline" 4
882.el .IP "\f(CW$rendbit\fR = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline" 4
859.IX Item "$rendbit = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline" 883.IX Item "$rendbit = urxvt::RS_Bold, RS_Italic, RS_Blink, RS_RVid, RS_Uline"
860Return the bit that enabled bold, italic, blink, reverse-video and 884Return the bit that enabled bold, italic, blink, reverse-video and
861underline, respectively. To enable such a style, just logically \s-1OR\s0 it into 885underline, respectively. To enable such a style, just logically \s-1OR\s0 it into
862the bitset. 886the bitset.
863.ie n .IP "$foreground = urxvt::GET_BASEFG $rend" 4 887.ie n .IP "$foreground\fR = urxvt::GET_BASEFG \f(CW$rend" 4
864.el .IP "$foreground = urxvt::GET_BASEFG \f(CW$rend\fR" 4 888.el .IP "\f(CW$foreground\fR = urxvt::GET_BASEFG \f(CW$rend\fR" 4
865.IX Item "$foreground = urxvt::GET_BASEFG $rend" 889.IX Item "$foreground = urxvt::GET_BASEFG $rend"
866.PD 0 890.PD 0
867.ie n .IP "$background = urxvt::GET_BASEBG $rend" 4 891.ie n .IP "$background\fR = urxvt::GET_BASEBG \f(CW$rend" 4
868.el .IP "$background = urxvt::GET_BASEBG \f(CW$rend\fR" 4 892.el .IP "\f(CW$background\fR = urxvt::GET_BASEBG \f(CW$rend\fR" 4
869.IX Item "$background = urxvt::GET_BASEBG $rend" 893.IX Item "$background = urxvt::GET_BASEBG $rend"
870.PD 894.PD
871Return the foreground/background colour index, respectively. 895Return the foreground/background colour index, respectively.
872.ie n .IP "$rend = urxvt::SET_FGCOLOR $rend\fR, \f(CW$new_colour" 4 896.ie n .IP "$rend\fR = urxvt::SET_FGCOLOR \f(CW$rend\fR, \f(CW$new_colour" 4
873.el .IP "$rend = urxvt::SET_FGCOLOR \f(CW$rend\fR, \f(CW$new_colour\fR" 4 897.el .IP "\f(CW$rend\fR = urxvt::SET_FGCOLOR \f(CW$rend\fR, \f(CW$new_colour\fR" 4
874.IX Item "$rend = urxvt::SET_FGCOLOR $rend, $new_colour" 898.IX Item "$rend = urxvt::SET_FGCOLOR $rend, $new_colour"
875.PD 0 899.PD 0
876.ie n .IP "$rend = urxvt::SET_BGCOLOR $rend\fR, \f(CW$new_colour" 4 900.ie n .IP "$rend\fR = urxvt::SET_BGCOLOR \f(CW$rend\fR, \f(CW$new_colour" 4
877.el .IP "$rend = urxvt::SET_BGCOLOR \f(CW$rend\fR, \f(CW$new_colour\fR" 4 901.el .IP "\f(CW$rend\fR = urxvt::SET_BGCOLOR \f(CW$rend\fR, \f(CW$new_colour\fR" 4
878.IX Item "$rend = urxvt::SET_BGCOLOR $rend, $new_colour" 902.IX Item "$rend = urxvt::SET_BGCOLOR $rend, $new_colour"
879.ie n .IP "$rend = urxvt::SET_COLOR $rend\fR, \f(CW$new_fg\fR, \f(CW$new_bg" 4 903.ie n .IP "$rend\fR = urxvt::SET_COLOR \f(CW$rend\fR, \f(CW$new_fg\fR, \f(CW$new_bg" 4
880.el .IP "$rend = urxvt::SET_COLOR \f(CW$rend\fR, \f(CW$new_fg\fR, \f(CW$new_bg\fR" 4 904.el .IP "\f(CW$rend\fR = urxvt::SET_COLOR \f(CW$rend\fR, \f(CW$new_fg\fR, \f(CW$new_bg\fR" 4
881.IX Item "$rend = urxvt::SET_COLOR $rend, $new_fg, $new_bg" 905.IX Item "$rend = urxvt::SET_COLOR $rend, $new_fg, $new_bg"
882.PD 906.PD
883Replace the foreground/background colour in the rendition mask with the 907Replace the foreground/background colour in the rendition mask with the
884specified one. 908specified one.
885.ie n .IP "$value = urxvt::GET_CUSTOM $rend" 4 909.ie n .IP "$value\fR = urxvt::GET_CUSTOM \f(CW$rend" 4
886.el .IP "$value = urxvt::GET_CUSTOM \f(CW$rend\fR" 4 910.el .IP "\f(CW$value\fR = urxvt::GET_CUSTOM \f(CW$rend\fR" 4
887.IX Item "$value = urxvt::GET_CUSTOM $rend" 911.IX Item "$value = urxvt::GET_CUSTOM $rend"
888Return the \*(L"custom\*(R" value: Every rendition has 5 bits for use by 912Return the \*(L"custom\*(R" value: Every rendition has 5 bits for use by
889extensions. They can be set and changed as you like and are initially 913extensions. They can be set and changed as you like and are initially
890zero. 914zero.
891.ie n .IP "$rend = urxvt::SET_CUSTOM $rend\fR, \f(CW$new_value" 4 915.ie n .IP "$rend\fR = urxvt::SET_CUSTOM \f(CW$rend\fR, \f(CW$new_value" 4
892.el .IP "$rend = urxvt::SET_CUSTOM \f(CW$rend\fR, \f(CW$new_value\fR" 4 916.el .IP "\f(CW$rend\fR = urxvt::SET_CUSTOM \f(CW$rend\fR, \f(CW$new_value\fR" 4
893.IX Item "$rend = urxvt::SET_CUSTOM $rend, $new_value" 917.IX Item "$rend = urxvt::SET_CUSTOM $rend, $new_value"
894Change the custom value. 918Change the custom value.
895.ie n .Sh "The ""urxvt::anyevent"" Class" 919.ie n .Sh "The ""urxvt::anyevent"" Class"
896.el .Sh "The \f(CWurxvt::anyevent\fP Class" 920.el .Sh "The \f(CWurxvt::anyevent\fP Class"
897.IX Subsection "The urxvt::anyevent Class" 921.IX Subsection "The urxvt::anyevent Class"
902is that you cannot use blocking APIs, but the non-blocking variant should 926is that you cannot use blocking APIs, but the non-blocking variant should
903work. 927work.
904.ie n .Sh "The ""urxvt::term"" Class" 928.ie n .Sh "The ""urxvt::term"" Class"
905.el .Sh "The \f(CWurxvt::term\fP Class" 929.el .Sh "The \f(CWurxvt::term\fP Class"
906.IX Subsection "The urxvt::term Class" 930.IX Subsection "The urxvt::term Class"
907.ie n .IP "$term = new urxvt::term $envhashref\fR, \f(CW$rxvtname, [arg...]" 4 931.ie n .IP "$term\fR = new urxvt::term \f(CW$envhashref\fR, \f(CW$rxvtname, [arg...]" 4
908.el .IP "$term = new urxvt::term \f(CW$envhashref\fR, \f(CW$rxvtname\fR, [arg...]" 4 932.el .IP "\f(CW$term\fR = new urxvt::term \f(CW$envhashref\fR, \f(CW$rxvtname\fR, [arg...]" 4
909.IX Item "$term = new urxvt::term $envhashref, $rxvtname, [arg...]" 933.IX Item "$term = new urxvt::term $envhashref, $rxvtname, [arg...]"
910Creates a new terminal, very similar as if you had started it with system 934Creates a new terminal, very similar as if you had started it with system
911\&\f(CW\*(C`$rxvtname, arg...\*(C'\fR. \f(CW$envhashref\fR must be a reference to a \f(CW%ENV\fR\-like 935\&\f(CW\*(C`$rxvtname, arg...\*(C'\fR. \f(CW$envhashref\fR must be a reference to a \f(CW%ENV\fR\-like
912hash which defines the environment of the new terminal. 936hash which defines the environment of the new terminal.
913.Sp 937.Sp
914Croaks (and probably outputs an error message) if the new instance 938Croaks (and probably outputs an error message) if the new instance
915couldn't be created. Returns \f(CW\*(C`undef\*(C'\fR if the new instance didn't 939couldn't be created. Returns \f(CW\*(C`undef\*(C'\fR if the new instance didn't
916initialise perl, and the terminal object otherwise. The \f(CW\*(C`init\*(C'\fR and 940initialise perl, and the terminal object otherwise. The \f(CW\*(C`init\*(C'\fR and
917\&\f(CW\*(C`start\*(C'\fR hooks will be called before this call returns, and are free to 941\&\f(CW\*(C`start\*(C'\fR hooks will be called before this call returns, and are free to
918refer to global data (which is race free). 942refer to global data (which is race free).
919.IP "$term\->destroy" 4 943.ie n .IP "$term\->destroy" 4
944.el .IP "\f(CW$term\fR\->destroy" 4
920.IX Item "$term->destroy" 945.IX Item "$term->destroy"
921Destroy the terminal object (close the window, free resources 946Destroy the terminal object (close the window, free resources
922etc.). Please note that @@RXVT_NAME@@ will not exit as long as any event 947etc.). Please note that @@RXVT_NAME@@ will not exit as long as any event
923watchers (timers, io watchers) are still active. 948watchers (timers, io watchers) are still active.
924.ie n .IP "$term\->exec_async ($cmd[, @args])" 4 949.ie n .IP "$term\fR\->exec_async ($cmd[, \f(CW@args])" 4
925.el .IP "$term\->exec_async ($cmd[, \f(CW@args\fR])" 4 950.el .IP "\f(CW$term\fR\->exec_async ($cmd[, \f(CW@args\fR])" 4
926.IX Item "$term->exec_async ($cmd[, @args])" 951.IX Item "$term->exec_async ($cmd[, @args])"
927Works like the combination of the \f(CW\*(C`fork\*(C'\fR/\f(CW\*(C`exec\*(C'\fR builtins, which executes 952Works like the combination of the \f(CW\*(C`fork\*(C'\fR/\f(CW\*(C`exec\*(C'\fR builtins, which executes
928(\*(L"starts\*(R") programs in the background. This function takes care of setting 953(\*(L"starts\*(R") programs in the background. This function takes care of setting
929the user environment before exec'ing the command (e.g. \f(CW\*(C`PATH\*(C'\fR) and should 954the user environment before exec'ing the command (e.g. \f(CW\*(C`PATH\*(C'\fR) and should
930be preferred over explicit calls to \f(CW\*(C`exec\*(C'\fR or \f(CW\*(C`system\*(C'\fR. 955be preferred over explicit calls to \f(CW\*(C`exec\*(C'\fR or \f(CW\*(C`system\*(C'\fR.
931.Sp 956.Sp
932Returns the pid of the subprocess or \f(CW\*(C`undef\*(C'\fR on error. 957Returns the pid of the subprocess or \f(CW\*(C`undef\*(C'\fR on error.
933.ie n .IP "$isset = $term\fR\->option ($optval[, \f(CW$set])" 4 958.ie n .IP "$isset\fR = \f(CW$term\fR\->option ($optval[, \f(CW$set])" 4
934.el .IP "$isset = \f(CW$term\fR\->option ($optval[, \f(CW$set\fR])" 4 959.el .IP "\f(CW$isset\fR = \f(CW$term\fR\->option ($optval[, \f(CW$set\fR])" 4
935.IX Item "$isset = $term->option ($optval[, $set])" 960.IX Item "$isset = $term->option ($optval[, $set])"
936Returns true if the option specified by \f(CW$optval\fR is enabled, and 961Returns true if the option specified by \f(CW$optval\fR is enabled, and
937optionally change it. All option values are stored by name in the hash 962optionally change it. All option values are stored by name in the hash
938\&\f(CW%urxvt::OPTION\fR. Options not enabled in this binary are not in the hash. 963\&\f(CW%urxvt::OPTION\fR. Options not enabled in this binary are not in the hash.
939.Sp 964.Sp
941source file \fI/src/optinc.h\fR to see the actual list: 966source file \fI/src/optinc.h\fR to see the actual list:
942.Sp 967.Sp
943.Vb 6 968.Vb 6
944\& borderLess console cursorBlink cursorUnderline hold iconic insecure 969\& borderLess console cursorBlink cursorUnderline hold iconic insecure
945\& intensityStyles jumpScroll loginShell mapAlert meta8 mouseWheelScrollPage 970\& intensityStyles jumpScroll loginShell mapAlert meta8 mouseWheelScrollPage
946\& override-redirect pastableTabs pointerBlank reverseVideo scrollBar 971\& override\-redirect pastableTabs pointerBlank reverseVideo scrollBar
947\& scrollBar_floating scrollBar_right scrollTtyKeypress scrollTtyOutput 972\& scrollBar_floating scrollBar_right scrollTtyKeypress scrollTtyOutput
948\& scrollWithBuffer secondaryScreen secondaryScroll skipBuiltinGlyphs 973\& scrollWithBuffer secondaryScreen secondaryScroll skipBuiltinGlyphs
949\& transparent tripleclickwords utmpInhibit visualBell 974\& transparent tripleclickwords utmpInhibit visualBell
950.Ve 975.Ve
951.ie n .IP "$value = $term\fR\->resource ($name[, \f(CW$newval])" 4 976.ie n .IP "$value\fR = \f(CW$term\fR\->resource ($name[, \f(CW$newval])" 4
952.el .IP "$value = \f(CW$term\fR\->resource ($name[, \f(CW$newval\fR])" 4 977.el .IP "\f(CW$value\fR = \f(CW$term\fR\->resource ($name[, \f(CW$newval\fR])" 4
953.IX Item "$value = $term->resource ($name[, $newval])" 978.IX Item "$value = $term->resource ($name[, $newval])"
954Returns the current resource value associated with a given name and 979Returns the current resource value associated with a given name and
955optionally sets a new value. Setting values is most useful in the \f(CW\*(C`init\*(C'\fR 980optionally sets a new value. Setting values is most useful in the \f(CW\*(C`init\*(C'\fR
956hook. Unset resources are returned and accepted as \f(CW\*(C`undef\*(C'\fR. 981hook. Unset resources are returned and accepted as \f(CW\*(C`undef\*(C'\fR.
957.Sp 982.Sp
968.Sp 993.Sp
969Here is a a likely non-exhaustive list of resource names, not all of which 994Here is a a likely non-exhaustive list of resource names, not all of which
970are supported in every build, please see the source file \fI/src/rsinc.h\fR 995are supported in every build, please see the source file \fI/src/rsinc.h\fR
971to see the actual list: 996to see the actual list:
972.Sp 997.Sp
973.Vb 13 998.Vb 10
974\& answerbackstring backgroundPixmap backspace_key boldFont boldItalicFont 999\& answerbackstring backgroundPixmap backspace_key boldFont boldItalicFont
975\& borderLess color cursorBlink cursorUnderline cutchars delete_key 1000\& borderLess color cursorBlink cursorUnderline cutchars delete_key
976\& display_name embed ext_bwidth fade font geometry hold iconName 1001\& display_name embed ext_bwidth fade font geometry hold iconName
977\& imFont imLocale inputMethod insecure int_bwidth intensityStyles 1002\& imFont imLocale inputMethod insecure int_bwidth intensityStyles
978\& italicFont jumpScroll lineSpace loginShell mapAlert meta8 modifier 1003\& italicFont jumpScroll lineSpace loginShell mapAlert meta8 modifier
983\& scrollTtyKeypress scrollTtyOutput scrollWithBuffer scrollstyle 1008\& scrollTtyKeypress scrollTtyOutput scrollWithBuffer scrollstyle
984\& secondaryScreen secondaryScroll selectstyle shade term_name title 1009\& secondaryScreen secondaryScroll selectstyle shade term_name title
985\& transient_for transparent transparent_all tripleclickwords utmpInhibit 1010\& transient_for transparent transparent_all tripleclickwords utmpInhibit
986\& visualBell 1011\& visualBell
987.Ve 1012.Ve
988.ie n .IP "$value = $term\->x_resource ($pattern)" 4 1013.ie n .IP "$value\fR = \f(CW$term\->x_resource ($pattern)" 4
989.el .IP "$value = \f(CW$term\fR\->x_resource ($pattern)" 4 1014.el .IP "\f(CW$value\fR = \f(CW$term\fR\->x_resource ($pattern)" 4
990.IX Item "$value = $term->x_resource ($pattern)" 1015.IX Item "$value = $term->x_resource ($pattern)"
991Returns the X\-Resource for the given pattern, excluding the program or 1016Returns the X\-Resource for the given pattern, excluding the program or
992class name, i.e. \f(CW\*(C`$term\->x_resource ("boldFont")\*(C'\fR should return the 1017class name, i.e. \f(CW\*(C`$term\->x_resource ("boldFont")\*(C'\fR should return the
993same value as used by this instance of rxvt\-unicode. Returns \f(CW\*(C`undef\*(C'\fR if no 1018same value as used by this instance of rxvt\-unicode. Returns \f(CW\*(C`undef\*(C'\fR if no
994resource with that pattern exists. 1019resource with that pattern exists.
995.Sp 1020.Sp
996This method should only be called during the \f(CW\*(C`on_start\*(C'\fR hook, as there is 1021This method should only be called during the \f(CW\*(C`on_start\*(C'\fR hook, as there is
997only one resource database per display, and later invocations might return 1022only one resource database per display, and later invocations might return
998the wrong resources. 1023the wrong resources.
999.ie n .IP "$success = $term\fR\->parse_keysym ($keysym_spec, \f(CW$command_string)" 4 1024.ie n .IP "$success\fR = \f(CW$term\fR\->parse_keysym ($keysym_spec, \f(CW$command_string)" 4
1000.el .IP "$success = \f(CW$term\fR\->parse_keysym ($keysym_spec, \f(CW$command_string\fR)" 4 1025.el .IP "\f(CW$success\fR = \f(CW$term\fR\->parse_keysym ($keysym_spec, \f(CW$command_string\fR)" 4
1001.IX Item "$success = $term->parse_keysym ($keysym_spec, $command_string)" 1026.IX Item "$success = $term->parse_keysym ($keysym_spec, $command_string)"
1002Adds a keymap translation exactly as specified via a resource. See the 1027Adds a keymap translation exactly as specified via a resource. See the
1003\&\f(CW\*(C`keysym\*(C'\fR resource in the @@RXVT_NAME@@(1) manpage. 1028\&\f(CW\*(C`keysym\*(C'\fR resource in the @@RXVT_NAME@@(1) manpage.
1004.ie n .IP "$rend = $term\->rstyle ([$new_rstyle])" 4 1029.ie n .IP "$rend\fR = \f(CW$term\->rstyle ([$new_rstyle])" 4
1005.el .IP "$rend = \f(CW$term\fR\->rstyle ([$new_rstyle])" 4 1030.el .IP "\f(CW$rend\fR = \f(CW$term\fR\->rstyle ([$new_rstyle])" 4
1006.IX Item "$rend = $term->rstyle ([$new_rstyle])" 1031.IX Item "$rend = $term->rstyle ([$new_rstyle])"
1007Return and optionally change the current rendition. Text that is output by 1032Return and optionally change the current rendition. Text that is output by
1008the terminal application will use this style. 1033the terminal application will use this style.
1009.ie n .IP "($row, $col\fR) = \f(CW$term\fR\->screen_cur ([$row, \f(CW$col])" 4 1034.ie n .IP "($row, $col\fR) = \f(CW$term\fR\->screen_cur ([$row, \f(CW$col])" 4
1010.el .IP "($row, \f(CW$col\fR) = \f(CW$term\fR\->screen_cur ([$row, \f(CW$col\fR])" 4 1035.el .IP "($row, \f(CW$col\fR) = \f(CW$term\fR\->screen_cur ([$row, \f(CW$col\fR])" 4
1022.el .IP "($row, \f(CW$col\fR) = \f(CW$term\fR\->selection_end ([$row, \f(CW$col\fR])" 4 1047.el .IP "($row, \f(CW$col\fR) = \f(CW$term\fR\->selection_end ([$row, \f(CW$col\fR])" 4
1023.IX Item "($row, $col) = $term->selection_end ([$row, $col])" 1048.IX Item "($row, $col) = $term->selection_end ([$row, $col])"
1024.PD 1049.PD
1025Return the current values of the selection mark, begin or end positions, 1050Return the current values of the selection mark, begin or end positions,
1026and optionally set them to new values. 1051and optionally set them to new values.
1027.ie n .IP "$term\->selection_make ($eventtime[, $rectangular])" 4 1052.ie n .IP "$term\fR\->selection_make ($eventtime[, \f(CW$rectangular])" 4
1028.el .IP "$term\->selection_make ($eventtime[, \f(CW$rectangular\fR])" 4 1053.el .IP "\f(CW$term\fR\->selection_make ($eventtime[, \f(CW$rectangular\fR])" 4
1029.IX Item "$term->selection_make ($eventtime[, $rectangular])" 1054.IX Item "$term->selection_make ($eventtime[, $rectangular])"
1030Tries to make a selection as set by \f(CW\*(C`selection_beg\*(C'\fR and 1055Tries to make a selection as set by \f(CW\*(C`selection_beg\*(C'\fR and
1031\&\f(CW\*(C`selection_end\*(C'\fR. If \f(CW$rectangular\fR is true (default: false), a 1056\&\f(CW\*(C`selection_end\*(C'\fR. If \f(CW$rectangular\fR is true (default: false), a
1032rectangular selection will be made. This is the prefered function to make 1057rectangular selection will be made. This is the prefered function to make
1033a selection. 1058a selection.
1034.ie n .IP "$success = $term\->selection_grab ($eventtime)" 4 1059.ie n .IP "$success\fR = \f(CW$term\->selection_grab ($eventtime)" 4
1035.el .IP "$success = \f(CW$term\fR\->selection_grab ($eventtime)" 4 1060.el .IP "\f(CW$success\fR = \f(CW$term\fR\->selection_grab ($eventtime)" 4
1036.IX Item "$success = $term->selection_grab ($eventtime)" 1061.IX Item "$success = $term->selection_grab ($eventtime)"
1037Try to request the primary selection text from the server (for example, as 1062Try to request the primary selection text from the server (for example, as
1038set by the next method). No visual feedback will be given. This function 1063set by the next method). No visual feedback will be given. This function
1039is mostly useful from within \f(CW\*(C`on_sel_grab\*(C'\fR hooks. 1064is mostly useful from within \f(CW\*(C`on_sel_grab\*(C'\fR hooks.
1040.ie n .IP "$oldtext = $term\->selection ([$newtext])" 4 1065.ie n .IP "$oldtext\fR = \f(CW$term\->selection ([$newtext])" 4
1041.el .IP "$oldtext = \f(CW$term\fR\->selection ([$newtext])" 4 1066.el .IP "\f(CW$oldtext\fR = \f(CW$term\fR\->selection ([$newtext])" 4
1042.IX Item "$oldtext = $term->selection ([$newtext])" 1067.IX Item "$oldtext = $term->selection ([$newtext])"
1043Return the current selection text and optionally replace it by \f(CW$newtext\fR. 1068Return the current selection text and optionally replace it by \f(CW$newtext\fR.
1044.ie n .IP "$term\->overlay_simple ($x, $y\fR, \f(CW$text)" 4 1069.ie n .IP "$term\fR\->overlay_simple ($x, \f(CW$y\fR, \f(CW$text)" 4
1045.el .IP "$term\->overlay_simple ($x, \f(CW$y\fR, \f(CW$text\fR)" 4 1070.el .IP "\f(CW$term\fR\->overlay_simple ($x, \f(CW$y\fR, \f(CW$text\fR)" 4
1046.IX Item "$term->overlay_simple ($x, $y, $text)" 1071.IX Item "$term->overlay_simple ($x, $y, $text)"
1047Create a simple multi-line overlay box. See the next method for details. 1072Create a simple multi-line overlay box. See the next method for details.
1048.ie n .IP "$term\->overlay ($x, $y\fR, \f(CW$width\fR, \f(CW$height\fR[, \f(CW$rstyle\fR[, \f(CW$border]])" 4 1073.ie n .IP "$term\fR\->overlay ($x, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height\fR[, \f(CW$rstyle\fR[, \f(CW$border]])" 4
1049.el .IP "$term\->overlay ($x, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height\fR[, \f(CW$rstyle\fR[, \f(CW$border\fR]])" 4 1074.el .IP "\f(CW$term\fR\->overlay ($x, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height\fR[, \f(CW$rstyle\fR[, \f(CW$border\fR]])" 4
1050.IX Item "$term->overlay ($x, $y, $width, $height[, $rstyle[, $border]])" 1075.IX Item "$term->overlay ($x, $y, $width, $height[, $rstyle[, $border]])"
1051Create a new (empty) overlay at the given position with the given 1076Create a new (empty) overlay at the given position with the given
1052width/height. \f(CW$rstyle\fR defines the initial rendition style 1077width/height. \f(CW$rstyle\fR defines the initial rendition style
1053(default: \f(CW\*(C`OVERLAY_RSTYLE\*(C'\fR). 1078(default: \f(CW\*(C`OVERLAY_RSTYLE\*(C'\fR).
1054.Sp 1079.Sp
1061This method returns an urxvt::overlay object. The overlay will be visible 1086This method returns an urxvt::overlay object. The overlay will be visible
1062as long as the perl object is referenced. 1087as long as the perl object is referenced.
1063.Sp 1088.Sp
1064The methods currently supported on \f(CW\*(C`urxvt::overlay\*(C'\fR objects are: 1089The methods currently supported on \f(CW\*(C`urxvt::overlay\*(C'\fR objects are:
1065.RS 4 1090.RS 4
1066.ie n .IP "$overlay\->set ($x, $y\fR, \f(CW$text\fR, \f(CW$rend)" 4 1091.ie n .IP "$overlay\fR\->set ($x, \f(CW$y\fR, \f(CW$text\fR, \f(CW$rend)" 4
1067.el .IP "$overlay\->set ($x, \f(CW$y\fR, \f(CW$text\fR, \f(CW$rend\fR)" 4 1092.el .IP "\f(CW$overlay\fR\->set ($x, \f(CW$y\fR, \f(CW$text\fR, \f(CW$rend\fR)" 4
1068.IX Item "$overlay->set ($x, $y, $text, $rend)" 1093.IX Item "$overlay->set ($x, $y, $text, $rend)"
1069Similar to \f(CW\*(C`$term\->ROW_t\*(C'\fR and \f(CW\*(C`$term\->ROW_r\*(C'\fR in that it puts 1094Similar to \f(CW\*(C`$term\->ROW_t\*(C'\fR and \f(CW\*(C`$term\->ROW_r\*(C'\fR in that it puts
1070text in rxvt\-unicode's special encoding and an array of rendition values 1095text in rxvt\-unicode's special encoding and an array of rendition values
1071at a specific position inside the overlay. 1096at a specific position inside the overlay.
1072.IP "$overlay\->hide" 4 1097.ie n .IP "$overlay\->hide" 4
1098.el .IP "\f(CW$overlay\fR\->hide" 4
1073.IX Item "$overlay->hide" 1099.IX Item "$overlay->hide"
1074If visible, hide the overlay, but do not destroy it. 1100If visible, hide the overlay, but do not destroy it.
1075.IP "$overlay\->show" 4 1101.ie n .IP "$overlay\->show" 4
1102.el .IP "\f(CW$overlay\fR\->show" 4
1076.IX Item "$overlay->show" 1103.IX Item "$overlay->show"
1077If hidden, display the overlay again. 1104If hidden, display the overlay again.
1078.RE 1105.RE
1079.RS 4 1106.RS 4
1080.RE 1107.RE
1081.ie n .IP "$popup = $term\->popup ($event)" 4 1108.ie n .IP "$popup\fR = \f(CW$term\->popup ($event)" 4
1082.el .IP "$popup = \f(CW$term\fR\->popup ($event)" 4 1109.el .IP "\f(CW$popup\fR = \f(CW$term\fR\->popup ($event)" 4
1083.IX Item "$popup = $term->popup ($event)" 1110.IX Item "$popup = $term->popup ($event)"
1084Creates a new \f(CW\*(C`urxvt::popup\*(C'\fR object that implements a popup menu. The 1111Creates a new \f(CW\*(C`urxvt::popup\*(C'\fR object that implements a popup menu. The
1085\&\f(CW$event\fR \fImust\fR be the event causing the menu to pop up (a button event, 1112\&\f(CW$event\fR \fImust\fR be the event causing the menu to pop up (a button event,
1086currently). 1113currently).
1087.ie n .IP "$cellwidth = $term\->strwidth ($string)" 4 1114.ie n .IP "$cellwidth\fR = \f(CW$term\->strwidth ($string)" 4
1088.el .IP "$cellwidth = \f(CW$term\fR\->strwidth ($string)" 4 1115.el .IP "\f(CW$cellwidth\fR = \f(CW$term\fR\->strwidth ($string)" 4
1089.IX Item "$cellwidth = $term->strwidth ($string)" 1116.IX Item "$cellwidth = $term->strwidth ($string)"
1090Returns the number of screen-cells this string would need. Correctly 1117Returns the number of screen-cells this string would need. Correctly
1091accounts for wide and combining characters. 1118accounts for wide and combining characters.
1092.ie n .IP "$octets = $term\->locale_encode ($string)" 4 1119.ie n .IP "$octets\fR = \f(CW$term\->locale_encode ($string)" 4
1093.el .IP "$octets = \f(CW$term\fR\->locale_encode ($string)" 4 1120.el .IP "\f(CW$octets\fR = \f(CW$term\fR\->locale_encode ($string)" 4
1094.IX Item "$octets = $term->locale_encode ($string)" 1121.IX Item "$octets = $term->locale_encode ($string)"
1095Convert the given text string into the corresponding locale encoding. 1122Convert the given text string into the corresponding locale encoding.
1096.ie n .IP "$string = $term\->locale_decode ($octets)" 4 1123.ie n .IP "$string\fR = \f(CW$term\->locale_decode ($octets)" 4
1097.el .IP "$string = \f(CW$term\fR\->locale_decode ($octets)" 4 1124.el .IP "\f(CW$string\fR = \f(CW$term\fR\->locale_decode ($octets)" 4
1098.IX Item "$string = $term->locale_decode ($octets)" 1125.IX Item "$string = $term->locale_decode ($octets)"
1099Convert the given locale-encoded octets into a perl string. 1126Convert the given locale-encoded octets into a perl string.
1100.ie n .IP "$term\->scr_xor_span ($beg_row, $beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle])" 4 1127.ie n .IP "$term\fR\->scr_xor_span ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle])" 4
1101.el .IP "$term\->scr_xor_span ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle\fR])" 4 1128.el .IP "\f(CW$term\fR\->scr_xor_span ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle\fR])" 4
1102.IX Item "$term->scr_xor_span ($beg_row, $beg_col, $end_row, $end_col[, $rstyle])" 1129.IX Item "$term->scr_xor_span ($beg_row, $beg_col, $end_row, $end_col[, $rstyle])"
1103XORs the rendition values in the given span with the provided value 1130XORs the rendition values in the given span with the provided value
1104(default: \f(CW\*(C`RS_RVid\*(C'\fR), which \fI\s-1MUST\s0 \s-1NOT\s0\fR contain font styles. Useful in 1131(default: \f(CW\*(C`RS_RVid\*(C'\fR), which \fI\s-1MUST\s0 \s-1NOT\s0\fR contain font styles. Useful in
1105refresh hooks to provide effects similar to the selection. 1132refresh hooks to provide effects similar to the selection.
1106.ie n .IP "$term\->scr_xor_rect ($beg_row, $beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle1\fR[, \f(CW$rstyle2]])" 4 1133.ie n .IP "$term\fR\->scr_xor_rect ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle1\fR[, \f(CW$rstyle2]])" 4
1107.el .IP "$term\->scr_xor_rect ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle1\fR[, \f(CW$rstyle2\fR]])" 4 1134.el .IP "\f(CW$term\fR\->scr_xor_rect ($beg_row, \f(CW$beg_col\fR, \f(CW$end_row\fR, \f(CW$end_col\fR[, \f(CW$rstyle1\fR[, \f(CW$rstyle2\fR]])" 4
1108.IX Item "$term->scr_xor_rect ($beg_row, $beg_col, $end_row, $end_col[, $rstyle1[, $rstyle2]])" 1135.IX Item "$term->scr_xor_rect ($beg_row, $beg_col, $end_row, $end_col[, $rstyle1[, $rstyle2]])"
1109Similar to \f(CW\*(C`scr_xor_span\*(C'\fR, but xors a rectangle instead. Trailing 1136Similar to \f(CW\*(C`scr_xor_span\*(C'\fR, but xors a rectangle instead. Trailing
1110whitespace will additionally be xored with the \f(CW$rstyle2\fR, which defaults 1137whitespace will additionally be xored with the \f(CW$rstyle2\fR, which defaults
1111to \f(CW\*(C`RS_RVid | RS_Uline\*(C'\fR, which removes reverse video again and underlines 1138to \f(CW\*(C`RS_RVid | RS_Uline\*(C'\fR, which removes reverse video again and underlines
1112it instead. Both styles \fI\s-1MUST\s0 \s-1NOT\s0\fR contain font styles. 1139it instead. Both styles \fI\s-1MUST\s0 \s-1NOT\s0\fR contain font styles.
1113.IP "$term\->scr_bell" 4 1140.ie n .IP "$term\->scr_bell" 4
1141.el .IP "\f(CW$term\fR\->scr_bell" 4
1114.IX Item "$term->scr_bell" 1142.IX Item "$term->scr_bell"
1115Ring the bell! 1143Ring the bell!
1116.IP "$term\->scr_add_lines ($string)" 4 1144.ie n .IP "$term\->scr_add_lines ($string)" 4
1145.el .IP "\f(CW$term\fR\->scr_add_lines ($string)" 4
1117.IX Item "$term->scr_add_lines ($string)" 1146.IX Item "$term->scr_add_lines ($string)"
1118Write the given text string to the screen, as if output by the application 1147Write the given text string to the screen, as if output by the application
1119running inside the terminal. It may not contain command sequences (escape 1148running inside the terminal. It may not contain command sequences (escape
1120codes), but is free to use line feeds, carriage returns and tabs. The 1149codes), but is free to use line feeds, carriage returns and tabs. The
1121string is a normal text string, not in locale-dependent encoding. 1150string is a normal text string, not in locale-dependent encoding.
1122.Sp 1151.Sp
1123Normally its not a good idea to use this function, as programs might be 1152Normally its not a good idea to use this function, as programs might be
1124confused by changes in cursor position or scrolling. Its useful inside a 1153confused by changes in cursor position or scrolling. Its useful inside a
1125\&\f(CW\*(C`on_add_lines\*(C'\fR hook, though. 1154\&\f(CW\*(C`on_add_lines\*(C'\fR hook, though.
1126.IP "$term\->scr_change_screen ($screen)" 4 1155.ie n .IP "$term\->scr_change_screen ($screen)" 4
1156.el .IP "\f(CW$term\fR\->scr_change_screen ($screen)" 4
1127.IX Item "$term->scr_change_screen ($screen)" 1157.IX Item "$term->scr_change_screen ($screen)"
1128Switch to given screen \- 0 primary, 1 secondary. 1158Switch to given screen \- 0 primary, 1 secondary.
1129.IP "$term\->cmd_parse ($octets)" 4 1159.ie n .IP "$term\->cmd_parse ($octets)" 4
1160.el .IP "\f(CW$term\fR\->cmd_parse ($octets)" 4
1130.IX Item "$term->cmd_parse ($octets)" 1161.IX Item "$term->cmd_parse ($octets)"
1131Similar to \f(CW\*(C`scr_add_lines\*(C'\fR, but the argument must be in the 1162Similar to \f(CW\*(C`scr_add_lines\*(C'\fR, but the argument must be in the
1132locale-specific encoding of the terminal and can contain command sequences 1163locale-specific encoding of the terminal and can contain command sequences
1133(escape codes) that will be interpreted. 1164(escape codes) that will be interpreted.
1134.IP "$term\->tt_write ($octets)" 4 1165.ie n .IP "$term\->tt_write ($octets)" 4
1166.el .IP "\f(CW$term\fR\->tt_write ($octets)" 4
1135.IX Item "$term->tt_write ($octets)" 1167.IX Item "$term->tt_write ($octets)"
1136Write the octets given in \f(CW$data\fR to the tty (i.e. as program input). To 1168Write the octets given in \f(CW$data\fR to the tty (i.e. as program input). To
1137pass characters instead of octets, you should convert your strings first 1169pass characters instead of octets, you should convert your strings first
1138to the locale-specific encoding using \f(CW\*(C`$term\->locale_encode\*(C'\fR. 1170to the locale-specific encoding using \f(CW\*(C`$term\->locale_encode\*(C'\fR.
1139.ie n .IP "$old_events = $term\->pty_ev_events ([$new_events])" 4 1171.ie n .IP "$old_events\fR = \f(CW$term\->pty_ev_events ([$new_events])" 4
1140.el .IP "$old_events = \f(CW$term\fR\->pty_ev_events ([$new_events])" 4 1172.el .IP "\f(CW$old_events\fR = \f(CW$term\fR\->pty_ev_events ([$new_events])" 4
1141.IX Item "$old_events = $term->pty_ev_events ([$new_events])" 1173.IX Item "$old_events = $term->pty_ev_events ([$new_events])"
1142Replaces the event mask of the pty watcher by the given event mask. Can 1174Replaces the event mask of the pty watcher by the given event mask. Can
1143be used to suppress input and output handling to the pty/tty. See the 1175be used to suppress input and output handling to the pty/tty. See the
1144description of \f(CW\*(C`urxvt::timer\->events\*(C'\fR. Make sure to always restore 1176description of \f(CW\*(C`urxvt::timer\->events\*(C'\fR. Make sure to always restore
1145the previous value. 1177the previous value.
1146.ie n .IP "$fd = $term\->pty_fd" 4 1178.ie n .IP "$fd\fR = \f(CW$term\->pty_fd" 4
1147.el .IP "$fd = \f(CW$term\fR\->pty_fd" 4 1179.el .IP "\f(CW$fd\fR = \f(CW$term\fR\->pty_fd" 4
1148.IX Item "$fd = $term->pty_fd" 1180.IX Item "$fd = $term->pty_fd"
1149Returns the master file descriptor for the pty in use, or \f(CW\*(C`\-1\*(C'\fR if no pty 1181Returns the master file descriptor for the pty in use, or \f(CW\*(C`\-1\*(C'\fR if no pty
1150is used. 1182is used.
1151.ie n .IP "$windowid = $term\->parent" 4 1183.ie n .IP "$windowid\fR = \f(CW$term\->parent" 4
1152.el .IP "$windowid = \f(CW$term\fR\->parent" 4 1184.el .IP "\f(CW$windowid\fR = \f(CW$term\fR\->parent" 4
1153.IX Item "$windowid = $term->parent" 1185.IX Item "$windowid = $term->parent"
1154Return the window id of the toplevel window. 1186Return the window id of the toplevel window.
1155.ie n .IP "$windowid = $term\->vt" 4 1187.ie n .IP "$windowid\fR = \f(CW$term\->vt" 4
1156.el .IP "$windowid = \f(CW$term\fR\->vt" 4 1188.el .IP "\f(CW$windowid\fR = \f(CW$term\fR\->vt" 4
1157.IX Item "$windowid = $term->vt" 1189.IX Item "$windowid = $term->vt"
1158Return the window id of the terminal window. 1190Return the window id of the terminal window.
1159.IP "$term\->vt_emask_add ($x_event_mask)" 4 1191.ie n .IP "$term\->vt_emask_add ($x_event_mask)" 4
1192.el .IP "\f(CW$term\fR\->vt_emask_add ($x_event_mask)" 4
1160.IX Item "$term->vt_emask_add ($x_event_mask)" 1193.IX Item "$term->vt_emask_add ($x_event_mask)"
1161Adds the specified events to the vt event mask. Useful e.g. when you want 1194Adds the specified events to the vt event mask. Useful e.g. when you want
1162to receive pointer events all the times: 1195to receive pointer events all the times:
1163.Sp 1196.Sp
1164.Vb 1 1197.Vb 1
1165\& $term->vt_emask_add (urxvt::PointerMotionMask); 1198\& $term\->vt_emask_add (urxvt::PointerMotionMask);
1166.Ve 1199.Ve
1167.IP "$term\->focus_in" 4 1200.ie n .IP "$term\->focus_in" 4
1201.el .IP "\f(CW$term\fR\->focus_in" 4
1168.IX Item "$term->focus_in" 1202.IX Item "$term->focus_in"
1169.PD 0 1203.PD 0
1170.IP "$term\->focus_out" 4 1204.ie n .IP "$term\->focus_out" 4
1205.el .IP "\f(CW$term\fR\->focus_out" 4
1171.IX Item "$term->focus_out" 1206.IX Item "$term->focus_out"
1172.ie n .IP "$term\->key_press ($state, $keycode\fR[, \f(CW$time])" 4 1207.ie n .IP "$term\fR\->key_press ($state, \f(CW$keycode\fR[, \f(CW$time])" 4
1173.el .IP "$term\->key_press ($state, \f(CW$keycode\fR[, \f(CW$time\fR])" 4 1208.el .IP "\f(CW$term\fR\->key_press ($state, \f(CW$keycode\fR[, \f(CW$time\fR])" 4
1174.IX Item "$term->key_press ($state, $keycode[, $time])" 1209.IX Item "$term->key_press ($state, $keycode[, $time])"
1175.ie n .IP "$term\->key_release ($state, $keycode\fR[, \f(CW$time])" 4 1210.ie n .IP "$term\fR\->key_release ($state, \f(CW$keycode\fR[, \f(CW$time])" 4
1176.el .IP "$term\->key_release ($state, \f(CW$keycode\fR[, \f(CW$time\fR])" 4 1211.el .IP "\f(CW$term\fR\->key_release ($state, \f(CW$keycode\fR[, \f(CW$time\fR])" 4
1177.IX Item "$term->key_release ($state, $keycode[, $time])" 1212.IX Item "$term->key_release ($state, $keycode[, $time])"
1178.PD 1213.PD
1179Deliver various fake events to to terminal. 1214Deliver various fake events to to terminal.
1180.ie n .IP "$window_width = $term\->width" 4 1215.ie n .IP "$window_width\fR = \f(CW$term\->width" 4
1181.el .IP "$window_width = \f(CW$term\fR\->width" 4 1216.el .IP "\f(CW$window_width\fR = \f(CW$term\fR\->width" 4
1182.IX Item "$window_width = $term->width" 1217.IX Item "$window_width = $term->width"
1183.PD 0 1218.PD 0
1184.ie n .IP "$window_height = $term\->height" 4 1219.ie n .IP "$window_height\fR = \f(CW$term\->height" 4
1185.el .IP "$window_height = \f(CW$term\fR\->height" 4 1220.el .IP "\f(CW$window_height\fR = \f(CW$term\fR\->height" 4
1186.IX Item "$window_height = $term->height" 1221.IX Item "$window_height = $term->height"
1187.ie n .IP "$font_width = $term\->fwidth" 4 1222.ie n .IP "$font_width\fR = \f(CW$term\->fwidth" 4
1188.el .IP "$font_width = \f(CW$term\fR\->fwidth" 4 1223.el .IP "\f(CW$font_width\fR = \f(CW$term\fR\->fwidth" 4
1189.IX Item "$font_width = $term->fwidth" 1224.IX Item "$font_width = $term->fwidth"
1190.ie n .IP "$font_height = $term\->fheight" 4 1225.ie n .IP "$font_height\fR = \f(CW$term\->fheight" 4
1191.el .IP "$font_height = \f(CW$term\fR\->fheight" 4 1226.el .IP "\f(CW$font_height\fR = \f(CW$term\fR\->fheight" 4
1192.IX Item "$font_height = $term->fheight" 1227.IX Item "$font_height = $term->fheight"
1193.ie n .IP "$font_ascent = $term\->fbase" 4 1228.ie n .IP "$font_ascent\fR = \f(CW$term\->fbase" 4
1194.el .IP "$font_ascent = \f(CW$term\fR\->fbase" 4 1229.el .IP "\f(CW$font_ascent\fR = \f(CW$term\fR\->fbase" 4
1195.IX Item "$font_ascent = $term->fbase" 1230.IX Item "$font_ascent = $term->fbase"
1196.ie n .IP "$terminal_rows = $term\->nrow" 4 1231.ie n .IP "$terminal_rows\fR = \f(CW$term\->nrow" 4
1197.el .IP "$terminal_rows = \f(CW$term\fR\->nrow" 4 1232.el .IP "\f(CW$terminal_rows\fR = \f(CW$term\fR\->nrow" 4
1198.IX Item "$terminal_rows = $term->nrow" 1233.IX Item "$terminal_rows = $term->nrow"
1199.ie n .IP "$terminal_columns = $term\->ncol" 4 1234.ie n .IP "$terminal_columns\fR = \f(CW$term\->ncol" 4
1200.el .IP "$terminal_columns = \f(CW$term\fR\->ncol" 4 1235.el .IP "\f(CW$terminal_columns\fR = \f(CW$term\fR\->ncol" 4
1201.IX Item "$terminal_columns = $term->ncol" 1236.IX Item "$terminal_columns = $term->ncol"
1202.ie n .IP "$has_focus = $term\->focus" 4 1237.ie n .IP "$has_focus\fR = \f(CW$term\->focus" 4
1203.el .IP "$has_focus = \f(CW$term\fR\->focus" 4 1238.el .IP "\f(CW$has_focus\fR = \f(CW$term\fR\->focus" 4
1204.IX Item "$has_focus = $term->focus" 1239.IX Item "$has_focus = $term->focus"
1205.ie n .IP "$is_mapped = $term\->mapped" 4 1240.ie n .IP "$is_mapped\fR = \f(CW$term\->mapped" 4
1206.el .IP "$is_mapped = \f(CW$term\fR\->mapped" 4 1241.el .IP "\f(CW$is_mapped\fR = \f(CW$term\fR\->mapped" 4
1207.IX Item "$is_mapped = $term->mapped" 1242.IX Item "$is_mapped = $term->mapped"
1208.ie n .IP "$max_scrollback = $term\->saveLines" 4 1243.ie n .IP "$max_scrollback\fR = \f(CW$term\->saveLines" 4
1209.el .IP "$max_scrollback = \f(CW$term\fR\->saveLines" 4 1244.el .IP "\f(CW$max_scrollback\fR = \f(CW$term\fR\->saveLines" 4
1210.IX Item "$max_scrollback = $term->saveLines" 1245.IX Item "$max_scrollback = $term->saveLines"
1211.ie n .IP "$nrow_plus_saveLines = $term\->total_rows" 4 1246.ie n .IP "$nrow_plus_saveLines\fR = \f(CW$term\->total_rows" 4
1212.el .IP "$nrow_plus_saveLines = \f(CW$term\fR\->total_rows" 4 1247.el .IP "\f(CW$nrow_plus_saveLines\fR = \f(CW$term\fR\->total_rows" 4
1213.IX Item "$nrow_plus_saveLines = $term->total_rows" 1248.IX Item "$nrow_plus_saveLines = $term->total_rows"
1214.ie n .IP "$topmost_scrollback_row = $term\->top_row" 4 1249.ie n .IP "$topmost_scrollback_row\fR = \f(CW$term\->top_row" 4
1215.el .IP "$topmost_scrollback_row = \f(CW$term\fR\->top_row" 4 1250.el .IP "\f(CW$topmost_scrollback_row\fR = \f(CW$term\fR\->top_row" 4
1216.IX Item "$topmost_scrollback_row = $term->top_row" 1251.IX Item "$topmost_scrollback_row = $term->top_row"
1217.PD 1252.PD
1218Return various integers describing terminal characteristics. 1253Return various integers describing terminal characteristics.
1219.ie n .IP "$x_display = $term\->display_id" 4 1254.ie n .IP "$x_display\fR = \f(CW$term\->display_id" 4
1220.el .IP "$x_display = \f(CW$term\fR\->display_id" 4 1255.el .IP "\f(CW$x_display\fR = \f(CW$term\fR\->display_id" 4
1221.IX Item "$x_display = $term->display_id" 1256.IX Item "$x_display = $term->display_id"
1222Return the \s-1DISPLAY\s0 used by rxvt\-unicode. 1257Return the \s-1DISPLAY\s0 used by rxvt\-unicode.
1223.ie n .IP "$lc_ctype = $term\->locale" 4 1258.ie n .IP "$lc_ctype\fR = \f(CW$term\->locale" 4
1224.el .IP "$lc_ctype = \f(CW$term\fR\->locale" 4 1259.el .IP "\f(CW$lc_ctype\fR = \f(CW$term\fR\->locale" 4
1225.IX Item "$lc_ctype = $term->locale" 1260.IX Item "$lc_ctype = $term->locale"
1226Returns the \s-1LC_CTYPE\s0 category string used by this rxvt\-unicode. 1261Returns the \s-1LC_CTYPE\s0 category string used by this rxvt\-unicode.
1227.ie n .IP "$env = $term\->env" 4 1262.ie n .IP "$env\fR = \f(CW$term\->env" 4
1228.el .IP "$env = \f(CW$term\fR\->env" 4 1263.el .IP "\f(CW$env\fR = \f(CW$term\fR\->env" 4
1229.IX Item "$env = $term->env" 1264.IX Item "$env = $term->env"
1230Returns a copy of the environment in effect for the terminal as a hashref 1265Returns a copy of the environment in effect for the terminal as a hashref
1231similar to \f(CW\*(C`\e%ENV\*(C'\fR. 1266similar to \f(CW\*(C`\e%ENV\*(C'\fR.
1232.ie n .IP "@envv = $term\->envv" 4 1267.ie n .IP "@envv\fR = \f(CW$term\->envv" 4
1233.el .IP "@envv = \f(CW$term\fR\->envv" 4 1268.el .IP "\f(CW@envv\fR = \f(CW$term\fR\->envv" 4
1234.IX Item "@envv = $term->envv" 1269.IX Item "@envv = $term->envv"
1235Returns the environment as array of strings of the form \f(CW\*(C`VAR=VALUE\*(C'\fR. 1270Returns the environment as array of strings of the form \f(CW\*(C`VAR=VALUE\*(C'\fR.
1236.ie n .IP "@argv = $term\->argv" 4 1271.ie n .IP "@argv\fR = \f(CW$term\->argv" 4
1237.el .IP "@argv = \f(CW$term\fR\->argv" 4 1272.el .IP "\f(CW@argv\fR = \f(CW$term\fR\->argv" 4
1238.IX Item "@argv = $term->argv" 1273.IX Item "@argv = $term->argv"
1239Return the argument vector as this terminal, similar to \f(CW@ARGV\fR, but 1274Return the argument vector as this terminal, similar to \f(CW@ARGV\fR, but
1240includes the program name as first element. 1275includes the program name as first element.
1241.ie n .IP "$modifiermask = $term\->ModLevel3Mask" 4 1276.ie n .IP "$modifiermask\fR = \f(CW$term\->ModLevel3Mask" 4
1242.el .IP "$modifiermask = \f(CW$term\fR\->ModLevel3Mask" 4 1277.el .IP "\f(CW$modifiermask\fR = \f(CW$term\fR\->ModLevel3Mask" 4
1243.IX Item "$modifiermask = $term->ModLevel3Mask" 1278.IX Item "$modifiermask = $term->ModLevel3Mask"
1244.PD 0 1279.PD 0
1245.ie n .IP "$modifiermask = $term\->ModMetaMask" 4 1280.ie n .IP "$modifiermask\fR = \f(CW$term\->ModMetaMask" 4
1246.el .IP "$modifiermask = \f(CW$term\fR\->ModMetaMask" 4 1281.el .IP "\f(CW$modifiermask\fR = \f(CW$term\fR\->ModMetaMask" 4
1247.IX Item "$modifiermask = $term->ModMetaMask" 1282.IX Item "$modifiermask = $term->ModMetaMask"
1248.ie n .IP "$modifiermask = $term\->ModNumLockMask" 4 1283.ie n .IP "$modifiermask\fR = \f(CW$term\->ModNumLockMask" 4
1249.el .IP "$modifiermask = \f(CW$term\fR\->ModNumLockMask" 4 1284.el .IP "\f(CW$modifiermask\fR = \f(CW$term\fR\->ModNumLockMask" 4
1250.IX Item "$modifiermask = $term->ModNumLockMask" 1285.IX Item "$modifiermask = $term->ModNumLockMask"
1251.PD 1286.PD
1252Return the modifier masks corresponding to the \*(L"\s-1ISO\s0 Level 3 Shift\*(R" (often 1287Return the modifier masks corresponding to the \*(L"\s-1ISO\s0 Level 3 Shift\*(R" (often
1253AltGr), the meta key (often Alt) and the num lock key, if applicable. 1288AltGr), the meta key (often Alt) and the num lock key, if applicable.
1254.ie n .IP "$screen = $term\->current_screen" 4 1289.ie n .IP "$screen\fR = \f(CW$term\->current_screen" 4
1255.el .IP "$screen = \f(CW$term\fR\->current_screen" 4 1290.el .IP "\f(CW$screen\fR = \f(CW$term\fR\->current_screen" 4
1256.IX Item "$screen = $term->current_screen" 1291.IX Item "$screen = $term->current_screen"
1257Returns the currently displayed screen (0 primary, 1 secondary). 1292Returns the currently displayed screen (0 primary, 1 secondary).
1258.ie n .IP "$cursor_is_hidden = $term\->hidden_cursor" 4 1293.ie n .IP "$cursor_is_hidden\fR = \f(CW$term\->hidden_cursor" 4
1259.el .IP "$cursor_is_hidden = \f(CW$term\fR\->hidden_cursor" 4 1294.el .IP "\f(CW$cursor_is_hidden\fR = \f(CW$term\fR\->hidden_cursor" 4
1260.IX Item "$cursor_is_hidden = $term->hidden_cursor" 1295.IX Item "$cursor_is_hidden = $term->hidden_cursor"
1261Returns wether the cursor is currently hidden or not. 1296Returns wether the cursor is currently hidden or not.
1262.ie n .IP "$view_start = $term\->view_start ([$newvalue])" 4 1297.ie n .IP "$view_start\fR = \f(CW$term\->view_start ([$newvalue])" 4
1263.el .IP "$view_start = \f(CW$term\fR\->view_start ([$newvalue])" 4 1298.el .IP "\f(CW$view_start\fR = \f(CW$term\fR\->view_start ([$newvalue])" 4
1264.IX Item "$view_start = $term->view_start ([$newvalue])" 1299.IX Item "$view_start = $term->view_start ([$newvalue])"
1265Returns the row number of the topmost displayed line. Maximum value is 1300Returns the row number of the topmost displayed line. Maximum value is
1266\&\f(CW0\fR, which displays the normal terminal contents. Lower values scroll 1301\&\f(CW0\fR, which displays the normal terminal contents. Lower values scroll
1267this many lines into the scrollback buffer. 1302this many lines into the scrollback buffer.
1268.IP "$term\->want_refresh" 4 1303.ie n .IP "$term\->want_refresh" 4
1304.el .IP "\f(CW$term\fR\->want_refresh" 4
1269.IX Item "$term->want_refresh" 1305.IX Item "$term->want_refresh"
1270Requests a screen refresh. At the next opportunity, rxvt-unicode will 1306Requests a screen refresh. At the next opportunity, rxvt-unicode will
1271compare the on-screen display with its stored representation. If they 1307compare the on-screen display with its stored representation. If they
1272differ, it redraws the differences. 1308differ, it redraws the differences.
1273.Sp 1309.Sp
1274Used after changing terminal contents to display them. 1310Used after changing terminal contents to display them.
1275.ie n .IP "$text = $term\fR\->ROW_t ($row_number[, \f(CW$new_text\fR[, \f(CW$start_col]])" 4 1311.ie n .IP "$text\fR = \f(CW$term\fR\->ROW_t ($row_number[, \f(CW$new_text\fR[, \f(CW$start_col]])" 4
1276.el .IP "$text = \f(CW$term\fR\->ROW_t ($row_number[, \f(CW$new_text\fR[, \f(CW$start_col\fR]])" 4 1312.el .IP "\f(CW$text\fR = \f(CW$term\fR\->ROW_t ($row_number[, \f(CW$new_text\fR[, \f(CW$start_col\fR]])" 4
1277.IX Item "$text = $term->ROW_t ($row_number[, $new_text[, $start_col]])" 1313.IX Item "$text = $term->ROW_t ($row_number[, $new_text[, $start_col]])"
1278Returns the text of the entire row with number \f(CW$row_number\fR. Row \f(CW0\fR 1314Returns the text of the entire row with number \f(CW$row_number\fR. Row \f(CW0\fR
1279is the topmost terminal line, row \f(CW\*(C`$term\->$ncol\-1\*(C'\fR is the bottommost 1315is the topmost terminal line, row \f(CW\*(C`$term\->$ncol\-1\*(C'\fR is the bottommost
1280terminal line. The scrollback buffer starts at line \f(CW\*(C`\-1\*(C'\fR and extends to 1316terminal line. The scrollback buffer starts at line \f(CW\*(C`\-1\*(C'\fR and extends to
1281line \f(CW\*(C`\-$term\->nsaved\*(C'\fR. Nothing will be returned if a nonexistent line 1317line \f(CW\*(C`\-$term\->nsaved\*(C'\fR. Nothing will be returned if a nonexistent line
1296that \f(CW\*(C`substr\*(C'\fR and similar functions work on screen cells and not on 1332that \f(CW\*(C`substr\*(C'\fR and similar functions work on screen cells and not on
1297characters. 1333characters.
1298.Sp 1334.Sp
1299The methods \f(CW\*(C`$term\->special_encode\*(C'\fR and \f(CW\*(C`$term\->special_decode\*(C'\fR 1335The methods \f(CW\*(C`$term\->special_encode\*(C'\fR and \f(CW\*(C`$term\->special_decode\*(C'\fR
1300can be used to convert normal strings into this encoding and vice versa. 1336can be used to convert normal strings into this encoding and vice versa.
1301.ie n .IP "$rend = $term\fR\->ROW_r ($row_number[, \f(CW$new_rend\fR[, \f(CW$start_col]])" 4 1337.ie n .IP "$rend\fR = \f(CW$term\fR\->ROW_r ($row_number[, \f(CW$new_rend\fR[, \f(CW$start_col]])" 4
1302.el .IP "$rend = \f(CW$term\fR\->ROW_r ($row_number[, \f(CW$new_rend\fR[, \f(CW$start_col\fR]])" 4 1338.el .IP "\f(CW$rend\fR = \f(CW$term\fR\->ROW_r ($row_number[, \f(CW$new_rend\fR[, \f(CW$start_col\fR]])" 4
1303.IX Item "$rend = $term->ROW_r ($row_number[, $new_rend[, $start_col]])" 1339.IX Item "$rend = $term->ROW_r ($row_number[, $new_rend[, $start_col]])"
1304Like \f(CW\*(C`$term\->ROW_t\*(C'\fR, but returns an arrayref with rendition 1340Like \f(CW\*(C`$term\->ROW_t\*(C'\fR, but returns an arrayref with rendition
1305bitsets. Rendition bitsets contain information about colour, font, font 1341bitsets. Rendition bitsets contain information about colour, font, font
1306styles and similar information. See also \f(CW\*(C`$term\->ROW_t\*(C'\fR. 1342styles and similar information. See also \f(CW\*(C`$term\->ROW_t\*(C'\fR.
1307.Sp 1343.Sp
1308When setting rendition, the font mask will be ignored. 1344When setting rendition, the font mask will be ignored.
1309.Sp 1345.Sp
1310See the section on \s-1RENDITION\s0, above. 1346See the section on \s-1RENDITION\s0, above.
1311.ie n .IP "$length = $term\fR\->ROW_l ($row_number[, \f(CW$new_length])" 4 1347.ie n .IP "$length\fR = \f(CW$term\fR\->ROW_l ($row_number[, \f(CW$new_length])" 4
1312.el .IP "$length = \f(CW$term\fR\->ROW_l ($row_number[, \f(CW$new_length\fR])" 4 1348.el .IP "\f(CW$length\fR = \f(CW$term\fR\->ROW_l ($row_number[, \f(CW$new_length\fR])" 4
1313.IX Item "$length = $term->ROW_l ($row_number[, $new_length])" 1349.IX Item "$length = $term->ROW_l ($row_number[, $new_length])"
1314Returns the number of screen cells that are in use (\*(L"the line 1350Returns the number of screen cells that are in use (\*(L"the line
1315length\*(R"). Unlike the urxvt core, this returns \f(CW\*(C`$term\->ncol\*(C'\fR if the 1351length\*(R"). Unlike the urxvt core, this returns \f(CW\*(C`$term\->ncol\*(C'\fR if the
1316line is joined with the following one. 1352line is joined with the following one.
1317.ie n .IP "$bool = $term\->is_longer ($row_number)" 4 1353.ie n .IP "$bool\fR = \f(CW$term\->is_longer ($row_number)" 4
1318.el .IP "$bool = \f(CW$term\fR\->is_longer ($row_number)" 4 1354.el .IP "\f(CW$bool\fR = \f(CW$term\fR\->is_longer ($row_number)" 4
1319.IX Item "$bool = $term->is_longer ($row_number)" 1355.IX Item "$bool = $term->is_longer ($row_number)"
1320Returns true if the row is part of a multiple-row logical \*(L"line\*(R" (i.e. 1356Returns true if the row is part of a multiple-row logical \*(L"line\*(R" (i.e.
1321joined with the following row), which means all characters are in use 1357joined with the following row), which means all characters are in use
1322and it is continued on the next row (and possibly a continuation of the 1358and it is continued on the next row (and possibly a continuation of the
1323previous row(s)). 1359previous row(s)).
1324.ie n .IP "$line = $term\->line ($row_number)" 4 1360.ie n .IP "$line\fR = \f(CW$term\->line ($row_number)" 4
1325.el .IP "$line = \f(CW$term\fR\->line ($row_number)" 4 1361.el .IP "\f(CW$line\fR = \f(CW$term\fR\->line ($row_number)" 4
1326.IX Item "$line = $term->line ($row_number)" 1362.IX Item "$line = $term->line ($row_number)"
1327Create and return a new \f(CW\*(C`urxvt::line\*(C'\fR object that stores information 1363Create and return a new \f(CW\*(C`urxvt::line\*(C'\fR object that stores information
1328about the logical line that row \f(CW$row_number\fR is part of. It supports the 1364about the logical line that row \f(CW$row_number\fR is part of. It supports the
1329following methods: 1365following methods:
1330.RS 4 1366.RS 4
1331.ie n .IP "$text = $line\->t ([$new_text])" 4 1367.ie n .IP "$text\fR = \f(CW$line\->t ([$new_text])" 4
1332.el .IP "$text = \f(CW$line\fR\->t ([$new_text])" 4 1368.el .IP "\f(CW$text\fR = \f(CW$line\fR\->t ([$new_text])" 4
1333.IX Item "$text = $line->t ([$new_text])" 1369.IX Item "$text = $line->t ([$new_text])"
1334Returns or replaces the full text of the line, similar to \f(CW\*(C`ROW_t\*(C'\fR 1370Returns or replaces the full text of the line, similar to \f(CW\*(C`ROW_t\*(C'\fR
1335.ie n .IP "$rend = $line\->r ([$new_rend])" 4 1371.ie n .IP "$rend\fR = \f(CW$line\->r ([$new_rend])" 4
1336.el .IP "$rend = \f(CW$line\fR\->r ([$new_rend])" 4 1372.el .IP "\f(CW$rend\fR = \f(CW$line\fR\->r ([$new_rend])" 4
1337.IX Item "$rend = $line->r ([$new_rend])" 1373.IX Item "$rend = $line->r ([$new_rend])"
1338Returns or replaces the full rendition array of the line, similar to \f(CW\*(C`ROW_r\*(C'\fR 1374Returns or replaces the full rendition array of the line, similar to \f(CW\*(C`ROW_r\*(C'\fR
1339.ie n .IP "$length = $line\->l" 4 1375.ie n .IP "$length\fR = \f(CW$line\->l" 4
1340.el .IP "$length = \f(CW$line\fR\->l" 4 1376.el .IP "\f(CW$length\fR = \f(CW$line\fR\->l" 4
1341.IX Item "$length = $line->l" 1377.IX Item "$length = $line->l"
1342Returns the length of the line in cells, similar to \f(CW\*(C`ROW_l\*(C'\fR. 1378Returns the length of the line in cells, similar to \f(CW\*(C`ROW_l\*(C'\fR.
1343.ie n .IP "$rownum = $line\->beg" 4 1379.ie n .IP "$rownum\fR = \f(CW$line\->beg" 4
1344.el .IP "$rownum = \f(CW$line\fR\->beg" 4 1380.el .IP "\f(CW$rownum\fR = \f(CW$line\fR\->beg" 4
1345.IX Item "$rownum = $line->beg" 1381.IX Item "$rownum = $line->beg"
1346.PD 0 1382.PD 0
1347.ie n .IP "$rownum = $line\->end" 4 1383.ie n .IP "$rownum\fR = \f(CW$line\->end" 4
1348.el .IP "$rownum = \f(CW$line\fR\->end" 4 1384.el .IP "\f(CW$rownum\fR = \f(CW$line\fR\->end" 4
1349.IX Item "$rownum = $line->end" 1385.IX Item "$rownum = $line->end"
1350.PD 1386.PD
1351Return the row number of the first/last row of the line, respectively. 1387Return the row number of the first/last row of the line, respectively.
1352.ie n .IP "$offset = $line\fR\->offset_of ($row, \f(CW$col)" 4 1388.ie n .IP "$offset\fR = \f(CW$line\fR\->offset_of ($row, \f(CW$col)" 4
1353.el .IP "$offset = \f(CW$line\fR\->offset_of ($row, \f(CW$col\fR)" 4 1389.el .IP "\f(CW$offset\fR = \f(CW$line\fR\->offset_of ($row, \f(CW$col\fR)" 4
1354.IX Item "$offset = $line->offset_of ($row, $col)" 1390.IX Item "$offset = $line->offset_of ($row, $col)"
1355Returns the character offset of the given row|col pair within the logical 1391Returns the character offset of the given row|col pair within the logical
1356line. Works for rows outside the line, too, and returns corresponding 1392line. Works for rows outside the line, too, and returns corresponding
1357offsets outside the string. 1393offsets outside the string.
1358.ie n .IP "($row, $col\fR) = \f(CW$line\->coord_of ($offset)" 4 1394.ie n .IP "($row, $col\fR) = \f(CW$line\->coord_of ($offset)" 4
1360.IX Item "($row, $col) = $line->coord_of ($offset)" 1396.IX Item "($row, $col) = $line->coord_of ($offset)"
1361Translates a string offset into terminal coordinates again. 1397Translates a string offset into terminal coordinates again.
1362.RE 1398.RE
1363.RS 4 1399.RS 4
1364.RE 1400.RE
1365.ie n .IP "$text = $term\fR\->special_encode \f(CW$string" 4 1401.ie n .IP "$text\fR = \f(CW$term\fR\->special_encode \f(CW$string" 4
1366.el .IP "$text = \f(CW$term\fR\->special_encode \f(CW$string\fR" 4 1402.el .IP "\f(CW$text\fR = \f(CW$term\fR\->special_encode \f(CW$string\fR" 4
1367.IX Item "$text = $term->special_encode $string" 1403.IX Item "$text = $term->special_encode $string"
1368Converts a perl string into the special encoding used by rxvt\-unicode, 1404Converts a perl string into the special encoding used by rxvt\-unicode,
1369where one character corresponds to one screen cell. See 1405where one character corresponds to one screen cell. See
1370\&\f(CW\*(C`$term\->ROW_t\*(C'\fR for details. 1406\&\f(CW\*(C`$term\->ROW_t\*(C'\fR for details.
1371.ie n .IP "$string = $term\fR\->special_decode \f(CW$text" 4 1407.ie n .IP "$string\fR = \f(CW$term\fR\->special_decode \f(CW$text" 4
1372.el .IP "$string = \f(CW$term\fR\->special_decode \f(CW$text\fR" 4 1408.el .IP "\f(CW$string\fR = \f(CW$term\fR\->special_decode \f(CW$text\fR" 4
1373.IX Item "$string = $term->special_decode $text" 1409.IX Item "$string = $term->special_decode $text"
1374Converts rxvt-unicodes text reprsentation into a perl string. See 1410Converts rxvt-unicodes text reprsentation into a perl string. See
1375\&\f(CW\*(C`$term\->ROW_t\*(C'\fR for details. 1411\&\f(CW\*(C`$term\->ROW_t\*(C'\fR for details.
1376.ie n .IP "$success = $term\fR\->grab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\->vt])" 4 1412.ie n .IP "$success\fR = \f(CW$term\fR\->grab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\->vt])" 4
1377.el .IP "$success = \f(CW$term\fR\->grab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\fR\->vt])" 4 1413.el .IP "\f(CW$success\fR = \f(CW$term\fR\->grab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\fR\->vt])" 4
1378.IX Item "$success = $term->grab_button ($button, $modifiermask[, $window = $term->vt])" 1414.IX Item "$success = $term->grab_button ($button, $modifiermask[, $window = $term->vt])"
1379.PD 0 1415.PD 0
1380.ie n .IP "$term\->ungrab_button ($button, $modifiermask\fR[, \f(CW$window\fR = \f(CW$term\->vt])" 4 1416.ie n .IP "$term\fR\->ungrab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\->vt])" 4
1381.el .IP "$term\->ungrab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\fR\->vt])" 4 1417.el .IP "\f(CW$term\fR\->ungrab_button ($button, \f(CW$modifiermask\fR[, \f(CW$window\fR = \f(CW$term\fR\->vt])" 4
1382.IX Item "$term->ungrab_button ($button, $modifiermask[, $window = $term->vt])" 1418.IX Item "$term->ungrab_button ($button, $modifiermask[, $window = $term->vt])"
1383.PD 1419.PD
1384Register/unregister a synchronous button grab. See the XGrabButton 1420Register/unregister a synchronous button grab. See the XGrabButton
1385manpage. 1421manpage.
1386.ie n .IP "$success = $term\fR\->grab ($eventtime[, \f(CW$sync])" 4 1422.ie n .IP "$success\fR = \f(CW$term\fR\->grab ($eventtime[, \f(CW$sync])" 4
1387.el .IP "$success = \f(CW$term\fR\->grab ($eventtime[, \f(CW$sync\fR])" 4 1423.el .IP "\f(CW$success\fR = \f(CW$term\fR\->grab ($eventtime[, \f(CW$sync\fR])" 4
1388.IX Item "$success = $term->grab ($eventtime[, $sync])" 1424.IX Item "$success = $term->grab ($eventtime[, $sync])"
1389Calls XGrabPointer and XGrabKeyboard in asynchronous (default) or 1425Calls XGrabPointer and XGrabKeyboard in asynchronous (default) or
1390synchronous (\f(CW$sync\fR is true). Also remembers the grab timestampe. 1426synchronous (\f(CW$sync\fR is true). Also remembers the grab timestampe.
1391.IP "$term\->allow_events_async" 4 1427.ie n .IP "$term\->allow_events_async" 4
1428.el .IP "\f(CW$term\fR\->allow_events_async" 4
1392.IX Item "$term->allow_events_async" 1429.IX Item "$term->allow_events_async"
1393Calls XAllowEvents with AsyncBoth for the most recent grab. 1430Calls XAllowEvents with AsyncBoth for the most recent grab.
1394.IP "$term\->allow_events_sync" 4 1431.ie n .IP "$term\->allow_events_sync" 4
1432.el .IP "\f(CW$term\fR\->allow_events_sync" 4
1395.IX Item "$term->allow_events_sync" 1433.IX Item "$term->allow_events_sync"
1396Calls XAllowEvents with SyncBoth for the most recent grab. 1434Calls XAllowEvents with SyncBoth for the most recent grab.
1397.IP "$term\->allow_events_replay" 4 1435.ie n .IP "$term\->allow_events_replay" 4
1436.el .IP "\f(CW$term\fR\->allow_events_replay" 4
1398.IX Item "$term->allow_events_replay" 1437.IX Item "$term->allow_events_replay"
1399Calls XAllowEvents with both ReplayPointer and ReplayKeyboard for the most 1438Calls XAllowEvents with both ReplayPointer and ReplayKeyboard for the most
1400recent grab. 1439recent grab.
1401.IP "$term\->ungrab" 4 1440.ie n .IP "$term\->ungrab" 4
1441.el .IP "\f(CW$term\fR\->ungrab" 4
1402.IX Item "$term->ungrab" 1442.IX Item "$term->ungrab"
1403Calls XUngrab for the most recent grab. Is called automatically on 1443Calls XUngrab for the most recent grab. Is called automatically on
1404evaluation errors, as it is better to lose the grab in the error case as 1444evaluation errors, as it is better to lose the grab in the error case as
1405the session. 1445the session.
1406.ie n .IP "$atom = $term\fR\->XInternAtom ($atom_name[, \f(CW$only_if_exists])" 4 1446.ie n .IP "$atom\fR = \f(CW$term\fR\->XInternAtom ($atom_name[, \f(CW$only_if_exists])" 4
1407.el .IP "$atom = \f(CW$term\fR\->XInternAtom ($atom_name[, \f(CW$only_if_exists\fR])" 4 1447.el .IP "\f(CW$atom\fR = \f(CW$term\fR\->XInternAtom ($atom_name[, \f(CW$only_if_exists\fR])" 4
1408.IX Item "$atom = $term->XInternAtom ($atom_name[, $only_if_exists])" 1448.IX Item "$atom = $term->XInternAtom ($atom_name[, $only_if_exists])"
1409.PD 0 1449.PD 0
1410.ie n .IP "$atom_name = $term\->XGetAtomName ($atom)" 4 1450.ie n .IP "$atom_name\fR = \f(CW$term\->XGetAtomName ($atom)" 4
1411.el .IP "$atom_name = \f(CW$term\fR\->XGetAtomName ($atom)" 4 1451.el .IP "\f(CW$atom_name\fR = \f(CW$term\fR\->XGetAtomName ($atom)" 4
1412.IX Item "$atom_name = $term->XGetAtomName ($atom)" 1452.IX Item "$atom_name = $term->XGetAtomName ($atom)"
1413.ie n .IP "@atoms = $term\->XListProperties ($window)" 4 1453.ie n .IP "@atoms\fR = \f(CW$term\->XListProperties ($window)" 4
1414.el .IP "@atoms = \f(CW$term\fR\->XListProperties ($window)" 4 1454.el .IP "\f(CW@atoms\fR = \f(CW$term\fR\->XListProperties ($window)" 4
1415.IX Item "@atoms = $term->XListProperties ($window)" 1455.IX Item "@atoms = $term->XListProperties ($window)"
1416.ie n .IP "($type,$format,$octets) = $term\fR\->XGetWindowProperty ($window, \f(CW$property)" 4 1456.ie n .IP "($type,$format,$octets) = $term\fR\->XGetWindowProperty ($window, \f(CW$property)" 4
1417.el .IP "($type,$format,$octets) = \f(CW$term\fR\->XGetWindowProperty ($window, \f(CW$property\fR)" 4 1457.el .IP "($type,$format,$octets) = \f(CW$term\fR\->XGetWindowProperty ($window, \f(CW$property\fR)" 4
1418.IX Item "($type,$format,$octets) = $term->XGetWindowProperty ($window, $property)" 1458.IX Item "($type,$format,$octets) = $term->XGetWindowProperty ($window, $property)"
1419.ie n .IP "$term\->XChangeWindowProperty ($window, $property\fR, \f(CW$type\fR, \f(CW$format\fR, \f(CW$octets)" 4 1459.ie n .IP "$term\fR\->XChangeWindowProperty ($window, \f(CW$property\fR, \f(CW$type\fR, \f(CW$format\fR, \f(CW$octets)" 4
1420.el .IP "$term\->XChangeWindowProperty ($window, \f(CW$property\fR, \f(CW$type\fR, \f(CW$format\fR, \f(CW$octets\fR)" 4 1460.el .IP "\f(CW$term\fR\->XChangeWindowProperty ($window, \f(CW$property\fR, \f(CW$type\fR, \f(CW$format\fR, \f(CW$octets\fR)" 4
1421.IX Item "$term->XChangeWindowProperty ($window, $property, $type, $format, $octets)" 1461.IX Item "$term->XChangeWindowProperty ($window, $property, $type, $format, $octets)"
1422.ie n .IP "$term\->XDeleteProperty ($window, $property)" 4 1462.ie n .IP "$term\fR\->XDeleteProperty ($window, \f(CW$property)" 4
1423.el .IP "$term\->XDeleteProperty ($window, \f(CW$property\fR)" 4 1463.el .IP "\f(CW$term\fR\->XDeleteProperty ($window, \f(CW$property\fR)" 4
1424.IX Item "$term->XDeleteProperty ($window, $property)" 1464.IX Item "$term->XDeleteProperty ($window, $property)"
1425.ie n .IP "$window = $term\->DefaultRootWindow" 4 1465.ie n .IP "$window\fR = \f(CW$term\->DefaultRootWindow" 4
1426.el .IP "$window = \f(CW$term\fR\->DefaultRootWindow" 4 1466.el .IP "\f(CW$window\fR = \f(CW$term\fR\->DefaultRootWindow" 4
1427.IX Item "$window = $term->DefaultRootWindow" 1467.IX Item "$window = $term->DefaultRootWindow"
1428.ie n .IP "$term\->XReparentWindow ($window, $parent\fR, [$x, \f(CW$y])" 4 1468.ie n .IP "$term\fR\->XReparentWindow ($window, \f(CW$parent\fR, [$x, \f(CW$y])" 4
1429.el .IP "$term\->XReparentWindow ($window, \f(CW$parent\fR, [$x, \f(CW$y\fR])" 4 1469.el .IP "\f(CW$term\fR\->XReparentWindow ($window, \f(CW$parent\fR, [$x, \f(CW$y\fR])" 4
1430.IX Item "$term->XReparentWindow ($window, $parent, [$x, $y])" 1470.IX Item "$term->XReparentWindow ($window, $parent, [$x, $y])"
1431.IP "$term\->XMapWindow ($window)" 4 1471.ie n .IP "$term\->XMapWindow ($window)" 4
1472.el .IP "\f(CW$term\fR\->XMapWindow ($window)" 4
1432.IX Item "$term->XMapWindow ($window)" 1473.IX Item "$term->XMapWindow ($window)"
1433.IP "$term\->XUnmapWindow ($window)" 4 1474.ie n .IP "$term\->XUnmapWindow ($window)" 4
1475.el .IP "\f(CW$term\fR\->XUnmapWindow ($window)" 4
1434.IX Item "$term->XUnmapWindow ($window)" 1476.IX Item "$term->XUnmapWindow ($window)"
1435.ie n .IP "$term\->XMoveResizeWindow ($window, $x\fR, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height)" 4 1477.ie n .IP "$term\fR\->XMoveResizeWindow ($window, \f(CW$x\fR, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height)" 4
1436.el .IP "$term\->XMoveResizeWindow ($window, \f(CW$x\fR, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height\fR)" 4 1478.el .IP "\f(CW$term\fR\->XMoveResizeWindow ($window, \f(CW$x\fR, \f(CW$y\fR, \f(CW$width\fR, \f(CW$height\fR)" 4
1437.IX Item "$term->XMoveResizeWindow ($window, $x, $y, $width, $height)" 1479.IX Item "$term->XMoveResizeWindow ($window, $x, $y, $width, $height)"
1438.ie n .IP "($x, $y\fR, \f(CW$child_window\fR) = \f(CW$term\fR\->XTranslateCoordinates ($src, \f(CW$dst\fR, \f(CW$x\fR, \f(CW$y)" 4 1480.ie n .IP "($x, $y\fR, \f(CW$child_window\fR) = \f(CW$term\fR\->XTranslateCoordinates ($src, \f(CW$dst\fR, \f(CW$x\fR, \f(CW$y)" 4
1439.el .IP "($x, \f(CW$y\fR, \f(CW$child_window\fR) = \f(CW$term\fR\->XTranslateCoordinates ($src, \f(CW$dst\fR, \f(CW$x\fR, \f(CW$y\fR)" 4 1481.el .IP "($x, \f(CW$y\fR, \f(CW$child_window\fR) = \f(CW$term\fR\->XTranslateCoordinates ($src, \f(CW$dst\fR, \f(CW$x\fR, \f(CW$y\fR)" 4
1440.IX Item "($x, $y, $child_window) = $term->XTranslateCoordinates ($src, $dst, $x, $y)" 1482.IX Item "($x, $y, $child_window) = $term->XTranslateCoordinates ($src, $dst, $x, $y)"
1441.ie n .IP "$term\->XChangeInput ($window, $add_events\fR[, \f(CW$del_events])" 4 1483.ie n .IP "$term\fR\->XChangeInput ($window, \f(CW$add_events\fR[, \f(CW$del_events])" 4
1442.el .IP "$term\->XChangeInput ($window, \f(CW$add_events\fR[, \f(CW$del_events\fR])" 4 1484.el .IP "\f(CW$term\fR\->XChangeInput ($window, \f(CW$add_events\fR[, \f(CW$del_events\fR])" 4
1443.IX Item "$term->XChangeInput ($window, $add_events[, $del_events])" 1485.IX Item "$term->XChangeInput ($window, $add_events[, $del_events])"
1444.PD 1486.PD
1445Various X or X\-related functions. The \f(CW$term\fR object only serves as 1487Various X or X\-related functions. The \f(CW$term\fR object only serves as
1446the source of the display, otherwise those functions map more-or-less 1488the source of the display, otherwise those functions map more-or-less
1447directory onto the X functions of the same name. 1489directory onto the X functions of the same name.
1448.ie n .Sh "The ""urxvt::popup"" Class" 1490.ie n .Sh "The ""urxvt::popup"" Class"
1449.el .Sh "The \f(CWurxvt::popup\fP Class" 1491.el .Sh "The \f(CWurxvt::popup\fP Class"
1450.IX Subsection "The urxvt::popup Class" 1492.IX Subsection "The urxvt::popup Class"
1451.IP "$popup\->add_title ($title)" 4 1493.ie n .IP "$popup\->add_title ($title)" 4
1494.el .IP "\f(CW$popup\fR\->add_title ($title)" 4
1452.IX Item "$popup->add_title ($title)" 1495.IX Item "$popup->add_title ($title)"
1453Adds a non-clickable title to the popup. 1496Adds a non-clickable title to the popup.
1454.IP "$popup\->add_separator ([$sepchr])" 4 1497.ie n .IP "$popup\->add_separator ([$sepchr])" 4
1498.el .IP "\f(CW$popup\fR\->add_separator ([$sepchr])" 4
1455.IX Item "$popup->add_separator ([$sepchr])" 1499.IX Item "$popup->add_separator ([$sepchr])"
1456Creates a separator, optionally using the character given as \f(CW$sepchr\fR. 1500Creates a separator, optionally using the character given as \f(CW$sepchr\fR.
1457.ie n .IP "$popup\->add_button ($text, $cb)" 4 1501.ie n .IP "$popup\fR\->add_button ($text, \f(CW$cb)" 4
1458.el .IP "$popup\->add_button ($text, \f(CW$cb\fR)" 4 1502.el .IP "\f(CW$popup\fR\->add_button ($text, \f(CW$cb\fR)" 4
1459.IX Item "$popup->add_button ($text, $cb)" 1503.IX Item "$popup->add_button ($text, $cb)"
1460Adds a clickable button to the popup. \f(CW$cb\fR is called whenever it is 1504Adds a clickable button to the popup. \f(CW$cb\fR is called whenever it is
1461selected. 1505selected.
1462.ie n .IP "$popup\->add_toggle ($text, $initial_value\fR, \f(CW$cb)" 4 1506.ie n .IP "$popup\fR\->add_toggle ($text, \f(CW$initial_value\fR, \f(CW$cb)" 4
1463.el .IP "$popup\->add_toggle ($text, \f(CW$initial_value\fR, \f(CW$cb\fR)" 4 1507.el .IP "\f(CW$popup\fR\->add_toggle ($text, \f(CW$initial_value\fR, \f(CW$cb\fR)" 4
1464.IX Item "$popup->add_toggle ($text, $initial_value, $cb)" 1508.IX Item "$popup->add_toggle ($text, $initial_value, $cb)"
1465Adds a toggle/checkbox item to the popup. The callback gets called 1509Adds a toggle/checkbox item to the popup. The callback gets called
1466whenever it gets toggled, with a boolean indicating its new value as its 1510whenever it gets toggled, with a boolean indicating its new value as its
1467first argument. 1511first argument.
1468.IP "$popup\->show" 4 1512.ie n .IP "$popup\->show" 4
1513.el .IP "\f(CW$popup\fR\->show" 4
1469.IX Item "$popup->show" 1514.IX Item "$popup->show"
1470Displays the popup (which is initially hidden). 1515Displays the popup (which is initially hidden).
1471.ie n .Sh "The ""urxvt::timer"" Class" 1516.ie n .Sh "The ""urxvt::timer"" Class"
1472.el .Sh "The \f(CWurxvt::timer\fP Class" 1517.el .Sh "The \f(CWurxvt::timer\fP Class"
1473.IX Subsection "The urxvt::timer Class" 1518.IX Subsection "The urxvt::timer Class"
1474This class implements timer watchers/events. Time is represented as a 1519This class implements timer watchers/events. Time is represented as a
1475fractional number of seconds since the epoch. Example: 1520fractional number of seconds since the epoch. Example:
1476.PP 1521.PP
1477.Vb 8 1522.Vb 8
1478\& $term->{overlay} = $term->overlay (-1, 0, 8, 1, urxvt::OVERLAY_RSTYLE, 0); 1523\& $term\->{overlay} = $term\->overlay (\-1, 0, 8, 1, urxvt::OVERLAY_RSTYLE, 0);
1479\& $term->{timer} = urxvt::timer 1524\& $term\->{timer} = urxvt::timer
1480\& ->new 1525\& \->new
1481\& ->interval (1) 1526\& \->interval (1)
1482\& ->cb (sub { 1527\& \->cb (sub {
1483\& $term->{overlay}->set (0, 0, 1528\& $term\->{overlay}\->set (0, 0,
1484\& sprintf "%2d:%02d:%02d", (localtime urxvt::NOW)[2,1,0]); 1529\& sprintf "%2d:%02d:%02d", (localtime urxvt::NOW)[2,1,0]);
1485\& }); 1530\& });
1486.Ve 1531.Ve
1487.IP "$timer = new urxvt::timer" 4 1532.ie n .IP "$timer = new urxvt::timer" 4
1533.el .IP "\f(CW$timer\fR = new urxvt::timer" 4
1488.IX Item "$timer = new urxvt::timer" 1534.IX Item "$timer = new urxvt::timer"
1489Create a new timer object in started state. It is scheduled to fire 1535Create a new timer object in started state. It is scheduled to fire
1490immediately. 1536immediately.
1491.ie n .IP "$timer = $timer\fR\->cb (sub { my ($timer) = \f(CW@_; ... })" 4 1537.ie n .IP "$timer\fR = \f(CW$timer\fR\->cb (sub { my ($timer) = \f(CW@_; ... })" 4
1492.el .IP "$timer = \f(CW$timer\fR\->cb (sub { my ($timer) = \f(CW@_\fR; ... })" 4 1538.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->cb (sub { my ($timer) = \f(CW@_\fR; ... })" 4
1493.IX Item "$timer = $timer->cb (sub { my ($timer) = @_; ... })" 1539.IX Item "$timer = $timer->cb (sub { my ($timer) = @_; ... })"
1494Set the callback to be called when the timer triggers. 1540Set the callback to be called when the timer triggers.
1495.ie n .IP "$tstamp = $timer\->at" 4 1541.ie n .IP "$tstamp\fR = \f(CW$timer\->at" 4
1496.el .IP "$tstamp = \f(CW$timer\fR\->at" 4 1542.el .IP "\f(CW$tstamp\fR = \f(CW$timer\fR\->at" 4
1497.IX Item "$tstamp = $timer->at" 1543.IX Item "$tstamp = $timer->at"
1498Return the time this watcher will fire next. 1544Return the time this watcher will fire next.
1499.ie n .IP "$timer = $timer\->set ($tstamp)" 4 1545.ie n .IP "$timer\fR = \f(CW$timer\->set ($tstamp)" 4
1500.el .IP "$timer = \f(CW$timer\fR\->set ($tstamp)" 4 1546.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->set ($tstamp)" 4
1501.IX Item "$timer = $timer->set ($tstamp)" 1547.IX Item "$timer = $timer->set ($tstamp)"
1502Set the time the event is generated to \f(CW$tstamp\fR. 1548Set the time the event is generated to \f(CW$tstamp\fR.
1503.ie n .IP "$timer = $timer\->interval ($interval)" 4 1549.ie n .IP "$timer\fR = \f(CW$timer\->interval ($interval)" 4
1504.el .IP "$timer = \f(CW$timer\fR\->interval ($interval)" 4 1550.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->interval ($interval)" 4
1505.IX Item "$timer = $timer->interval ($interval)" 1551.IX Item "$timer = $timer->interval ($interval)"
1506Normally (and when \f(CW$interval\fR is \f(CW0\fR), the timer will automatically 1552Normally (and when \f(CW$interval\fR is \f(CW0\fR), the timer will automatically
1507stop after it has fired once. If \f(CW$interval\fR is non\-zero, then the timer 1553stop after it has fired once. If \f(CW$interval\fR is non\-zero, then the timer
1508is automatically rescheduled at the given intervals. 1554is automatically rescheduled at the given intervals.
1509.ie n .IP "$timer = $timer\->start" 4 1555.ie n .IP "$timer\fR = \f(CW$timer\->start" 4
1510.el .IP "$timer = \f(CW$timer\fR\->start" 4 1556.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->start" 4
1511.IX Item "$timer = $timer->start" 1557.IX Item "$timer = $timer->start"
1512Start the timer. 1558Start the timer.
1513.ie n .IP "$timer = $timer\->start ($tstamp)" 4 1559.ie n .IP "$timer\fR = \f(CW$timer\->start ($tstamp)" 4
1514.el .IP "$timer = \f(CW$timer\fR\->start ($tstamp)" 4 1560.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->start ($tstamp)" 4
1515.IX Item "$timer = $timer->start ($tstamp)" 1561.IX Item "$timer = $timer->start ($tstamp)"
1516Set the event trigger time to \f(CW$tstamp\fR and start the timer. 1562Set the event trigger time to \f(CW$tstamp\fR and start the timer.
1517.ie n .IP "$timer = $timer\->after ($delay)" 4 1563.ie n .IP "$timer\fR = \f(CW$timer\->after ($delay)" 4
1518.el .IP "$timer = \f(CW$timer\fR\->after ($delay)" 4 1564.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->after ($delay)" 4
1519.IX Item "$timer = $timer->after ($delay)" 1565.IX Item "$timer = $timer->after ($delay)"
1520Like \f(CW\*(C`start\*(C'\fR, but sets the expiry timer to c<urxvt::NOW + \f(CW$delay\fR>. 1566Like \f(CW\*(C`start\*(C'\fR, but sets the expiry timer to c<urxvt::NOW + \f(CW$delay\fR>.
1521.ie n .IP "$timer = $timer\->stop" 4 1567.ie n .IP "$timer\fR = \f(CW$timer\->stop" 4
1522.el .IP "$timer = \f(CW$timer\fR\->stop" 4 1568.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->stop" 4
1523.IX Item "$timer = $timer->stop" 1569.IX Item "$timer = $timer->stop"
1524Stop the timer. 1570Stop the timer.
1525.ie n .Sh "The ""urxvt::iow"" Class" 1571.ie n .Sh "The ""urxvt::iow"" Class"
1526.el .Sh "The \f(CWurxvt::iow\fP Class" 1572.el .Sh "The \f(CWurxvt::iow\fP Class"
1527.IX Subsection "The urxvt::iow Class" 1573.IX Subsection "The urxvt::iow Class"
1528This class implements io watchers/events. Example: 1574This class implements io watchers/events. Example:
1529.PP 1575.PP
1530.Vb 12 1576.Vb 12
1531\& $term->{socket} = ... 1577\& $term\->{socket} = ...
1532\& $term->{iow} = urxvt::iow 1578\& $term\->{iow} = urxvt::iow
1533\& ->new 1579\& \->new
1534\& ->fd (fileno $term->{socket}) 1580\& \->fd (fileno $term\->{socket})
1535\& ->events (urxvt::EVENT_READ) 1581\& \->events (urxvt::EVENT_READ)
1536\& ->start 1582\& \->start
1537\& ->cb (sub { 1583\& \->cb (sub {
1538\& my ($iow, $revents) = @_; 1584\& my ($iow, $revents) = @_;
1539\& # $revents must be 1 here, no need to check 1585\& # $revents must be 1 here, no need to check
1540\& sysread $term->{socket}, my $buf, 8192 1586\& sysread $term\->{socket}, my $buf, 8192
1541\& or end-of-file; 1587\& or end\-of\-file;
1542\& }); 1588\& });
1543.Ve 1589.Ve
1544.IP "$iow = new urxvt::iow" 4 1590.ie n .IP "$iow = new urxvt::iow" 4
1591.el .IP "\f(CW$iow\fR = new urxvt::iow" 4
1545.IX Item "$iow = new urxvt::iow" 1592.IX Item "$iow = new urxvt::iow"
1546Create a new io watcher object in stopped state. 1593Create a new io watcher object in stopped state.
1547.ie n .IP "$iow = $iow\fR\->cb (sub { my ($iow, \f(CW$reventmask\fR) = \f(CW@_; ... })" 4 1594.ie n .IP "$iow\fR = \f(CW$iow\fR\->cb (sub { my ($iow, \f(CW$reventmask\fR) = \f(CW@_; ... })" 4
1548.el .IP "$iow = \f(CW$iow\fR\->cb (sub { my ($iow, \f(CW$reventmask\fR) = \f(CW@_\fR; ... })" 4 1595.el .IP "\f(CW$iow\fR = \f(CW$iow\fR\->cb (sub { my ($iow, \f(CW$reventmask\fR) = \f(CW@_\fR; ... })" 4
1549.IX Item "$iow = $iow->cb (sub { my ($iow, $reventmask) = @_; ... })" 1596.IX Item "$iow = $iow->cb (sub { my ($iow, $reventmask) = @_; ... })"
1550Set the callback to be called when io events are triggered. \f(CW$reventmask\fR 1597Set the callback to be called when io events are triggered. \f(CW$reventmask\fR
1551is a bitset as described in the \f(CW\*(C`events\*(C'\fR method. 1598is a bitset as described in the \f(CW\*(C`events\*(C'\fR method.
1552.ie n .IP "$iow = $iow\->fd ($fd)" 4 1599.ie n .IP "$iow\fR = \f(CW$iow\->fd ($fd)" 4
1553.el .IP "$iow = \f(CW$iow\fR\->fd ($fd)" 4 1600.el .IP "\f(CW$iow\fR = \f(CW$iow\fR\->fd ($fd)" 4
1554.IX Item "$iow = $iow->fd ($fd)" 1601.IX Item "$iow = $iow->fd ($fd)"
1555Set the filedescriptor (not handle) to watch. 1602Set the filedescriptor (not handle) to watch.
1556.ie n .IP "$iow = $iow\->events ($eventmask)" 4 1603.ie n .IP "$iow\fR = \f(CW$iow\->events ($eventmask)" 4
1557.el .IP "$iow = \f(CW$iow\fR\->events ($eventmask)" 4 1604.el .IP "\f(CW$iow\fR = \f(CW$iow\fR\->events ($eventmask)" 4
1558.IX Item "$iow = $iow->events ($eventmask)" 1605.IX Item "$iow = $iow->events ($eventmask)"
1559Set the event mask to watch. The only allowed values are 1606Set the event mask to watch. The only allowed values are
1560\&\f(CW\*(C`urxvt::EVENT_READ\*(C'\fR and \f(CW\*(C`urxvt::EVENT_WRITE\*(C'\fR, which might be ORed 1607\&\f(CW\*(C`urxvt::EVENT_READ\*(C'\fR and \f(CW\*(C`urxvt::EVENT_WRITE\*(C'\fR, which might be ORed
1561together, or \f(CW\*(C`urxvt::EVENT_NONE\*(C'\fR. 1608together, or \f(CW\*(C`urxvt::EVENT_NONE\*(C'\fR.
1562.ie n .IP "$iow = $iow\->start" 4 1609.ie n .IP "$iow\fR = \f(CW$iow\->start" 4
1563.el .IP "$iow = \f(CW$iow\fR\->start" 4 1610.el .IP "\f(CW$iow\fR = \f(CW$iow\fR\->start" 4
1564.IX Item "$iow = $iow->start" 1611.IX Item "$iow = $iow->start"
1565Start watching for requested events on the given handle. 1612Start watching for requested events on the given handle.
1566.ie n .IP "$iow = $iow\->stop" 4 1613.ie n .IP "$iow\fR = \f(CW$iow\->stop" 4
1567.el .IP "$iow = \f(CW$iow\fR\->stop" 4 1614.el .IP "\f(CW$iow\fR = \f(CW$iow\fR\->stop" 4
1568.IX Item "$iow = $iow->stop" 1615.IX Item "$iow = $iow->stop"
1569Stop watching for events on the given filehandle. 1616Stop watching for events on the given filehandle.
1570.ie n .Sh "The ""urxvt::iw"" Class" 1617.ie n .Sh "The ""urxvt::iw"" Class"
1571.el .Sh "The \f(CWurxvt::iw\fP Class" 1618.el .Sh "The \f(CWurxvt::iw\fP Class"
1572.IX Subsection "The urxvt::iw Class" 1619.IX Subsection "The urxvt::iw Class"
1573This class implements idle watchers, that get called automatically when 1620This class implements idle watchers, that get called automatically when
1574the process is idle. They should return as fast as possible, after doing 1621the process is idle. They should return as fast as possible, after doing
1575some useful work. 1622some useful work.
1576.IP "$iw = new urxvt::iw" 4 1623.ie n .IP "$iw = new urxvt::iw" 4
1624.el .IP "\f(CW$iw\fR = new urxvt::iw" 4
1577.IX Item "$iw = new urxvt::iw" 1625.IX Item "$iw = new urxvt::iw"
1578Create a new idle watcher object in stopped state. 1626Create a new idle watcher object in stopped state.
1579.ie n .IP "$iw = $iw\fR\->cb (sub { my ($iw) = \f(CW@_; ... })" 4 1627.ie n .IP "$iw\fR = \f(CW$iw\fR\->cb (sub { my ($iw) = \f(CW@_; ... })" 4
1580.el .IP "$iw = \f(CW$iw\fR\->cb (sub { my ($iw) = \f(CW@_\fR; ... })" 4 1628.el .IP "\f(CW$iw\fR = \f(CW$iw\fR\->cb (sub { my ($iw) = \f(CW@_\fR; ... })" 4
1581.IX Item "$iw = $iw->cb (sub { my ($iw) = @_; ... })" 1629.IX Item "$iw = $iw->cb (sub { my ($iw) = @_; ... })"
1582Set the callback to be called when the watcher triggers. 1630Set the callback to be called when the watcher triggers.
1583.ie n .IP "$timer = $timer\->start" 4 1631.ie n .IP "$timer\fR = \f(CW$timer\->start" 4
1584.el .IP "$timer = \f(CW$timer\fR\->start" 4 1632.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->start" 4
1585.IX Item "$timer = $timer->start" 1633.IX Item "$timer = $timer->start"
1586Start the watcher. 1634Start the watcher.
1587.ie n .IP "$timer = $timer\->stop" 4 1635.ie n .IP "$timer\fR = \f(CW$timer\->stop" 4
1588.el .IP "$timer = \f(CW$timer\fR\->stop" 4 1636.el .IP "\f(CW$timer\fR = \f(CW$timer\fR\->stop" 4
1589.IX Item "$timer = $timer->stop" 1637.IX Item "$timer = $timer->stop"
1590Stop the watcher. 1638Stop the watcher.
1591.ie n .Sh "The ""urxvt::pw"" Class" 1639.ie n .Sh "The ""urxvt::pw"" Class"
1592.el .Sh "The \f(CWurxvt::pw\fP Class" 1640.el .Sh "The \f(CWurxvt::pw\fP Class"
1593.IX Subsection "The urxvt::pw Class" 1641.IX Subsection "The urxvt::pw Class"
1595process exits, after which they stop automatically. 1643process exits, after which they stop automatically.
1596.PP 1644.PP
1597.Vb 9 1645.Vb 9
1598\& my $pid = fork; 1646\& my $pid = fork;
1599\& ... 1647\& ...
1600\& $term->{pw} = urxvt::pw 1648\& $term\->{pw} = urxvt::pw
1601\& ->new 1649\& \->new
1602\& ->start ($pid) 1650\& \->start ($pid)
1603\& ->cb (sub { 1651\& \->cb (sub {
1604\& my ($pw, $exit_status) = @_; 1652\& my ($pw, $exit_status) = @_;
1605\& ... 1653\& ...
1606\& }); 1654\& });
1607.Ve 1655.Ve
1608.IP "$pw = new urxvt::pw" 4 1656.ie n .IP "$pw = new urxvt::pw" 4
1657.el .IP "\f(CW$pw\fR = new urxvt::pw" 4
1609.IX Item "$pw = new urxvt::pw" 1658.IX Item "$pw = new urxvt::pw"
1610Create a new process watcher in stopped state. 1659Create a new process watcher in stopped state.
1611.ie n .IP "$pw = $pw\fR\->cb (sub { my ($pw, \f(CW$exit_status\fR) = \f(CW@_; ... })" 4 1660.ie n .IP "$pw\fR = \f(CW$pw\fR\->cb (sub { my ($pw, \f(CW$exit_status\fR) = \f(CW@_; ... })" 4
1612.el .IP "$pw = \f(CW$pw\fR\->cb (sub { my ($pw, \f(CW$exit_status\fR) = \f(CW@_\fR; ... })" 4 1661.el .IP "\f(CW$pw\fR = \f(CW$pw\fR\->cb (sub { my ($pw, \f(CW$exit_status\fR) = \f(CW@_\fR; ... })" 4
1613.IX Item "$pw = $pw->cb (sub { my ($pw, $exit_status) = @_; ... })" 1662.IX Item "$pw = $pw->cb (sub { my ($pw, $exit_status) = @_; ... })"
1614Set the callback to be called when the timer triggers. 1663Set the callback to be called when the timer triggers.
1615.ie n .IP "$pw = $timer\->start ($pid)" 4 1664.ie n .IP "$pw\fR = \f(CW$timer\->start ($pid)" 4
1616.el .IP "$pw = \f(CW$timer\fR\->start ($pid)" 4 1665.el .IP "\f(CW$pw\fR = \f(CW$timer\fR\->start ($pid)" 4
1617.IX Item "$pw = $timer->start ($pid)" 1666.IX Item "$pw = $timer->start ($pid)"
1618Tells the wqtcher to start watching for process \f(CW$pid\fR. 1667Tells the wqtcher to start watching for process \f(CW$pid\fR.
1619.ie n .IP "$pw = $pw\->stop" 4 1668.ie n .IP "$pw\fR = \f(CW$pw\->stop" 4
1620.el .IP "$pw = \f(CW$pw\fR\->stop" 4 1669.el .IP "\f(CW$pw\fR = \f(CW$pw\fR\->stop" 4
1621.IX Item "$pw = $pw->stop" 1670.IX Item "$pw = $pw->stop"
1622Stop the watcher. 1671Stop the watcher.
1623.SH "ENVIRONMENT" 1672.SH "ENVIRONMENT"
1624.IX Header "ENVIRONMENT" 1673.IX Header "ENVIRONMENT"
1625.Sh "\s-1URXVT_PERL_VERBOSITY\s0" 1674.Sh "\s-1URXVT_PERL_VERBOSITY\s0"
1638.PD 1687.PD
1639.SH "AUTHOR" 1688.SH "AUTHOR"
1640.IX Header "AUTHOR" 1689.IX Header "AUTHOR"
1641.Vb 2 1690.Vb 2
1642\& Marc Lehmann <pcg@goof.com> 1691\& Marc Lehmann <pcg@goof.com>
1643\& http://software.schmorp.de/pkg/rxvt-unicode 1692\& http://software.schmorp.de/pkg/rxvt\-unicode
1644.Ve 1693.Ve

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines