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

Comparing rxvt-unicode/doc/rxvt.7.txt (file contents):
Revision 1.36 by root, Tue Jan 10 04:26:54 2006 UTC vs.
Revision 1.44 by root, Mon Jan 16 14:48:39 2006 UTC

18 The newest version of this document is also available on the World Wide 18 The newest version of this document is also available on the World Wide
19 Web at 19 Web at
20 <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 20 <http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>.
21 21
22FREQUENTLY ASKED QUESTIONS 22FREQUENTLY ASKED QUESTIONS
23 The new selection selects pieces that are too big, how can I select
24 single words?
25 Yes. For example, if you want to select alphanumeric words, you can
26 use the following resource:
27
28 URxvt.selection.pattern-0: ([[:word:]]+)
29
30 If you click more than twice, the selection will be extended more
31 and more.
32
33 To get a selection that is very similar to the old code, try this
34 pattern:
35
36 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
37
38 Please also note that the *LeftClick Shift-LeftClik* combination
39 also selects words like the old code.
40
41 I don't like the new selection/popups/hotkeys/perl, how do I
42 change/disable it?
43 You can disable the perl extension completely by setting the
44 perl-ext-common resource to the empty string, which also keeps
45 rxvt-unicode from initialising perl, saving memory.
46
47 If you only want to disable specific features, you first have to
48 identify which perl extension is responsible. For this, read the
49 section PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For
50 example, to disable the selection-popup and option-popup, specify
51 this perl-ext-common resource:
52
53 URxvt.perl-ext-common: default,-selection-popup,-option-popup
54
55 This will keep the default extensions, but disable the two popup
56 extensions. Some extensions can also be configured, for example,
57 scrollback search mode is triggered by M-s. You can move it to any
58 other combination either by setting the searchable-scrollback
59 resource:
60
61 URxvt.searchable-scrollback: CM-s
62
23 Isn't rxvt supposed to be small? Don't all those features bloat? 63 Isn't rxvt supposed to be small? Don't all those features bloat?
24 I often get asked about this, and I think, no, they didn't cause 64 I often get asked about this, and I think, no, they didn't cause
25 extra bloat. If you compare a minimal rxvt and a minimal urxvt, you 65 extra bloat. If you compare a minimal rxvt and a minimal urxvt, you
26 can see that the urxvt binary is larger (due to some encoding tables 66 can see that the urxvt binary is larger (due to some encoding tables
27 always being compiled in), but it actually uses less memory (RSS) 67 always being compiled in), but it actually uses less memory (RSS)
148 188
149 I need to make it setuid/setgid to support utmp/ptys on my OS, is this 189 I need to make it setuid/setgid to support utmp/ptys on my OS, is this
150 safe? 190 safe?
151 Likely not. While I honestly try to make it secure, and am probably 191 Likely not. While I honestly try to make it secure, and am probably
152 not bad at it, I think it is simply unreasonable to expect all of 192 not bad at it, I think it is simply unreasonable to expect all of
153 freetype + fontconfig + xft + xlib + ... + rxvt-unicode itself to 193 freetype + fontconfig + xft + xlib + perl + ... + rxvt-unicode
154 all be secure. Also, rxvt-unicode disables some options when it 194 itself to all be secure. Also, rxvt-unicode disables some options
155 detects that it runs setuid or setgid, which is not nice. 195 when it detects that it runs setuid or setgid, which is not nice.
196 Besides, with the embedded perl interpreter the possibility for
197 security problems easily multiplies.
156 198
157 Elevated privileges are only required for utmp and pty operations on 199 Elevated privileges are only required for utmp and pty operations on
158 some systems (for example, GNU/Linux doesn't need any extra 200 some systems (for example, GNU/Linux doesn't need any extra
159 privileges for ptys, but some need it for utmp support). If 201 privileges for ptys, but some need it for utmp support). It is
160 rxvt-unicode doesn't support the library/setuid helper that your OS 202 planned to mvoe this into a forked handler process, but this is not
161 needs I'll be happy to assist you in implementing support for it. 203 yet done.
162 204
163 So, while setuid/setgid operation is supported and not a problem on 205 So, while setuid/setgid operation is supported and not a problem on
164 your typical single-user-no-other-logins unix desktop, always 206 your typical single-user-no-other-logins unix desktop, always
165 remember that its an awful lot of code, most of which isn't checked 207 remember that its an awful lot of code, most of which isn't checked
166 for security issues regularly. 208 for security issues regularly.
612 Mouse cut/paste suddenly no longer works. 654 Mouse cut/paste suddenly no longer works.
613 Make sure that mouse reporting is actually turned off since killing 655 Make sure that mouse reporting is actually turned off since killing
614 some editors prematurely may leave the mouse in mouse report mode. 656 some editors prematurely may leave the mouse in mouse report mode.
615 I've heard that tcsh may use mouse reporting unless it otherwise 657 I've heard that tcsh may use mouse reporting unless it otherwise
616 specified. A quick check is to see if cut/paste works when the Alt 658 specified. A quick check is to see if cut/paste works when the Alt
617 or Shift keys are depressed. See rxvt(7) 659 or Shift keys are depressed.
618 660
619 What's with this bold/blink stuff? 661 What's with this bold/blink stuff?
620 If no bold colour is set via "colorBD:", bold will invert text using 662 If no bold colour is set via "colorBD:", bold will invert text using
621 the standard foreground colour. 663 the standard foreground colour.
622 664
708 750
709 # use Backspace = ^? 751 # use Backspace = ^?
710 $ stty erase ^? 752 $ stty erase ^?
711 $ rxvt 753 $ rxvt
712 754
713 Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7). 755 Toggle with "ESC [ 36 h" / "ESC [ 36 l".
714 756
715 For an existing rxvt-unicode: 757 For an existing rxvt-unicode:
716 758
717 # use Backspace = ^H 759 # use Backspace = ^H
718 $ stty erase ^H 760 $ stty erase ^H
1210 1252
1211 "Ps = 9" X10 XTerm 1253 "Ps = 9" X10 XTerm
1212 h Send Mouse X & Y on button press. 1254 h Send Mouse X & Y on button press.
1213 l No mouse reporting. 1255 l No mouse reporting.
1214 1256
1215 "Ps = 10" (rxvt)
1216 h menuBar visible
1217 l menuBar invisible
1218
1219 "Ps = 25" 1257 "Ps = 25"
1220 h Visible cursor {cnorm/cvvis} 1258 h Visible cursor {cnorm/cvvis}
1221 l Invisible cursor {civis} 1259 l Invisible cursor {civis}
1222 1260
1223 "Ps = 30" 1261 "Ps = 30"
1307 Ps = 10 Change colour of text foreground to Pt (NB: may change in future) 1345 Ps = 10 Change colour of text foreground to Pt (NB: may change in future)
1308 Ps = 11 Change colour of text background to Pt (NB: may change in future) 1346 Ps = 11 Change colour of text background to Pt (NB: may change in future)
1309 Ps = 12 Change colour of text cursor foreground to Pt 1347 Ps = 12 Change colour of text cursor foreground to Pt
1310 Ps = 13 Change colour of mouse foreground to Pt 1348 Ps = 13 Change colour of mouse foreground to Pt
1311 Ps = 17 Change colour of highlight characters to Pt 1349 Ps = 17 Change colour of highlight characters to Pt
1312 Ps = 18 Change colour of bold characters to Pt 1350 Ps = 18 Change colour of bold characters to Pt [deprecated, see 706]
1313 Ps = 19 Change colour of underlined characters to Pt 1351 Ps = 19 Change colour of underlined characters to Pt [deprecated, see 707]
1314 Ps = 20 Change default background to Pt 1352 Ps = 20 Change default background to Pt
1315 Ps = 39 Change default foreground colour to Pt. 1353 Ps = 39 Change default foreground colour to Pt.
1316 Ps = 46 Change Log File to Pt unimplemented 1354 Ps = 46 Change Log File to Pt unimplemented
1317 Ps = 49 Change default background colour to Pt. 1355 Ps = 49 Change default background colour to Pt.
1318 Ps = 50 Set fontset to Pt, with the following special values of Pt (rxvt) #+n change up n #-n change down n if n is missing of 0, a value of 1 is used empty change to font0 n change to font n 1356 Ps = 50 Set fontset to Pt, with the following special values of Pt (rxvt) #+n change up n #-n change down n if n is missing of 0, a value of 1 is used empty change to font0 n change to font n
1319 Ps = 55 Log all scrollback buffer and all of screen to Pt 1357 Ps = 55 Log all scrollback buffer and all of screen to Pt
1320 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills). 1358 Ps = 701 Change current locale to Pt, or, if Pt is ?, return the current locale (Compile frills).
1321 Ps = 703 Menubar command Pt (Compile menubar).
1322 Ps = 704 Change colour of italic characters to Pt 1359 Ps = 704 Change colour of italic characters to Pt
1323 Ps = 705 Change background pixmap tint colour to Pt (Compile transparency). 1360 Ps = 705 Change background pixmap tint colour to Pt (Compile transparency).
1361 Ps = 706 Change colour of bold characters to Pt
1362 Ps = 707 Change colour of underlined characters to Pt
1324 Ps = 710 Set normal fontset to Pt. Same as Ps = 50. 1363 Ps = 710 Set normal fontset to Pt. Same as Ps = 50.
1325 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles). 1364 Ps = 711 Set bold fontset to Pt. Similar to Ps = 50 (Compile styles).
1326 Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles). 1365 Ps = 712 Set italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1327 Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles). 1366 Ps = 713 Set bold-italic fontset to Pt. Similar to Ps = 50 (Compile styles).
1328 Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). 1367 Ps = 720 Move viewing window up by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1329 Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills). 1368 Ps = 721 Move viewing window down by Pt lines, or clear scrollback buffer if Pt = 0 (Compile frills).
1330 Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl). 1369 Ps = 777 Call the perl extension with the given string, which should be of the form extension:parameters (Compile perl).
1331 1370
1332 1371
1333
1334menuBar
1335 The exact syntax used is *almost* solidified. In the menus, DON'T try to
1336 use menuBar commands that add or remove a menuBar.
1337
1338 Note that in all of the commands, the */path/* *cannot* be omitted: use
1339 ./ to specify a menu relative to the current menu.
1340
1341 Overview of menuBar operation
1342 For the menuBar XTerm escape sequence "ESC ] 703 ; Pt ST", the syntax of
1343 "Pt" can be used for a variety of tasks:
1344
1345 At the top level is the current menuBar which is a member of a circular
1346 linked-list of other such menuBars.
1347
1348 The menuBar acts as a parent for the various drop-down menus, which in
1349 turn, may have labels, separator lines, menuItems and subMenus.
1350
1351 The menuItems are the useful bits: you can use them to mimic keyboard
1352 input or even to send text or escape sequences back to rxvt.
1353
1354 The menuBar syntax is intended to provide a simple yet robust method of
1355 constructing and manipulating menus and navigating through the menuBars.
1356
1357 The first step is to use the tag [menu:*name*] which creates the menuBar
1358 called *name* and allows access. You may now or menus, subMenus, and
1359 menuItems. Finally, use the tag [done] to set the menuBar access as
1360 readonly to prevent accidental corruption of the menus. To re-access the
1361 current menuBar for alterations, use the tag [menu], make the
1362 alterations and then use [done]
1363
1364
1365
1366 Commands
1367 [menu:+*name*]
1368 access the named menuBar for creation or alteration. If a new
1369 menuBar is created, it is called *name* (max of 15 chars) and the
1370 current menuBar is pushed onto the stack
1371
1372 [menu]
1373 access the current menuBar for alteration
1374
1375 [title:+*string*]
1376 set the current menuBar's title to *string*, which may contain the
1377 following format specifiers:
1378
1379 B<%n> rxvt name (as per the B<-name> command-line option)
1380 B<%v> rxvt version
1381 B<%%> literal B<%> character
1382
1383 [done]
1384 set menuBar access as readonly. End-of-file tag for [read:+*file*]
1385 operations.
1386
1387 [read:+*file*]
1388 read menu commands directly from *file* (extension ".menu" will be
1389 appended if required.) Start reading at a line with [menu] or
1390 [menu:+*name* and continuing until [done] is encountered.
1391
1392 Blank and comment lines (starting with #) are ignored. Actually,
1393 since any invalid menu commands are also ignored, almost anything
1394 could be construed as a comment line, but this may be tightened up
1395 in the future ... so don't count on it!.
1396
1397 [read:+*file*;+*name*]
1398 The same as [read:+*file*], but start reading at a line with
1399 [menu:+*name*] and continuing until [done:+*name*] or [done] is
1400 encountered.
1401
1402 [dump]
1403 dump all menuBars to the file /tmp/rxvt-PID in a format suitable for
1404 later rereading.
1405
1406 [rm:name]
1407 remove the named menuBar
1408
1409 [rm] [rm:]
1410 remove the current menuBar
1411
1412 [rm*] [rm:*]
1413 remove all menuBars
1414
1415 [swap]
1416 swap the top two menuBars
1417
1418 [prev]
1419 access the previous menuBar
1420
1421 [next]
1422 access the next menuBar
1423
1424 [show]
1425 Enable display of the menuBar
1426
1427 [hide]
1428 Disable display of the menuBar
1429
1430 [pixmap:+*name*]
1431 [pixmap:+*name*;*scaling*]
1432 (set the background pixmap globally
1433
1434 A Future implementation *may* make this local to the menubar)
1435
1436 [:+*command*:]
1437 ignore the menu readonly status and issue a *command* to or a menu
1438 or menuitem or change the ; a useful shortcut for setting the quick
1439 arrows from a menuBar.
1440
1441
1442
1443 Adding and accessing menus
1444 The following commands may also be + prefixed.
1445
1446 /+ access menuBar top level
1447
1448 ./+ access current menu level
1449
1450 ../+
1451 access parent menu (1 level up)
1452
1453 ../../
1454 access parent menu (multiple levels up)
1455
1456 */path/*menu
1457 add/access menu
1458
1459 */path/*menu/*
1460 add/access menu and clear it if it exists
1461
1462 */path/*{-}
1463 add separator
1464
1465 */path/*{item}
1466 add item as a label
1467
1468 */path/*{item} action
1469 add/alter *menuitem* with an associated *action*
1470
1471 */path/*{item}{right-text}
1472 add/alter *menuitem* with right-text as the right-justified text and
1473 as the associated *action*
1474
1475 */path/*{item}{rtext} action
1476 add/alter *menuitem* with an associated *action* and with rtext as
1477 the right-justified text.
1478
1479 Special characters in *action* must be backslash-escaped:
1480 \a \b \E \e \n \r \t \octal
1481
1482 or in control-character notation:
1483 ^@, ^A .. ^Z .. ^_, ^?
1484
1485 To send a string starting with a NUL (^@) character to the program,
1486 start *action* with a pair of NUL characters (^@^@), the first of which
1487 will be stripped off and the balance directed to the program. Otherwise
1488 if *action* begins with NUL followed by non-+NUL characters, the leading
1489 NUL is stripped off and the balance is sent back to rxvt.
1490
1491 As a convenience for the many Emacs-type editors, *action* may start
1492 with M- (eg, M-$ is equivalent to \E$) and a CR will be appended if
1493 missed from M-x commands.
1494
1495 As a convenience for issuing XTerm ESC ] sequences from a menubar (or
1496 quick arrow), a BEL (^G) will be appended if needed.
1497
1498 For example,
1499 M-xapropos is equivalent to \Exapropos\r
1500
1501 and \E]703;mona;100 is equivalent to \E]703;mona;100\a
1502
1503 The option {*right-rtext*} will be right-justified. In the absence of a
1504 specified action, this text will be used as the *action* as well.
1505
1506 For example,
1507 /File/{Open}{^X^F} is equivalent to /File/{Open}{^X^F} ^X^F
1508
1509 The left label *is* necessary, since it's used for matching, but
1510 implicitly hiding the left label (by using same name for both left and
1511 right labels), or explicitly hiding the left label (by preceeding it
1512 with a dot), makes it possible to have right-justified text only.
1513
1514 For example,
1515 /File/{Open}{Open} Open-File-Action
1516
1517 or hiding it
1518 /File/{.anylabel}{Open} Open-File-Action
1519
1520
1521
1522 Removing menus
1523 -/*+
1524 remove all menus from the menuBar, the same as [clear]
1525
1526 -+*/path*menu+
1527 remove menu
1528
1529 -+*/path*{item}+
1530 remove item
1531
1532 -+*/path*{-}
1533 remove separator)
1534
1535 -/path/menu/*
1536 remove all items, separators and submenus from menu
1537
1538
1539
1540 Quick Arrows
1541 The menus also provide a hook for *quick arrows* to provide easier user
1542 access. If nothing has been explicitly set, the default is to emulate
1543 the curror keys. The syntax permits each arrow to be altered
1544 individually or all four at once without re-entering their common
1545 beginning/end text. For example, to explicitly associate cursor actions
1546 with the arrows, any of the following forms could be used:
1547
1548 <r>+*Right*
1549 <l>+*Left*
1550 <u>+*Up*
1551 <d>+*Down*
1552 Define actions for the respective arrow buttons
1553
1554 <b>+*Begin*
1555 <e>+*End*
1556 Define common beginning/end parts for *quick arrows* which used in
1557 conjunction with the above <r> <l> <u> <d> constructs
1558
1559 For example, define arrows individually,
1560 <u>\E[A
1561
1562 <d>\E[B
1563
1564 <r>\E[C
1565
1566 <l>\E[D
1567
1568 or all at once
1569 <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1570
1571 or more compactly (factoring out common parts)
1572 <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
1573
1574
1575
1576 Command Summary
1577 A short summary of the most *common* commands:
1578
1579 [menu:name]
1580 use an existing named menuBar or start a new one
1581
1582 [menu]
1583 use the current menuBar
1584
1585 [title:string]
1586 set menuBar title
1587
1588 [done]
1589 set menu access to readonly and, if reading from a file, signal EOF
1590
1591 [done:name]
1592 if reading from a file using [read:file;name] signal EOF
1593
1594 [rm:name]
1595 remove named menuBar(s)
1596
1597 [rm] [rm:]
1598 remove current menuBar
1599
1600 [rm*] [rm:*]
1601 remove all menuBar(s)
1602
1603 [swap]
1604 swap top two menuBars
1605
1606 [prev]
1607 access the previous menuBar
1608
1609 [next]
1610 access the next menuBar
1611
1612 [show]
1613 map menuBar
1614
1615 [hide]
1616 unmap menuBar
1617
1618 [pixmap;file]
1619 [pixmap;file;scaling]
1620 set a background pixmap
1621
1622 [read:file]
1623 [read:file;name]
1624 read in a menu from a file
1625
1626 [dump]
1627 dump out all menuBars to /tmp/rxvt-PID
1628
1629 / access menuBar top level
1630
1631 ./
1632 ../
1633 ../../
1634 access current or parent menu level
1635
1636 /path/menu
1637 add/access menu
1638
1639 /path/{-}
1640 add separator
1641
1642 /path/{item}{rtext} action
1643 add/alter menu item
1644
1645 -/* remove all menus from the menuBar
1646
1647 -/path/menu
1648 remove menu items, separators and submenus from menu
1649
1650 -/path/menu
1651 remove menu
1652
1653 -/path/{item}
1654 remove item
1655
1656 -/path/{-}
1657 remove separator
1658
1659 <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
1660 menu quick arrows
1661 1372
1662XPM 1373XPM
1663 For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt" 1374 For the XPM XTerm escape sequence "ESC ] 20 ; Pt ST" then value of "Pt"
1664 can be the name of the background pixmap followed by a sequence of 1375 can be the name of the background pixmap followed by a sequence of
1665 scaling/positioning commands separated by semi-colons. The 1376 scaling/positioning commands separated by semi-colons. The
1921 1632
1922 --enable-tinting (default: on) 1633 --enable-tinting (default: on)
1923 Add support for tinting of transparent backgrounds (requires 1634 Add support for tinting of transparent backgrounds (requires
1924 "--enable-transparency"). 1635 "--enable-transparency").
1925 1636
1926 --enable-menubar (default: off) [DEPRECATED]
1927 Add support for our menu bar system (this interacts badly with
1928 dynamic locale switching currently). This option is DEPRECATED and
1929 will be removed in the future.
1930
1931 --enable-rxvt-scroll (default: on) 1637 --enable-rxvt-scroll (default: on)
1932 Add support for the original rxvt scrollbar. 1638 Add support for the original rxvt scrollbar.
1933 1639
1934 --enable-next-scroll (default: on) 1640 --enable-next-scroll (default: on)
1935 Add support for a NeXT-like scrollbar. 1641 Add support for a NeXT-like scrollbar.
1958 Removes any handling of the delete key by us - let the X server do 1664 Removes any handling of the delete key by us - let the X server do
1959 it. 1665 it.
1960 1666
1961 --disable-resources 1667 --disable-resources
1962 Removes any support for resource checking. 1668 Removes any support for resource checking.
1963
1964 --enable-xgetdefault
1965 Make resources checking via XGetDefault() instead of our small
1966 version which only checks ~/.Xdefaults, or if that doesn't exist
1967 then ~/.Xresources.
1968
1969 Please note that nowadays, things like XIM will automatically pull
1970 in and use the full X resource manager, so the overhead of using it
1971 might be very small, if nonexistant.
1972
1973 --enable-strings (default: off)
1974 Add support for our possibly faster memset() function and other
1975 various routines, overriding your system's versions which may have
1976 been hand-crafted in assembly or may require extra libraries to link
1977 in. (this breaks ANSI-C rules and has problems on many GNU/Linux
1978 systems).
1979 1669
1980 --disable-swapscreen 1670 --disable-swapscreen
1981 Remove support for secondary/swap screen. 1671 Remove support for secondary/swap screen.
1982 1672
1983 --enable-frills (default: on) 1673 --enable-frills (default: on)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines