ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/urxvt.pm
(Generate patch)

Comparing rxvt-unicode/src/urxvt.pm (file contents):
Revision 1.35 by root, Fri Jan 6 01:27:27 2006 UTC vs.
Revision 1.42 by root, Fri Jan 6 21:06:09 2006 UTC

62 62
63Displays a digital clock using the built-in overlay. 63Displays a digital clock using the built-in overlay.
64 64
65=item mark-urls 65=item mark-urls
66 66
67Uses per-line filtering (C<on_line_update>) to underline urls. 67Uses per-line display filtering (C<on_line_update>) to underline urls.
68
69=item block-graphics-to-ascii
70
71A not very useful example of filtering all text output to the terminal,
72by replacing all line-drawing characters (U+2500 .. U+259F) by a
73similar-looking ascii character.
68 74
69=item example-refresh-hooks 75=item example-refresh-hooks
70 76
71Displays a very simple digital clock in the upper right corner of the 77Displays a very simple digital clock in the upper right corner of the
72window. Illustrates overwriting the refresh callbacks to create your own 78window. Illustrates overwriting the refresh callbacks to create your own
73overlays or changes. 79overlays or changes.
74
75=item example-filter-input
76
77A not very useful example of filtering all text output to the terminal, by
78underlining all urls that matches a certain regex (i.e. some urls :). It
79is not very useful because urls that are output in multiple steps (e.g.
80when typing them) do not get marked.
81 80
82=back 81=back
83 82
84=head2 General API Considerations 83=head2 General API Considerations
85 84
137=over 4 136=over 4
138 137
139=item on_init $term 138=item on_init $term
140 139
141Called after a new terminal object has been initialized, but before 140Called after a new terminal object has been initialized, but before
142windows are created or the command gets run. 141windows are created or the command gets run. Most methods are unsafe to
142call or deliver senseless data, as terminal size and other characteristics
143have not yet been determined. You can safely query and change resources,
144though.
143 145
144=item on_reset $term 146=item on_reset $term
145 147
146Called after the screen is "reset" for any reason, such as resizing or 148Called after the screen is "reset" for any reason, such as resizing or
147control sequences. Here is where you can react on changes to size-related 149control sequences. Here is where you can react on changes to size-related
258 260
259Called whenever the user presses a key combination that has a 261Called whenever the user presses a key combination that has a
260C<perl:string> action bound to it (see description of the B<keysym> 262C<perl:string> action bound to it (see description of the B<keysym>
261resource in the @@RXVT_NAME@@(1) manpage). 263resource in the @@RXVT_NAME@@(1) manpage).
262 264
265=item on_key_press $term, $event, $octets
266
267=item on_key_release $term, $event
268
269=item on_button_press $term, $event
270
271=item on_button_release $term, $event
272
273=item on_motion_notify $term, $event
274
275Called whenever the corresponding X event is received for the terminal If
276the hook returns true, then the even will be ignored by rxvt-unicode.
277
278The event is a hash with most values as named by Xlib (see the XEvent
279manpage), with the additional members C<row> and C<col>, which are the row
280and column under the mouse cursor.
281
282C<on_key_press> additionally receives the string rxvt-unicode would
283output, if any, in locale-specific encoding.
284
285subwindow.
286
263=back 287=back
264 288
265=head2 Variables in the C<urxvt> Package 289=head2 Variables in the C<urxvt> Package
266 290
267=over 4 291=over 4
274=back 298=back
275 299
276=head2 Functions in the C<urxvt> Package 300=head2 Functions in the C<urxvt> Package
277 301
278=over 4 302=over 4
303
304=item $term = new urxvt [arg...]
305
306Creates a new terminal, very similar as if you had started it with
307C<system $binfile, arg...>. Croaks (and probably outputs an error message)
308if the new instance couldn't be created. Returns C<undef> if the new
309instance didn't initialise perl, and the terminal object otherwise. The
310C<init> and C<start> hooks will be called during the call.
279 311
280=item urxvt::fatal $errormessage 312=item urxvt::fatal $errormessage
281 313
282Fatally aborts execution with the given error message. Avoid at all 314Fatally aborts execution with the given error message. Avoid at all
283costs! The only time this is acceptable is when the terminal process 315costs! The only time this is acceptable is when the terminal process
432 my $htype = shift; 464 my $htype = shift;
433 465
434 if ($htype == 0) { # INIT 466 if ($htype == 0) { # INIT
435 my @dirs = ((split /:/, $TERM->resource ("perl_lib")), "$LIBDIR/perl"); 467 my @dirs = ((split /:/, $TERM->resource ("perl_lib")), "$LIBDIR/perl");
436 468
437 for my $ext (map { split /:/, $TERM->resource ("perl_ext_$_") } 1, 2) { 469 for my $ext (map { split /,/, $TERM->resource ("perl_ext_$_") } 1, 2) {
438 my @files = grep -f $_, map "$_/$ext", @dirs; 470 my @files = grep -f $_, map "$_/$ext", @dirs;
439 471
440 if (@files) { 472 if (@files) {
441 register_package script_package $files[0]; 473 register_package script_package $files[0];
442 } else { 474 } else {
500} 532}
501 533
502=head2 The C<urxvt::term> Class 534=head2 The C<urxvt::term> Class
503 535
504=over 4 536=over 4
537
538=item $term->destroy
539
540Destroy the terminal object (close the window, free resources etc.).
505 541
506=item $value = $term->resource ($name[, $newval]) 542=item $value = $term->resource ($name[, $newval])
507 543
508Returns the current resource value associated with a given name and 544Returns the current resource value associated with a given name and
509optionally sets a new value. Setting values is most useful in the C<init> 545optionally sets a new value. Setting values is most useful in the C<init>
626 662
627If hidden, display the overlay again. 663If hidden, display the overlay again.
628 664
629=back 665=back
630 666
631=item $cellwidth = $term->strwidth $string 667=item $cellwidth = $term->strwidth ($string)
632 668
633Returns the number of screen-cells this string would need. Correctly 669Returns the number of screen-cells this string would need. Correctly
634accounts for wide and combining characters. 670accounts for wide and combining characters.
635 671
636=item $octets = $term->locale_encode $string 672=item $octets = $term->locale_encode ($string)
637 673
638Convert the given text string into the corresponding locale encoding. 674Convert the given text string into the corresponding locale encoding.
639 675
640=item $string = $term->locale_decode $octets 676=item $string = $term->locale_decode ($octets)
641 677
642Convert the given locale-encoded octets into a perl string. 678Convert the given locale-encoded octets into a perl string.
643 679
644=item $term->scr_add_lines ($string) 680=item $term->scr_add_lines ($string)
645 681
650 686
651Normally its not a good idea to use this function, as programs might be 687Normally its not a good idea to use this function, as programs might be
652confused by changes in cursor position or scrolling. Its useful inside a 688confused by changes in cursor position or scrolling. Its useful inside a
653C<on_add_lines> hook, though. 689C<on_add_lines> hook, though.
654 690
691=item $term->cmd_parse ($octets)
692
693Similar to C<scr_add_lines>, but the argument must be in the
694locale-specific encoding of the terminal and can contain command sequences
695(escape codes) that will be interpreted.
696
655=item $term->tt_write ($octets) 697=item $term->tt_write ($octets)
656 698
657Write the octets given in C<$data> to the tty (i.e. as program input). To 699Write the octets given in C<$data> to the tty (i.e. as program input). To
658pass characters instead of octets, you should convert your strings first 700pass characters instead of octets, you should convert your strings first
659to the locale-specific encoding using C<< $term->locale_encode >>. 701to the locale-specific encoding using C<< $term->locale_encode >>.
702
703=item $windowid = $term->parent
704
705Return the window id of the toplevel window.
706
707=item $windowid = $term->vt
708
709Return the window id of the terminal window.
660 710
661=item $window_width = $term->width 711=item $window_width = $term->width
662 712
663=item $window_height = $term->height 713=item $window_height = $term->height
664 714

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines