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

Comparing rxvt-unicode/doc/rxvtperl.3.txt (file contents):
Revision 1.26 by root, Fri Jan 13 01:09:37 2006 UTC vs.
Revision 1.32 by root, Fri Jan 20 16:02:20 2006 UTC

28 can find them in /opt/rxvt/lib/urxvt/perl/. 28 can find them in /opt/rxvt/lib/urxvt/perl/.
29 29
30 You can activate them like this: 30 You can activate them like this:
31 31
32 rxvt -pe <extensionname> 32 rxvt -pe <extensionname>
33
34 Or by adding them to the resource for extensions loaded by default:
35
36 URxvt.perl-ext-common: default,automove-background,selection-autotransform
33 37
34 selection (enabled by default) 38 selection (enabled by default)
35 (More) intelligent selection. This extension tries to be more 39 (More) intelligent selection. This extension tries to be more
36 intelligent when the user extends selections (double-click and 40 intelligent when the user extends selections (double-click and
37 further clicks). Right now, it tries to select words, urls and 41 further clicks). Right now, it tries to select words, urls and
57 URxvt.selection.pattern-0: \\|([^|]+)\\| 61 URxvt.selection.pattern-0: \\|([^|]+)\\|
58 62
59 You can look at the source of the selection extension to see more 63 You can look at the source of the selection extension to see more
60 interesting uses, such as parsing a line from beginning to end. 64 interesting uses, such as parsing a line from beginning to end.
61 65
62 This extension also offers the following bindable keyboard command: 66 This extension also offers following bindable keyboard commands:
63 67
64 rot13 68 rot13
65 Rot-13 the selection when activated. Used via keyboard trigger: 69 Rot-13 the selection when activated. Used via keyboard trigger:
66 70
67 URxvt.keysym.C-M-r: perl:selection:rot13 71 URxvt.keysym.C-M-r: perl:selection:rot13
73 selection-popup (enabled by default) 77 selection-popup (enabled by default)
74 Binds a popup menu to Ctrl-Button3 that lets you convert the 78 Binds a popup menu to Ctrl-Button3 that lets you convert the
75 selection text into various other formats/action (such as uri 79 selection text into various other formats/action (such as uri
76 unescaping, perl evalution, web-browser starting etc.), depending on 80 unescaping, perl evalution, web-browser starting etc.), depending on
77 content. 81 content.
82
83 Other extensions can extend this popup menu by pushing a code
84 reference onto "@{ $term-"{selection_popup_hook} }>, that is called
85 whenever the popup is displayed.
86
87 It's sole argument is the popup menu, which can be modified. The
88 selection is in $_, which can be used to decide wether to add
89 something or not. It should either return nothing or a string and a
90 code reference. The string will be used as button text and the code
91 reference will be called when the button gets activated and should
92 transform $_.
93
94 The following will add an entry "a to b" that transforms all "a"s in
95 the selection to "b"s, but only if the selection currently contains
96 any "a"s:
97
98 push @{ $self->{term}{selection_popup_hook} }, sub {
99 /a/ ? ("a to be" => sub { s/a/b/g }
100 : ()
101 };
78 102
79 searchable-scrollback<hotkey> (enabled by default) 103 searchable-scrollback<hotkey> (enabled by default)
80 Adds regex search functionality to the scrollback buffer, triggered 104 Adds regex search functionality to the scrollback buffer, triggered
81 by a hotkey (default: "M-s"). While in search mode, normal terminal 105 by a hotkey (default: "M-s"). While in search mode, normal terminal
82 input/output is suspended and a regex is displayed at the bottom of 106 input/output is suspended and a regex is displayed at the bottom of
103 127
104 For example, the following will transform selections of the form 128 For example, the following will transform selections of the form
105 "filename:number", often seen in compiler messages, into "vi 129 "filename:number", often seen in compiler messages, into "vi
106 +$filename $word": 130 +$filename $word":
107 131
108 URxvt.selection-autotransform.0: s/^(\\S+):(\\d+):?$/vi +$2 \\Q$1\\E\\x0d/ 132 URxvt.selection-autotransform.0: s/^([^:[:space:]]+):(\\d+):?$/vi +$2 \\Q$1\\E\\x0d/
109 133
110 And this example matches the same,but replaces it with vi-commands 134 And this example matches the same,but replaces it with vi-commands
111 you can paste directly into your (vi :) editor: 135 you can paste directly into your (vi :) editor:
112 136
113 URxvt.selection-autotransform.0: s/^(S+):(d+):?$/\\x1b:e \\Q$1\\E\\x0d:$2\\x0d/ 137 URxvt.selection-autotransform.0: s/^([^:[:space:]]+(\\d+):?$/:e \\Q$1\\E\\x0d:$2\\x0d/
114 138
115 Of course, this can be modified to suit your needs and your editor 139 Of course, this can be modified to suit your needs and your editor
116 :) 140 :)
117 141
118 To expand the example above to typical perl error messages ("XXX at 142 To expand the example above to typical perl error messages ("XXX at
119 FILENAME line YYY."), you need a slightly more elaborate solution: 143 FILENAME line YYY."), you need a slightly more elaborate solution:
120 144
121 URxvt.selection.pattern-0: ( at .*? line \\d+\\.) 145 URxvt.selection.pattern-0: ( at .*? line \\d+[,.])
122 URxvt.selection-autotransform.0: s/^ at (.*?) line (\\d+)\\.$/\x1b:e \\Q$1\E\\x0d:$2\\x0d/ 146 URxvt.selection-autotransform.0: s/^ at (.*?) line (\\d+)[,.]$/:e \\Q$1\E\\x0d:$2\\x0d/
123 147
124 The first line tells the selection code to treat the unchanging part 148 The first line tells the selection code to treat the unchanging part
125 of every error message as a selection pattern, and the second line 149 of every error message as a selection pattern, and the second line
126 transforms the message into vi commands to load the file. 150 transforms the message into vi commands to load the file.
151
152 tabbed
153 This transforms the terminal into a tabbar with additional
154 terminals, that is, it implements what is commonly refered to as
155 "tabbed terminal". The topmost line displays a "[NEW]" button,
156 which, when clicked, will add a new tab, followed by one button per
157 tab.
158
159 Clicking a button will activate that tab. Pressing Shift-Left and
160 Shift-Right will switch to the tab left or right of the current one.
127 161
128 mark-urls 162 mark-urls
129 Uses per-line display filtering ("on_line_update") to underline urls 163 Uses per-line display filtering ("on_line_update") to underline urls
130 and make them clickable. When middle-clicked, the program specified 164 and make them clickable. When middle-clicked, the program specified
131 in the resource "urlLauncher" (default "x-www-browser") will be 165 in the resource "urlLauncher" (default "x-www-browser") will be
132 started with the URL as first argument. 166 started with the URL as first argument.
133 167
168 automove-background
169 This is basically a one-line extension that dynamically changes the
170 background pixmap offset to the window position, in effect creating
171 the same effect as pseudo transparency with a custom pixmap. No
172 scaling is supported in this mode. Exmaple:
173
174 rxvt -pixmap background.xpm -pe automove-background
175
134 block-graphics-to-ascii 176 block-graphics-to-ascii
135 A not very useful example of filtering all text output to the 177 A not very useful example of filtering all text output to the
136 terminal, by replacing all line-drawing characters (U+2500 .. 178 terminal, by replacing all line-drawing characters (U+2500 ..
137 U+259F) by a similar-looking ascii character. 179 U+259F) by a similar-looking ascii character.
138 180
141 183
142 example-refresh-hooks 184 example-refresh-hooks
143 Displays a very simple digital clock in the upper right corner of 185 Displays a very simple digital clock in the upper right corner of
144 the window. Illustrates overwriting the refresh callbacks to create 186 the window. Illustrates overwriting the refresh callbacks to create
145 your own overlays or changes. 187 your own overlays or changes.
188
189 selection-pastebin
190 This is a little rarely useful extension that Uploads the selection
191 as textfile to a remote site (or does other things). (The
192 implementation is not currently secure for use in a multiuser
193 environment as it writes to /tmp directly.).
194
195 It listens to the "selection-pastebin:remote-pastebin" keyboard
196 command, i.e.
197
198 URxvt.keysym.C-M-e: perl:selection-pastebin:remote-pastebin
199
200 Pressing this combination runs a command with "%" replaced by the
201 name of the textfile. This command can be set via a resource:
202
203 URxvt.selection-pastebin.cmd: rsync -apP % ruth:/var/www/www.ta-sa.org/files/txt/.
204
205 And the default is likely not useful to anybody but the few people
206 around here :)
207
208 The name of the textfile is the hex encoded md5 sum of the
209 selection, so the same content should lead to the same filename.
210
211 After a successful upload the selection will be replaced by the text
212 given in the "selection-pastebin-url" resource (again, the % is the
213 placeholder for the filename):
214
215 URxvt.selection-pastebin.url: http://www.ta-sa.org/files/txt/%
146 216
147API DOCUMENTATION 217API DOCUMENTATION
148 General API Considerations 218 General API Considerations
149 All objects (such as terminals, time watchers etc.) are typical 219 All objects (such as terminals, time watchers etc.) are typical
150 reference-to-hash objects. The hash can be used to store anything you 220 reference-to-hash objects. The hash can be used to store anything you
204 be called whenever the relevant event happens. 274 be called whenever the relevant event happens.
205 275
206 The first argument passed to them is an extension oject as described in 276 The first argument passed to them is an extension oject as described in
207 the in the "Extension Objects" section. 277 the in the "Extension Objects" section.
208 278
209 All of these hooks must return a boolean value. If it is true, then the 279 All of these hooks must return a boolean value. If any of the called
210 event counts as being *consumed*, and the invocation of other hooks is 280 hooks returns true, then the event counts as being *consumed*, and the
211 skipped, and the relevant action might not be carried out by the C++ 281 relevant action might not be carried out by the C++ code.
212 code.
213 282
214 *When in doubt, return a false value (preferably "()").* 283 *When in doubt, return a false value (preferably "()").*
215 284
216 on_init $term 285 on_init $term
217 Called after a new terminal object has been initialized, but before 286 Called after a new terminal object has been initialized, but before
218 windows are created or the command gets run. Most methods are unsafe 287 windows are created or the command gets run. Most methods are unsafe
219 to call or deliver senseless data, as terminal size and other 288 to call or deliver senseless data, as terminal size and other
220 characteristics have not yet been determined. You can safely query 289 characteristics have not yet been determined. You can safely query
221 and change resources, though. 290 and change resources and options, though. For many purposes the
291 "on_start" hook is a better place.
292
293 on_start $term
294 Called at the very end of initialisation of a new terminal, just
295 before trying to map (display) the toplevel and returning to the
296 mainloop.
297
298 on_destroy $term
299 Called whenever something tries to destroy terminal, before doing
300 anything yet. If this hook returns true, then destruction is
301 skipped, but this is rarely a good idea.
222 302
223 on_reset $term 303 on_reset $term
224 Called after the screen is "reset" for any reason, such as resizing 304 Called after the screen is "reset" for any reason, such as resizing
225 or control sequences. Here is where you can react on changes to 305 or control sequences. Here is where you can react on changes to
226 size-related variables. 306 size-related variables.
227 307
228 on_start $term 308 on_child_start $term, $pid
229 Called at the very end of initialisation of a new terminal, just 309 Called just after the child process has been "fork"ed.
230 before returning to the mainloop. 310
311 on_child_exit $term, $status
312 Called just after the child process has exited. $status is the
313 status from "waitpid".
231 314
232 on_sel_make $term, $eventtime 315 on_sel_make $term, $eventtime
233 Called whenever a selection has been made by the user, but before 316 Called whenever a selection has been made by the user, but before
234 the selection text is copied, so changes to the beginning, end or 317 the selection text is copied, so changes to the beginning, end or
235 type of the selection will be honored. 318 type of the selection will be honored.
320 on_keyboard_command $term, $string 403 on_keyboard_command $term, $string
321 Called whenever the user presses a key combination that has a 404 Called whenever the user presses a key combination that has a
322 "perl:string" action bound to it (see description of the keysym 405 "perl:string" action bound to it (see description of the keysym
323 resource in the rxvt(1) manpage). 406 resource in the rxvt(1) manpage).
324 407
408 on_x_event $term, $event
409 Called on every X event received on the vt window (and possibly
410 other windows). Should only be used as a last resort. Most event
411 structure members are not passed.
412
325 on_focus_in $term 413 on_focus_in $term
326 Called whenever the window gets the keyboard focus, before 414 Called whenever the window gets the keyboard focus, before
327 rxvt-unicode does focus in processing. 415 rxvt-unicode does focus in processing.
328 416
329 on_focus_out $term 417 on_focus_out $term
330 Called wheneever the window loses keyboard focus, before 418 Called wheneever the window loses keyboard focus, before
331 rxvt-unicode does focus out processing. 419 rxvt-unicode does focus out processing.
332 420
421 on_configure_notify $term, $event
333 on_key_press $term, $event, $keysym, $octets 422 on_key_press $term, $event, $keysym, $octets
334 on_key_release $term, $event, $keysym 423 on_key_release $term, $event, $keysym
335 on_button_press $term, $event 424 on_button_press $term, $event
336 on_button_release $term, $event 425 on_button_release $term, $event
337 on_motion_notify $term, $event 426 on_motion_notify $term, $event
348 "on_key_press" additionally receives the string rxvt-unicode would 437 "on_key_press" additionally receives the string rxvt-unicode would
349 output, if any, in locale-specific encoding. 438 output, if any, in locale-specific encoding.
350 439
351 subwindow. 440 subwindow.
352 441
442 on_client_message $term, $event
443 on_wm_protocols $term, $event
444 on_wm_delete_window $term, $event
445 Called when various types of ClientMessage events are received (all
446 with format=32, WM_PROTOCOLS or WM_PROTOCOLS:WM_DELETE_WINDOW).
447
353 Variables in the "urxvt" Package 448 Variables in the "urxvt" Package
354 $urxvt::LIBDIR 449 $urxvt::LIBDIR
355 The rxvt-unicode library directory, where, among other things, the 450 The rxvt-unicode library directory, where, among other things, the
356 perl modules and scripts are stored. 451 perl modules and scripts are stored.
357 452
363 The basename of the installed binaries, usually "urxvt". 458 The basename of the installed binaries, usually "urxvt".
364 459
365 $urxvt::TERM 460 $urxvt::TERM
366 The current terminal. This variable stores the current "urxvt::term" 461 The current terminal. This variable stores the current "urxvt::term"
367 object, whenever a callback/hook is executing. 462 object, whenever a callback/hook is executing.
463
464 @urxvt::TERM_INIT
465 All coderefs in this array will be called as methods of the next
466 newly created "urxvt::term" object (during the "on_init" phase). The
467 array gets cleared before the codereferences that were in it are
468 being executed, so coderefs can push themselves onto it again if
469 they so desire.
470
471 This complements to the perl-eval commandline option, but gets
472 executed first.
473
474 @urxvt::TERM_EXT
475 Works similar to @TERM_INIT, but contains perl package/class names,
476 which get registered as normal extensions after calling the hooks in
477 @TERM_INIT but before other extensions. Gets cleared just like
478 @TERM_INIT.
368 479
369 Functions in the "urxvt" Package 480 Functions in the "urxvt" Package
370 urxvt::fatal $errormessage 481 urxvt::fatal $errormessage
371 Fatally aborts execution with the given error message. Avoid at all 482 Fatally aborts execution with the given error message. Avoid at all
372 costs! The only time this is acceptable is when the terminal process 483 costs! The only time this is acceptable is when the terminal process
380 Using this function has the advantage that its output ends up in the 491 Using this function has the advantage that its output ends up in the
381 correct place, e.g. on stderr of the connecting urxvtc client. 492 correct place, e.g. on stderr of the connecting urxvtc client.
382 493
383 Messages have a size limit of 1023 bytes currently. 494 Messages have a size limit of 1023 bytes currently.
384 495
385 $is_safe = urxvt::safe
386 Returns true when it is safe to do potentially unsafe things, such
387 as evaluating perl code specified by the user. This is true when
388 urxvt was started setuid or setgid.
389
390 $time = urxvt::NOW 496 $time = urxvt::NOW
391 Returns the "current time" (as per the event loop). 497 Returns the "current time" (as per the event loop).
392 498
393 urxvt::CurrentTime 499 urxvt::CurrentTime
394 urxvt::ShiftMask, LockMask, ControlMask, Mod1Mask, Mod2Mask, Mod3Mask, 500 urxvt::ShiftMask, LockMask, ControlMask, Mod1Mask, Mod2Mask, Mod3Mask,
395 Mod4Mask, Mod5Mask, Button1Mask, Button2Mask, Button3Mask, Button4Mask, 501 Mod4Mask, Mod5Mask, Button1Mask, Button2Mask, Button3Mask, Button4Mask,
396 Button5Mask, AnyModifier 502 Button5Mask, AnyModifier
503 urxvt::NoEventMask, KeyPressMask, KeyReleaseMask, ButtonPressMask,
504 ButtonReleaseMask, EnterWindowMask, LeaveWindowMask, PointerMotionMask,
505 PointerMotionHintMask, Button1MotionMask, Button2MotionMask,
506 Button3MotionMask, Button4MotionMask, Button5MotionMask,
507 ButtonMotionMask, KeymapStateMask, ExposureMask, VisibilityChangeMask,
508 StructureNotifyMask, ResizeRedirectMask, SubstructureNotifyMask,
509 SubstructureRedirectMask, FocusChangeMask, PropertyChangeMask,
510 ColormapChangeMask, OwnerGrabButtonMask
511 urxvt::KeyPress, KeyRelease, ButtonPress, ButtonRelease, MotionNotify,
512 EnterNotify, LeaveNotify, FocusIn, FocusOut, KeymapNotify, Expose,
513 GraphicsExpose, NoExpose, VisibilityNotify, CreateNotify, DestroyNotify,
514 UnmapNotify, MapNotify, MapRequest, ReparentNotify, ConfigureNotify,
515 ConfigureRequest, GravityNotify, ResizeRequest, CirculateNotify,
516 CirculateRequest, PropertyNotify, SelectionClear, SelectionRequest,
517 SelectionNotify, ColormapNotify, ClientMessage, MappingNotify
397 Various constants for use in X calls and event processing. 518 Various constants for use in X calls and event processing.
398 519
399 RENDITION 520 RENDITION
400 Rendition bitsets contain information about colour, font, font styles 521 Rendition bitsets contain information about colour, font, font styles
401 and similar information for each screen cell. 522 and similar information for each screen cell.
457 $term->destroy 578 $term->destroy
458 Destroy the terminal object (close the window, free resources etc.). 579 Destroy the terminal object (close the window, free resources etc.).
459 Please note that rxvt will not exit as long as any event watchers 580 Please note that rxvt will not exit as long as any event watchers
460 (timers, io watchers) are still active. 581 (timers, io watchers) are still active.
461 582
583 $term->exec_async ($cmd[, @args])
584 Works like the combination of the "fork"/"exec" builtins, which
585 executes ("starts") programs in the background. This function takes
586 care of setting the user environment before exec'ing the command
587 (e.g. "PATH") and should be preferred over explicit calls to "exec"
588 or "system".
589
590 Returns the pid of the subprocess or "undef" on error.
591
462 $isset = $term->option ($optval[, $set]) 592 $isset = $term->option ($optval[, $set])
463 Returns true if the option specified by $optval is enabled, and 593 Returns true if the option specified by $optval is enabled, and
464 optionally change it. All option values are stored by name in the 594 optionally change it. All option values are stored by name in the
465 hash %urxvt::OPTION. Options not enabled in this binary are not in 595 hash %urxvt::OPTION. Options not enabled in this binary are not in
466 the hash. 596 the hash.
468 Here is a a likely non-exhaustive list of option names, please see 598 Here is a a likely non-exhaustive list of option names, please see
469 the source file /src/optinc.h to see the actual list: 599 the source file /src/optinc.h to see the actual list:
470 600
471 borderLess console cursorBlink cursorUnderline hold iconic insecure 601 borderLess console cursorBlink cursorUnderline hold iconic insecure
472 intensityStyles jumpScroll loginShell mapAlert meta8 mouseWheelScrollPage 602 intensityStyles jumpScroll loginShell mapAlert meta8 mouseWheelScrollPage
473 pastableTabs pointerBlank reverseVideo scrollBar scrollBar_floating 603 override-redirect pastableTabs pointerBlank reverseVideo scrollBar
474 scrollBar_right scrollTtyKeypress scrollTtyOutput scrollWithBuffer 604 scrollBar_floating scrollBar_right scrollTtyKeypress scrollTtyOutput
475 secondaryScreen secondaryScroll skipBuiltinGlyphs transparent 605 scrollWithBuffer secondaryScreen secondaryScroll skipBuiltinGlyphs
476 tripleclickwords utmpInhibit visualBell 606 transparent tripleclickwords utmpInhibit visualBell
477 607
478 $value = $term->resource ($name[, $newval]) 608 $value = $term->resource ($name[, $newval])
479 Returns the current resource value associated with a given name and 609 Returns the current resource value associated with a given name and
480 optionally sets a new value. Setting values is most useful in the 610 optionally sets a new value. Setting values is most useful in the
481 "init" hook. Unset resources are returned and accepted as "undef". 611 "init" hook. Unset resources are returned and accepted as "undef".
498 628
499 answerbackstring backgroundPixmap backspace_key boldFont boldItalicFont 629 answerbackstring backgroundPixmap backspace_key boldFont boldItalicFont
500 borderLess color cursorBlink cursorUnderline cutchars delete_key 630 borderLess color cursorBlink cursorUnderline cutchars delete_key
501 display_name embed ext_bwidth fade font geometry hold iconName 631 display_name embed ext_bwidth fade font geometry hold iconName
502 imFont imLocale inputMethod insecure int_bwidth intensityStyles 632 imFont imLocale inputMethod insecure int_bwidth intensityStyles
503 italicFont jumpScroll lineSpace loginShell mapAlert menu meta8 modifier 633 italicFont jumpScroll lineSpace loginShell mapAlert meta8 modifier
504 mouseWheelScrollPage name pastableTabs path perl_eval perl_ext_1 perl_ext_2 634 mouseWheelScrollPage name override_redirect pastableTabs path perl_eval
505 perl_lib pointerBlank pointerBlankDelay preeditType print_pipe pty_fd 635 perl_ext_1 perl_ext_2 perl_lib pointerBlank pointerBlankDelay
506 reverseVideo saveLines scrollBar scrollBar_align scrollBar_floating 636 preeditType print_pipe pty_fd reverseVideo saveLines scrollBar
507 scrollBar_right scrollBar_thickness scrollTtyKeypress scrollTtyOutput 637 scrollBar_align scrollBar_floating scrollBar_right scrollBar_thickness
508 scrollWithBuffer scrollstyle secondaryScreen secondaryScroll selectstyle 638 scrollTtyKeypress scrollTtyOutput scrollWithBuffer scrollstyle
639 secondaryScreen secondaryScroll selectstyle shade term_name title
509 shade term_name title transparent transparent_all tripleclickwords 640 transient_for transparent transparent_all tripleclickwords utmpInhibit
510 utmpInhibit visualBell 641 visualBell
511 642
512 $value = $term->x_resource ($pattern) 643 $value = $term->x_resource ($pattern)
513 Returns the X-Resource for the given pattern, excluding the program 644 Returns the X-Resource for the given pattern, excluding the program
514 or class name, i.e. "$term->x_resource ("boldFont")" should return 645 or class name, i.e. "$term->x_resource ("boldFont")" should return
515 the same value as used by this instance of rxvt-unicode. Returns 646 the same value as used by this instance of rxvt-unicode. Returns
648 $windowid = $term->parent 779 $windowid = $term->parent
649 Return the window id of the toplevel window. 780 Return the window id of the toplevel window.
650 781
651 $windowid = $term->vt 782 $windowid = $term->vt
652 Return the window id of the terminal window. 783 Return the window id of the terminal window.
784
785 $term->vt_emask_add ($x_event_mask)
786 Adds the specified events to the vt event mask. Useful e.g. when you
787 want to receive pointer events all the times:
788
789 $term->vt_emask_add (urxvt::PointerMotionMask);
653 790
654 $window_width = $term->width 791 $window_width = $term->width
655 $window_height = $term->height 792 $window_height = $term->height
656 $font_width = $term->fwidth 793 $font_width = $term->fwidth
657 $font_height = $term->fheight 794 $font_height = $term->fheight
660 $terminal_columns = $term->ncol 797 $terminal_columns = $term->ncol
661 $has_focus = $term->focus 798 $has_focus = $term->focus
662 $is_mapped = $term->mapped 799 $is_mapped = $term->mapped
663 $max_scrollback = $term->saveLines 800 $max_scrollback = $term->saveLines
664 $nrow_plus_saveLines = $term->total_rows 801 $nrow_plus_saveLines = $term->total_rows
665 $lines_in_scrollback = $term->nsaved 802 $topmost_scrollback_row = $term->top_row
666 Return various integers describing terminal characteristics. 803 Return various integers describing terminal characteristics.
667 804
668 $x_display = $term->display_id 805 $x_display = $term->display_id
669 Return the DISPLAY used by rxvt-unicode. 806 Return the DISPLAY used by rxvt-unicode.
670 807
681 Return the modifier masks corresponding to the "ISO Level 3 Shift" 818 Return the modifier masks corresponding to the "ISO Level 3 Shift"
682 (often AltGr), the meta key (often Alt) and the num lock key, if 819 (often AltGr), the meta key (often Alt) and the num lock key, if
683 applicable. 820 applicable.
684 821
685 $view_start = $term->view_start ([$newvalue]) 822 $view_start = $term->view_start ([$newvalue])
686 Returns the negative row number of the topmost line. Minimum value 823 Returns the row number of the topmost displayed line. Maximum value
687 is 0, which displays the normal terminal contents. Larger values 824 is 0, which displays the normal terminal contents. Lower values
688 scroll this many lines into the scrollback buffer. 825 scroll this many lines into the scrollback buffer.
689 826
690 $term->want_refresh 827 $term->want_refresh
691 Requests a screen refresh. At the next opportunity, rxvt-unicode 828 Requests a screen refresh. At the next opportunity, rxvt-unicode
692 will compare the on-screen display with its stored representation. 829 will compare the on-screen display with its stored representation.
853 $timer = $timer->start 990 $timer = $timer->start
854 Start the timer. 991 Start the timer.
855 992
856 $timer = $timer->start ($tstamp) 993 $timer = $timer->start ($tstamp)
857 Set the event trigger time to $tstamp and start the timer. 994 Set the event trigger time to $tstamp and start the timer.
995
996 $timer = $timer->after ($delay)
997 Like "start", but sets the expiry timer to c<urxvt::NOW + $delay>.
858 998
859 $timer = $timer->stop 999 $timer = $timer->stop
860 Stop the timer. 1000 Stop the timer.
861 1001
862 The "urxvt::iow" Class 1002 The "urxvt::iow" Class
894 Start watching for requested events on the given handle. 1034 Start watching for requested events on the given handle.
895 1035
896 $iow = $iow->stop 1036 $iow = $iow->stop
897 Stop watching for events on the given filehandle. 1037 Stop watching for events on the given filehandle.
898 1038
1039 The "urxvt::iw" Class
1040 This class implements idle watchers, that get called automatically when
1041 the process is idle. They should return as fast as possible, after doing
1042 some useful work.
1043
1044 $iw = new urxvt::iw
1045 Create a new idle watcher object in stopped state.
1046
1047 $iw = $iw->cb (sub { my ($iw) = @_; ... })
1048 Set the callback to be called when the watcher triggers.
1049
1050 $timer = $timer->start
1051 Start the watcher.
1052
1053 $timer = $timer->stop
1054 Stop the watcher.
1055
1056 The "urxvt::pw" Class
1057 This class implements process watchers. They create an event whenever a
1058 process exits, after which they stop automatically.
1059
1060 my $pid = fork;
1061 ...
1062 $term->{pw} = urxvt::pw
1063 ->new
1064 ->start ($pid)
1065 ->cb (sub {
1066 my ($pw, $exit_status) = @_;
1067 ...
1068 });
1069
1070 $pw = new urxvt::pw
1071 Create a new process watcher in stopped state.
1072
1073 $pw = $pw->cb (sub { my ($pw, $exit_status) = @_; ... })
1074 Set the callback to be called when the timer triggers.
1075
1076 $pw = $timer->start ($pid)
1077 Tells the wqtcher to start watching for process $pid.
1078
1079 $pw = $pw->stop
1080 Stop the watcher.
1081
899ENVIRONMENT 1082ENVIRONMENT
900 URXVT_PERL_VERBOSITY 1083 URXVT_PERL_VERBOSITY
901 This variable controls the verbosity level of the perl extension. Higher 1084 This variable controls the verbosity level of the perl extension. Higher
902 numbers indicate more verbose output. 1085 numbers indicate more verbose output.
903 1086

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines