--- rxvt-unicode/doc/rxvtperl.3.html 2006/01/07 04:19:43 1.14 +++ rxvt-unicode/doc/rxvtperl.3.html 2006/01/09 01:36:56 1.17 @@ -23,7 +23,9 @@
  • Variables in the urxvt Package
  • Functions in the urxvt Package
  • RENDITION
  • +
  • The urxvt::anyevent Class
  • The urxvt::term Class
  • +
  • The urxvt::popup Class
  • The urxvt::timer Class
  • The urxvt::iow Class
  • @@ -63,8 +65,8 @@


    DESCRIPTION

    -

    Everytime a terminal object gets created, scripts specified via the -perl resource are loaded and associated with it.

    +

    Everytime a terminal object gets created, extension 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 @@ -78,7 +80,7 @@

       rxvt -pe <extensionname>
    -
    selection
    +
    selection (enabled by default)
    Intelligent selection. This extension tries to be more intelligent when @@ -100,6 +102,20 @@ URxvt.keysym.C-M-r: perl:selection:rot13

    +
    option-popup (enabled by default)
    +
    +
    +Binds a popup menu to Ctrl-Button2 that lets you toggle (some) options at +runtime. +
    +

    +
    selection-popup (enabled by default)
    +
    +
    +Binds a popup menu to Ctrl-Button3 that lets you convert the selection +text into various other formats/action. +
    +

    digital-clock
    @@ -171,10 +187,11 @@

    The following subroutines can be declared in extension files, and will be called whenever the relevant event happens.

    The first argument passed to them is an object private to each terminal -and extension package. You can call all urxvt::term methods on it, but +and extension package. You can call all urxvt::term methods on it, but its not a real urxvt::term object. Instead, the real urxvt::term object that is shared between all packages is stored in the term -member.

    +member. It is, however, blessed intot he package of the extension script, +so for all practical purposes you can treat an extension script as a class.

    All of them must return a boolean value. If it is true, then the event counts as being consumed, and the invocation of other hooks is skipped, and the relevant action might not be carried out by the C++ code.

    @@ -240,20 +257,6 @@

    See the selection example extension.

    -
    on_focus_in $term
    -
    -
    -Called whenever the window gets the keyboard focus, before urxvt does -focus in processing. -
    -

    -
    on_focus_out $term
    -
    -
    -Called wheneever the window loses keyboard focus, before urxvt does focus -out processing. -
    -

    on_view_change $term, $offset
    @@ -275,12 +278,6 @@ number of lines that will be in the scrollback buffer.

    -
    on_tty_activity $term *NYI*
    -
    -
    -Called whenever the program(s) running in the urxvt window send output. -
    -

    on_osc_seq $term, $string
    @@ -348,6 +345,20 @@ resource in the rxvt(1) manpage).

    +
    on_focus_in $term
    +
    +
    +Called whenever the window gets the keyboard focus, before rxvt-unicode +does focus in processing. +
    +

    +
    on_focus_out $term
    +
    +
    +Called wheneever the window loses keyboard focus, before rxvt-unicode does +focus out processing. +
    +

    on_key_press $term, $event, $octets
    on_key_release $term, $event
    @@ -358,6 +369,10 @@
    on_motion_notify $term, $event
    +
    on_map_notify $term, $event
    +
    +
    on_unmap_notify $term, $event
    +
    Called whenever the corresponding X event is received for the terminal If the hook returns true, then the even will be ignored by rxvt-unicode. @@ -425,6 +440,16 @@
    Returns the ``current time'' (as per the event loop).
    +

    +
    urxvt::CurrentTime
    +
    +
    urxvt::ShiftMask, LockMask, ControlMask, Mod1Mask, Mod2Mask, +Mod3Mask, Mod4Mask, Mod5Mask, Button1Mask, Button2Mask, Button3Mask, +Button4Mask, Button5Mask, AnyModifier
    +
    +
    +Various constants for use in X calls and event processing. +

    @@ -490,6 +515,14 @@

    +

    The urxvt::anyevent Class

    +

    The sole purpose of this class is to deliver an interface to the +AnyEvent module - any module using it will work inside urxvt without +further work. The only exception is that you cannot wait on condition +variables, but non-blocking condvar use is ok. What this means is that you +cannot use blocking APIs, but the non-blocking variant should work.

    +

    +

    The urxvt::term Class

    $term->destroy
    @@ -498,6 +531,27 @@ Destroy the terminal object (close the window, free resources etc.).

    +
    $isset = $term->option ($optval[, $set])
    +
    +
    +Returns true if the option specified by $optval is enabled, and +optionally change it. All option values are stored by name in the hash +%urxvt::OPTION. Options not enabled in this binary are not in the hash. +
    +
    +

    Here is a a likely non-exhaustive list of option names, please see the +source file /src/optinc.h to see the actual list:

    +
    +
    +
    + borderLess console cursorBlink cursorUnderline hold iconic insecure
    + intensityStyles jumpScroll loginShell mapAlert meta8 mouseWheelScrollPage
    + pastableTabs pointerBlank reverseVideo scrollBar scrollBar_floating
    + scrollBar_right scrollTtyKeypress scrollTtyOutput scrollWithBuffer
    + secondaryScreen secondaryScroll skipBuiltinGlyphs transparent
    + tripleclickwords utmpInhibit visualBell
    +
    +

    $value = $term->resource ($name[, $newval])
    @@ -521,8 +575,8 @@

    Here is a a likely non-exhaustive list of resource names, not all of which -are supported in every build, please see the source to see the actual -list:

    +are supported in every build, please see the source file /src/rsinc.h +to see the actual list:

    @@ -642,6 +696,14 @@
     If hidden, display the overlay again.
     

    +
    $popup = $term->popup ($event)
    +
    +
    +Creates a new urxvt::popup object that implements a popup menu. The +$event must be the event causing the menu to pop up (a button event, +currently). +
    +

    $cellwidth = $term->strwidth ($string)
    @@ -731,6 +793,17 @@ Return various integers describing terminal characteristics.

    +
    $modifiermask = $term->ModLevel3Mask
    +
    +
    $modifiermask = $term->ModMetaMask
    +
    +
    $modifiermask = $term->ModNumLockMask
    +
    +
    +Return the modifier masks corresponding to the ``ISO Level 3 Shift'' (often +AltGr), the meta key (often Alt) and the num lock key, if applicable. +
    +

    $view_start = $term->view_start ([$newvalue])
    @@ -778,7 +851,7 @@ characters.

    -

    The methods $term->special_encode and $term->special_decode +

    The methods $term->special_encode and $term->special_decode can be used to convert normal strings into this encoding and vice versa.

    @@ -860,8 +933,7 @@ Translates a string offset into terminal coordinates again.

    -
    ($row, $col) = $line->coord_of ($offset) -=item $text = $term->special_encode $string
    +
    $text = $term->special_encode $string
    Converts a perl string into the special encoding used by rxvt-unicode, @@ -875,9 +947,52 @@ Converts rxvt-unicodes text reprsentation into a perl string. See $term->ROW_t for details.
    +

    +
    $success = $term->grab_button ($button, $modifiermask)
    +
    +
    +Registers a synchronous button grab. See XGrabButton. +
    +

    +
    $success = $term->grab ($eventtime[, $sync])
    +
    +
    +Calls XGrabPointer and XGrabKeyboard in asynchronous (default) or +synchronous ($sync is true). Also remembers the grab timestampe. +
    +

    +
    $term->allow_events_async
    +
    +
    +Calls XAllowEvents with AsyncBoth for the most recent grab. +
    +

    +
    $term->allow_events_sync
    +
    +
    +Calls XAllowEvents with SyncBoth for the most recent grab. +
    +

    +
    $term->allow_events_replay
    +
    +
    +Calls XAllowEvents with both ReplayPointer and ReplayKeyboard for the most +recent grab. +
    +

    +
    $term->ungrab
    +
    +
    +Calls XUngrab for the most recent grab. Is called automatically on +evaluation errors, as it is better to lose the grab in the error case as +the session. +

    +

    The urxvt::popup Class

    +

    +

    The urxvt::timer Class

    This class implements timer watchers/events. Time is represented as a fractional number of seconds since the epoch. Example:

    @@ -1008,11 +1123,11 @@

    This variable controls the verbosity level of the perl extension. Higher numbers indicate more verbose output.

    -
    =0 - only fatal messages
    +
    == 0 - fatal messages
    -
    =3 - script loading and management
    +
    >= 3 - script loading and management
    -
    =10 - all events received
    +
    >=10 - all events received