… | |
… | |
121 | <dd> |
121 | <dd> |
122 | <pre> |
122 | <pre> |
123 | URxvt.selection.pattern-0: \\|([^|]+)\\|</pre> |
123 | URxvt.selection.pattern-0: \\|([^|]+)\\|</pre> |
124 | </dd> |
124 | </dd> |
125 | <dd> |
125 | <dd> |
|
|
126 | <p>Another example: Programs I use often output ``absolute path: '' at the |
|
|
127 | beginning of a line when they process multiple files. The following |
|
|
128 | pattern matches the filename (note, there is a single space at the very |
|
|
129 | end):</p> |
|
|
130 | </dd> |
|
|
131 | <dd> |
|
|
132 | <pre> |
|
|
133 | URxvt.selection.pattern-0: ^(/[^:]+):\</pre> |
|
|
134 | </dd> |
|
|
135 | <dd> |
126 | <p>You can look at the source of the selection extension to see more |
136 | <p>You can look at the source of the selection extension to see more |
127 | interesting uses, such as parsing a line from beginning to end.</p> |
137 | interesting uses, such as parsing a line from beginning to end.</p> |
128 | </dd> |
138 | </dd> |
129 | <dd> |
139 | <dd> |
130 | <p>This extension also offers following bindable keyboard commands:</p> |
140 | <p>This extension also offers following bindable keyboard commands:</p> |
… | |
… | |
143 | <dt><strong><a name="item_popup">option-popup (enabled by default)</a></strong><br /> |
153 | <dt><strong><a name="item_popup">option-popup (enabled by default)</a></strong><br /> |
144 | </dt> |
154 | </dt> |
145 | <dd> |
155 | <dd> |
146 | Binds a popup menu to Ctrl-Button2 that lets you toggle (some) options at |
156 | Binds a popup menu to Ctrl-Button2 that lets you toggle (some) options at |
147 | runtime. |
157 | runtime. |
|
|
158 | </dd> |
|
|
159 | <dd> |
|
|
160 | <p>Other extensions can extend this popup menu by pushing a code reference |
|
|
161 | onto <code>@{ $term-</code>{option_popup_hook} }>, which gets called whenever the |
|
|
162 | popup is being displayed.</p> |
|
|
163 | </dd> |
|
|
164 | <dd> |
|
|
165 | <p>It's sole argument is the popup menu, which can be modified. It should |
|
|
166 | either return nothing or a string, the initial boolean value and a code |
|
|
167 | reference. The string will be used as button text and the code reference |
|
|
168 | will be called when the toggle changes, with the new boolean value as |
|
|
169 | first argument.</p> |
|
|
170 | </dd> |
|
|
171 | <dd> |
|
|
172 | <p>The following will add an entry <code>myoption</code> that changes |
|
|
173 | <code>$self-</code>{myoption}>:</p> |
|
|
174 | </dd> |
|
|
175 | <dd> |
|
|
176 | <pre> |
|
|
177 | push @{ $self->{term}{option_popup_hook} }, sub { |
|
|
178 | ("my option" => $myoption, sub { $self->{myoption} = $_[0] }) |
|
|
179 | };</pre> |
148 | </dd> |
180 | </dd> |
149 | <p></p> |
181 | <p></p> |
150 | <dt><strong>selection-popup (enabled by default)</strong><br /> |
182 | <dt><strong>selection-popup (enabled by default)</strong><br /> |
151 | </dt> |
183 | </dt> |
152 | <dd> |
184 | <dd> |
… | |
… | |
154 | text into various other formats/action (such as uri unescaping, perl |
186 | text into various other formats/action (such as uri unescaping, perl |
155 | evaluation, web-browser starting etc.), depending on content. |
187 | evaluation, web-browser starting etc.), depending on content. |
156 | </dd> |
188 | </dd> |
157 | <dd> |
189 | <dd> |
158 | <p>Other extensions can extend this popup menu by pushing a code reference |
190 | <p>Other extensions can extend this popup menu by pushing a code reference |
159 | onto <code>@{ $term-</code>{selection_popup_hook} }>, that is called whenever the |
191 | onto <code>@{ $term-</code>{selection_popup_hook} }>, which gets called whenever the |
160 | popup is displayed.</p> |
192 | popup is being displayed.</p> |
161 | </dd> |
193 | </dd> |
162 | <dd> |
194 | <dd> |
163 | <p>It's sole argument is the popup menu, which can be modified. The selection |
195 | <p>It's sole argument is the popup menu, which can be modified. The selection |
164 | is in <code>$_</code>, which can be used to decide wether to add something or not. |
196 | is in <code>$_</code>, which can be used to decide wether to add something or not. |
165 | It should either return nothing or a string and a code reference. The |
197 | It should either return nothing or a string and a code reference. The |
… | |
… | |
283 | <dd> |
315 | <dd> |
284 | <p>Clicking a button will activate that tab. Pressing <strong>Shift-Left</strong> and |
316 | <p>Clicking a button will activate that tab. Pressing <strong>Shift-Left</strong> and |
285 | <strong>Shift-Right</strong> will switch to the tab left or right of the current one, |
317 | <strong>Shift-Right</strong> will switch to the tab left or right of the current one, |
286 | while <strong>Shift-Down</strong> creates a new tab.</p> |
318 | while <strong>Shift-Down</strong> creates a new tab.</p> |
287 | </dd> |
319 | </dd> |
|
|
320 | <dd> |
|
|
321 | <p>The tabbar itself can be configured similarly to a normal terminal, but |
|
|
322 | with a resource class of <code>URxvt.tabbed</code>. In addition, it supports the |
|
|
323 | following four resources (shown with defaults):</p> |
|
|
324 | </dd> |
|
|
325 | <dd> |
|
|
326 | <pre> |
|
|
327 | URxvt.tabbed.tabbar-fg: <colour-index, default 3> |
|
|
328 | URxvt.tabbed.tabbar-bg: <colour-index, default 0> |
|
|
329 | URxvt.tabbed.tab-fg: <colour-index, default 0> |
|
|
330 | URxvt.tabbed.tab-bg: <colour-index, default 1></pre> |
|
|
331 | </dd> |
|
|
332 | <dd> |
|
|
333 | <p>See <em>COLOR AND GRAPHICS</em> in the <code>rxvt(1)</code> manpage for valid |
|
|
334 | indices.</p> |
|
|
335 | </dd> |
288 | <p></p> |
336 | <p></p> |
289 | <dt><strong><a name="item_mark_2durls">mark-urls</a></strong><br /> |
337 | <dt><strong><a name="item_mark_2durls">mark-urls</a></strong><br /> |
290 | </dt> |
338 | </dt> |
291 | <dd> |
339 | <dd> |
292 | Uses per-line display filtering (<code>on_line_update</code>) to underline urls and |
340 | Uses per-line display filtering (<code>on_line_update</code>) to underline urls and |
293 | make them clickable. When middle-clicked, the program specified in the |
341 | make them clickable. When middle-clicked, the program specified in the |
294 | resource <code>urlLauncher</code> (default <code>x-www-browser</code>) will be started with |
342 | resource <code>urlLauncher</code> (default <code>x-www-browser</code>) will be started with |
295 | the URL as first argument. |
343 | the URL as first argument. |
296 | </dd> |
344 | </dd> |
297 | <p></p> |
345 | <p></p> |
|
|
346 | <dt><strong><a name="item_xim_2donthespot">xim-onthespot</a></strong><br /> |
|
|
347 | </dt> |
|
|
348 | <dd> |
|
|
349 | This (experimental) perl extension implements OnTheSpot editing. It does |
|
|
350 | not work perfectly, and some input methods don't seem to work well with |
|
|
351 | OnTheSpot editing in general, but it seems to work at leats for SCIM and |
|
|
352 | kinput2. |
|
|
353 | </dd> |
|
|
354 | <dd> |
|
|
355 | <p>You enable it by specifying this extension and a preedit style of |
|
|
356 | <code>OnTheSpot</code>, i.e.:</p> |
|
|
357 | </dd> |
|
|
358 | <dd> |
|
|
359 | <pre> |
|
|
360 | rxvt -pt OnTheSpot -pe xim-onthespot</pre> |
|
|
361 | </dd> |
|
|
362 | <p></p> |
298 | <dt><strong><a name="item_automove_2dbackground">automove-background</a></strong><br /> |
363 | <dt><strong><a name="item_automove_2dbackground">automove-background</a></strong><br /> |
299 | </dt> |
364 | </dt> |
300 | <dd> |
365 | <dd> |
301 | This is basically a one-line extension that dynamically changes the background pixmap offset |
366 | This is basically a one-line extension that dynamically changes the background pixmap offset |
302 | to the window position, in effect creating the same effect as pseudo transparency with |
367 | to the window position, in effect creating the same effect as pseudo transparency with |
… | |
… | |
319 | </dt> |
384 | </dt> |
320 | <dd> |
385 | <dd> |
321 | Displays a digital clock using the built-in overlay. |
386 | Displays a digital clock using the built-in overlay. |
322 | </dd> |
387 | </dd> |
323 | <p></p> |
388 | <p></p> |
324 | <dt><strong><a name="item_example_2drefresh_2dhooks">example-refresh-hooks</a></strong><br /> |
389 | <dt><strong><a name="item_remote_2dclipboard">remote-clipboard</a></strong><br /> |
325 | </dt> |
390 | </dt> |
|
|
391 | <dd> |
|
|
392 | Somewhat of a misnomer, this extension adds two menu entries to the |
|
|
393 | selection popup that allows one ti run external commands to store the |
|
|
394 | selection somewhere and fetch it again. |
326 | <dd> |
395 | </dd> |
327 | Displays a very simple digital clock in the upper right corner of the |
396 | <dd> |
328 | window. Illustrates overwriting the refresh callbacks to create your own |
397 | <p>We use it to implement a ``distributed selection mechanism'', which just |
329 | overlays or changes. |
398 | means that one command uploads the file to a remote server, and another |
|
|
399 | reads it.</p> |
|
|
400 | </dd> |
|
|
401 | <dd> |
|
|
402 | <p>The commands can be set using the <code>URxvt.remote-selection.store</code> and |
|
|
403 | <code>URxvt.remote-selection.fetch</code> resources. The first should read the |
|
|
404 | selection to store from STDIN (always in UTF-8), the second should provide |
|
|
405 | the selection data on STDOUT (also in UTF-8).</p> |
|
|
406 | </dd> |
|
|
407 | <dd> |
|
|
408 | <p>The defaults (which are likely useless to you) use rsh and cat:</p> |
|
|
409 | </dd> |
|
|
410 | <dd> |
|
|
411 | <pre> |
|
|
412 | URxvt.remote-selection.store: rsh ruth 'cat >/tmp/distributed-selection' |
|
|
413 | URxvt.remote-selection.fetch: rsh ruth 'cat /tmp/distributed-selection'</pre> |
330 | </dd> |
414 | </dd> |
331 | <p></p> |
415 | <p></p> |
332 | <dt><strong><a name="item_selection_2dpastebin">selection-pastebin</a></strong><br /> |
416 | <dt><strong><a name="item_selection_2dpastebin">selection-pastebin</a></strong><br /> |
333 | </dt> |
417 | </dt> |
334 | <dd> |
418 | <dd> |
… | |
… | |
367 | for the filename):</p> |
451 | for the filename):</p> |
368 | </dd> |
452 | </dd> |
369 | <dd> |
453 | <dd> |
370 | <pre> |
454 | <pre> |
371 | URxvt.selection-pastebin.url: <a href="http://www.ta-sa.org/files/txt/%">http://www.ta-sa.org/files/txt/%</a></pre> |
455 | URxvt.selection-pastebin.url: <a href="http://www.ta-sa.org/files/txt/%">http://www.ta-sa.org/files/txt/%</a></pre> |
|
|
456 | </dd> |
|
|
457 | <p></p> |
|
|
458 | <dt><strong><a name="item_example_2drefresh_2dhooks">example-refresh-hooks</a></strong><br /> |
|
|
459 | </dt> |
|
|
460 | <dd> |
|
|
461 | Displays a very simple digital clock in the upper right corner of the |
|
|
462 | window. Illustrates overwriting the refresh callbacks to create your own |
|
|
463 | overlays or changes. |
372 | </dd> |
464 | </dd> |
373 | <p></p></dl> |
465 | <p></p></dl> |
374 | <p> |
466 | <p> |
375 | </p> |
467 | </p> |
376 | <hr /> |
468 | <hr /> |
… | |
… | |
477 | </dd> |
569 | </dd> |
478 | <p></p> |
570 | <p></p> |
479 | <dt><strong><a name="item_on_destroy__24term">on_destroy $term</a></strong><br /> |
571 | <dt><strong><a name="item_on_destroy__24term">on_destroy $term</a></strong><br /> |
480 | </dt> |
572 | </dt> |
481 | <dd> |
573 | <dd> |
482 | Called whenever something tries to destroy terminal, before doing anything |
574 | Called whenever something tries to destroy terminal, when the terminal is |
483 | yet. If this hook returns true, then destruction is skipped, but this is |
575 | still fully functional (not for long, though). |
484 | rarely a good idea. |
|
|
485 | </dd> |
576 | </dd> |
486 | <p></p> |
577 | <p></p> |
487 | <dt><strong><a name="item_on_reset__24term">on_reset $term</a></strong><br /> |
578 | <dt><strong><a name="item_on_reset__24term">on_reset $term</a></strong><br /> |
488 | </dt> |
579 | </dt> |
489 | <dd> |
580 | <dd> |
… | |
… | |
627 | </dt> |
718 | </dt> |
628 | <dd> |
719 | <dd> |
629 | Called just after the screen gets redrawn. See <code>on_refresh_begin</code>. |
720 | Called just after the screen gets redrawn. See <code>on_refresh_begin</code>. |
630 | </dd> |
721 | </dd> |
631 | <p></p> |
722 | <p></p> |
632 | <dt><strong><a name="item_on_keyboard_command__24term_2c__24string">on_keyboard_command $term, $string</a></strong><br /> |
723 | <dt><strong><a name="item_on_user_command__24term_2c__24string">on_user_command $term, $string</a></strong><br /> |
633 | </dt> |
724 | </dt> |
634 | <dd> |
725 | <dd> |
635 | Called whenever the user presses a key combination that has a |
726 | Called whenever the a user-configured event is being activated (e.g. via |
636 | <code>perl:string</code> action bound to it (see description of the <strong>keysym</strong> |
727 | a <code>perl:string</code> action bound to a key, see description of the <strong>keysym</strong> |
637 | resource in the <code>rxvt(1)</code> manpage). |
728 | resource in the <code>rxvt(1)</code> manpage). |
|
|
729 | </dd> |
|
|
730 | <dd> |
|
|
731 | <p>The event is simply the action string. This interface is assumed to change |
|
|
732 | slightly in the future.</p> |
638 | </dd> |
733 | </dd> |
639 | <p></p> |
734 | <p></p> |
640 | <dt><strong><a name="item_on_x_event__24term_2c__24event">on_x_event $term, $event</a></strong><br /> |
735 | <dt><strong><a name="item_on_x_event__24term_2c__24event">on_x_event $term, $event</a></strong><br /> |
641 | </dt> |
736 | </dt> |
642 | <dd> |
737 | <dd> |
… | |
… | |
779 | <p>Using this function has the advantage that its output ends up in the |
874 | <p>Using this function has the advantage that its output ends up in the |
780 | correct place, e.g. on stderr of the connecting urxvtc client.</p> |
875 | correct place, e.g. on stderr of the connecting urxvtc client.</p> |
781 | </dd> |
876 | </dd> |
782 | <dd> |
877 | <dd> |
783 | <p>Messages have a size limit of 1023 bytes currently.</p> |
878 | <p>Messages have a size limit of 1023 bytes currently.</p> |
|
|
879 | </dd> |
|
|
880 | <p></p> |
|
|
881 | <dt><strong><a name="item__40terms__3d_urxvt_3a_3atermlist">@terms = urxvt::termlist</a></strong><br /> |
|
|
882 | </dt> |
|
|
883 | <dd> |
|
|
884 | Returns all urxvt::term objects that exist in this process, regardless of |
|
|
885 | wether they are started, being destroyed etc., so be careful. Only term |
|
|
886 | objects that have perl extensions attached will be returned (because there |
|
|
887 | is no urxvt::term objet associated with others). |
784 | </dd> |
888 | </dd> |
785 | <p></p> |
889 | <p></p> |
786 | <dt><strong><a name="item__24time__3d_urxvt_3a_3anow">$time = urxvt::NOW</a></strong><br /> |
890 | <dt><strong><a name="item__24time__3d_urxvt_3a_3anow">$time = urxvt::NOW</a></strong><br /> |
787 | </dt> |
891 | </dt> |
788 | <dd> |
892 | <dd> |
… | |
… | |
856 | <p></p> |
960 | <p></p> |
857 | <dt><strong><a name="item__24rend__3d_urxvt_3a_3aset_fgcolor__24rend_2c__24n">$rend = urxvt::SET_FGCOLOR $rend, $new_colour</a></strong><br /> |
961 | <dt><strong><a name="item__24rend__3d_urxvt_3a_3aset_fgcolor__24rend_2c__24n">$rend = urxvt::SET_FGCOLOR $rend, $new_colour</a></strong><br /> |
858 | </dt> |
962 | </dt> |
859 | <dt><strong><a name="item__24rend__3d_urxvt_3a_3aset_bgcolor__24rend_2c__24n">$rend = urxvt::SET_BGCOLOR $rend, $new_colour</a></strong><br /> |
963 | <dt><strong><a name="item__24rend__3d_urxvt_3a_3aset_bgcolor__24rend_2c__24n">$rend = urxvt::SET_BGCOLOR $rend, $new_colour</a></strong><br /> |
860 | </dt> |
964 | </dt> |
|
|
965 | <dt><strong><a name="item__24rend__3d_urxvt_3a_3aset_color__24rend_2c__24new">$rend = urxvt::SET_COLOR $rend, $new_fg, $new_bg</a></strong><br /> |
|
|
966 | </dt> |
861 | <dd> |
967 | <dd> |
862 | Replace the foreground/background colour in the rendition mask with the |
968 | Replace the foreground/background colour in the rendition mask with the |
863 | specified one. |
969 | specified one. |
864 | </dd> |
970 | </dd> |
865 | <p></p> |
971 | <p></p> |
… | |
… | |
899 | </dd> |
1005 | </dd> |
900 | <dd> |
1006 | <dd> |
901 | <p>Croaks (and probably outputs an error message) if the new instance |
1007 | <p>Croaks (and probably outputs an error message) if the new instance |
902 | couldn't be created. Returns <code>undef</code> if the new instance didn't |
1008 | couldn't be created. Returns <code>undef</code> if the new instance didn't |
903 | initialise perl, and the terminal object otherwise. The <code>init</code> and |
1009 | initialise perl, and the terminal object otherwise. The <code>init</code> and |
904 | <a href="#item_start"><code>start</code></a> hooks will be called during this call.</p> |
1010 | <a href="#item_start"><code>start</code></a> hooks will be called before this call returns, and are free to |
|
|
1011 | refer to global data (which is race free).</p> |
905 | </dd> |
1012 | </dd> |
906 | <p></p> |
1013 | <p></p> |
907 | <dt><strong><a name="item_destroy">$term->destroy</a></strong><br /> |
1014 | <dt><strong><a name="item_destroy">$term->destroy</a></strong><br /> |
908 | </dt> |
1015 | </dt> |
909 | <dd> |
1016 | <dd> |
… | |
… | |
1229 | <dd> |
1336 | <dd> |
1230 | <pre> |
1337 | <pre> |
1231 | $term->vt_emask_add (urxvt::PointerMotionMask);</pre> |
1338 | $term->vt_emask_add (urxvt::PointerMotionMask);</pre> |
1232 | </dd> |
1339 | </dd> |
1233 | <p></p> |
1340 | <p></p> |
|
|
1341 | <dt><strong><a name="item_focus_in">$term->focus_in</a></strong><br /> |
|
|
1342 | </dt> |
|
|
1343 | <dt><strong><a name="item_focus_out">$term->focus_out</a></strong><br /> |
|
|
1344 | </dt> |
|
|
1345 | <dt><strong><a name="item_key_press">$term->key_press ($state, $keycode[, $time])</a></strong><br /> |
|
|
1346 | </dt> |
|
|
1347 | <dt><strong><a name="item_key_release">$term->key_release ($state, $keycode[, $time])</a></strong><br /> |
|
|
1348 | </dt> |
|
|
1349 | <dd> |
|
|
1350 | Deliver various fake events to to terminal. |
|
|
1351 | </dd> |
|
|
1352 | <p></p> |
1234 | <dt><strong><a name="item_width">$window_width = $term->width</a></strong><br /> |
1353 | <dt><strong><a name="item_width">$window_width = $term->width</a></strong><br /> |
1235 | </dt> |
1354 | </dt> |
1236 | <dt><strong><a name="item_height">$window_height = $term->height</a></strong><br /> |
1355 | <dt><strong><a name="item_height">$window_height = $term->height</a></strong><br /> |
1237 | </dt> |
1356 | </dt> |
1238 | <dt><strong><a name="item_fwidth">$font_width = $term->fwidth</a></strong><br /> |
1357 | <dt><strong><a name="item_fwidth">$font_width = $term->fwidth</a></strong><br /> |
… | |
… | |
1444 | <dd> |
1563 | <dd> |
1445 | Converts rxvt-unicodes text reprsentation into a perl string. See |
1564 | Converts rxvt-unicodes text reprsentation into a perl string. See |
1446 | <a href="#item_row_t"><code>$term->ROW_t</code></a> for details. |
1565 | <a href="#item_row_t"><code>$term->ROW_t</code></a> for details. |
1447 | </dd> |
1566 | </dd> |
1448 | <p></p> |
1567 | <p></p> |
1449 | <dt><strong><a name="item_grab_button">$success = $term->grab_button ($button, $modifiermask)</a></strong><br /> |
1568 | <dt><strong><a name="item_grab_button">$success = $term->grab_button ($button, $modifiermask[, $window = $term->vt])</a></strong><br /> |
1450 | </dt> |
1569 | </dt> |
|
|
1570 | <dt><strong><a name="item_ungrab_button">$term->ungrab_button ($button, $modifiermask[, $window = $term->vt])</a></strong><br /> |
|
|
1571 | </dt> |
1451 | <dd> |
1572 | <dd> |
1452 | Registers a synchronous button grab. See the XGrabButton manpage. |
1573 | Register/unregister a synchronous button grab. See the XGrabButton |
|
|
1574 | manpage. |
1453 | </dd> |
1575 | </dd> |
1454 | <p></p> |
1576 | <p></p> |
1455 | <dt><strong><a name="item_grab">$success = $term->grab ($eventtime[, $sync])</a></strong><br /> |
1577 | <dt><strong><a name="item_grab">$success = $term->grab ($eventtime[, $sync])</a></strong><br /> |
1456 | </dt> |
1578 | </dt> |
1457 | <dd> |
1579 | <dd> |
… | |
… | |
1539 | <dd> |
1661 | <dd> |
1540 | Adds a clickable button to the popup. <code>$cb</code> is called whenever it is |
1662 | Adds a clickable button to the popup. <code>$cb</code> is called whenever it is |
1541 | selected. |
1663 | selected. |
1542 | </dd> |
1664 | </dd> |
1543 | <p></p> |
1665 | <p></p> |
1544 | <dt><strong><a name="item_add_toggle">$popup->add_toggle ($text, $cb, $initial_value)</a></strong><br /> |
1666 | <dt><strong><a name="item_add_toggle">$popup->add_toggle ($text, $initial_value, $cb)</a></strong><br /> |
1545 | </dt> |
1667 | </dt> |
1546 | <dd> |
1668 | <dd> |
1547 | Adds a toggle/checkbox item to the popup. Teh callback gets called |
1669 | Adds a toggle/checkbox item to the popup. The callback gets called |
1548 | whenever it gets toggled, with a boolean indicating its value as its first |
1670 | whenever it gets toggled, with a boolean indicating its new value as its |
1549 | argument. |
1671 | first argument. |
1550 | </dd> |
1672 | </dd> |
1551 | <p></p> |
1673 | <p></p> |
1552 | <dt><strong>$popup->show</strong><br /> |
1674 | <dt><strong>$popup->show</strong><br /> |
1553 | </dt> |
1675 | </dt> |
1554 | <dd> |
1676 | <dd> |