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

Comparing rxvt-unicode/doc/rxvtperl.3.html (file contents):
Revision 1.5 by root, Mon Jan 2 21:41:51 2006 UTC vs.
Revision 1.7 by root, Tue Jan 3 01:45:12 2006 UTC

15 <li><a href="#name">NAME</a></li> 15 <li><a href="#name">NAME</a></li>
16 <li><a href="#synopsis">SYNOPSIS</a></li> 16 <li><a href="#synopsis">SYNOPSIS</a></li>
17 <li><a href="#description">DESCRIPTION</a></li> 17 <li><a href="#description">DESCRIPTION</a></li>
18 <ul> 18 <ul>
19 19
20 <li><a href="#prepackaged_extensions">Prepackaged Extensions</a></li>
20 <li><a href="#general_api_considerations">General API Considerations</a></li> 21 <li><a href="#general_api_considerations">General API Considerations</a></li>
21 <li><a href="#hooks">Hooks</a></li> 22 <li><a href="#hooks">Hooks</a></li>
22 <li><a href="#functions_in_the_urxvt_package">Functions in the <code>urxvt</code> Package</a></li> 23 <li><a href="#functions_in_the_urxvt_package">Functions in the <code>urxvt</code> Package</a></li>
23 <li><a href="#the_urxvt__term_class">The <code>urxvt::term</code> Class</a></li> 24 <li><a href="#the_urxvt__term_class">The <code>urxvt::term</code> Class</a></li>
25 <li><a href="#rendition">RENDITION</a></li>
24 <li><a href="#the_urxvt__timer_class">The <code>urxvt::timer</code> Class</a></li> 26 <li><a href="#the_urxvt__timer_class">The <code>urxvt::timer</code> Class</a></li>
25 <li><a href="#the_urxvt__iow_class">The <code>urxvt::iow</code> Class</a></li> 27 <li><a href="#the_urxvt__iow_class">The <code>urxvt::iow</code> Class</a></li>
26 </ul> 28 </ul>
27 29
28 <li><a href="#environment">ENVIRONMENT</a></li> 30 <li><a href="#environment">ENVIRONMENT</a></li>
36<!-- INDEX END --> 38<!-- INDEX END -->
37 39
38<hr /> 40<hr />
39<p> 41<p>
40</p> 42</p>
43<hr />
41<h1><a name="name">NAME</a></h1> 44<h1><a name="name">NAME</a></h1>
42<p>rxvtperl - rxvt-unicode's embedded perl interpreter</p> 45<p>rxvtperl - rxvt-unicode's embedded perl interpreter</p>
43<p> 46<p>
44</p> 47</p>
45<hr /> 48<hr />
62<p>Everytime a terminal object gets created, scripts specified via the 65<p>Everytime a terminal object gets created, scripts specified via the
63<code>perl</code> resource are loaded and associated with it.</p> 66<code>perl</code> resource are loaded and associated with it.</p>
64<p>Scripts are compiled in a 'use strict' and 'use utf8' environment, and 67<p>Scripts are compiled in a 'use strict' and 'use utf8' environment, and
65thus must be encoded as UTF-8.</p> 68thus must be encoded as UTF-8.</p>
66<p>Each script will only ever be loaded once, even in rxvtd, where 69<p>Each script will only ever be loaded once, even in rxvtd, where
67scripts will be shared (But not enabled) for all terminals.</p> 70scripts will be shared (but not enabled) for all terminals.</p>
71<p>
72</p>
73<h2><a name="prepackaged_extensions">Prepackaged Extensions</a></h2>
74<p>This section describes the extensiosn delivered with this version. You can
75find them in <em>/opt/rxvt/lib/urxvt/perl/</em>.</p>
76<p>You can activate them like this:</p>
77<pre>
78 rxvt -pe &lt;extensionname&gt;</pre>
79<dl>
80<dt><strong><a name="item_selection">selection</a></strong><br />
81</dt>
82<dd>
83Miscellaneous selection modifications.
84</dd>
85<dl>
86<dt><strong><a name="item_rot13">rot13</a></strong><br />
87</dt>
88<dd>
89Rot-13 the selection when activated. Used via keyboard trigger:
90</dd>
91<dd>
92<pre>
93 URxvt.keysym.C-M-r: perl:selection:rot13</pre>
94</dd>
95<p></p></dl>
96<dt><strong><a name="item_digital_2dclock">digital-clock</a></strong><br />
97</dt>
98<dd>
99Displays a very simple digital clock in the upper right corner of the
100window. Illustrates overwriting the refresh callbacks to create your own
101overlays or changes.
102</dd>
103<p></p>
104<dt><strong><a name="item_simple_2doverlay_2dclock">simple-overlay-clock</a></strong><br />
105</dt>
106<dd>
107Displays a digital clock using the built-in overlay (colorful, useless).
108</dd>
109<p></p></dl>
68<p> 110<p>
69</p> 111</p>
70<h2><a name="general_api_considerations">General API Considerations</a></h2> 112<h2><a name="general_api_considerations">General API Considerations</a></h2>
71<p>All objects (such as terminals, time watchers etc.) are typical 113<p>All objects (such as terminals, time watchers etc.) are typical
72reference-to-hash objects. The hash can be used to store anything you 114reference-to-hash objects. The hash can be used to store anything you
288<dd> 330<dd>
289Try to request the primary selection from the server (for example, as set 331Try to request the primary selection from the server (for example, as set
290by the next method). 332by the next method).
291</dd> 333</dd>
292<p></p> 334<p></p>
293<dt><strong><a name="item_selection">$oldtext = $term-&gt;selection ([$newtext])</a></strong><br /> 335<dt><strong>$oldtext = $term-&gt;selection ([$newtext])</strong><br />
294</dt> 336</dt>
295<dd> 337<dd>
296Return the current selection text and optionally replace it by <code>$newtext</code>. 338Return the current selection text and optionally replace it by <code>$newtext</code>.
297</dd> 339</dd>
298<p></p> 340<p></p>
351<p></p> 393<p></p>
352<dt><strong><a name="item_tt_write">$term-&gt;tt_write ($octets)</a></strong><br /> 394<dt><strong><a name="item_tt_write">$term-&gt;tt_write ($octets)</a></strong><br />
353</dt> 395</dt>
354<dd> 396<dd>
355Write the octets given in <code>$data</code> to the tty (i.e. as program input). To 397Write the octets given in <code>$data</code> to the tty (i.e. as program input). To
356pass characters instead of octets, you should convetr you strings first to 398pass characters instead of octets, you should convert your strings first
357the locale-specific encoding using <a href="#item_locale_encode"><code>$term-&gt;locale_encode</code></a>. 399to the locale-specific encoding using <a href="#item_locale_encode"><code>$term-&gt;locale_encode</code></a>.
400</dd>
401<p></p>
402<dt><strong><a name="item_nrow">$nrow = $term-&gt;nrow</a></strong><br />
403</dt>
404<dt><strong><a name="item_ncol">$ncol = $term-&gt;ncol</a></strong><br />
405</dt>
406<dd>
407Return the number of rows/columns of the terminal window (i.e. as
408specified by <code>-geometry</code>, excluding any scrollback).
409</dd>
410<p></p>
411<dt><strong><a name="item_nsaved">$nsaved = $term-&gt;nsaved</a></strong><br />
412</dt>
413<dd>
414Returns the number of lines in the scrollback buffer.
415</dd>
416<p></p>
417<dt><strong><a name="item_view_start">$view_start = $term-&gt;view_start ([$newvalue])</a></strong><br />
418</dt>
419<dd>
420Returns the negative row number of the topmost line. Minimum value is
421<code>0</code>, which displays the normal terminal contents. Larger values scroll
422this many lines into the scrollback buffer.
423</dd>
424<p></p>
425<dt><strong><a name="item_want_refresh">$term-&gt;want_refresh</a></strong><br />
426</dt>
427<dd>
428Requests a screen refresh. At the next opportunity, rxvt-unicode will
429compare the on-screen display with its stored representation. If they
430differ, it redraws the differences.
431</dd>
432<dd>
433<p>Used after changing terminal contents to display them.</p>
434</dd>
435<p></p>
436<dt><strong><a name="item_row_t">$text = $term-&gt;ROW_t ($row_number[, $new_text[, $start_col]])</a></strong><br />
437</dt>
438<dd>
439Returns the text of the entire row with number <code>$row_number</code>. Row <code>0</code>
440is the topmost terminal line, row <code>$term-&gt;$ncol-1</code> is the bottommost
441terminal line. The scrollback buffer starts at line <code>-1</code> and extends to
442line <a href="#item_nsaved"><code>-$term-&gt;nsaved</code></a>.
443</dd>
444<dd>
445<p>If <code>$new_text</code> is specified, it will replace characters in the current
446line, starting at column <code>$start_col</code> (default <code>0</code>), which is useful
447to replace only parts of a line. The font iindex in the rendition will
448automatically be updated.</p>
449</dd>
450<dd>
451<p><code>$text</code> is in a special encoding: tabs and wide characters that use more
452than one cell when displayed are padded with urxvt::NOCHAR characters
453(<code>chr 65535</code>). Characters with combining characters and other characters
454that do not fit into the normal tetx encoding will be replaced with
455characters in the private use area.</p>
456</dd>
457<dd>
458<p>You have to obey this encoding when changing text. The advantage is
459that <code>substr</code> and similar functions work on screen cells and not on
460characters.</p>
461</dd>
462<dd>
463<p>The methods <a href="#item_special_encode"><code>$term-&gt;special_encode</code></a> and <a href="#item_special_decode"><code>$term-&gt;special_decode</code></a>
464can be used to convert normal strings into this encoding and vice versa.</p>
465</dd>
466<p></p>
467<dt><strong><a name="item_row_r">$rend = $term-&gt;ROW_r ($row_number[, $new_rend[, $start_col]])</a></strong><br />
468</dt>
469<dd>
470Like <a href="#item_row_t"><code>$term-&gt;ROW_t</code></a>, but returns an arrayref with rendition
471bitsets. Rendition bitsets contain information about colour, font, font
472styles and similar information. See also <a href="#item_row_t"><code>$term-&gt;ROW_t</code></a>.
473</dd>
474<dd>
475<p>When setting rendition, the font mask will be ignored.</p>
476</dd>
477<dd>
478<p>See the section on RENDITION, below.</p>
479</dd>
480<p></p>
481<dt><strong><a name="item_row_l">$length = $term-&gt;ROW_l ($row_number[, $new_length])</a></strong><br />
482</dt>
483<dd>
484Returns the number of screen cells that are in use (``the line length''). If
485it is <code>-1</code>, then the line is part of a multiple-row logical ``line'', which
486means all characters are in use and it is continued on the next row.
487</dd>
488<p></p>
489<dt><strong><a name="item_special_encode">$text = $term-&gt;special_encode $string</a></strong><br />
490</dt>
491<dd>
492Converts a perl string into the special encoding used by rxvt-unicode,
493where one character corresponds to one screen cell. See
494<a href="#item_row_t"><code>$term-&gt;ROW_t</code></a> for details.
495</dd>
496<p></p>
497<dt><strong><a name="item_special_decode">$string = $term-&gt;special_decode $text</a></strong><br />
498</dt>
499<dd>
500Converts rxvt-unicodes text reprsentation into a perl string. See
501<a href="#item_row_t"><code>$term-&gt;ROW_t</code></a> for details.
502</dd>
503<p></p></dl>
504<p>
505</p>
506<h2><a name="rendition">RENDITION</a></h2>
507<p>Rendition bitsets contain information about colour, font, font styles and
508similar information for each screen cell.</p>
509<p>The following ``macros'' deal with changes in rendition sets. You should
510never just create a bitset, you should always modify an existing one,
511as they contain important information required for correct operation of
512rxvt-unicode.</p>
513<dl>
514<dt><strong><a name="item__24rend__3d_urxvt_3a_3adefault_rstyle">$rend = urxvt::DEFAULT_RSTYLE</a></strong><br />
515</dt>
516<dd>
517Returns the default rendition, as used when the terminal is starting up or
518being reset. Useful as a base
358</dd> 519</dd>
359<p></p></dl> 520<p></p></dl>
360<p> 521<p>
361</p> 522</p>
362<h2><a name="the_urxvt__timer_class">The <code>urxvt::timer</code> Class</a></h2> 523<h2><a name="the_urxvt__timer_class">The <code>urxvt::timer</code> Class</a></h2>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines