--- rxvt-unicode/doc/rxvtperl.3.html 2006/01/02 17:21:59 1.2 +++ rxvt-unicode/doc/rxvtperl.3.html 2006/01/03 01:39:56 1.6 @@ -15,11 +15,14 @@
urxvt
Packageurxvt::term
Classurxvt::timer
Classurxvt::iow
Class* Put your scripts into /opt/rxvt/lib/urxvt/perl-ext/, they will be loaded automatically.
-* Each script will only be loaded once, even in urxvtd, and will be valid -globally.
-* Scripts are evaluated in a 'use strict' and 'use utf8' environment, and -thus must be encoded as UTF-8.
++ # create a file grab_test in $HOME:
sub on_sel_grab { warn "you selected ", $_[0]->selection; () }
- 1+ # start a rxvt using it: +
+ rxvt --perl-lib $HOME -pe grab_test
Everytime a terminal object gets created, scripts specified via the
+perl
resource are loaded and associated with it.
Scripts are compiled in a 'use strict' and 'use utf8' environment, and +thus must be encoded as UTF-8.
+Each script will only ever be loaded once, even in rxvtd, where +scripts will be shared (But not enabled) for all terminals.
++
+This section describes the extensiosn delivered with this version. You can +find them in /opt/rxvt/lib/urxvt/perl/.
+You can activate them like this:
++ rxvt -pe <extensionname>+
+ URxvt.keysym.C-M-r: perl:selection:rot13+
+
+All objects (such as terminals, time watchers etc.) are typical
+reference-to-hash objects. The hash can be used to store anything you
+like. All members starting with an underscore (such as _ptr
or
+_hook
) are reserved for internal uses and must not be accessed or
+modified).
When objects are destroyed on the C++ side, the perl object hashes are +emptied, so its best to store related objects such as time watchers and +the like inside the terminal object so they get destroyed as soon as the +terminal is destroyed.
on_refresh_begin
.
perl:string
action bound to it (see description of the keysym
+resource in the rxvt(1)
manpage).
+@@ -185,7 +253,7 @@
rxvt_warn
witht eh given string which should not include a
+Calls rxvt_warn
with the given string which should not include a
newline. The module also overwrites the warn
builtin with a function
that calls this function.
$newtext
.
@@ -310,6 +371,152 @@
$data
to the tty (i.e. as program input). To
+pass characters instead of octets, you should convert your strings first
+to the locale-specific encoding using $term->locale_encode
.
+-geometry
, excluding any scrollback).
+0
, which displays the normal terminal contents. Larger values scroll
+this many lines into the scrollback buffer.
+Used after changing terminal contents to display them.
+$row_number
. Row 0
+is the topmost terminal line, row $term->$ncol-1
is the bottommost
+terminal line. The scrollback buffer starts at line -1
and extends to
+line -$term->nsaved
.
+If $new_text
is specified, it will replace characters in the current
+line, starting at column $start_col
(default 0
), which is useful
+to replace only parts of a line. The font iindex in the rendition will
+automatically be updated.
$text
is in a special encoding: tabs and wide characters that use more
+than one cell when displayed are padded with urxvt::NOCHAR characters
+(chr 65535
). Characters with combining characters and other characters
+that do not fit into the normal tetx encoding will be replaced with
+characters in the private use area.
You have to obey this encoding when changing text. The advantage is
+that substr
and similar functions work on screen cells and not on
+characters.
The methods $term->special_encode
and $term->special_decode
+can be used to convert normal strings into this encoding and vice versa.
$term->ROW_t
, but returns an arrayref with rendition
+bitsets. Rendition bitsets contain information about colour, font, font
+styles and similar information. See also $term->ROW_t
.
+When setting rendition, the font mask will be ignored.
+See the section on RENDITION, below.
+-1
, then the line is part of a multiple-row logical ``line'', which
+means all characters are in use and it is continued on the next row.
+$term->ROW_t
for details.
+$term->ROW_t
for details.
++
+Rendition bitsets contain information about colour, font, font styles and +similar information for each screen cell.
+The following ``macros'' deal with changes in rendition sets. You should +never just create a bitset, you should always modify an existing one, +as they contain important information required for correct operation of +rxvt-unicode.
+