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.58 by root, Sun Jan 8 22:58:13 2006 UTC vs.
Revision 1.61 by root, Mon Jan 9 01:36:56 2006 UTC

58 58
59=back 59=back
60 60
61=item option-popup (enabled by default) 61=item option-popup (enabled by default)
62 62
63Binds a popup menu to Ctrl-Button3 that lets you toggle (some) options at 63Binds a popup menu to Ctrl-Button2 that lets you toggle (some) options at
64runtime. 64runtime.
65
66=item selection-popup (enabled by default)
67
68Binds a popup menu to Ctrl-Button3 that lets you convert the selection
69text into various other formats/action.
65 70
66=item digital-clock 71=item digital-clock
67 72
68Displays a digital clock using the built-in overlay. 73Displays a digital clock using the built-in overlay.
69 74
199than the scroll back buffer or the terminal. 204than the scroll back buffer or the terminal.
200 205
201It is called before lines are scrolled out (so rows 0 .. min ($lines - 1, 206It is called before lines are scrolled out (so rows 0 .. min ($lines - 1,
202$nrow - 1) represent the lines to be scrolled out). C<$saved> is the total 207$nrow - 1) represent the lines to be scrolled out). C<$saved> is the total
203number of lines that will be in the scrollback buffer. 208number of lines that will be in the scrollback buffer.
204
205=item on_tty_activity $term *NYI*
206
207Called whenever the program(s) running in the urxvt window send output.
208 209
209=item on_osc_seq $term, $string 210=item on_osc_seq $term, $string
210 211
211Called whenever the B<ESC ] 777 ; string ST> command sequence (OSC = 212Called whenever the B<ESC ] 777 ; string ST> command sequence (OSC =
212operating system command) is processed. Cursor position and other state 213operating system command) is processed. Cursor position and other state
423 my $msg = join "", @_; 424 my $msg = join "", @_;
424 $msg .= "\n" 425 $msg .= "\n"
425 unless $msg =~ /\n$/; 426 unless $msg =~ /\n$/;
426 urxvt::warn ($msg); 427 urxvt::warn ($msg);
427 }; 428 };
429
430 delete $ENV{IFS};
431 delete $ENV{CDPATH};
432 delete $ENV{BASH_ENV};
433 $ENV{PATH} = "/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/bin:/opt/sbin";
428} 434}
429 435
430my @hook_count; 436my @hook_count;
431my $verbosity = $ENV{URXVT_PERL_VERBOSITY}; 437my $verbosity = $ENV{URXVT_PERL_VERBOSITY};
432 438
465 verbose 3, "loading extension '$path' into package '$pkg'"; 471 verbose 3, "loading extension '$path' into package '$pkg'";
466 472
467 open my $fh, "<:raw", $path 473 open my $fh, "<:raw", $path
468 or die "$path: $!"; 474 or die "$path: $!";
469 475
470 my $source = "package $pkg; use strict; use utf8;\n" 476 my $source = untaint "package $pkg; use strict; use utf8;\n"
471 . "use base urxvt::term::proxy::;\n" 477 . "use base urxvt::term::proxy::;\n"
472 . "#line 1 \"$path\"\n{\n" 478 . "#line 1 \"$path\"\n{\n"
473 . (do { local $/; <$fh> }) 479 . (do { local $/; <$fh> })
474 . "\n};\n1"; 480 . "\n};\n1";
475 481
476 $source =~ /(.*)/s and $source = $1; # untaint
477
478 eval $source or die "$path: $@"; 482 eval $source or die "$path: $@";
479 483
480 $pkg 484 $pkg
481 } 485 }
482} 486}
493 497
494 my %want_ext; 498 my %want_ext;
495 499
496 for (map { split /,/, $TERM->resource ("perl_ext_$_") } 1, 2) { 500 for (map { split /,/, $TERM->resource ("perl_ext_$_") } 1, 2) {
497 if ($_ eq "default") { 501 if ($_ eq "default") {
498 $want_ext{$_}++ for qw(selection option-popup); 502 $want_ext{$_}++ for qw(selection option-popup selection-popup);
499 } elsif (/^-(.*)$/) { 503 } elsif (/^-(.*)$/) {
500 delete $want_ext{$1}; 504 delete $want_ext{$1};
501 } else { 505 } else {
502 $want_ext{$_}++; 506 $want_ext{$_}++;
503 } 507 }
1092 $offset / $self->{ncol} + $self->{beg}, 1096 $offset / $self->{ncol} + $self->{beg},
1093 $offset % $self->{ncol} 1097 $offset % $self->{ncol}
1094 ) 1098 )
1095} 1099}
1096 1100
1097=item ($row, $col) = $line->coord_of ($offset)
1098=item $text = $term->special_encode $string 1101=item $text = $term->special_encode $string
1099 1102
1100Converts a perl string into the special encoding used by rxvt-unicode, 1103Converts a perl string into the special encoding used by rxvt-unicode,
1101where one character corresponds to one screen cell. See 1104where one character corresponds to one screen cell. See
1102C<< $term->ROW_t >> for details. 1105C<< $term->ROW_t >> for details.
1103 1106
1104=item $string = $term->special_decode $text 1107=item $string = $term->special_decode $text
1105 1108
1106Converts rxvt-unicodes text reprsentation into a perl string. See 1109Converts rxvt-unicodes text reprsentation into a perl string. See
1107C<< $term->ROW_t >> for details. 1110C<< $term->ROW_t >> for details.
1111
1112=item $success = $term->grab_button ($button, $modifiermask)
1113
1114Registers a synchronous button grab. See XGrabButton.
1115
1116=item $success = $term->grab ($eventtime[, $sync])
1117
1118Calls XGrabPointer and XGrabKeyboard in asynchronous (default) or
1119synchronous (C<$sync> is true). Also remembers the grab timestampe.
1120
1121=item $term->allow_events_async
1122
1123Calls XAllowEvents with AsyncBoth for the most recent grab.
1124
1125=item $term->allow_events_sync
1126
1127Calls XAllowEvents with SyncBoth for the most recent grab.
1128
1129=item $term->allow_events_replay
1130
1131Calls XAllowEvents with both ReplayPointer and ReplayKeyboard for the most
1132recent grab.
1133
1134=item $term->ungrab
1135
1136Calls XUngrab for the most recent grab. Is called automatically on
1137evaluation errors, as it is better to lose the grab in the error case as
1138the session.
1108 1139
1109=back 1140=back
1110 1141
1111=cut 1142=cut
1112 1143

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines